/* Дизайн-система М1: токены и компоненты перенесены из пакета дизайн-системы без изменений
   (кроме шрифта и иконок, они локальные). Ниже — раскладка приложения. */
/* Montserrat (OFL, public/fonts/OFL.txt): локальные файлы, без Google Fonts — сторонних запросов нет. */
@font-face{font-family:"M1 Montserrat";font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/montserrat-cyrillic-wght-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"M1 Montserrat";font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/montserrat-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* --- tokens/colors.css --- */
:root{
/* Brand red (sampled from uk-m1.ru) */
--m1-red-50:#FFF1F2;--m1-red-100:#FDDDE0;--m1-red-300:#F2757D;--m1-red-500:#E30613;--m1-red-600:#C4050F;--m1-red-700:#A2040C;
/* Ink / neutrals */
--m1-black:#0D0D0F;--m1-ink-900:#17181C;--m1-ink-700:#3A3D45;--m1-ink-500:#656B77;--m1-ink-400:#8D93A0;--m1-ink-300:#C5C9D1;--m1-ink-200:#E1E4E9;--m1-ink-100:#EFF1F4;--m1-ink-50:#F7F8FA;--m1-white:#FFFFFF;
/* Direction tiles (site colour blocks) */
--m1-teal-500:#1D86A8;--m1-teal-50:#E2F1F6;
--m1-blue-500:#1F5FA6;--m1-blue-50:#E3ECF8;
--m1-green-500:#2E9E6B;--m1-green-600:#237A52;--m1-green-50:#E2F5EC;
--m1-slate-500:#62788A;--m1-slate-50:#E9EEF1;
--m1-aqua-500:#1FA79B;--m1-aqua-50:#DFF5F3;
--m1-yellow-500:#F2A100;--m1-yellow-700:#8A5C00;--m1-yellow-50:#FEF2D6;
/* Logo gradient (from M1 logo stripes) */
--m1-logo-gradient:linear-gradient(90deg,#139EDA,#ADCA14);/* @kind color */
/* Semantic */
--bg-page:var(--m1-ink-50);--bg-surface:var(--m1-white);--bg-subtle:var(--m1-ink-100);--bg-inverse:var(--m1-black);--bg-brand:var(--m1-red-500);
--fg-1:var(--m1-ink-900);--fg-2:var(--m1-ink-700);--fg-3:var(--m1-ink-500);--fg-disabled:var(--m1-ink-400);--fg-on-brand:#fff;--fg-on-inverse:#fff;--fg-link:var(--m1-red-500);--fg-link-hover:var(--m1-red-700);
--border-1:var(--m1-ink-200);--border-2:var(--m1-ink-300);--border-strong:var(--m1-ink-900);
--accent:var(--m1-red-500);--accent-hover:var(--m1-red-600);--accent-active:var(--m1-red-700);--accent-soft:var(--m1-red-50);--accent-soft-border:var(--m1-red-100);
--success:var(--m1-green-500);--success-fg:var(--m1-green-600);--success-soft:var(--m1-green-50);
--warning:var(--m1-yellow-500);--warning-fg:var(--m1-yellow-700);--warning-soft:var(--m1-yellow-50);
--danger:var(--m1-red-600);--danger-soft:var(--m1-red-50);
--info:var(--m1-blue-500);--info-soft:var(--m1-blue-50);
--focus-ring:0 0 0 3px rgba(227,6,19,.28);
--overlay:rgba(13,13,15,.56);
}
[data-theme="dark"]{
--bg-page:#0F1013;--bg-surface:#1A1B21;--bg-subtle:#24262D;--bg-inverse:#000;
--fg-1:#F4F5F7;--fg-2:#C9CCD3;--fg-3:#9096A3;--fg-disabled:#646A77;--fg-link:#FF5A64;--fg-link-hover:#FF868D;
--border-1:#2C2F37;--border-2:#3D414B;--border-strong:#F4F5F7;
--accent-soft:#3A1216;--accent-soft-border:#6B1B22;
--success-fg:#5FD39B;--success-soft:#12301F;--warning-fg:#F5BE4A;--warning-soft:#33270A;--danger:#FF5A64;--danger-soft:#3A1216;--info:#6AA3EA;--info-soft:#122640;
--m1-teal-50:#10303B;--m1-blue-50:#122640;--m1-green-50:#12301F;--m1-slate-50:#252C33;--m1-aqua-50:#10322F;--m1-yellow-50:#33270A;
--overlay:rgba(0,0,0,.7);
}

/* --- tokens/typography.css --- */
:root{
--font-sans:"M1 Montserrat","Montserrat","Helvetica Neue",Arial,sans-serif;
--font-mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
--fs-display:56px;--lh-display:64px;--fs-h1:40px;--lh-h1:48px;--fs-h2:32px;--lh-h2:40px;--fs-h3:24px;--lh-h3:32px;--fs-h4:20px;--lh-h4:28px;
--fs-body-lg:18px;--lh-body-lg:28px;--fs-body:16px;--lh-body:24px;--fs-small:14px;--lh-small:20px;--fs-caption:12px;--lh-caption:16px;
--fw-regular:400;/* @kind other */--fw-medium:500;/* @kind other */--fw-semibold:600;/* @kind other */--fw-bold:700;/* @kind other */--fw-extrabold:800;/* @kind other */
--tracking-tight:-.01em;--tracking-overline:.08em;
}
html{font-family:var(--font-sans);color:var(--fg-1);-webkit-font-smoothing:antialiased}
body{margin:0;font-size:var(--fs-body);line-height:var(--lh-body);background:var(--bg-page)}
.t-display{font:800 var(--fs-display)/var(--lh-display) var(--font-sans);letter-spacing:var(--tracking-tight)}
.t-h1{font:700 var(--fs-h1)/var(--lh-h1) var(--font-sans);letter-spacing:var(--tracking-tight)}
.t-h2{font:700 var(--fs-h2)/var(--lh-h2) var(--font-sans)}
.t-h3{font:700 var(--fs-h3)/var(--lh-h3) var(--font-sans)}
.t-h4{font:600 var(--fs-h4)/var(--lh-h4) var(--font-sans)}
.t-body-lg{font:400 var(--fs-body-lg)/var(--lh-body-lg) var(--font-sans)}
.t-body{font:400 var(--fs-body)/var(--lh-body) var(--font-sans)}
.t-small{font:400 var(--fs-small)/var(--lh-small) var(--font-sans)}
.t-caption{font:500 var(--fs-caption)/var(--lh-caption) var(--font-sans)}
.t-overline{font:700 var(--fs-caption)/var(--lh-caption) var(--font-sans);letter-spacing:var(--tracking-overline);text-transform:uppercase}
a{color:var(--fg-link);text-decoration:none}a:hover{color:var(--fg-link-hover);text-decoration:underline}

/* --- tokens/spacing.css --- */
:root{
--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;
--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-pill:999px;
--shadow-1:0 1px 2px rgba(13,13,15,.06),0 1px 3px rgba(13,13,15,.08);
--shadow-2:0 4px 12px rgba(13,13,15,.08),0 2px 4px rgba(13,13,15,.05);
--shadow-3:0 16px 40px rgba(13,13,15,.16),0 4px 12px rgba(13,13,15,.08);
--ctl-sm:36px;--ctl-md:48px;--ctl-lg:56px;
--ease:cubic-bezier(.2,.6,.2,1);/* @kind other */--dur-fast:120ms;/* @kind other */--dur:200ms;/* @kind other */--dur-slow:320ms;/* @kind other */
--container:1200px;--container-test:760px;
--cut-slant:polygon(0 0,100% 0,100% 82%,0 100%);/* @kind other */
}

/* --- components/components.css --- */
.m1-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:var(--ctl-md);padding:0 24px;border:1px solid transparent;border-radius:var(--radius-md);font:600 16px/1 var(--font-sans);cursor:pointer;white-space:nowrap;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}
.m1-btn:focus-visible,.m1-iconbtn:focus-visible{outline:0;box-shadow:var(--focus-ring)}
.m1-btn--sm{height:var(--ctl-sm);padding:0 16px;font-size:14px}.m1-btn--lg{height:var(--ctl-lg);padding:0 32px;font-size:18px}.m1-btn--block{width:100%}
.m1-btn--primary{background:var(--accent);color:#fff}.m1-btn--primary:hover{background:var(--accent-hover)}.m1-btn--primary:active{background:var(--accent-active)}
.m1-btn--secondary{background:transparent;color:var(--fg-1);border-color:var(--border-strong)}.m1-btn--secondary:hover{background:var(--bg-subtle)}.m1-btn--secondary:active{background:var(--border-1)}
.m1-btn--dark{background:var(--m1-black);color:#fff}.m1-btn--dark:hover{background:var(--m1-ink-700)}.m1-btn--dark:active{background:var(--m1-ink-900)}
[data-theme="dark"] .m1-btn--dark{background:#fff;color:#000}
.m1-btn--ghost{background:transparent;color:var(--fg-1)}.m1-btn--ghost:hover{background:var(--bg-subtle)}.m1-btn--ghost:active{background:var(--border-1)}
.m1-btn--link{background:transparent;color:var(--accent);padding:0;height:auto}.m1-btn--link:hover{color:var(--accent-active);text-decoration:underline}
.m1-btn:disabled{background:var(--bg-subtle);color:var(--fg-disabled);border-color:transparent;cursor:not-allowed}
.m1-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:0;border-radius:var(--radius-md);background:transparent;color:var(--fg-1);cursor:pointer;transition:background var(--dur-fast) var(--ease)}
.m1-iconbtn:hover{background:var(--bg-subtle)}.m1-iconbtn--primary{background:var(--accent);color:#fff}.m1-iconbtn--primary:hover{background:var(--accent-hover)}.m1-iconbtn--outline{border:1px solid var(--border-2)}.m1-iconbtn:disabled{color:var(--fg-disabled);cursor:not-allowed;background:transparent}
.m1-badge{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 10px;border-radius:var(--radius-sm);font:600 12px/1 var(--font-sans);white-space:nowrap}
.m1-badge--neutral{background:var(--bg-subtle);color:var(--fg-2)}.m1-badge--red{background:var(--accent-soft);color:var(--accent)}.m1-badge--green{background:var(--success-soft);color:var(--success-fg)}.m1-badge--yellow{background:var(--warning-soft);color:var(--warning-fg)}.m1-badge--blue{background:var(--info-soft);color:var(--info)}.m1-badge--teal{background:var(--m1-teal-50);color:var(--m1-teal-500)}.m1-badge--slate{background:var(--m1-slate-50);color:var(--m1-slate-500)}.m1-badge--aqua{background:var(--m1-aqua-50);color:var(--m1-aqua-500)}
.m1-badge--solid.m1-badge--red{background:var(--m1-red-500);color:#fff}.m1-badge--solid.m1-badge--green{background:var(--m1-green-500);color:#fff}.m1-badge--solid.m1-badge--yellow{background:var(--m1-yellow-500);color:var(--m1-black)}.m1-badge--solid.m1-badge--blue{background:var(--m1-blue-500);color:#fff}.m1-badge--solid.m1-badge--neutral{background:var(--m1-black);color:#fff}
.m1-badge__dot{width:6px;height:6px;border-radius:50%;background:currentColor}
.m1-tag{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border:1px solid var(--border-2);border-radius:var(--radius-pill);font:500 14px/1 var(--font-sans);color:var(--fg-1);background:var(--bg-surface)}
.m1-tag--selected{background:var(--m1-black);border-color:var(--m1-black);color:#fff}.m1-tag button{display:inline-flex;border:0;background:none;color:inherit;padding:0;cursor:pointer}
.m1-card{background:var(--bg-surface);border:1px solid var(--border-1);border-radius:var(--radius-md);padding:24px;color:var(--fg-1)}
.m1-card--elevated{border-color:transparent;box-shadow:var(--shadow-2)}.m1-card--interactive{cursor:pointer;transition:box-shadow var(--dur) var(--ease),border-color var(--dur) var(--ease)}.m1-card--interactive:hover{box-shadow:var(--shadow-2);border-color:var(--border-2)}
.m1-card__title{font:700 20px/28px var(--font-sans);margin:0 0 8px}
.m1-stripes{position:absolute;right:0;bottom:0;width:132px;height:112px;pointer-events:none;overflow:hidden}
.m1-stripes i{position:absolute;bottom:0;width:20px;background:rgba(255,255,255,.9);transform:skewX(-24deg);transform-origin:bottom}
.m1-stripes i:nth-child(1){right:86px;height:42%;opacity:.55}.m1-stripes i:nth-child(2){right:58px;height:62%;opacity:.7}.m1-stripes i:nth-child(3){right:30px;height:82%;opacity:.85}.m1-stripes i:nth-child(4){right:2px;height:100%}
.m1-stripes--dark i{background:var(--m1-black)}.m1-stripes--sm{transform:scale(.6);transform-origin:bottom right}.m1-stripes--lg{transform:scale(1.6);transform-origin:bottom right}
.m1-tile{position:relative;overflow:hidden;min-height:200px;padding:24px;display:flex;flex-direction:column;justify-content:space-between;gap:16px;color:#fff;border-radius:var(--radius-md);background:var(--m1-red-500)}
.m1-tile--red{background:var(--m1-red-500)}.m1-tile--teal{background:var(--m1-teal-500)}.m1-tile--blue{background:var(--m1-blue-500)}.m1-tile--green{background:var(--m1-green-500)}.m1-tile--slate{background:var(--m1-slate-500)}.m1-tile--aqua{background:var(--m1-aqua-500)}.m1-tile--yellow{background:var(--m1-yellow-500);color:var(--m1-black)}.m1-tile--black{background:var(--m1-black)}
.m1-tile__tag{font:700 12px/16px var(--font-sans);letter-spacing:.08em;text-transform:uppercase;opacity:.9}.m1-tile__title{font:700 22px/28px var(--font-sans);max-width:70%;position:relative;z-index:1}
.m1-field{display:flex;flex-direction:column;gap:6px;font-family:var(--font-sans)}
.m1-field__label{font:600 14px/20px var(--font-sans);color:var(--fg-1)}.m1-field__label i{color:var(--accent);font-style:normal}
.m1-field__hint{font:400 12px/16px var(--font-sans);color:var(--fg-3)}.m1-field--error .m1-field__hint{color:var(--danger)}
.m1-input,.m1-select,.m1-textarea{box-sizing:border-box;width:100%;height:var(--ctl-md);padding:0 16px;border:1px solid var(--border-2);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--fg-1);font:400 16px/24px var(--font-sans);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease);outline:0}
.m1-input::placeholder,.m1-textarea::placeholder{color:var(--fg-disabled)}
.m1-input:hover,.m1-select:hover,.m1-textarea:hover{border-color:var(--fg-3)}
.m1-input:focus,.m1-select:focus,.m1-textarea:focus{border-color:var(--accent);box-shadow:var(--focus-ring)}
.m1-field--error .m1-input,.m1-field--error .m1-select,.m1-field--error .m1-textarea{border-color:var(--danger)}
.m1-input:disabled,.m1-select:disabled,.m1-textarea:disabled{background:var(--bg-subtle);color:var(--fg-disabled);cursor:not-allowed}
.m1-input--sm{height:var(--ctl-sm);padding:0 12px;font-size:14px}
.m1-textarea{height:auto;min-height:160px;padding:12px 16px;resize:vertical}
.m1-input-wrap{position:relative;display:flex;align-items:center}.m1-input-wrap>.m1-icon{position:absolute;left:14px;color:var(--fg-3);pointer-events:none}.m1-input-wrap .m1-input{padding-left:44px}
.m1-select{appearance:none;padding-right:44px;cursor:pointer}.m1-select-wrap{position:relative;display:flex;align-items:center}.m1-select-wrap>.m1-icon{position:absolute;right:12px;color:var(--fg-3);pointer-events:none}
.m1-check{display:inline-flex;align-items:flex-start;gap:12px;cursor:pointer;font:400 16px/24px var(--font-sans);color:var(--fg-1)}
.m1-check input{position:absolute;opacity:0;width:0;height:0}
.m1-check__box{flex:none;width:24px;height:24px;box-sizing:border-box;border:2px solid var(--border-2);background:var(--bg-surface);display:inline-flex;align-items:center;justify-content:center;color:#fff;transition:all var(--dur-fast) var(--ease)}
.m1-check__box--check{border-radius:var(--radius-sm)}.m1-check__box--radio{border-radius:50%}
.m1-check:hover .m1-check__box{border-color:var(--fg-3)}
.m1-check input:checked+.m1-check__box{background:var(--accent);border-color:var(--accent)}
.m1-check input:checked+.m1-check__box--radio{background:var(--bg-surface);box-shadow:inset 0 0 0 4px var(--bg-surface);background:var(--accent)}
.m1-check input:focus-visible+.m1-check__box{box-shadow:var(--focus-ring)}
.m1-check input:disabled+.m1-check__box{background:var(--bg-subtle);border-color:var(--border-1)}.m1-check--disabled{color:var(--fg-disabled);cursor:not-allowed}
.m1-switch{display:inline-flex;align-items:center;gap:12px;cursor:pointer;font:400 16px/24px var(--font-sans);color:var(--fg-1)}
.m1-switch input{position:absolute;opacity:0;width:0;height:0}
.m1-switch__track{width:44px;height:24px;border-radius:12px;background:var(--border-2);position:relative;transition:background var(--dur) var(--ease);flex:none}
.m1-switch__track:after{content:"";position:absolute;left:2px;top:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:var(--shadow-1);transition:transform var(--dur) var(--ease)}
.m1-switch input:checked+.m1-switch__track{background:var(--accent)}.m1-switch input:checked+.m1-switch__track:after{transform:translateX(20px)}.m1-switch input:focus-visible+.m1-switch__track{box-shadow:var(--focus-ring)}
.m1-qcard{background:var(--bg-surface);border:1px solid var(--border-1);border-radius:var(--radius-md);padding:32px}
.m1-qcard__meta{display:flex;align-items:center;gap:12px;margin-bottom:16px;font:700 12px/16px var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3)}.m1-qcard__meta b{color:var(--accent)}
.m1-qcard__text{font:700 24px/32px var(--font-sans);margin:0 0 8px;color:var(--fg-1)}.m1-qcard__hint{font:400 14px/20px var(--font-sans);color:var(--fg-3);margin:0 0 24px}.m1-qcard__body{display:flex;flex-direction:column;gap:12px}
.m1-option{display:flex;align-items:center;gap:16px;width:100%;box-sizing:border-box;padding:16px 20px;border:1px solid var(--border-2);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--fg-1);font:500 16px/24px var(--font-sans);text-align:left;cursor:pointer;transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}
.m1-option:hover{border-color:var(--fg-1)}.m1-option:focus-visible{outline:0;box-shadow:var(--focus-ring)}
.m1-option__mark{flex:none;width:24px;height:24px;box-sizing:border-box;border:2px solid var(--border-2);display:inline-flex;align-items:center;justify-content:center;color:#fff}
.m1-option__mark--single{border-radius:50%}.m1-option__mark--multiple{border-radius:var(--radius-sm)}.m1-option__mark .m1-icon{font-size:16px}
.m1-option__label{flex:1}.m1-option__side{flex:none;display:inline-flex;font-size:14px}
.m1-option--selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.m1-option--selected .m1-option__mark{background:var(--accent);border-color:var(--accent)}
.m1-option--correct{border-color:var(--success);background:var(--success-soft);box-shadow:inset 0 0 0 1px var(--success);cursor:default}.m1-option--correct .m1-option__mark{background:var(--success);border-color:var(--success)}.m1-option--correct .m1-option__side{color:var(--success-fg)}
.m1-option--incorrect{border-color:var(--danger);background:var(--danger-soft);box-shadow:inset 0 0 0 1px var(--danger);cursor:default}.m1-option--incorrect .m1-option__mark{background:var(--danger);border-color:var(--danger)}.m1-option--incorrect .m1-option__side{color:var(--danger)}
.m1-option--missed{border-style:dashed;border-color:var(--success);cursor:default}.m1-option--missed .m1-option__side{color:var(--success-fg)}
.m1-option:disabled{cursor:default}.m1-option:disabled:not(.m1-option--selected):not(.m1-option--correct):not(.m1-option--incorrect):not(.m1-option--missed){color:var(--fg-disabled);background:var(--bg-subtle)}
.m1-timer{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border-radius:var(--radius-md);background:var(--bg-subtle);color:var(--fg-1);font:700 18px/1 var(--font-sans);font-variant-numeric:tabular-nums}.m1-timer .m1-icon{font-size:22px}
.m1-timer--warning{background:var(--warning-soft);color:var(--warning-fg)}.m1-timer--danger{background:var(--m1-red-500);color:#fff}
.m1-progress{display:flex;flex-direction:column;gap:8px;font-family:var(--font-sans)}.m1-progress__head{display:flex;justify-content:space-between;font:600 14px/20px var(--font-sans);color:var(--fg-2)}
.m1-progress__track{height:8px;border-radius:4px;background:var(--bg-subtle);overflow:hidden}.m1-progress__fill{height:100%;background:var(--accent);border-radius:4px;transition:width var(--dur-slow) var(--ease)}.m1-progress--success .m1-progress__fill{background:var(--success)}
.m1-qnav{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:8px}
.m1-qnav__item{position:relative;height:44px;border:1px solid var(--border-2);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--fg-1);font:600 14px/1 var(--font-sans);cursor:pointer;transition:all var(--dur-fast) var(--ease)}
.m1-qnav__item:hover{border-color:var(--fg-1)}.m1-qnav__item:focus-visible{outline:0;box-shadow:var(--focus-ring)}
.m1-qnav__item--answered{background:var(--m1-black);border-color:var(--m1-black);color:#fff}[data-theme="dark"] .m1-qnav__item--answered{background:var(--m1-ink-700);border-color:var(--m1-ink-700)}
.m1-qnav__item--current{background:var(--accent);border-color:var(--accent);color:#fff}
.m1-qnav__item--correct{background:var(--success-soft);border-color:var(--success);color:var(--success-fg)}.m1-qnav__item--wrong{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}
.m1-qnav__flag{position:absolute;top:-1px;right:-1px;width:0;height:0;border-style:solid;border-width:0 14px 14px 0;border-color:transparent var(--m1-yellow-500) transparent transparent;border-top-right-radius:var(--radius-md)}
.m1-ring{position:relative;display:inline-flex;align-items:center;justify-content:center}.m1-ring svg{transform:rotate(-90deg)}.m1-ring__track{stroke:var(--bg-subtle)}.m1-ring__bar{stroke:var(--accent);transition:stroke-dashoffset var(--dur-slow) var(--ease)}.m1-ring--success .m1-ring__bar{stroke:var(--success)}
.m1-ring__center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--font-sans)}.m1-ring__value{font-weight:800;color:var(--fg-1);line-height:1}.m1-ring__label{font:500 12px/16px var(--font-sans);color:var(--fg-3);margin-top:4px}
.m1-banner{position:relative;overflow:hidden;background:var(--m1-red-500);color:#fff;padding:48px 48px 72px;clip-path:var(--cut-slant);font-family:var(--font-sans)}
.m1-banner--green{background:var(--m1-green-500)}.m1-banner--black{background:var(--m1-black)}
.m1-banner__body{position:relative;z-index:1;display:flex;align-items:center;gap:32px}.m1-banner__title{font:800 32px/40px var(--font-sans);margin:0 0 8px}.m1-banner__text{font:400 16px/24px var(--font-sans);margin:0;opacity:.95;max-width:520px}.m1-banner__score{font:800 72px/1 var(--font-sans);letter-spacing:-.02em}.m1-banner__score small{font-size:28px;font-weight:700;opacity:.85}
.m1-header{display:flex;align-items:center;gap:32px;height:72px;padding:0 32px;background:var(--bg-surface);border-bottom:1px solid var(--border-1);font-family:var(--font-sans)}
.m1-header--dark{background:var(--m1-black);border-color:var(--m1-black);color:#fff}.m1-header__logo{height:40px;display:block}.m1-header__nav{display:flex;gap:4px;flex:1}.m1-header__right{display:flex;align-items:center;gap:16px}
.m1-header__link{display:inline-flex;align-items:center;height:40px;padding:0 16px;border-radius:var(--radius-md);font:600 15px/1 var(--font-sans);color:var(--fg-2);text-decoration:none;cursor:pointer}.m1-header__link:hover{background:var(--bg-subtle);color:var(--fg-1);text-decoration:none}.m1-header__link--active{color:var(--accent)}
.m1-header--dark .m1-header__link{color:#d6d8dd}.m1-header--dark .m1-header__link:hover{background:rgba(255,255,255,.12);color:#fff}.m1-header--dark .m1-header__link--active{color:#fff;box-shadow:inset 0 -3px 0 var(--m1-red-500);border-radius:0}
.m1-avatar{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--m1-black);color:#fff;font:700 14px/1 var(--font-sans);flex:none}.m1-avatar--red{background:var(--m1-red-500)}.m1-avatar--sm{width:32px;height:32px;font-size:12px}
.m1-tabs{display:flex;gap:32px;border-bottom:1px solid var(--border-1);font-family:var(--font-sans)}.m1-tabs__tab{position:relative;padding:12px 0;border:0;background:none;font:600 16px/24px var(--font-sans);color:var(--fg-3);cursor:pointer;display:inline-flex;gap:8px;align-items:center}.m1-tabs__tab:hover{color:var(--fg-1)}.m1-tabs__tab--active{color:var(--fg-1)}.m1-tabs__tab--active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--accent)}.m1-tabs__tab:focus-visible{outline:0;box-shadow:var(--focus-ring)}
.m1-side{display:flex;flex-direction:column;gap:4px;width:264px;box-sizing:border-box;padding:24px 16px;background:var(--bg-surface);border-right:1px solid var(--border-1);font-family:var(--font-sans)}
.m1-side__item{display:flex;align-items:center;gap:12px;height:48px;padding:0 16px;border:0;border-radius:var(--radius-md);background:none;color:var(--fg-2);font:600 15px/1 var(--font-sans);cursor:pointer;text-align:left;width:100%}.m1-side__item:hover{background:var(--bg-subtle);color:var(--fg-1)}.m1-side__item--active{background:var(--accent-soft);color:var(--accent)}.m1-side__item span.m1-side__count{margin-left:auto;font-size:12px;color:var(--fg-3)}
.m1-side__group{font:700 12px/16px var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);padding:16px 16px 8px}
.m1-table{width:100%;border-collapse:collapse;font-family:var(--font-sans);background:var(--bg-surface)}.m1-table th{padding:16px 20px;text-align:left;font:700 12px/16px var(--font-sans);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);border-bottom:1px solid var(--border-2);white-space:nowrap}
.m1-table td{padding:20px;font:500 15px/20px var(--font-sans);color:var(--fg-1);border-bottom:1px solid var(--border-1)}.m1-table tbody tr:hover td{background:var(--bg-page)}.m1-table .is-num{text-align:right;font-variant-numeric:tabular-nums}.m1-table-wrap{border:1px solid var(--border-1);border-radius:var(--radius-md);overflow:hidden;background:var(--bg-surface)}.m1-table-wrap .m1-table tbody tr:last-child td{border-bottom:0}
.m1-pagination{display:flex;gap:4px;align-items:center;font-family:var(--font-sans)}.m1-pagination button{min-width:40px;height:40px;border:0;border-radius:var(--radius-md);background:none;color:var(--fg-1);font:600 14px/1 var(--font-sans);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.m1-pagination button:hover{background:var(--bg-subtle)}.m1-pagination button[aria-current]{background:var(--m1-black);color:#fff}.m1-pagination button:disabled{color:var(--fg-disabled);cursor:not-allowed;background:none}
.m1-stat{position:relative;background:var(--bg-surface);border:1px solid var(--border-1);border-radius:var(--radius-md);padding:24px;font-family:var(--font-sans);overflow:hidden}.m1-stat__value{font:800 40px/48px var(--font-sans);color:var(--fg-1);letter-spacing:-.01em}.m1-stat__label{font:500 14px/20px var(--font-sans);color:var(--fg-3);margin-top:4px}.m1-stat__delta{font:700 12px/16px var(--font-sans);margin-top:12px}.m1-stat__delta--up{color:var(--success-fg)}.m1-stat__delta--down{color:var(--danger)}.m1-stat:before{content:"";position:absolute;left:24px;top:0;width:32px;height:4px;background:var(--accent)}
.m1-alert{display:flex;gap:12px;padding:16px 20px;border-radius:var(--radius-md);font:500 14px/20px var(--font-sans);background:var(--info-soft);color:var(--fg-1);border:1px solid var(--info)}.m1-alert .m1-icon{color:var(--info)}.m1-alert--success{border-color:var(--success);background:var(--success-soft)}.m1-alert--success .m1-icon{color:var(--success)}.m1-alert--warning{border-color:var(--warning);background:var(--warning-soft)}.m1-alert--warning .m1-icon{color:var(--warning)}.m1-alert--danger{border-color:var(--danger);background:var(--danger-soft)}.m1-alert--danger .m1-icon{color:var(--danger)}.m1-alert__title{font-weight:700;margin-bottom:2px}
.m1-toast{display:inline-flex;align-items:center;gap:12px;min-width:280px;padding:14px 16px 14px 20px;border-radius:var(--radius-md);background:var(--m1-black);color:#fff;box-shadow:var(--shadow-3);font:500 14px/20px var(--font-sans)}[data-theme="dark"] .m1-toast{background:#2C2F37}.m1-toast .m1-icon{color:var(--m1-green-500)}.m1-toast--danger .m1-icon{color:var(--m1-red-300)}.m1-toast__msg{flex:1}.m1-toast button{border:0;background:none;color:inherit;cursor:pointer;opacity:.7;display:inline-flex;padding:0}.m1-toast button:hover{opacity:1}
.m1-overlay{position:fixed;inset:0;background:var(--overlay);display:flex;align-items:center;justify-content:center;padding:24px;z-index:100}.m1-overlay--inline{position:absolute}
.m1-dialog{width:100%;max-width:480px;background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);overflow:hidden;font-family:var(--font-sans);color:var(--fg-1)}.m1-dialog:before{content:"";display:block;height:6px;background:var(--accent)}
.m1-dialog__head{display:flex;align-items:flex-start;gap:16px;padding:24px 24px 8px}.m1-dialog__title{flex:1;font:700 22px/28px var(--font-sans);margin:0}.m1-dialog__body{padding:0 24px 24px;font:400 16px/24px var(--font-sans);color:var(--fg-2)}.m1-dialog__foot{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;background:var(--bg-page);border-top:1px solid var(--border-1)}
.m1-tip{position:relative;display:inline-flex}.m1-tip__bubble{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);padding:8px 12px;border-radius:var(--radius-sm);background:var(--m1-black);color:#fff;font:500 12px/16px var(--font-sans);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease);z-index:50}.m1-tip:hover .m1-tip__bubble,.m1-tip:focus-within .m1-tip__bubble,.m1-tip--open .m1-tip__bubble{opacity:1}
.m1-empty{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:48px;border:1px dashed var(--border-2);border-radius:var(--radius-md);background:var(--bg-surface);font-family:var(--font-sans)}.m1-empty__icon{color:var(--accent);font-size:40px}.m1-empty__title{font:700 20px/28px var(--font-sans);margin:0}.m1-empty__text{font:400 14px/20px var(--font-sans);color:var(--fg-3);margin:0 0 8px;max-width:420px}

/* --- Иконки: Material Symbols (Apache 2.0) как SVG-маска, цвет = currentColor --- */
.m1-icon{display:inline-block;flex:none;width:24px;height:24px;background:currentColor;-webkit-mask:var(--i) center/contain no-repeat;mask:var(--i) center/contain no-repeat;vertical-align:middle}
.m1-icon--sm{width:20px;height:20px}.m1-icon--xs{width:16px;height:16px}.m1-icon--lg{width:40px;height:40px}
.m1-icon[data-i="add"]{--i:url(/icons/add.svg)}
.m1-icon[data-i="arrow_back"]{--i:url(/icons/arrow_back.svg)}
.m1-icon[data-i="arrow_downward"]{--i:url(/icons/arrow_downward.svg)}
.m1-icon[data-i="arrow_forward"]{--i:url(/icons/arrow_forward.svg)}
.m1-icon[data-i="arrow_upward"]{--i:url(/icons/arrow_upward.svg)}
.m1-icon[data-i="assignment"]{--i:url(/icons/assignment.svg)}
.m1-icon[data-i="assignment_ind"]{--i:url(/icons/assignment_ind.svg)}
.m1-icon[data-i="block"]{--i:url(/icons/block.svg)}
.m1-icon[data-i="check"]{--i:url(/icons/check.svg)}
.m1-icon[data-i="check_circle"]{--i:url(/icons/check_circle.svg)}
.m1-icon[data-i="check_circle-fill"]{--i:url(/icons/check_circle-fill.svg)}
.m1-icon[data-i="close"]{--i:url(/icons/close.svg)}
.m1-icon[data-i="content_copy"]{--i:url(/icons/content_copy.svg)}
.m1-icon[data-i="delete"]{--i:url(/icons/delete.svg)}
.m1-icon[data-i="download"]{--i:url(/icons/download.svg)}
.m1-icon[data-i="edit"]{--i:url(/icons/edit.svg)}
.m1-icon[data-i="error"]{--i:url(/icons/error.svg)}
.m1-icon[data-i="error-fill"]{--i:url(/icons/error-fill.svg)}
.m1-icon[data-i="expand_more"]{--i:url(/icons/expand_more.svg)}
.m1-icon[data-i="fact_check"]{--i:url(/icons/fact_check.svg)}
.m1-icon[data-i="group"]{--i:url(/icons/group.svg)}
.m1-icon[data-i="history"]{--i:url(/icons/history.svg)}
.m1-icon[data-i="hourglass_top"]{--i:url(/icons/hourglass_top.svg)}
.m1-icon[data-i="hourglass_top-fill"]{--i:url(/icons/hourglass_top-fill.svg)}
.m1-icon[data-i="inbox"]{--i:url(/icons/inbox.svg)}
.m1-icon[data-i="info"]{--i:url(/icons/info.svg)}
.m1-icon[data-i="info-fill"]{--i:url(/icons/info-fill.svg)}
.m1-icon[data-i="inventory_2"]{--i:url(/icons/inventory_2.svg)}
.m1-icon[data-i="layers"]{--i:url(/icons/layers.svg)}
.m1-icon[data-i="link"]{--i:url(/icons/link.svg)}
.m1-icon[data-i="lock_reset"]{--i:url(/icons/lock_reset.svg)}
.m1-icon[data-i="login"]{--i:url(/icons/login.svg)}
.m1-icon[data-i="logout"]{--i:url(/icons/logout.svg)}
.m1-icon[data-i="person"]{--i:url(/icons/person.svg)}
.m1-icon[data-i="person_add"]{--i:url(/icons/person_add.svg)}
.m1-icon[data-i="play_arrow"]{--i:url(/icons/play_arrow.svg)}
.m1-icon[data-i="publish"]{--i:url(/icons/publish.svg)}
.m1-icon[data-i="quiz"]{--i:url(/icons/quiz.svg)}
.m1-icon[data-i="rate_review"]{--i:url(/icons/rate_review.svg)}
.m1-icon[data-i="schedule"]{--i:url(/icons/schedule.svg)}
.m1-icon[data-i="search"]{--i:url(/icons/search.svg)}
.m1-icon[data-i="search_off"]{--i:url(/icons/search_off.svg)}
.m1-icon[data-i="task_alt"]{--i:url(/icons/task_alt.svg)}
.m1-icon[data-i="task_alt-fill"]{--i:url(/icons/task_alt-fill.svg)}
.m1-icon[data-i="timer"]{--i:url(/icons/timer.svg)}
.m1-icon[data-i="upload_file"]{--i:url(/icons/upload_file.svg)}
.m1-icon[data-i="visibility"]{--i:url(/icons/visibility.svg)}
.m1-icon[data-i="warning"]{--i:url(/icons/warning.svg)}
.m1-icon[data-i="warning-fill"]{--i:url(/icons/warning-fill.svg)}

/* --- Основа --- */
*,*:before,*:after{box-sizing:border-box}
html{font-family:var(--font-sans);color:var(--fg-1)}
body{margin:0;background:var(--bg-page);font:400 var(--fs-body)/var(--lh-body) var(--font-sans);color:var(--fg-1)}
h1,h2,h3,h4{font-family:var(--font-sans);color:var(--fg-1)}
h1{font:700 var(--fs-h2)/var(--lh-h2) var(--font-sans);letter-spacing:var(--tracking-tight);margin:0}
h2{font:700 var(--fs-h4)/var(--lh-h4) var(--font-sans);margin:0 0 var(--space-4)}
h3{font:600 16px/24px var(--font-sans);margin:0 0 var(--space-3)}
p{margin:0 0 var(--space-3)}
button,input,select,textarea{font-family:inherit}
.muted{color:var(--fg-3)}.small{font-size:var(--fs-small);line-height:var(--lh-small)}.strong{font-weight:700}
.pre{white-space:pre-wrap}.nowrap{white-space:nowrap}
.overline{font:700 var(--fs-caption)/var(--lh-caption) var(--font-sans);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--fg-3)}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0}
.stack{display:flex;flex-direction:column;gap:var(--space-6)}.stack-sm{display:flex;flex-direction:column;gap:var(--space-3)}
.row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.row-end{justify-content:flex-end}.row-between{justify-content:space-between}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-5)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}
.m1-btn{text-decoration:none}.m1-btn:hover{text-decoration:none}
a.m1-btn--primary,a.m1-btn--primary:hover{color:#fff}a.m1-btn--secondary,a.m1-btn--ghost{color:var(--fg-1)}
.m1-btn--danger{background:transparent;color:var(--danger);border-color:var(--danger)}.m1-btn--danger:hover{background:var(--danger-soft)}
.m1-btn--danger-solid{background:var(--danger);color:#fff}.m1-btn--danger-solid:hover{background:var(--accent-active)}
.m1-iconbtn--danger{color:var(--danger)}.m1-iconbtn--danger:hover{background:var(--danger-soft)}

/* Поля форм: стиль m1-input для всех полей, кроме флажков и файлов */
input:where(:not([type=checkbox]):not([type=radio]):not([type=file])),:where(select,textarea){box-sizing:border-box;width:100%;height:var(--ctl-md);padding:0 16px;border:1px solid var(--border-2);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--fg-1);font:400 16px/24px var(--font-sans);outline:0;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}
input:where(:not([type=checkbox]):not([type=radio]):not([type=file])):hover,select:hover,textarea:hover{border-color:var(--fg-3)}
input:where(:not([type=checkbox]):not([type=radio]):not([type=file])):focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:var(--focus-ring)}
input:disabled,select:disabled,textarea:disabled{background:var(--bg-subtle);color:var(--fg-disabled);cursor:not-allowed}
input::placeholder,textarea::placeholder{color:var(--fg-disabled)}
input[readonly]{background:var(--bg-page)}
select{appearance:none;padding-right:44px;cursor:pointer;background:var(--bg-surface) url(/icons/expand_more.svg) right 12px center/24px no-repeat}
textarea{height:auto;min-height:120px;padding:12px 16px;resize:vertical}
input.input-sm,select.input-sm{height:var(--ctl-sm);padding:0 12px;font-size:14px}select.input-sm{padding-right:40px}
input.input-num{width:120px}
input[type=checkbox],input[type=radio]{width:20px;height:20px;margin:0;accent-color:var(--accent);cursor:pointer;flex:none}
input[type=file]{font:500 14px/20px var(--font-sans);color:var(--fg-2)}
input[type=file]::file-selector-button{height:var(--ctl-sm);margin-right:12px;padding:0 16px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:transparent;color:var(--fg-1);font:600 14px/1 var(--font-sans);cursor:pointer}
input[type=file]::file-selector-button:hover{background:var(--bg-subtle)}
.m1-field{min-width:0}.m1-field__label{display:block}
.input-wrap{position:relative;display:flex;align-items:center}.input-wrap>.m1-icon{position:absolute;left:14px;color:var(--fg-3);pointer-events:none}.input-wrap>input{padding-left:44px}
.check-row{display:inline-flex;align-items:center;gap:10px;font:500 15px/20px var(--font-sans);cursor:pointer}

/* --- Каркас администратора: боковое меню и шапка --- */
.shell{display:grid;grid-template-columns:264px minmax(0,1fr);min-height:100vh}
.shell__side{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;background:var(--bg-surface);border-right:1px solid var(--border-1)}
.shell__logo{display:flex;align-items:center;height:72px;padding:0 24px;border-bottom:1px solid var(--border-1)}.shell__logo img{height:40px;display:block}
.shell__side .m1-side{border-right:0;width:auto;flex:1}
.m1-side__item{text-decoration:none}.m1-side__item:hover{text-decoration:none}
.shell__top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:flex-end;gap:16px;height:72px;padding:0 32px;background:var(--bg-surface);border-bottom:1px solid var(--border-1)}
.who{display:flex;align-items:center;gap:12px}.who__name{font:600 14px/20px var(--font-sans);color:var(--fg-1)}.who__role{font:500 12px/16px var(--font-sans);color:var(--fg-3)}
.page{width:100%;max-width:var(--container);margin:0 auto;padding:32px;display:flex;flex-direction:column;gap:24px}
.page--narrow{max-width:880px}
.page-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px}
.page-head__title{display:flex;flex-direction:column;gap:8px;min-width:0}
.page-head__actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.back{display:inline-flex;align-items:center;gap:4px;font:600 14px/20px var(--font-sans);color:var(--fg-3)}.back:hover{color:var(--fg-1);text-decoration:none}

/* Шапка сотрудника */
.m1-header__logo{height:40px}.m1-header__brand{display:flex;align-items:center;gap:16px;text-decoration:none}.m1-header__brand:hover{text-decoration:none}
.m1-header__product{font:600 14px/20px var(--font-sans);color:var(--fg-3);padding-left:16px;border-left:1px solid var(--border-1)}
.m1-header--dark .m1-header__product{color:#d6d8dd;border-color:rgba(255,255,255,.2)}
.m1-header__link{text-decoration:none}

/* --- Карточки, таблицы, пустые состояния --- */
.m1-card>h2:first-child,.m1-card>h3:first-child{margin-top:0}
.card-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.card-head h2{margin:0}
.m1-table-wrap{overflow-x:auto}
.m1-table td{vertical-align:top}.m1-table td.actions{text-align:right;white-space:nowrap}
.m1-table tr.is-clickable{cursor:pointer}.m1-table tr.is-current td{background:var(--accent-soft)}.m1-table tr.is-muted td{color:var(--fg-3)}
.m1-table .sub{display:block;margin-top:4px;font:400 13px/18px var(--font-sans);color:var(--fg-3)}
.m1-table a{font-weight:600;color:var(--fg-1)}.m1-table a:hover{color:var(--accent)}
.m1-empty{width:100%}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px}
.m1-stat--green:before{background:var(--success)}.m1-stat--yellow:before{background:var(--warning)}.m1-stat--slate:before{background:var(--m1-slate-500)}
.toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px}
.filters{display:grid;grid-template-columns:minmax(240px,2fr) repeat(3,minmax(160px,1fr));gap:16px;align-items:end}
.facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px 32px}
.fact__label{font:700 12px/16px var(--font-sans);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);margin-bottom:6px}.fact__value{font:600 15px/22px var(--font-sans)}
.list-plain{margin:0;padding:0;list-style:none}
.bullets{margin:0;padding-left:20px;display:grid;gap:8px;color:var(--fg-2)}
.error-list{margin:12px 0 0;padding-left:20px;font:500 14px/20px var(--font-sans);color:var(--danger)}
.m1-alert{align-items:flex-start}.m1-alert .m1-icon{margin-top:-2px}.m1-alert__body{flex:1;min-width:0}.m1-alert__body p:last-child{margin:0}
.copy-field{display:flex;flex-direction:column;gap:6px;margin-top:16px}.copy-field__row{display:flex;gap:8px}.copy-field__row input{flex:1}
.toast-host{position:fixed;right:32px;bottom:32px;z-index:200;display:flex;flex-direction:column;gap:8px}

/* Диалог */
.m1-overlay{overflow-y:auto}.m1-dialog{max-height:calc(100vh - 48px);display:flex;flex-direction:column}
.m1-dialog--wide{max-width:760px}.m1-dialog__body{overflow-y:auto}.m1-dialog__body>*:last-child{margin-bottom:0}
.m1-dialog__head .m1-iconbtn{margin:-6px -8px 0 0}
.dialog-section{padding:20px 0;border-top:1px solid var(--border-1)}.dialog-section:first-of-type{border-top:0;padding-top:4px}

/* --- Вход --- */
.login{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100vh}
.login__form{display:flex;flex-direction:column;justify-content:center;gap:32px;width:100%;max-width:440px;margin:0 auto;padding:48px 32px}
.login__form img{height:48px;align-self:flex-start}
.login__aside{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;gap:16px;padding:64px;background:var(--m1-red-500);color:#fff}
.login__aside .m1-stripes{width:360px;height:300px}
.login__aside h2{color:#fff;font:800 40px/48px var(--font-sans);letter-spacing:var(--tracking-tight);margin:0;max-width:440px;position:relative;z-index:1}
.login__aside p{position:relative;z-index:1;margin:0;max-width:420px;font:400 18px/28px var(--font-sans);opacity:.95}

/* --- Сотрудник: стартовый экран, мои тесты --- */
.intro{display:grid;grid-template-columns:1.2fr 1fr;gap:32px;align-items:start}
.intro__lead{font:400 var(--fs-body-lg)/var(--lh-body-lg) var(--font-sans);color:var(--fg-2);margin:0}
.m1-tile{min-height:260px}.m1-tile__facts{position:relative;z-index:1;display:grid;gap:12px;font:600 15px/20px var(--font-sans)}.m1-tile__facts span{display:flex;align-items:center;gap:10px}
.assigned{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}
.assigned .m1-card{display:flex;flex-direction:column;gap:12px}.assigned .m1-card .m1-btn{align-self:flex-start;margin-top:auto}

/* --- Прохождение --- */
.runner{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:32px;align-items:start;width:100%;max-width:1120px;margin:0 auto;padding:32px}
.runner__main{display:flex;flex-direction:column;gap:24px}
.runner__aside{position:sticky;top:24px}.runner__aside .m1-card{display:flex;flex-direction:column;gap:20px}
.runner__nav{display:flex;justify-content:space-between;gap:12px}
.m1-header__test{display:flex;flex-direction:column;flex:1;min-width:0;color:#fff}.m1-header__test b{font:700 16px/22px var(--font-sans);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m1-header__test span{font:500 13px/18px var(--font-sans);color:#c5c9d1}
.m1-option input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}
.m1-option:has(input:focus-visible){box-shadow:var(--focus-ring)}
.m1-option--selected .m1-option__mark--single:after{content:"";width:8px;height:8px;border-radius:50%;background:#fff}
.m1-option__mark .m1-icon{width:16px;height:16px}
.m1-option--static{cursor:default}.m1-option--static:hover{border-color:var(--border-2)}
.m1-option--correct:hover{border-color:var(--success)}.m1-option--incorrect:hover{border-color:var(--danger)}.m1-option--missed:hover{border-color:var(--success)}
.m1-qcard__meta .dot{width:4px;height:4px;border-radius:50%;background:var(--border-2)}
.m1-qcard__text{white-space:pre-wrap}
.m1-qcard .m1-textarea,.m1-qcard textarea{min-height:200px}
.save-status{font:500 13px/18px var(--font-sans);color:var(--fg-3);min-height:18px}.save-status--error{color:var(--danger)}.save-status--ok{color:var(--success-fg)}
.break{max-width:760px;width:100%;margin:0 auto;padding:48px 32px}
.result-wrap{display:flex;flex-direction:column}
.m1-banner__score small{margin-left:4px}

/* --- Банки, тесты, журнал --- */
.qitem{display:flex;flex-direction:column;gap:12px;padding:24px;border-bottom:1px solid var(--border-1)}.qitem:last-child{border-bottom:0}
.qitem--archived{background:var(--bg-page)}.qitem--archived .qitem__text{color:var(--fg-3)}
.qitem__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.qitem__meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font:600 13px/18px var(--font-sans);color:var(--fg-3)}
.qitem__text{font:600 16px/24px var(--font-sans);white-space:pre-wrap}
.qitem__answers{margin:0;padding:0;list-style:none;display:grid;gap:6px}
.qitem__answers li{display:flex;gap:8px;align-items:flex-start;font:400 15px/22px var(--font-sans);color:var(--fg-2)}
.qitem__answers li.is-right{color:var(--success-fg);font-weight:600}
.qitem__answers .m1-icon{width:20px;height:20px;margin-top:1px}
.qitem__stats{font:500 13px/18px var(--font-sans);color:var(--fg-3)}
.weight-edit{display:flex;align-items:center;gap:8px;font:600 13px/18px var(--font-sans);color:var(--fg-3)}.weight-edit input{width:96px}
.option-edit{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center}
.block-card .card-head{margin-bottom:16px}
.blocks-grid{display:grid;grid-template-columns:2fr 2fr 1fr 1fr;gap:16px}
.sticky-actions{position:sticky;bottom:0;z-index:10;display:flex;justify-content:flex-end;gap:12px;padding:16px 0;background:linear-gradient(to top,var(--bg-page) 70%,transparent)}
.answer{display:flex;flex-direction:column;gap:12px;padding:24px;border-bottom:1px solid var(--border-1)}.answer:last-child{border-bottom:0}
.answer__text{font:600 16px/24px var(--font-sans);white-space:pre-wrap}
.answer__body{display:grid;gap:8px}
.answer__body .m1-option{padding:12px 16px;font-size:15px}
.answer__free{padding:16px;border-radius:var(--radius-md);background:var(--bg-page);border:1px solid var(--border-1);white-space:pre-wrap}
.section-card{padding:0}.section-card>.card-head{padding:24px 24px 0;margin-bottom:8px}.section-card>.muted{padding:0 24px}
.grow{flex:1;min-width:240px}
.toolbar>h2{margin:0}
.search-box{width:360px;max-width:100%}
.person{display:flex;align-items:center;gap:12px;min-width:220px}
.login__form>div:empty,.stack>div:empty,.stack-sm>div:empty{display:none}
.m1-banner .m1-banner__title,.m1-tile h3,.m1-tile .m1-tile__title{color:inherit}
.m1-banner__body{max-width:1120px;margin:0 auto}
.assigned .m1-badge{align-self:flex-start}
.m1-empty>.m1-icon{color:var(--accent)}

/* Выпадающее меню действий */
.action-menu{position:fixed;z-index:150;width:340px;max-width:calc(100vw - 16px);background:var(--bg-surface);border:1px solid var(--border-1);border-radius:var(--radius-md);box-shadow:var(--shadow-3);padding:6px;display:flex;flex-direction:column;gap:2px;text-align:left;white-space:normal}
.action-menu__item{display:flex;gap:12px;align-items:flex-start;width:100%;padding:10px 12px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--fg-1);font:400 15px/20px var(--font-sans);text-align:left;cursor:pointer}
.action-menu__item:hover,.action-menu__item:focus-visible{background:var(--bg-subtle);outline:0}
.action-menu__item .m1-icon{margin-top:1px;flex:none}
.action-menu__item strong{display:block;font-weight:600}
.action-menu__desc{display:block;margin-top:2px;font-size:13px;line-height:18px;color:var(--fg-3)}
.action-menu__item.is-danger strong,.action-menu__item.is-danger .m1-icon{color:var(--danger)}
/* Действие с пояснением в окне управления доступом */
.action-row{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:16px 0;border-top:1px solid var(--border-1)}
.action-row:first-child{border-top:0;padding-top:4px}
.action-row__text{flex:1;min-width:0}.action-row__text strong{display:block;color:var(--fg-1)}.action-row__text p{margin:4px 0 0;font-size:14px;line-height:20px;color:var(--fg-3)}
.action-row .m1-btn{flex:none}
.invite-date{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.section-label{margin:24px 0 8px;font:700 12px/16px var(--font-sans);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3)}
.invite-date{margin-top:12px}.invite-date input{width:220px;max-width:100%}
.who__link{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none;border-radius:var(--radius-md)}.who__link:hover .who__name{color:var(--accent)}
.person .sub{display:block;margin-top:4px;font:400 13px/18px var(--font-sans);color:var(--fg-3)}
