@font-face{font-family:"Onest";font-style:normal;font-weight:600 800;font-display:swap;src:url("fonts/onest-cyrillic.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Onest";font-style:normal;font-weight:600 800;font-display:swap;src:url("fonts/onest-latin.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}

:root{
  --bg:#0b0d13;--bg-2:#0e1118;--panel:#151821;--panel-2:#191d27;--panel-3:#202530;
  --line:#2a303c;--line-soft:#202631;--text:#f7f8fb;--muted:#969dac;--muted-2:#717888;
  --accent:#b5ff4a;--accent-2:#8de72e;--accent-ink:#152300;--accent-soft:rgba(181,255,74,.12);
  --green:#65c77e;--danger:#ff7171;--warning:#f4bd5f;--shadow:0 26px 80px rgba(0,0,0,.34);
  --radius:24px;--top:72px;--max:1440px;--icon-filter:invert(1) brightness(1.25);color-scheme:dark;
}
html[data-theme="light"]{
  --bg:#f4f8f3;--bg-2:#edf5ee;--panel:#ffffff;--panel-2:#f8fbf7;--panel-3:#eef7ef;
  --line:#dce9de;--line-soft:#e7efe8;--text:#123c29;--muted:#64776c;--muted-2:#829188;
  --accent:#54bd70;--accent-2:#36a85b;--accent-ink:#ffffff;--accent-soft:rgba(84,189,112,.12);
  --green:#3caf64;--danger:#d95353;--warning:#bd7d1b;--shadow:0 24px 70px rgba(35,87,52,.12);--icon-filter:none;color-scheme:light;
}
html[data-theme="auto"]{color-scheme:dark}
@media(prefers-color-scheme:light){html[data-theme="auto"]{
  --bg:#f4f8f3;--bg-2:#edf5ee;--panel:#ffffff;--panel-2:#f8fbf7;--panel-3:#eef7ef;
  --line:#dce9de;--line-soft:#e7efe8;--text:#123c29;--muted:#64776c;--muted-2:#829188;
  --accent:#54bd70;--accent-2:#36a85b;--accent-ink:#ffffff;--accent-soft:rgba(84,189,112,.12);
  --green:#3caf64;--danger:#d95353;--warning:#bd7d1b;--shadow:0 24px 70px rgba(35,87,52,.12);--icon-filter:none;color-scheme:light;
}}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);font-family:"Segoe UI Variable Text","Segoe UI",ui-sans-serif,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-3;background:radial-gradient(circle at 78% 9%,rgba(181,255,74,.055),transparent 27%),radial-gradient(circle at 10% 60%,rgba(93,199,126,.045),transparent 25%)}
html[data-theme="light"] body::before{background:radial-gradient(circle at 86% 3%,rgba(99,198,119,.18),transparent 32%),radial-gradient(circle at 8% 55%,rgba(121,215,145,.12),transparent 28%)}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{color:inherit}
img{max-width:100%;display:block}
[hidden]{display:none!important}
.ambient{position:fixed;border-radius:999px;filter:blur(100px);pointer-events:none;opacity:.12;z-index:-2}
.ambient-a{width:440px;height:440px;background:var(--accent);top:-280px;left:-180px}.ambient-b{width:380px;height:380px;background:#3ba968;right:-220px;top:34%}

/* Header */
.topbar{height:var(--top);position:sticky;top:0;z-index:50;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding:0 clamp(14px,4vw,58px);background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(22px);border-bottom:1px solid var(--line-soft)}
.brand{display:inline-flex;align-items:center;gap:10px;font-weight:950;letter-spacing:-.035em;white-space:nowrap}
.brand-mark{width:38px;height:38px;border-radius:11px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-size:1.12rem;font-weight:1000;box-shadow:0 0 25px color-mix(in srgb,var(--accent) 22%,transparent)}
.brand-name{font-size:1.2rem}.brand-name span{color:var(--accent)}
.brand-logo{width:54px;height:54px;border-radius:16px;object-fit:cover;flex:0 0 auto;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.menu-head .brand-logo{width:50px;height:50px;border-radius:15px}.auth-brand .brand-logo{width:94px;height:94px;border-radius:27px;box-shadow:0 18px 46px rgba(0,0,0,.22)}
.desktop-nav{justify-self:center;display:flex;align-items:center;gap:4px;border:1px solid var(--line);background:var(--panel);border-radius:14px;padding:4px}
.desktop-nav a{padding:9px 14px;border-radius:10px;color:var(--muted);font-size:.86rem;font-weight:850;transition:.2s;display:inline-flex;align-items:center;gap:7px}
.desktop-nav a:hover,.desktop-nav a.active{background:var(--panel-3);color:var(--text)}
.desktop-nav a.active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}
.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}
.icon-button,.menu-button{width:42px;height:42px;border:1px solid var(--line);background:var(--panel);border-radius:12px;display:grid;place-items:center;cursor:pointer;transition:.2s}
.icon-button:hover,.menu-button:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:var(--panel-3)}
.menu-button{gap:4px;padding:11px}.menu-button i{display:block;width:18px;height:2px;border-radius:99px;background:currentColor}
.theme-sun{display:none}html[data-theme="light"] .theme-sun{display:inline}html[data-theme="light"] .theme-moon{display:none}
@media(prefers-color-scheme:light){html[data-theme="auto"] .theme-sun{display:inline}html[data-theme="auto"] .theme-moon{display:none}}
.profile-chip{height:42px;display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:12px;padding:4px 12px 4px 5px;background:var(--panel)}
.profile-chip span{width:32px;height:32px;border-radius:9px;background:var(--panel-3);color:var(--text);display:grid;place-items:center;font-weight:950}.profile-chip b{font-size:.83rem;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nav-icon{width:18px;height:18px;object-fit:contain;filter:var(--icon-filter);opacity:.9;flex:0 0 auto}.profile-chip .nav-icon{width:19px;height:19px}.desktop-nav a.active .nav-icon,.menu-nav a.active .nav-icon{opacity:1}
.login-chip{height:42px;display:flex;align-items:center;padding:0 16px;border:1px solid var(--line);border-radius:12px;background:var(--panel);font-weight:850;font-size:.86rem}

/* Drawer */
.menu-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.55);backdrop-filter:blur(3px);z-index:70;opacity:0;pointer-events:none;transition:.25s}
.side-menu{position:fixed;top:0;right:0;width:min(410px,94vw);height:var(--bm-menu-height,100dvh);max-height:var(--bm-menu-height,100dvh);box-sizing:border-box;background:var(--bg-2);border-left:1px solid var(--line);z-index:80;padding:0;display:flex;flex-direction:column;overflow:hidden;touch-action:pan-y;transform:translateX(103%);transition:.28s cubic-bezier(.2,.75,.2,1);box-shadow:-30px 0 90px rgba(0,0,0,.3)}
body.menu-open{overflow:hidden}body.menu-open .menu-backdrop{opacity:1;pointer-events:auto}body.menu-open .side-menu{transform:none}
.menu-head{display:flex;align-items:center;justify-content:space-between;flex:0 0 auto;margin:0;padding:18px 18px 15px;background:var(--bg-2);position:relative;z-index:2}.menu-head .icon-button{font-size:1.4rem}
.user-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;border:1px solid var(--line);background:var(--panel);border-radius:18px;padding:14px;margin-bottom:14px}
.user-card-avatar{width:47px;height:47px;border-radius:14px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-weight:950}.user-card strong,.user-card small{display:block}.user-card small{color:var(--muted);margin-top:2px;font-size:.78rem}.user-card>b{color:var(--muted)}
.menu-nav{display:grid;gap:6px}.menu-nav a{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:13px;font-weight:850;color:var(--muted)}.menu-nav a span{width:27px;min-height:24px;text-align:center;display:grid;place-items:center}.menu-nav a:hover,.menu-nav a.active{background:var(--panel);color:var(--text)}.menu-nav a.active span{color:var(--accent)}
.menu-footer{margin-top:18px;display:grid;gap:10px}
.guest-auth-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.guest-auth-actions .primary-button,.guest-auth-actions .secondary-button{width:100%;min-width:0}.theme-select{border:1px solid var(--line);background:var(--panel);border-radius:15px;padding:12px}.theme-select>span{display:block;color:var(--muted);font-size:.75rem;font-weight:800;margin-bottom:8px}.theme-select>div{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.theme-select button{border:1px solid var(--line);background:var(--panel-2);border-radius:9px;padding:8px 5px;cursor:pointer;font-size:.76rem;font-weight:800}.theme-select button:hover{border-color:var(--accent)}
.admin-link,.logout-link{padding:12px 14px;border-radius:12px;border:1px solid var(--line);font-weight:850;font-size:.84rem}.admin-link{color:var(--accent)}.logout-link{color:var(--muted)}

/* General */
.page-shell{width:min(var(--max),calc(100% - 24px));max-width:100%;margin:0 auto;padding:clamp(24px,4vw,48px) 0 72px;min-height:calc(100vh - var(--top) - 90px);overflow-x:clip}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:22px}.section-head h1,.section-head h2{margin:5px 0 6px;letter-spacing:-.045em;line-height:1.03}.section-head h1{font-size:clamp(2.1rem,5vw,4rem)}.section-head h2{font-size:clamp(1.75rem,4vw,3rem)}.section-head p{margin:0;color:var(--muted);max-width:690px}
.eyebrow,.stage-kicker{display:inline-flex;align-items:center;min-height:27px;padding:0 10px;border-radius:8px;background:var(--accent-soft);color:var(--accent);font-size:.72rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}
html[data-theme="light"] .eyebrow,html[data-theme="light"] .stage-kicker{color:#2b9b52}
.primary-button,.secondary-button,.danger-button,.text-button{border:0;border-radius:12px;min-height:44px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:900;cursor:pointer;transition:.2s}
.primary-button{background:var(--accent);color:var(--accent-ink);box-shadow:0 10px 26px color-mix(in srgb,var(--accent) 16%,transparent)}.primary-button:hover{transform:translateY(-1px);filter:brightness(1.04)}
.secondary-button{background:var(--panel);border:1px solid var(--line)}.secondary-button:hover{border-color:color-mix(in srgb,var(--accent) 42%,var(--line))}.danger-button{background:rgba(255,113,113,.1);color:var(--danger);border:1px solid rgba(255,113,113,.18)}.text-button{background:transparent;color:var(--accent);padding:0;font-size:.84rem;min-height:auto}.wide{width:100%}
.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.flash{padding:13px 15px;border-radius:13px;margin-bottom:16px;border:1px solid var(--line)}.flash.success{background:var(--accent-soft);color:var(--accent)}.flash.error,.form-error{background:rgba(255,113,113,.09);color:var(--danger);border:1px solid rgba(255,113,113,.22);padding:12px;border-radius:12px}
.footer{width:min(var(--max),calc(100% - 24px));max-width:100%;margin:0 auto;border-top:1px solid var(--line);padding:25px 0 40px;display:flex;align-items:center;justify-content:space-between;gap:18px;color:var(--muted);font-size:.82rem}.footer-main{display:flex;flex-direction:column;gap:3px}.footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.footer-link{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);font-weight:850;transition:.2s}.footer-link:hover{border-color:color-mix(in srgb,var(--accent) 48%,var(--line));color:var(--accent)}.footer-link i{font-style:normal;color:var(--accent)}.contact-icon{width:18px;height:18px;object-fit:contain;filter:var(--icon-filter);opacity:.88}.footer-link:hover .contact-icon,.menu-contact-links a:hover .contact-icon{opacity:1}.menu-contact-links{display:grid;grid-template-columns:1fr 1fr;gap:7px}.menu-contact-links a{display:flex;align-items:center;justify-content:center;gap:7px;padding:9px;border:1px solid var(--line);border-radius:10px;background:var(--panel);font-size:.76rem;font-weight:850}.menu-contact-links a:hover{border-color:var(--accent);color:var(--accent)}

/* News */
.news-section{margin-bottom:clamp(58px,8vw,100px);max-width:100%;overflow:hidden}.news-head{align-items:center}.carousel-controls{display:flex;gap:7px}.carousel-controls button{width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:var(--panel);cursor:pointer;font-weight:900}.carousel-controls button:hover{border-color:var(--accent)}
.news-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:100%;gap:18px;overflow-x:auto;max-width:100%;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px 0 15px}.news-carousel::-webkit-scrollbar{display:none}
.news-card{scroll-snap-align:start;border:1px solid var(--line);border-radius:32px;overflow:hidden;background:var(--panel);display:flex;flex-direction:column;position:relative;box-shadow:var(--shadow);width:100%;max-width:100%}
.news-card.has-image,.news-card.no-image{display:flex;flex-direction:column}.news-image,.news-visual{width:100%;aspect-ratio:16/9;overflow:hidden;background:var(--panel-2);flex:none}.news-image img{width:100%;height:100%;object-fit:cover;display:block}
.news-content{padding:clamp(22px,3.5vw,34px);display:flex;flex-direction:column;justify-content:center;position:relative;z-index:2}.news-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.news-label{display:inline-flex;align-items:center;gap:6px;width:max-content;padding:7px 10px;border-radius:9px;background:var(--accent-soft);color:var(--accent);font-size:.72rem;font-weight:950;text-transform:uppercase;letter-spacing:.07em}.news-content time{color:var(--muted);font-size:.78rem;font-weight:750}.news-content h2{font-size:clamp(1.9rem,4vw,3.4rem);line-height:1.02;letter-spacing:-.05em;margin:18px 0 14px;max-width:none}.news-content p{font-size:1rem;color:var(--muted);max-width:none;margin:0 0 24px}.news-link{display:inline-flex;align-items:center;justify-content:space-between;width:max-content;min-width:220px;padding:14px 17px;border-radius:13px;background:var(--accent);color:var(--accent-ink);font-weight:950}.news-link span{font-size:1.2rem}
.news-card.no-image{background:var(--panel)}.news-visual{display:grid;place-content:center;position:relative;background:radial-gradient(circle at 50% 40%,color-mix(in srgb,var(--accent) 26%,transparent),transparent 48%)}.news-visual::before{content:"";position:absolute;width:min(42vw,300px);aspect-ratio:1/1;border-radius:60px;background:linear-gradient(145deg,var(--accent),var(--accent-2));transform:rotate(-8deg);box-shadow:0 35px 70px color-mix(in srgb,var(--accent) 18%,transparent)}.news-visual::after{content:"";position:absolute;width:min(36vw,240px);aspect-ratio:4/3;background:var(--panel-2);border:12px solid color-mix(in srgb,var(--accent) 72%,var(--panel));border-radius:24px;left:50%;top:50%;transform:translate(-50%,-42%) rotate(-8deg)}.news-visual span{position:relative;z-index:3;width:72px;height:72px;border-radius:50%;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-size:2rem;font-weight:1000;margin:auto}.news-visual b{position:relative;z-index:3;margin-top:18px;color:var(--text);font-size:1.1rem}

/* Library flow */
.library-flow{scroll-margin-top:90px}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:28px}.course-card{min-height:122px;border:1px solid var(--line);border-radius:20px;background:var(--panel);padding:18px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;text-align:left;cursor:pointer;transition:.22s;position:relative;overflow:hidden}.course-card::after{content:"";position:absolute;width:130px;height:130px;border-radius:50%;right:-70px;bottom:-85px;background:var(--accent-soft);transition:.25s}.course-card:hover,.course-card.active{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 55%,var(--line));box-shadow:0 16px 45px rgba(0,0,0,.15)}.course-card.active{background:linear-gradient(135deg,var(--panel),var(--accent-soft))}.course-number{width:52px;height:52px;border-radius:15px;background:var(--panel-3);display:grid;place-items:center;color:var(--accent);font-weight:950}.course-card strong,.course-card small{display:block}.course-card strong{font-size:1.13rem}.course-card small{color:var(--muted);margin-top:4px}.course-card>b{font-size:1.2rem;color:var(--muted);position:relative;z-index:1}
.library-breadcrumbs{display:flex;align-items:center;gap:8px;overflow:auto;white-space:nowrap;margin:28px 0 16px;padding-bottom:4px}.library-breadcrumbs button{border:0;background:none;color:var(--muted);cursor:pointer;padding:0;font-weight:800}.library-breadcrumbs button:last-of-type{color:var(--text)}.library-breadcrumbs span{color:var(--muted-2)}
.flow-stage{border-top:1px solid var(--line);padding-top:28px;margin-top:28px;scroll-margin-top:92px}.stage-head{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-bottom:17px}.stage-head h2{font-size:clamp(1.5rem,3vw,2.35rem);letter-spacing:-.04em;margin:6px 0 0}.subject-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.subject-button{min-height:92px;border:1px solid var(--line);background:var(--panel);border-radius:17px;padding:15px;display:flex;flex-direction:column;justify-content:space-between;text-align:left;cursor:pointer;transition:.2s}.subject-button:hover,.subject-button.active{border-color:var(--accent);background:var(--accent-soft)}.subject-button strong{font-size:.95rem}.subject-button small{color:var(--muted);margin-top:9px}.subject-button b{color:var(--accent);font-size:.8rem}
.category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:11px}.category-grid button{border:1px solid var(--line);background:var(--panel);border-radius:18px;min-height:130px;padding:16px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;text-align:left;cursor:pointer;transition:.2s;position:relative}.category-grid button:hover,.category-grid button.active{border-color:var(--accent);background:linear-gradient(145deg,var(--panel),var(--accent-soft));transform:translateY(-2px)}.category-grid button>span{position:absolute;top:15px;left:15px;width:38px;height:38px;border-radius:12px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:1000}.category-grid strong{font-size:.95rem}.category-grid small{color:var(--muted);margin-top:3px}.category-grid small::after{content:" материалов"}
.library-tools{display:grid;grid-template-columns:minmax(260px,1fr) 190px;gap:10px;align-items:center;margin:0 0 17px;padding:9px;border:1px solid var(--line);border-radius:17px;background:var(--panel);position:sticky;top:calc(var(--top) + 10px);z-index:20;box-shadow:0 12px 35px rgba(0,0,0,.08)}
.search-box{display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:var(--panel-2);border-radius:12px;padding:0 13px}.search-box span{font-size:1.3rem;color:var(--muted)}input,select,textarea{width:100%;border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:12px;min-height:45px;padding:10px 12px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}textarea{resize:vertical}.search-box input{border:0;background:transparent;padding-left:0;box-shadow:none!important}
.materials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.material-card{border:1px solid var(--line);background:var(--panel);border-radius:21px;overflow:hidden;display:flex;flex-direction:column;min-height:360px;transition:.22s}.material-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:0 17px 48px rgba(0,0,0,.13)}.material-cover{aspect-ratio:16/9;height:auto;background:var(--panel-2);position:relative;overflow:hidden}.material-cover img{width:100%;height:100%;object-fit:cover;display:block}.cover-placeholder{width:100%;height:100%;display:grid;place-items:center;background:radial-gradient(circle at 75% 20%,var(--accent-soft),transparent 38%),linear-gradient(145deg,var(--panel-2),var(--panel-3))}.cover-placeholder span{font-size:4rem;font-weight:1000;color:var(--accent);opacity:.8}.material-type{position:absolute;left:12px;top:12px;padding:6px 9px;border-radius:8px;background:color-mix(in srgb,var(--bg) 78%,transparent);backdrop-filter:blur(10px);font-size:.68rem;font-weight:950;color:var(--accent)}html[data-theme="light"] .material-type{background:rgba(255,255,255,.84);color:#2a9f51}.material-body{padding:17px;display:flex;flex-direction:column;flex:1}.material-meta{display:flex;gap:7px;color:var(--muted);font-size:.74rem}.material-body h3{font-size:1.07rem;line-height:1.25;margin:10px 0 8px}.material-body p{color:var(--muted);font-size:.85rem;margin:0 0 17px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.material-links{margin-top:auto;display:flex;flex-wrap:wrap;gap:7px}.source-link{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:10px;padding:8px 10px;font-size:.74rem;font-weight:850;background:var(--panel-2)}.source-link i{font-style:normal;width:20px;height:20px;border-radius:6px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center}.source-link.disabled{color:var(--muted);pointer-events:none}.empty-state{padding:44px;text-align:center;border:1px dashed var(--line);border-radius:20px;color:var(--muted);background:color-mix(in srgb,var(--panel) 55%,transparent)}

/* Auth / profile / schedule */
.auth-body{display:grid;place-items:center;padding:28px}.auth-shell,.install-shell{width:min(470px,100%)}.install-shell{width:min(760px,100%)}.auth-brand{display:flex;justify-content:center;align-items:center;gap:10px;margin-bottom:18px}.auth-card{background:var(--panel);border:1px solid var(--line);border-radius:26px;padding:clamp(22px,5vw,38px);box-shadow:var(--shadow)}.auth-card h1{font-size:2rem;letter-spacing:-.04em;margin:7px 0}.auth-card>p{color:var(--muted);margin-top:0}.stack-form{display:grid;gap:14px}.stack-form label{display:grid;gap:7px;font-weight:800;font-size:.86rem}.stack-form label small{color:var(--muted);font-weight:500}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.stack-form hr{width:100%;border:0;border-top:1px solid var(--line)}.auth-note{text-align:center;color:var(--muted);font-size:.88rem}.auth-note a{color:var(--accent);font-weight:850}.success-icon{width:58px;height:58px;border-radius:18px;background:var(--accent-soft);color:var(--accent);font-size:2rem;display:grid;place-items:center}.password-row{position:relative}.password-row input{padding-right:62px}.password-row button{position:absolute;right:8px;bottom:6px;height:34px;border:0;background:none;color:var(--muted);cursor:pointer}
.profile-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.panel,.test-card{background:var(--panel);border:1px solid var(--line);border-radius:21px;padding:21px}.panel h2,.test-card h2{margin:0 0 16px;letter-spacing:-.03em}.profile-hero{display:flex;align-items:center;gap:16px;margin-bottom:22px}.profile-avatar{width:70px;height:70px;border-radius:20px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-size:2rem;font-weight:950}.profile-hero h1{margin:0}.profile-hero p{margin:3px 0;color:var(--muted)}.info-list{display:grid;gap:9px}.info-row{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line)}.info-row span{color:var(--muted)}.telegram-card{background:linear-gradient(145deg,var(--panel-2),var(--accent-soft));border:1px solid var(--line);border-radius:17px;padding:18px}.telegram-card h3{margin:0}.telegram-card p{color:var(--muted)}
.schedule-nav{display:flex;gap:8px;overflow:auto;padding-bottom:8px}.day-tab{min-width:94px;border:1px solid var(--line);background:var(--panel);border-radius:13px;padding:10px 12px;text-align:left;cursor:pointer}.day-tab.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.day-tab strong,.day-tab small{display:block}.schedule-day{display:none;margin-top:18px}.schedule-day.active{display:block}.lesson-list{display:grid;gap:10px}.lesson-card{display:grid;grid-template-columns:110px 1fr auto;gap:18px;align-items:center;border:1px solid var(--line);background:var(--panel);border-radius:17px;padding:16px;position:relative;overflow:hidden}.lesson-card::before{content:'';position:absolute;inset:0 auto 0 0;width:4px;background:transparent}.lesson-card--lecture{border-color:color-mix(in srgb,#68a7ff 32%,var(--line));background:linear-gradient(180deg,color-mix(in srgb,#68a7ff 8%,var(--panel)) 0%,var(--panel) 100%)}.lesson-card--lecture::before{background:linear-gradient(180deg,#6db0ff 0%,#8a7dff 100%)}.lesson-card--lecture .lesson-time strong,.lesson-card--lecture .lesson-main h3{color:#dbe8ff}.lesson-card--lecture .lesson-kind{box-shadow:0 0 0 1px rgba(109,176,255,.14) inset}.lesson-card--practical{border-color:color-mix(in srgb,var(--accent) 26%,var(--line))}.lesson-card--practical::before{background:linear-gradient(180deg,var(--accent) 0%,color-mix(in srgb,var(--accent) 55%,#ffffff) 100%)}.lesson-card--seminar::before{background:linear-gradient(180deg,#ffb454 0%,#ff8a5b 100%)}.lesson-card--lab::before{background:linear-gradient(180deg,#62e0c1 0%,#31b9c7 100%)}.lesson-time strong,.lesson-time span{display:block}.lesson-time span{color:var(--muted);font-size:.8rem}.lesson-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 4px}.lesson-main h3{margin:0}.lesson-main p{margin:0;color:var(--muted);font-size:.86rem}.lesson-kind{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border-radius:999px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font-size:.67rem;font-weight:1000;letter-spacing:.04em}.lesson-kind--lecture{border-color:rgba(109,176,255,.34);background:rgba(109,176,255,.12);color:#bcd5ff}.lesson-kind--practical{border-color:color-mix(in srgb,var(--accent) 34%,var(--line));background:color-mix(in srgb,var(--accent-soft) 78%,var(--panel));color:var(--accent)}.lesson-kind--seminar{border-color:rgba(255,180,84,.34);background:rgba(255,180,84,.12);color:#ffd18f}.lesson-kind--lab{border-color:rgba(98,224,193,.34);background:rgba(98,224,193,.12);color:#9df1df}.status-pill{padding:6px 9px;border-radius:9px;font-size:.7rem;font-weight:950}.status-pill.changed{background:rgba(244,189,95,.12);color:var(--warning)}.status-pill.cancelled{background:rgba(255,113,113,.12);color:var(--danger)}.soon-card{padding:35px;border:1px solid var(--line);background:radial-gradient(circle at 85% 10%,var(--accent-soft),transparent 45%),var(--panel);border-radius:24px}.soon-card h2{font-size:2rem;margin:8px 0}.soon-card p{color:var(--muted);max-width:620px}

/* Tests and checklists */
.test-hero{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;background:radial-gradient(circle at 90% 10%,var(--accent-soft),transparent 45%),var(--panel);border:1px solid var(--line);border-radius:25px;padding:clamp(24px,5vw,48px);margin-bottom:20px}.test-hero h1{font-size:clamp(2rem,5vw,4rem);line-height:.98;letter-spacing:-.055em;margin:12px 0}.test-hero p{color:var(--muted);max-width:650px}.hero-stat{width:180px;height:180px;border-radius:999px;border:1px solid var(--line);background:var(--panel-2);display:grid;place-content:center;text-align:center}.hero-stat b{font-size:3rem;color:var(--accent)}.hero-stat span{color:var(--muted);font-size:.78rem}.grid-two{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.check-line{display:flex!important;grid-template-columns:none!important;align-items:center;gap:9px}.check-line input{width:auto;min-height:auto}.progress-track{height:9px;background:var(--panel-3);border-radius:99px;overflow:hidden}.progress-track i{display:block;height:100%;background:linear-gradient(90deg,var(--accent-2),var(--accent));border-radius:99px}.question-card{max-width:850px;margin:0 auto;border:1px solid var(--line);background:var(--panel);border-radius:24px;padding:clamp(20px,4vw,35px)}.question-card h1{font-size:clamp(1.25rem,3vw,2rem);line-height:1.25}.option{display:grid!important;grid-template-columns:auto auto 1fr!important;align-items:center;gap:12px;padding:14px!important;border:1px solid var(--line);border-radius:14px;background:var(--panel-2);cursor:pointer}.option:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.option input{width:auto!important;min-height:auto}.letter{width:31px;height:31px;border-radius:9px;background:var(--panel-3);display:grid;place-items:center;font-weight:950}.review{border:1px solid var(--line);border-radius:13px;padding:12px;margin:9px 0}.review summary{cursor:pointer;font-weight:850}.review.ok{border-left:4px solid var(--accent)}.review.bad{border-left:4px solid var(--danger)}.score-orb{width:150px;height:150px;border-radius:999px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-size:3rem;font-weight:950}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-size:.72rem;text-transform:uppercase}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.skill-card{border:1px solid var(--line);background:var(--panel);border-radius:21px;padding:20px;display:flex;flex-direction:column}.skill-number{width:42px;height:42px;border-radius:13px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:950}.skill-card h2{font-size:1.08rem;line-height:1.3}.skill-card p{color:var(--muted);margin-top:auto}.step-list{display:grid;gap:9px}.step-row{border:1px solid var(--line);background:var(--panel);border-radius:15px;padding:15px;display:grid;grid-template-columns:auto 1fr;gap:13px}.step-index{width:35px;height:35px;border-radius:10px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:950}.step-row h3{margin:0;font-size:.98rem}.step-row p{margin:5px 0;color:var(--muted)}.step-comment{font-size:.83rem;padding:10px;background:var(--panel-2);border-radius:10px}

/* Admin */
.admin-shell{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;align-items:start}.admin-tabs{position:sticky;top:calc(var(--top) + 14px);display:grid;gap:5px;border:1px solid var(--line);background:var(--panel);border-radius:18px;padding:8px}.admin-tabs a{padding:11px 12px;border-radius:10px;color:var(--muted);font-size:.84rem;font-weight:850}.admin-tabs a.active,.admin-tabs a:hover{background:var(--panel-3);color:var(--text)}.admin-tabs a.active{color:var(--accent)}.admin-content{min-width:0}.admin-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stat-panel{background:var(--panel);border:1px solid var(--line);border-radius:17px;padding:18px}.stat-panel strong{display:block;font-size:2rem;color:var(--accent)}.admin-list{display:grid;gap:9px}.admin-item{border:1px solid var(--line);background:var(--panel-2);border-radius:14px;padding:13px;display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-item-main{min-width:0}.admin-item-main strong,.admin-item-main small{display:block}.admin-item-main strong{overflow:hidden;text-overflow:ellipsis}.admin-item-main small{color:var(--muted);margin-top:3px}.admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.admin-search{display:flex;gap:8px;flex:1}.admin-search input{max-width:520px}.admin-pager{display:flex;gap:7px;align-items:center;justify-content:center;margin-top:16px}.admin-pager a,.admin-pager span{padding:8px 11px;border:1px solid var(--line);border-radius:9px;font-size:.8rem}.admin-pager .active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.editor-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(310px,.9fr);gap:15px}.inline-form{display:inline}.step-admin-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:start;border:1px solid var(--line);background:var(--panel-2);border-radius:14px;padding:12px}.step-admin-actions{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.mini-button{width:34px;height:34px;border:1px solid var(--line);background:var(--panel);border-radius:9px;cursor:pointer}.mini-button:hover{border-color:var(--accent)}.badge{display:inline-flex;padding:4px 7px;border-radius:7px;background:var(--accent-soft);color:var(--accent);font-size:.68rem;font-weight:900}.muted{color:var(--muted)}

@media(max-width:1050px){.desktop-nav{display:none}.course-grid{grid-template-columns:repeat(2,1fr)}.subject-grid{grid-template-columns:repeat(3,1fr)}.category-grid{grid-template-columns:repeat(3,1fr)}.materials-grid,.skills-grid{grid-template-columns:repeat(2,1fr)}.admin-shell{grid-template-columns:1fr}.admin-tabs{position:static;display:flex;overflow:auto;white-space:nowrap}.admin-grid{grid-template-columns:repeat(2,1fr)}.editor-grid{grid-template-columns:1fr}}
@media(max-width:760px){.news-card,.news-card.has-image,.news-card.no-image{min-height:auto}.news-image,.news-visual{aspect-ratio:16/9}.news-content{padding:24px}.news-content h2{font-size:2.2rem}.subject-grid{grid-template-columns:repeat(2,1fr)}.category-grid{grid-template-columns:repeat(2,1fr)}.library-tools{grid-template-columns:1fr;position:static}.profile-grid,.grid-two{grid-template-columns:1fr}.test-hero{grid-template-columns:1fr}.hero-stat{width:130px;height:130px}.lesson-card{grid-template-columns:85px 1fr}.lesson-card>.status-pill{grid-column:2}.lesson-title-row{gap:8px}.lesson-kind{min-height:22px;padding:0 8px;font-size:.64rem}.profile-chip b{display:none}.profile-chip{padding-right:5px}.carousel-controls{display:none}}
@media(max-width:560px){:root{--top:64px}.topbar{padding:0 11px;gap:8px}.brand-mark{width:36px;height:36px}.brand-name{font-size:1.06rem}.topbar .brand-logo{width:48px;height:48px;border-radius:14px}.topbar-actions{gap:5px}.login-chip{display:none}.search-trigger{display:none}.page-shell{width:min(100% - 20px,var(--max));padding-top:24px}.section-head{align-items:flex-start;flex-direction:column}.section-head h1{font-size:2.35rem}.news-carousel{grid-auto-columns:100%}.news-card{border-radius:24px}.news-image,.news-visual{aspect-ratio:16/9}.news-content h2{font-size:2rem}.course-grid{grid-template-columns:1fr;gap:9px}.course-card{min-height:92px}.subject-grid{grid-template-columns:1fr}.category-grid{grid-template-columns:1fr 1fr}.category-grid button{min-height:118px}.materials-grid,.skills-grid{grid-template-columns:1fr}.stage-head{align-items:flex-start;flex-direction:column}.footer{align-items:flex-start;flex-direction:column;gap:12px}.footer-links{width:100%}.footer-link{flex:1;justify-content:center}.form-grid,.field-row{grid-template-columns:1fr}.admin-grid{grid-template-columns:1fr 1fr}.admin-item{align-items:flex-start;flex-direction:column}.admin-item>.actions{width:100%}.step-admin-row{grid-template-columns:auto 1fr}.step-admin-actions{grid-column:1/-1;justify-content:flex-start}.auth-body{padding:15px}.side-menu{padding:13px}}

/* Test modes and favorites */
.test-quick-links{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 18px}.quick-test-link{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center;padding:17px 18px;border:1px solid var(--line);border-radius:18px;background:var(--panel);color:var(--text);text-decoration:none}.quick-test-link>span{grid-row:1/3;width:43px;height:43px;display:grid;place-items:center;border-radius:13px;background:var(--accent-soft);color:var(--accent);font-size:1.25rem;font-weight:950}.quick-test-link b{font-size:.98rem}.quick-test-link small{color:var(--muted)}.quick-test-link:not(.static):hover{border-color:var(--accent);transform:translateY(-1px)}.test-builder-grid{align-items:start}.continue-card{position:sticky;top:92px}.test-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.test-mode-card{position:relative!important;display:grid!important;grid-template-columns:auto 1fr!important;column-gap:11px;align-items:center;padding:14px!important;border:1px solid var(--line);border-radius:16px;background:var(--panel-2);cursor:pointer}.test-mode-card input{position:absolute;opacity:0;pointer-events:none}.test-mode-card>span{grid-row:1/3;width:39px;height:39px;border-radius:12px;background:var(--panel-3);display:grid;place-items:center;font-weight:950;color:var(--accent)}.test-mode-card strong{font-size:.93rem}.test-mode-card small{color:var(--muted);line-height:1.25}.test-mode-card:has(input:checked){border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}.test-mode-card.disabled{opacity:.45;cursor:not-allowed}.builder-panel{padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--panel-2)}.builder-panel[hidden]{display:none!important}.test-settings{display:grid;grid-template-columns:1fr 1fr;gap:12px}.test-settings>div{padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--panel-2)}.setting-title{display:block;margin-bottom:10px;font-weight:900}.choice-line{display:grid!important;grid-template-columns:auto 1fr!important;gap:10px;align-items:start;padding:9px 0!important}.choice-line input{width:auto!important;min-height:auto!important;margin-top:4px}.choice-line span{display:grid;gap:2px}.choice-line small{color:var(--muted)}.continue-progress{display:flex;justify-content:space-between;align-items:end;margin:22px 0 10px}.continue-progress strong{font-size:2rem}.continue-progress span{color:var(--muted);text-align:right}.continue-features{display:grid;gap:10px;margin-top:24px}.continue-features>div{padding:13px;border-radius:14px;background:var(--panel-2);display:grid;gap:4px}.continue-features span{color:var(--muted);font-size:.86rem;line-height:1.4}.test-session-head{max-width:850px;margin:0 auto 12px;display:flex;justify-content:space-between;gap:16px;align-items:end}.test-session-head>div{display:grid;gap:3px}.test-session-head span,.test-session-head a{color:var(--muted)}.test-session-head a{font-weight:850;text-decoration:none}.test-progress{max-width:850px;margin:0 auto 18px}.question-meta{display:flex;justify-content:space-between;align-items:center;gap:16px}.question-meta form{margin:0}.favorite-question-button{width:43px;height:43px;border:1px solid var(--line);border-radius:13px;background:var(--panel-2);color:var(--muted);font-size:1.45rem;cursor:pointer}.favorite-question-button.active,.favorite-question-button:hover{color:#f5c84c;border-color:#f5c84c;background:color-mix(in srgb,#f5c84c 13%,var(--panel))}.feedback-card{text-align:left}.feedback-card.correct{box-shadow:inset 0 4px 0 var(--accent)}.feedback-card.incorrect{box-shadow:inset 0 4px 0 var(--danger)}.feedback-icon{width:60px;height:60px;border-radius:18px;display:grid;place-items:center;font-size:2rem;font-weight:950;margin-bottom:18px}.feedback-card.correct .feedback-icon{background:var(--accent-soft);color:var(--accent)}.feedback-card.incorrect .feedback-icon{background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger)}.feedback-question{color:var(--muted);font-size:1.02rem;line-height:1.55}.feedback-answer{display:grid;gap:5px;padding:15px;border:1px solid var(--line);border-radius:15px;background:var(--panel-2);margin:11px 0}.feedback-answer span{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.feedback-answer.correct-answer{border-color:color-mix(in srgb,var(--accent) 55%,var(--line))}.answer-explanation{margin-top:14px;padding:16px;border-radius:15px;background:var(--panel-2)}.answer-explanation p{margin-bottom:0;color:var(--muted);line-height:1.55}.feedback-actions{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:20px}.feedback-actions form{margin:0}.favorites-toolbar{margin-bottom:14px}.favorite-start-form{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:end}.favorite-start-form label{margin:0}.favorite-question-list{display:grid;gap:10px}.favorite-question-item{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:start;padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--panel)}.favorite-question-item span{color:var(--accent);font-weight:900;font-size:.78rem}.favorite-question-item h2{font-size:1rem;line-height:1.45;margin:5px 0}.favorite-question-item small{color:var(--muted)}.favorite-question-item form{margin:0}.review summary{display:flex;justify-content:space-between;gap:14px}.review summary b{flex:0 0 auto}.review-body{padding-top:10px}.review-explanation{padding:12px;border-radius:12px;background:var(--panel-2);color:var(--muted)}.favorite-inline{border:0;background:transparent;color:var(--muted);font-weight:850;padding:0;cursor:pointer}.favorite-inline.active{color:#f5c84c}.inline-form{display:inline-flex;margin:0}.test-stats-grid{grid-template-columns:repeat(4,1fr)}.table-subline{display:block;color:var(--muted);margin-top:3px}.section-head.compact{margin-bottom:12px}.section-head.compact h2{margin-bottom:0}.section-head.compact p{margin:4px 0 0;color:var(--muted)}
@media(max-width:900px){.test-mode-grid{grid-template-columns:1fr}.test-settings{grid-template-columns:1fr}.continue-card{position:static}.test-stats-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.test-quick-links{grid-template-columns:1fr}.favorite-start-form{grid-template-columns:1fr}.feedback-actions{align-items:stretch;flex-direction:column}.feedback-actions form,.feedback-actions button,.feedback-actions a{width:100%}.test-session-head{align-items:start}.test-session-head a{font-size:.82rem}.review summary{display:block}.review summary b{display:block;margin-top:6px}.test-stats-grid{grid-template-columns:1fr 1fr}}


/* BreakMed alignment hotfix */
.news-section,.library-flow,.materials-stage{max-width:100%;overflow-x:clip}
.news-carousel>*{min-width:0}

/* Schedule admin repair */
.schedule-admin-top{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:15px}.parity-admin-current{display:flex;align-items:center;gap:10px;margin:14px 0 8px;flex-wrap:wrap}.parity-admin-current strong{font-size:.9rem}.parity-quick-actions{margin-top:12px}.parity-quick-actions form{display:inline-flex}.import-schedule-panel h2{margin:10px 0 8px}.import-schedule-panel .text-button{margin-top:14px}.schedule-editor-grid{align-items:start}.parity-badge{display:inline-flex;align-items:center;min-height:31px;padding:0 11px;border-radius:10px;font-size:.78rem;font-weight:950}.parity-badge.even{background:var(--accent-soft);color:var(--accent)}.parity-badge.odd{background:rgba(244,189,95,.12);color:var(--warning)}
@media(max-width:900px){.schedule-admin-top{grid-template-columns:1fr}}

/* Exams and countdown */
.exam-page-head{align-items:center}.exam-profile-badge{display:inline-flex;align-items:center;min-height:42px;padding:0 15px;border-radius:13px;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--line));background:var(--accent-soft);color:var(--accent);font-weight:950;white-space:nowrap}
.exam-hero{position:relative;isolation:isolate;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 36%,var(--line));border-radius:clamp(24px,4vw,40px);padding:clamp(24px,5vw,64px);background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 96%,var(--accent)),var(--panel-2));box-shadow:0 34px 100px rgba(0,0,0,.34),inset 0 0 0 1px color-mix(in srgb,var(--accent) 7%,transparent)}
.exam-hero::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(110deg,transparent 0 50%,color-mix(in srgb,var(--accent) 8%,transparent) 100%)}.exam-hero-glow{position:absolute;z-index:-1;width:480px;height:480px;border-radius:50%;right:-170px;top:-220px;background:var(--accent);filter:blur(120px);opacity:.13}
.exam-live-label{display:inline-flex;align-items:center;min-height:31px;padding:0 12px;border-radius:10px;background:var(--accent);color:var(--accent-ink);font-weight:1000;font-size:.74rem;letter-spacing:.09em}.exam-hero-copy h2{margin:18px 0 6px;max-width:950px;font-size:clamp(2rem,5vw,5.5rem);line-height:.96;letter-spacing:-.06em}.exam-hero-copy p{margin:0;color:var(--muted);font-size:clamp(1rem,2vw,1.35rem);font-weight:800}
.exam-countdown{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:clamp(6px,1.5vw,20px);margin:clamp(32px,5vw,64px) 0}.exam-countdown>i{font-style:normal;color:color-mix(in srgb,var(--accent) 55%,var(--muted));font-size:clamp(2.5rem,7vw,7.5rem);font-weight:900;line-height:.88}.exam-unit{min-width:0;text-align:center}.exam-unit strong{display:block;color:var(--accent);font-size:clamp(3.2rem,9vw,10rem);line-height:.78;letter-spacing:-.075em;font-variant-numeric:tabular-nums;text-shadow:0 0 36px color-mix(in srgb,var(--accent) 18%,transparent)}.exam-unit span{display:block;margin-top:18px;color:var(--muted);font-size:clamp(.68rem,1.2vw,.95rem);font-weight:950;text-transform:uppercase;letter-spacing:.13em}
.exam-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.exam-meta-grid>div{padding:16px 18px;border:1px solid var(--line);border-radius:17px;background:color-mix(in srgb,var(--panel-2) 88%,transparent)}.exam-meta-grid span,.exam-meta-grid strong{display:block}.exam-meta-grid span{color:var(--muted);font-size:.74rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.exam-meta-grid strong{margin-top:5px;font-size:1rem}.exam-note{margin-top:13px;padding:14px 16px;border-radius:14px;background:var(--accent-soft);color:color-mix(in srgb,var(--text) 86%,var(--accent));font-weight:750}.exam-empty-card .primary-button{margin-top:14px}
.exam-list-section{margin-top:clamp(42px,7vw,80px)}.exam-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.exam-card{min-width:0;padding:20px;border:1px solid var(--line);border-radius:20px;background:var(--panel);transition:.2s}.exam-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 42%,var(--line))}.exam-card-top{display:flex;justify-content:space-between;gap:10px;align-items:center;color:var(--muted);font-size:.78rem;font-weight:850}.exam-card-top b{color:var(--accent)}.exam-card h3{font-size:1.25rem;line-height:1.16;margin:16px 0 7px;letter-spacing:-.025em}.exam-card p{margin:0;color:var(--muted)}.exam-card small{display:block;margin-top:14px;color:var(--muted-2)}.exam-card-past{opacity:.65}.exam-archive{margin-top:32px;border:1px solid var(--line);border-radius:20px;background:var(--panel);padding:0 18px 18px}.exam-archive summary{cursor:pointer;padding:18px 0;font-weight:900}.exam-archive summary span{display:inline-grid;place-items:center;min-width:25px;height:25px;margin-left:8px;border-radius:8px;background:var(--panel-3);color:var(--muted);font-size:.75rem}

/* Exams admin */
.exam-admin-stats{margin-bottom:16px}.exam-upload-form{max-width:760px;margin-top:18px}.exam-import-preview{border-color:color-mix(in srgb,var(--accent) 42%,var(--line))}.exam-preview-summary{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:14px 0}.exam-preview-summary>*{padding:8px 11px;border-radius:10px;background:var(--panel-2);font-size:.82rem}.exam-preview-list,.exam-admin-list{display:grid;gap:11px;margin:16px 0}.exam-preview-card,.exam-admin-item{border:1px solid var(--line);border-radius:18px;background:var(--panel-2);padding:17px}.exam-preview-card h3,.exam-admin-main h3{margin:5px 0 4px;font-size:1.15rem}.exam-preview-card p,.exam-admin-main p{margin:0;color:var(--muted)}.exam-preview-ranges{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:13px}.exam-preview-ranges>div,.exam-admin-ranges>div{padding:11px;border-radius:12px;background:var(--panel-3)}.exam-preview-ranges strong,.exam-preview-ranges span,.exam-admin-ranges b,.exam-admin-ranges span{display:block}.exam-preview-ranges span,.exam-admin-ranges span{color:var(--muted);font-size:.78rem;margin-top:2px}.exam-admin-item{display:grid;grid-template-columns:minmax(230px,1.2fr) minmax(280px,1.8fr) auto;gap:15px;align-items:center}.exam-admin-ranges{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}

@media(max-width:1050px){.exam-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.exam-admin-item{grid-template-columns:1fr}.exam-admin-ranges,.exam-preview-ranges{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.exam-profile-badge{white-space:normal}.exam-hero{padding:24px 15px}.exam-countdown{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.exam-countdown>i{display:none}.exam-unit strong{font-size:clamp(2.8rem,18vw,5.4rem)}.exam-unit span{font-size:.58rem;letter-spacing:.07em;margin-top:12px}.exam-meta-grid{grid-template-columns:1fr}.exam-card-grid{grid-template-columns:1fr}.exam-preview-ranges,.exam-admin-ranges{grid-template-columns:1fr}.exam-preview-summary{align-items:stretch;flex-direction:column}.exam-preview-summary>*{width:100%}}
@media(max-width:430px){.exam-countdown{grid-template-columns:1fr 1fr;row-gap:25px}.exam-unit strong{font-size:4.4rem}.exam-hero-copy h2{font-size:2.15rem}.exam-live-label{font-size:.62rem}.exam-page-head{align-items:flex-start}}

.exam-session-form{display:grid;grid-template-columns:minmax(180px,1fr) minmax(150px,.7fr) auto;gap:12px;align-items:end;margin-top:18px}.exam-session-form label{margin:0}.exam-session-form .primary-button{min-height:48px}.exam-import-panel{margin-top:16px}.exam-hero-session .exam-hero-copy h2{text-transform:uppercase}.exam-hero.is-finished .exam-unit strong{opacity:.72}
@media(max-width:820px){.exam-session-form{grid-template-columns:1fr 1fr}.exam-session-form .primary-button{grid-column:1/-1}}
@media(max-width:560px){.exam-session-form{grid-template-columns:1fr}.exam-session-form .primary-button{grid-column:auto}}


/* BreakMed material text covers + admin-hosted news preview */
.material-text-cover{background:#0b0d13!important;isolation:isolate}
.material-text-cover::before{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(circle at 88% 12%,rgba(181,255,74,.09),transparent 32%),linear-gradient(145deg,rgba(181,255,74,.025),transparent 58%);pointer-events:none}
.material-text-cover::after{content:"";position:absolute;inset:12px;z-index:0;border:1px solid rgba(181,255,74,.07);border-radius:14px;pointer-events:none}
.material-cover-copy{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:flex-start;padding:54px 28px 22px;text-align:left}
.material-cover-copy span{display:block;max-width:100%;color:#b5ff4a;font-size:clamp(2.6rem,5vw,5.2rem);line-height:.9;font-weight:1000;letter-spacing:-.055em;overflow-wrap:anywhere;word-break:break-word;text-shadow:0 0 32px rgba(181,255,74,.09)}
.material-text-cover .material-type,html[data-theme="light"] .material-text-cover .material-type{z-index:2;background:rgba(11,13,19,.90);color:#b5ff4a;border:1px solid rgba(181,255,74,.14)}
.admin-image-preview{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--panel-2)}
.admin-image-preview img{width:100%;max-height:260px;object-fit:cover;border-radius:12px;border:1px solid var(--line)}
@media(max-width:560px){.material-cover-copy{padding:52px 22px 20px}.material-cover-copy span{font-size:clamp(2.8rem,15vw,4.8rem)}}

/* Materials admin: scalable search, filters, status switch and pagination */
.material-admin-panel{min-width:0}.material-admin-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:13px}.material-admin-heading h2{margin:0}.material-admin-heading small{display:block;margin-top:3px}.material-admin-filters{display:grid;gap:10px;padding:12px;margin-bottom:14px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2)}.material-admin-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.material-admin-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.material-admin-filter-grid label{font-size:.72rem;color:var(--muted);font-weight:850}.material-admin-filter-grid select{margin-top:5px}.material-status-switch{display:flex;flex-wrap:wrap;gap:6px}.material-status-switch label{cursor:pointer}.material-status-switch input{position:absolute;opacity:0;pointer-events:none}.material-status-switch span{display:inline-flex;align-items:center;min-height:34px;padding:0 11px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--muted);font-size:.76rem;font-weight:900;transition:.15s ease}.material-status-switch input:checked+span{border-color:color-mix(in srgb,var(--accent) 50%,var(--line));background:var(--accent-soft);color:var(--accent)}.material-filter-reset{width:max-content;color:var(--accent);font-size:.76rem;font-weight:900}.material-admin-list{max-height:760px;overflow:auto;padding-right:3px}.material-admin-list .empty-state{padding:28px 16px}.material-admin-panel .admin-pager{flex-wrap:wrap}
@media(max-width:760px){.material-admin-search{grid-template-columns:1fr}.material-admin-search .secondary-button{width:100%}.material-admin-filter-grid{grid-template-columns:1fr}.material-status-switch{display:grid;grid-template-columns:1fr}.material-status-switch span{justify-content:center;width:100%}.material-admin-list{max-height:none;overflow:visible}}


/* PWA install */
.pwa-install-button{width:100%;min-height:43px;padding:0 14px;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--line));border-radius:12px;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-size:.82rem;font-weight:900;cursor:pointer;transition:.2s}.pwa-install-button:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,transparent)}.pwa-install-button span{font-size:1rem}.pwa-install-button[hidden]{display:none!important}
@media(display-mode:standalone){.pwa-install-button{display:none!important}}


/* Group headmen + homework */
.headman-badge{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:11px;background:var(--accent-soft);color:var(--accent);font-size:.78rem;font-weight:950}.headman-admin-grid{align-items:start}.headman-search-results{margin-top:14px}.selected-user-card{display:flex;align-items:center;gap:9px;padding:12px 14px;margin:12px 0;border:1px solid var(--line);border-radius:13px;background:var(--panel-2)}.selected-user-card strong{font-size:.95rem}.selected-user-card span{color:var(--muted);font-size:.82rem}.homework-page-head{align-items:center}.homework-editor-panel{margin-bottom:20px}.homework-scope-tabs{display:flex;gap:7px;overflow:auto;margin:0 0 14px}.homework-scope-tabs a{white-space:nowrap;padding:8px 10px;border:1px solid var(--line);border-radius:10px;color:var(--muted);font-size:.76rem;font-weight:900}.homework-scope-tabs a.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.homework-list{display:grid;gap:24px}.homework-date-section{min-width:0}.homework-cards{display:grid;gap:10px}.homework-card{display:flex;justify-content:space-between;gap:18px;padding:17px;border:1px solid var(--line);border-radius:17px;background:var(--panel)}.homework-card h3{margin:5px 0 6px;font-size:1.12rem}.homework-card p{margin:0;color:var(--muted);white-space:normal}.homework-card small{display:block;margin-top:10px;color:var(--muted-2);font-size:.72rem}.homework-subject{display:inline-flex;padding:5px 8px;border-radius:8px;background:var(--accent-soft);color:var(--accent);font-size:.7rem;font-weight:950}.homework-actions{display:flex;gap:7px;align-items:flex-start;flex-wrap:wrap}.homework-actions form{margin:0}.lesson-homework{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;margin-top:11px;padding:10px 11px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-radius:12px;background:var(--accent-soft)}.lesson-homework>span{display:inline-flex;align-items:center;justify-content:center;height:25px;padding:0 7px;border-radius:7px;background:var(--accent);color:var(--accent-ink);font-size:.65rem;font-weight:1000}.lesson-homework strong{display:block;color:var(--text);font-size:.86rem}.lesson-homework strong+strong{margin-top:8px}.lesson-homework p{margin:3px 0 0!important;color:color-mix(in srgb,var(--text) 72%,var(--muted))!important;font-size:.8rem!important;white-space:normal}
@media(max-width:760px){.homework-card{display:grid}.homework-actions{justify-content:flex-start}.homework-actions .secondary-button,.homework-actions .danger-button{min-height:38px}.lesson-homework{grid-column:1/-1}.headman-admin-grid{grid-template-columns:1fr}}

/* Course subjects + dynamic homework subject picker */
.subject-admin-grid{align-items:start}.subject-filter-form{margin:14px 0}.subject-admin-list{margin-top:14px}.subject-admin-item{gap:9px}.subject-rename-form{display:flex;gap:8px;flex:1;min-width:0}.subject-rename-form input{min-width:0;flex:1}.stack-form label>small[data-homework-subject-hint],.stack-form label>small[data-schedule-subject-hint]{display:block;margin-top:6px;color:var(--muted);font-weight:650;line-height:1.35}.stack-form select:disabled{opacity:.65;cursor:not-allowed}
@media(max-width:760px){.subject-admin-item,.subject-rename-form{width:100%}.subject-rename-form{flex-direction:column}.subject-rename-form .secondary-button{width:100%}}


/* Feedback / ideas */
.feedback-menu-button{width:100%;min-height:44px;padding:0 13px;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--line));border-radius:12px;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-size:.78rem;font-weight:950;cursor:pointer}.feedback-menu-button:hover{border-color:var(--accent)}
.feedback-fab{position:fixed;right:20px;bottom:20px;z-index:58;min-height:48px;padding:0 16px 0 12px;border:1px solid color-mix(in srgb,var(--accent) 48%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--bg-2) 94%,transparent);box-shadow:0 16px 45px rgba(0,0,0,.24);backdrop-filter:blur(18px);color:var(--text);display:flex;align-items:center;gap:9px;font:inherit;cursor:pointer;transition:.2s}.feedback-fab:hover{transform:translateY(-2px);border-color:var(--accent)}.feedback-fab span{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);font-weight:1000}.feedback-fab b{font-size:.79rem;font-weight:950}
.feedback-modal-backdrop{position:fixed;inset:0;z-index:90;background:rgba(0,0,0,.62);backdrop-filter:blur(5px);opacity:0;pointer-events:none;transition:.2s}.feedback-modal{position:fixed;z-index:100;left:50%;top:50%;width:min(620px,calc(100% - 28px));max-height:min(760px,calc(100dvh - 28px));overflow:auto;transform:translate(-50%,-46%) scale(.98);opacity:0;pointer-events:none;padding:22px;border:1px solid var(--line);border-radius:24px;background:var(--bg-2);box-shadow:0 35px 100px rgba(0,0,0,.48);transition:.22s}.feedback-open{overflow:hidden}.feedback-open .feedback-modal-backdrop{opacity:1;pointer-events:auto}.feedback-open .feedback-modal{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}.feedback-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:8px}.feedback-modal-head h2{margin:4px 0 0;font-size:clamp(1.45rem,4vw,2rem);letter-spacing:-.035em}.feedback-form{margin-top:18px}.feedback-kind-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px}.feedback-kind-switch label{cursor:pointer}.feedback-kind-switch input{position:absolute;opacity:0;pointer-events:none}.feedback-kind-switch span{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--muted);font-size:.78rem;font-weight:900}.feedback-kind-switch input:checked+span{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.feedback-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}.footer-feedback-button{font:inherit;cursor:pointer}.feedback-admin-list{display:grid;gap:10px;margin-top:14px}.feedback-admin-card{padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}.feedback-admin-card.is-new{border-color:color-mix(in srgb,var(--accent) 46%,var(--line));box-shadow:inset 3px 0 0 var(--accent)}.feedback-admin-top{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.feedback-admin-top strong,.feedback-admin-top small{display:block}.feedback-admin-top small{margin-top:4px;color:var(--muted);font-size:.72rem}.feedback-kind{display:inline-flex;margin-bottom:6px;padding:4px 7px;border-radius:7px;background:var(--accent-soft);color:var(--accent);font-size:.65rem;font-weight:950;text-transform:uppercase;letter-spacing:.05em}.feedback-admin-card>p{white-space:normal;margin:14px 0;color:var(--text);line-height:1.55}.feedback-meta{margin-top:7px;color:var(--muted);font-size:.77rem;overflow-wrap:anywhere}.feedback-admin-card>.actions{margin-top:14px}.feedback-admin-card>.actions form:first-child{display:flex;gap:7px;align-items:center}.feedback-admin-card>.actions select{min-width:140px}
@media(max-width:620px){.feedback-fab{right:12px;bottom:12px;width:48px;height:48px;padding:0;justify-content:center}.feedback-fab span{width:31px;height:31px}.feedback-fab b{display:none}.feedback-modal{padding:17px;border-radius:20px}.feedback-kind-switch{grid-template-columns:1fr}.feedback-admin-top{display:grid}.feedback-admin-card>.actions,.feedback-admin-card>.actions form:first-child{width:100%}.feedback-admin-card>.actions form:first-child{display:grid;grid-template-columns:1fr auto}.feedback-admin-card>.actions select{min-width:0;width:100%}}

/* Teachers directory + reviews */
.teacher-directory-head{align-items:center}.teacher-university-chip{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 16px;border:1px solid color-mix(in srgb,var(--accent) 36%,var(--line));border-radius:14px;background:var(--accent-soft);color:var(--accent);font-weight:950}.teacher-toolbar{padding:15px;margin-bottom:20px}.teacher-filter-form{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(280px,1.4fr) auto;gap:10px;align-items:end}.teacher-filter-form label{color:var(--muted);font-size:.75rem;font-weight:850}.teacher-filter-form label>*{margin-top:6px}.teacher-filter-form .search-box{margin-top:6px}.teacher-directory-stats{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.teacher-directory-stats span,.department-count{display:inline-flex;align-items:center;min-height:31px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:var(--panel-2);color:var(--muted);font-size:.72rem;font-weight:900}.department-list{display:grid;gap:16px}.department-card{border:1px solid var(--line);border-radius:23px;background:var(--panel);padding:20px;box-shadow:var(--shadow)}.department-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:15px}.department-card-head h2{margin:9px 0 5px;font-size:clamp(1.35rem,2.5vw,2rem);letter-spacing:-.035em}.department-card-head p{margin:0;color:var(--muted);max-width:820px;line-height:1.55}.teacher-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.teacher-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:13px;border:1px solid var(--line);border-radius:15px;background:var(--panel-2);transition:.18s}.teacher-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 46%,var(--line));background:var(--accent-soft)}.teacher-avatar,.teacher-profile-avatar,.teacher-admin-avatar,.teacher-review-author>span,.review-author-preview>span{display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);font-weight:1000}.teacher-avatar{width:44px;height:44px;border-radius:13px}.teacher-card-copy strong,.teacher-card-copy small,.teacher-card-copy em{display:block}.teacher-card-copy strong{font-size:.91rem}.teacher-card-copy small{margin-top:3px;color:var(--muted);font-size:.75rem}.teacher-card-copy em{margin-top:5px;color:var(--accent);font-size:.68rem;font-style:normal;font-weight:900}.teacher-card>b{color:var(--muted);font-size:1.1rem}.teacher-empty{padding:46px 18px}.empty-state.compact{padding:16px}
.teacher-back-link{display:inline-flex;margin-bottom:14px;color:var(--muted);font-size:.82rem;font-weight:900}.teacher-back-link:hover{color:var(--accent)}.teacher-profile-hero{display:grid;grid-template-columns:auto minmax(0,1fr);gap:20px;align-items:center;padding:clamp(20px,4vw,34px)}.teacher-profile-avatar{width:82px;height:82px;border-radius:24px;font-size:2rem}.teacher-profile-copy h1{margin:7px 0 9px;font-size:clamp(2rem,5vw,4.2rem);line-height:1;letter-spacing:-.05em}.teacher-department-line{font-weight:900}.teacher-position{margin-top:5px;color:var(--muted)}.teacher-description-panel{margin-top:15px;padding:20px}.teacher-description-text{margin-top:13px;line-height:1.7;color:var(--text)}.teacher-reviews-section{margin-top:40px}.teacher-review-head{margin-bottom:14px}.teacher-review-layout{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.4fr);gap:15px;align-items:start}.teacher-review-editor{position:sticky;top:calc(var(--top) + 12px);padding:19px}.teacher-review-editor h3{margin:8px 0 10px}.review-author-preview{display:flex;align-items:center;gap:10px;padding:11px;margin:12px 0;border:1px solid var(--line);border-radius:13px;background:var(--panel-2)}.review-author-preview>span{width:38px;height:38px;border-radius:11px}.review-author-preview small,.review-author-preview strong{display:block}.review-author-preview small{color:var(--muted);font-size:.68rem}.review-author-preview strong{margin-top:2px;font-size:.86rem}.review-rules{display:block;color:var(--muted);font-size:.7rem;line-height:1.45}.teacher-review-list{display:grid;gap:10px}.teacher-review-card{padding:16px;border:1px solid var(--line);border-radius:17px;background:var(--panel)}.teacher-review-author{display:flex;align-items:center;gap:10px}.teacher-review-author>span{width:39px;height:39px;border-radius:12px}.teacher-review-author strong,.teacher-review-author small{display:block}.teacher-review-author strong{font-size:.88rem}.teacher-review-author small{margin-top:2px;color:var(--muted);font-size:.68rem}.teacher-review-card p{margin:13px 0 0;line-height:1.65;color:var(--text);white-space:normal}

/* Teachers admin */
.teacher-admin-top{padding:18px}.teacher-admin-university{max-width:600px;margin:12px 0 16px}.teacher-admin-university label{color:var(--muted);font-size:.74rem;font-weight:850}.teacher-admin-university select{margin-top:5px}.teacher-admin-grid{margin-top:12px}.inner-panel{box-shadow:none}.inner-panel h3,.teacher-import-box h3{margin:8px 0 12px}.teacher-import-box{margin-top:15px;padding:16px;border:1px solid var(--line);border-radius:17px;background:var(--panel-2)}.teacher-import-box>div>p{margin:6px 0 0}.teacher-import-form{display:grid;grid-template-columns:minmax(170px,.6fr) minmax(250px,1fr) auto;gap:9px;align-items:end;margin:14px 0 10px}.teacher-import-form label{color:var(--muted);font-size:.72rem;font-weight:850}.teacher-import-form label>*{margin-top:5px}.department-admin-list{display:grid;gap:11px}.department-admin-card{padding:15px;border:1px solid var(--line);border-radius:17px;background:var(--panel-2)}.department-admin-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.department-admin-head strong,.department-admin-head small{display:block}.department-admin-head small{margin-top:4px;color:var(--muted);font-size:.71rem}.department-admin-head p{max-width:780px;margin:10px 0 0;color:var(--muted);font-size:.78rem;line-height:1.5}.teacher-admin-list{display:grid;gap:7px;margin-top:12px}.teacher-admin-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:13px;background:var(--panel)}.teacher-admin-avatar{width:37px;height:37px;border-radius:11px}.teacher-review-admin-panel .is-hidden-review{opacity:.72;border-style:dashed}

@media(max-width:900px){.teacher-card-grid{grid-template-columns:1fr}.teacher-review-layout{grid-template-columns:1fr}.teacher-review-editor{position:static}.teacher-import-form{grid-template-columns:1fr 1fr}.teacher-import-form .primary-button{grid-column:1/-1}.department-admin-head{display:grid}.teacher-admin-row{grid-template-columns:auto 1fr}.teacher-admin-row>.actions{grid-column:1/-1}}
@media(max-width:620px){.teacher-filter-form{grid-template-columns:1fr}.teacher-filter-form .secondary-button{width:100%}.department-card{padding:15px;border-radius:19px}.department-card-head{display:grid}.teacher-profile-hero{grid-template-columns:1fr;align-items:start}.teacher-profile-avatar{width:66px;height:66px;border-radius:19px;font-size:1.6rem}.teacher-import-form{grid-template-columns:1fr}.teacher-import-form .primary-button{grid-column:auto}.teacher-admin-row{grid-template-columns:1fr}.teacher-admin-row>.actions{grid-column:auto}.teacher-admin-avatar{display:none}.teacher-directory-head{align-items:flex-start}.teacher-university-chip{min-height:38px}.teacher-review-card{padding:14px}}

/* Teachers directory v2: departments first */
.department-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.department-tile{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;min-height:86px;padding:15px 16px;border:1px solid var(--line);border-radius:18px;background:var(--panel);box-shadow:var(--shadow);transition:transform .18s,border-color .18s,background .18s}.department-tile:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 48%,var(--line));background:var(--accent-soft)}.department-tile-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 34%,var(--line));color:var(--accent);font-weight:1000;font-size:1rem}.department-tile-copy{min-width:0}.department-tile-copy strong,.department-tile-copy small{display:block}.department-tile-copy strong{font-size:.91rem;line-height:1.3}.department-tile-copy small{margin-top:6px;color:var(--muted);font-size:.72rem;font-weight:850}.department-tile>b{color:var(--muted);font-size:1.15rem}.department-hero{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:18px;padding:clamp(20px,4vw,30px);margin-bottom:16px}.department-hero-mark{display:grid;place-items:center;width:66px;height:66px;border-radius:19px;background:var(--accent);color:var(--accent-ink);font-weight:1000;font-size:1.45rem}.department-hero h2{margin:8px 0 6px;font-size:clamp(1.7rem,3.8vw,3rem);line-height:1.05;letter-spacing:-.045em}.department-hero p{max-width:900px;margin:0;color:var(--muted);line-height:1.6}.department-hero-meta{display:inline-flex;align-items:center;min-height:30px;margin-top:12px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:var(--panel-2);color:var(--muted);font-size:.72rem;font-weight:900}.department-teacher-grid{margin-top:0}.teacher-search-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 14px}.teacher-search-summary .teacher-back-link{margin:0}.teacher-search-summary>strong{color:var(--muted);font-size:.78rem}.teacher-subsection-head{margin:25px 0 11px}.teacher-subsection-head h2{margin:6px 0 0;font-size:clamp(1.25rem,2.6vw,1.8rem)}.search-department-grid{margin-bottom:8px}.teacher-search-card .teacher-card-copy small{white-space:normal}.teacher-toolbar{position:relative}.teacher-directory-stats{align-items:center}
@media(max-width:900px){.department-grid{grid-template-columns:1fr}}
@media(max-width:620px){.department-tile{min-height:76px;padding:12px 13px;border-radius:16px}.department-tile-icon{width:42px;height:42px;border-radius:12px}.department-hero{grid-template-columns:1fr;padding:18px}.department-hero-mark{width:56px;height:56px;border-radius:16px}.teacher-search-summary{align-items:flex-start;flex-direction:column}.teacher-search-summary>strong{font-size:.72rem}}

/* Mobile drawer scroll v2: only content scrolls; header stays visible. */
.menu-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;padding:0 18px calc(32px + env(safe-area-inset-bottom));scrollbar-gutter:stable}
.menu-scroll>.menu-nav,.menu-scroll>.menu-footer,.menu-scroll>.user-card{flex-shrink:0}
@supports not (height:100dvh){.side-menu{height:var(--bm-menu-height,100vh);max-height:var(--bm-menu-height,100vh)}}
@media(max-width:620px){.menu-head{padding:13px 13px 12px}.menu-scroll{padding:0 13px calc(40px + env(safe-area-inset-bottom))}}


/* Work plans — medical faculty */
.workplan-admin-grid{align-items:start}.workplan-admin-filter{margin-bottom:16px}.workplan-semester{margin-top:18px}.workplan-semester>h3{margin:0 0 9px;color:var(--muted);font-size:.84rem;text-transform:uppercase;letter-spacing:.08em}.workplan-admin-theme{align-items:center}.workplan-admin-theme.is-inactive{opacity:.58}.workplan-theme-no,.workplan-theme-index{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:11px;background:var(--accent-soft);color:var(--accent);font-weight:1000}.workplan-order-actions{display:flex;gap:4px}.workplan-order-actions form{margin:0}.theme-material-picker{display:grid;gap:8px;max-height:460px;overflow:auto;padding-right:4px}.theme-material-option{display:flex!important;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2);cursor:pointer}.theme-material-option input{width:auto!important;margin-top:3px}.theme-material-option span{display:grid;gap:2px}.theme-material-option small{color:var(--muted)!important}.homework-theme-fieldset{margin:0;padding:14px;border:1px solid var(--line);border-radius:14px}.homework-theme-fieldset legend{padding:0 6px;font-weight:950}.homework-theme-fieldset legend small{color:var(--muted);font-weight:650}.homework-theme-picker{display:grid;grid-template-columns:1fr 1fr;gap:10px}.homework-theme-fieldset>small{display:block;margin-top:8px;color:var(--muted);font-weight:650}.homework-theme-chips{display:flex;flex-wrap:wrap;gap:6px;margin:7px 0}.homework-theme-chips a{padding:5px 8px;border-radius:8px;background:var(--panel-2);border:1px solid var(--line);color:var(--text);font-size:.74rem;font-weight:850}.workplan-subject-tabs{display:flex;gap:8px;overflow:auto;margin-bottom:14px}.workplan-subject-tabs a{white-space:nowrap;padding:9px 12px;border:1px solid var(--line);border-radius:11px;background:var(--panel);color:var(--muted);font-size:.8rem;font-weight:900}.workplan-subject-tabs a.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.workplan-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.workplan-summary h2{margin:4px 0}.workplan-progress{min-width:180px;text-align:right}.workplan-progress strong{font-size:1.45rem}.workplan-progress>div{height:8px;margin-top:7px;border-radius:99px;background:var(--panel-2);overflow:hidden}.workplan-progress i{display:block;height:100%;background:var(--accent);border-radius:99px}.workplan-semesters{display:grid;gap:22px}.workplan-theme-list{display:grid;gap:9px}.workplan-theme-card{display:flex;align-items:center;gap:13px;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}.workplan-theme-card.current{border-color:color-mix(in srgb,var(--accent) 60%,var(--line));box-shadow:0 0 0 1px var(--accent-soft) inset}.workplan-theme-card.done{opacity:.78}.workplan-theme-card.done .workplan-theme-index{background:color-mix(in srgb,var(--accent) 18%,var(--panel));}.workplan-theme-copy{min-width:0;flex:1}.workplan-theme-copy h3{margin:3px 0 4px;font-size:1rem}.workplan-theme-copy p{margin:0;color:var(--muted);font-size:.82rem}.workplan-theme-status{color:var(--muted-2);font-size:.68rem;font-weight:950;text-transform:uppercase;letter-spacing:.05em}.workplan-theme-card.current .workplan-theme-status{color:var(--accent)}.workplan-theme-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:7px;color:var(--muted);font-size:.74rem}.workplan-theme-detail{margin-bottom:20px}.theme-materials-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.theme-material-card{padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2)}.theme-material-card h4{margin:8px 0 5px}.theme-material-card p{margin:0 0 10px;color:var(--muted);font-size:.82rem}.profile-workplan-card{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:18px}
@media(max-width:760px){.homework-theme-picker,.theme-materials-grid{grid-template-columns:1fr}.workplan-summary,.profile-workplan-card{display:grid}.workplan-progress{min-width:0;text-align:left}.workplan-theme-card{align-items:flex-start;flex-wrap:wrap}.workplan-theme-card>.secondary-button{margin-left:47px}.workplan-admin-theme{align-items:flex-start;flex-wrap:wrap}.workplan-order-actions{margin-left:auto}}

.profile-workplan-section{margin-top:18px}.profile-upcoming-themes{display:grid;gap:10px;margin-top:12px}.profile-upcoming-theme{padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--panel-2)}.profile-upcoming-theme-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.profile-upcoming-theme-head span{color:var(--accent);font-size:.72rem;font-weight:950}.profile-upcoming-theme-head h3{margin:4px 0 0;font-size:1rem}.profile-theme-materials{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:11px}.profile-theme-material{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border:1px solid var(--line);border-radius:11px;background:var(--panel)}.profile-theme-material>span{display:grid;min-width:0}.profile-theme-material strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem}.profile-theme-material small{color:var(--muted);font-size:.68rem}.profile-theme-material a{color:var(--accent);font-size:.74rem;font-weight:900}@media(max-width:760px){.profile-theme-materials{grid-template-columns:1fr}.profile-upcoming-theme-head{display:grid}}

/* Workplan V5: multi-semester + practical/lecture sections */
.workplan-admin-kind{margin-top:12px}.workplan-admin-kind>h4,.workplan-type-block>h3{margin:0 0 9px;color:var(--text);font-size:.88rem;font-weight:950}.workplan-type-block{display:grid;gap:0;margin-top:12px}.workplan-semester-public>.section-head{margin-bottom:8px}.workplan-admin-filter code,.panel code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}

/* BreakMed V8 — автоматическое ДЗ по рабочему плану */
.homework-auto-panel{margin-bottom:14px}.homework-auto-panel h2{margin:4px 0 7px}.homework-auto-panel p{margin:0;line-height:1.55}.homework-card-kicker{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.homework-auto-badge{display:inline-flex;align-items:center;min-height:24px;padding:0 7px;border:1px solid color-mix(in srgb,var(--accent) 48%,var(--line));border-radius:8px;background:color-mix(in srgb,var(--accent-soft) 84%,var(--panel));color:var(--accent);font-size:.62rem;font-weight:1000;letter-spacing:.06em}.homework-auto-states{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.homework-auto-state{display:inline-flex;align-items:center;padding:7px 9px;border:1px solid var(--line);border-radius:9px;background:var(--panel-2);color:var(--muted);font-size:.72rem}.homework-auto-state.active{border-color:color-mix(in srgb,var(--accent) 38%,var(--line));color:var(--text)}.homework-auto-state.active strong{color:var(--accent)}.homework-auto-state.paused{opacity:.72}


/* ===== BreakMed light theme redesign v3.11.0 ===== */
html[data-theme="light"]{
  --bg:#f3f6f5;
  --bg-2:#edf5f5;
  --panel:#ffffff;
  --panel-2:#f7fbfb;
  --panel-3:#edf8fa;
  --line:#d7e9eb;
  --line-soft:#e6f0f1;
  --text:#17353a;
  --muted:#5a7379;
  --muted-2:#7b9095;
  --accent:#2b7f88;
  --accent-2:#246f77;
  --accent-ink:#ffffff;
  --accent-soft:rgba(154,229,230,.26);
  --green:#2f8f73;
  --danger:#c55361;
  --warning:#a66f12;
  --shadow:0 18px 44px rgba(32,88,92,.08);
  color-scheme:light;
}
@media(prefers-color-scheme:light){
  html[data-theme="auto"]{
    --bg:#f3f6f5;
    --bg-2:#edf5f5;
    --panel:#ffffff;
    --panel-2:#f7fbfb;
    --panel-3:#edf8fa;
    --line:#d7e9eb;
    --line-soft:#e6f0f1;
    --text:#17353a;
    --muted:#5a7379;
    --muted-2:#7b9095;
    --accent:#2b7f88;
    --accent-2:#246f77;
    --accent-ink:#ffffff;
    --accent-soft:rgba(154,229,230,.26);
    --green:#2f8f73;
    --danger:#c55361;
    --warning:#a66f12;
    --shadow:0 18px 44px rgba(32,88,92,.08);
    color-scheme:light;
  }
}

html[data-theme="light"] body::before{
  background:
    radial-gradient(circle at 84% 4%, rgba(154,229,230,.34), transparent 33%),
    radial-gradient(circle at 8% 58%, rgba(168,249,255,.30), transparent 27%),
    linear-gradient(180deg, rgba(255,255,255,.55), rgba(243,246,245,.18));
}
@media(prefers-color-scheme:light){
  html[data-theme="auto"] body::before{
    background:
      radial-gradient(circle at 84% 4%, rgba(154,229,230,.34), transparent 33%),
      radial-gradient(circle at 8% 58%, rgba(168,249,255,.30), transparent 27%),
      linear-gradient(180deg, rgba(255,255,255,.55), rgba(243,246,245,.18));
  }
}

html[data-theme="light"] .topbar,
html[data-theme="light"] .side-menu,
html[data-theme="light"] .menu-head,
html[data-theme="light"] .feedback-modal,
html[data-theme="light"] .library-tools{
  background:color-mix(in srgb, var(--bg) 90%, #ffffff 10%);
  border-color:var(--line);
}
@media(prefers-color-scheme:light){
  html[data-theme="auto"] .topbar,
  html[data-theme="auto"] .side-menu,
  html[data-theme="auto"] .menu-head,
  html[data-theme="auto"] .feedback-modal,
  html[data-theme="auto"] .library-tools{
    background:color-mix(in srgb, var(--bg) 90%, #ffffff 10%);
    border-color:var(--line);
  }
}

html[data-theme="light"] .desktop-nav,
html[data-theme="light"] .icon-button,
html[data-theme="light"] .menu-button,
html[data-theme="light"] .profile-chip,
html[data-theme="light"] .login-chip,
html[data-theme="light"] .theme-select,
html[data-theme="light"] .footer-link,
html[data-theme="light"] .menu-contact-links a,
html[data-theme="light"] .search-box,
html[data-theme="light"] .teacher-directory-stats span,
html[data-theme="light"] .department-count,
html[data-theme="light"] .homework-auto-state,
html[data-theme="light"] .workplan-subject-tabs a,
html[data-theme="light"] .homework-scope-tabs a,
html[data-theme="light"] .day-tab,
html[data-theme="light"] .secondary-button{
  background:#ffffff;
  border-color:#d8e9ec;
  box-shadow:0 8px 24px rgba(30,88,94,.04);
}
@media(prefers-color-scheme:light){
  html[data-theme="auto"] .desktop-nav,
  html[data-theme="auto"] .icon-button,
  html[data-theme="auto"] .menu-button,
  html[data-theme="auto"] .profile-chip,
  html[data-theme="auto"] .login-chip,
  html[data-theme="auto"] .theme-select,
  html[data-theme="auto"] .footer-link,
  html[data-theme="auto"] .menu-contact-links a,
  html[data-theme="auto"] .search-box,
  html[data-theme="auto"] .teacher-directory-stats span,
  html[data-theme="auto"] .department-count,
  html[data-theme="auto"] .homework-auto-state,
  html[data-theme="auto"] .workplan-subject-tabs a,
  html[data-theme="auto"] .homework-scope-tabs a,
  html[data-theme="auto"] .day-tab,
  html[data-theme="auto"] .secondary-button{
    background:#ffffff;
    border-color:#d8e9ec;
    box-shadow:0 8px 24px rgba(30,88,94,.04);
  }
}

html[data-theme="light"] .panel,
html[data-theme="light"] .news-card,
html[data-theme="light"] .material-card,
html[data-theme="light"] .course-card,
html[data-theme="light"] .subject-button,
html[data-theme="light"] .category-grid button,
html[data-theme="light"] .lesson-card,
html[data-theme="light"] .homework-card,
html[data-theme="light"] .user-card,
html[data-theme="light"] .teacher-card,
html[data-theme="light"] .teacher-search-card,
html[data-theme="light"] .department-card,
html[data-theme="light"] .department-admin-card,
html[data-theme="light"] .department-tile,
html[data-theme="light"] .teacher-import-box,
html[data-theme="light"] .teacher-admin-row,
html[data-theme="light"] .favorite-question-item,
html[data-theme="light"] .feedback-admin-card,
html[data-theme="light"] .feedback-answer,
html[data-theme="light"] .answer-explanation,
html[data-theme="light"] .builder-panel,
html[data-theme="light"] .test-settings > div,
html[data-theme="light"] .continue-features > div,
html[data-theme="light"] .workplan-theme-card,
html[data-theme="light"] .theme-material-card,
html[data-theme="light"] .selected-user-card,
html[data-theme="light"] .lesson-homework,
html[data-theme="light"] .homework-theme-fieldset,
html[data-theme="light"] .theme-material-option,
html[data-theme="light"] .profile-upcoming-theme,
html[data-theme="light"] .profile-theme-material,
html[data-theme="light"] .soon-card,
html[data-theme="light"] .auth-card,
html[data-theme="light"] .install-card{
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,252,252,.96));
  border-color:#dbecef;
  box-shadow:var(--shadow);
}
@media(prefers-color-scheme:light){
  html[data-theme="auto"] .panel,
  html[data-theme="auto"] .news-card,
  html[data-theme="auto"] .material-card,
  html[data-theme="auto"] .course-card,
  html[data-theme="auto"] .subject-button,
  html[data-theme="auto"] .category-grid button,
  html[data-theme="auto"] .lesson-card,
  html[data-theme="auto"] .homework-card,
  html[data-theme="auto"] .user-card,
  html[data-theme="auto"] .teacher-card,
  html[data-theme="auto"] .teacher-search-card,
  html[data-theme="auto"] .department-card,
  html[data-theme="auto"] .department-admin-card,
  html[data-theme="auto"] .department-tile,
  html[data-theme="auto"] .teacher-import-box,
  html[data-theme="auto"] .teacher-admin-row,
  html[data-theme="auto"] .favorite-question-item,
  html[data-theme="auto"] .feedback-admin-card,
  html[data-theme="auto"] .feedback-answer,
  html[data-theme="auto"] .answer-explanation,
  html[data-theme="auto"] .builder-panel,
  html[data-theme="auto"] .test-settings > div,
  html[data-theme="auto"] .continue-features > div,
  html[data-theme="auto"] .workplan-theme-card,
  html[data-theme="auto"] .theme-material-card,
  html[data-theme="auto"] .selected-user-card,
  html[data-theme="auto"] .lesson-homework,
  html[data-theme="auto"] .homework-theme-fieldset,
  html[data-theme="auto"] .theme-material-option,
  html[data-theme="auto"] .profile-upcoming-theme,
  html[data-theme="auto"] .profile-theme-material,
  html[data-theme="auto"] .soon-card,
  html[data-theme="auto"] .auth-card,
  html[data-theme="auto"] .install-card{
    background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,252,252,.96));
    border-color:#dbecef;
    box-shadow:var(--shadow);
  }
}

html[data-theme="light"] .primary-button,
html[data-theme="light"] .brand-mark,
html[data-theme="light"] .profile-chip span,
html[data-theme="light"] .user-card-avatar,
html[data-theme="light"] .teacher-avatar,
html[data-theme="light"] .teacher-profile-avatar,
html[data-theme="light"] .teacher-admin-avatar,
html[data-theme="light"] .teacher-review-author > span,
html[data-theme="light"] .review-author-preview > span,
html[data-theme="light"] .department-hero-mark,
html[data-theme="light"] .lesson-homework > span{
  background:linear-gradient(135deg,#9ae5e6 0%,#a8f9ff 100%);
  color:#16353a;
  box-shadow:0 10px 25px rgba(91,177,184,.18);
}
html[data-theme="light"] .primary-button:hover{filter:none;transform:translateY(-1px);box-shadow:0 14px 30px rgba(91,177,184,.22)}
html[data-theme="light"] .eyebrow,
html[data-theme="light"] .stage-kicker,
html[data-theme="light"] .homework-subject,
html[data-theme="light"] .feedback-kind,
html[data-theme="light"] .teacher-university-chip,
html[data-theme="light"] .homework-auto-badge,
html[data-theme="light"] .headman-badge,
html[data-theme="light"] .parity-badge.even{
  background:linear-gradient(135deg, rgba(154,229,230,.34), rgba(168,249,255,.28));
  color:#185d65;
  border:1px solid #b9e9ee;
}
@media(prefers-color-scheme:light){
  html[data-theme="auto"] .primary-button,
  html[data-theme="auto"] .brand-mark,
  html[data-theme="auto"] .profile-chip span,
  html[data-theme="auto"] .user-card-avatar,
  html[data-theme="auto"] .teacher-avatar,
  html[data-theme="auto"] .teacher-profile-avatar,
  html[data-theme="auto"] .teacher-admin-avatar,
  html[data-theme="auto"] .teacher-review-author > span,
  html[data-theme="auto"] .review-author-preview > span,
  html[data-theme="auto"] .department-hero-mark,
  html[data-theme="auto"] .lesson-homework > span{
    background:linear-gradient(135deg,#9ae5e6 0%,#a8f9ff 100%);
    color:#16353a;
    box-shadow:0 10px 25px rgba(91,177,184,.18);
  }
  html[data-theme="auto"] .primary-button:hover{filter:none;transform:translateY(-1px);box-shadow:0 14px 30px rgba(91,177,184,.22)}
  html[data-theme="auto"] .eyebrow,
  html[data-theme="auto"] .stage-kicker,
  html[data-theme="auto"] .homework-subject,
  html[data-theme="auto"] .feedback-kind,
  html[data-theme="auto"] .teacher-university-chip,
  html[data-theme="auto"] .homework-auto-badge,
  html[data-theme="auto"] .headman-badge,
  html[data-theme="auto"] .parity-badge.even{
    background:linear-gradient(135deg, rgba(154,229,230,.34), rgba(168,249,255,.28));
    color:#185d65;
    border:1px solid #b9e9ee;
  }
}

html[data-theme="light"] .desktop-nav a:hover,
html[data-theme="light"] .desktop-nav a.active,
html[data-theme="light"] .menu-nav a:hover,
html[data-theme="light"] .menu-nav a.active,
html[data-theme="light"] .subject-button:hover,
html[data-theme="light"] .subject-button.active,
html[data-theme="light"] .category-grid button:hover,
html[data-theme="light"] .category-grid button.active,
html[data-theme="light"] .course-card.active,
html[data-theme="light"] .workplan-subject-tabs a.active,
html[data-theme="light"] .homework-scope-tabs a.active,
html[data-theme="light"] .day-tab.active,
html[data-theme="light"] .feedback-kind-switch input:checked + span,
html[data-theme="light"] .homework-auto-state.active,
html[data-theme="light"] .theme-select button:hover{
  background:linear-gradient(180deg, rgba(154,229,230,.32), rgba(168,249,255,.22));
  border-color:#84d7e0;
  color:#185d65;
}
@media(prefers-color-scheme:light){
  html[data-theme="auto"] .desktop-nav a:hover,
  html[data-theme="auto"] .desktop-nav a.active,
  html[data-theme="auto"] .menu-nav a:hover,
  html[data-theme="auto"] .menu-nav a.active,
  html[data-theme="auto"] .subject-button:hover,
  html[data-theme="auto"] .subject-button.active,
  html[data-theme="auto"] .category-grid button:hover,
  html[data-theme="auto"] .category-grid button.active,
  html[data-theme="auto"] .course-card.active,
  html[data-theme="auto"] .workplan-subject-tabs a.active,
  html[data-theme="auto"] .homework-scope-tabs a.active,
  html[data-theme="auto"] .day-tab.active,
  html[data-theme="auto"] .feedback-kind-switch input:checked + span,
  html[data-theme="auto"] .homework-auto-state.active,
  html[data-theme="auto"] .theme-select button:hover{
    background:linear-gradient(180deg, rgba(154,229,230,.32), rgba(168,249,255,.22));
    border-color:#84d7e0;
    color:#185d65;
  }
}

html[data-theme="light"] input,
html[data-theme="light"] select,
html[data-theme="light"] textarea{
  background:#ffffff;
  border-color:#cfe4e8;
  color:#17353a;
}
html[data-theme="light"] input::placeholder,
html[data-theme="light"] textarea::placeholder{color:#87a0a5}
html[data-theme="light"] input:focus,
html[data-theme="light"] select:focus,
html[data-theme="light"] textarea:focus{
  border-color:#7bd1da;
  box-shadow:0 0 0 4px rgba(154,229,230,.22);
}
@media(prefers-color-scheme:light){
  html[data-theme="auto"] input,
  html[data-theme="auto"] select,
  html[data-theme="auto"] textarea{
    background:#ffffff;
    border-color:#cfe4e8;
    color:#17353a;
  }
  html[data-theme="auto"] input::placeholder,
  html[data-theme="auto"] textarea::placeholder{color:#87a0a5}
  html[data-theme="auto"] input:focus,
  html[data-theme="auto"] select:focus,
  html[data-theme="auto"] textarea:focus{
    border-color:#7bd1da;
    box-shadow:0 0 0 4px rgba(154,229,230,.22);
  }
}

html[data-theme="light"] .lesson-card{grid-template-columns:110px 1fr auto}
html[data-theme="light"] .lesson-time strong,
html[data-theme="light"] .lesson-main h3{color:#16353a}
html[data-theme="light"] .lesson-main p,
html[data-theme="light"] .lesson-time span{color:#5b7479}
html[data-theme="light"] .lesson-card--lecture{
  background:linear-gradient(180deg, rgba(168,249,255,.34) 0%, rgba(255,255,255,.98) 100%) !important;
  border-color:#90dfe8 !important;
  box-shadow:0 14px 30px rgba(59,146,155,.08), inset 0 0 0 1px rgba(168,249,255,.26) !important;
}
html[data-theme="light"] .lesson-card--lecture::before{background:linear-gradient(180deg,#4ccfdb 0%, #73dbff 100%) !important}
html[data-theme="light"] .lesson-card--lecture .lesson-time strong,
html[data-theme="light"] .lesson-card--lecture .lesson-main h3{color:#18464d !important}
html[data-theme="light"] .lesson-card--lecture .lesson-main p,
html[data-theme="light"] .lesson-card--lecture .lesson-time span{color:#557176 !important}
html[data-theme="light"] .lesson-kind{
  background:#f8fcfc;
  border-color:#d6eaed;
  color:#26454a;
}
html[data-theme="light"] .lesson-kind--lecture{
  background:rgba(154,229,230,.30) !important;
  border-color:#8bd8e1 !important;
  color:#155c64 !important;
  box-shadow:none !important;
}
html[data-theme="light"] .lesson-card--practical{background:linear-gradient(180deg, rgba(154,229,230,.10), rgba(255,255,255,.98) 56%)}
html[data-theme="light"] .lesson-kind--practical{
  background:rgba(154,229,230,.22);
  border-color:#a7e2e7;
  color:#1a6b73;
}
html[data-theme="light"] .lesson-kind--seminar{background:rgba(255,194,94,.16);color:#99620a;border-color:rgba(224,175,84,.42)}
html[data-theme="light"] .lesson-kind--lab{background:rgba(91,210,197,.16);color:#136f73;border-color:rgba(91,210,197,.42)}
html[data-theme="light"] .soon-card{background:radial-gradient(circle at 85% 10%, rgba(168,249,255,.38), transparent 42%), #ffffff}
@media(prefers-color-scheme:light){
  html[data-theme="auto"] .lesson-card{grid-template-columns:110px 1fr auto}
  html[data-theme="auto"] .lesson-time strong,
  html[data-theme="auto"] .lesson-main h3{color:#16353a}
  html[data-theme="auto"] .lesson-main p,
  html[data-theme="auto"] .lesson-time span{color:#5b7479}
  html[data-theme="auto"] .lesson-card--lecture{
    background:linear-gradient(180deg, rgba(168,249,255,.34) 0%, rgba(255,255,255,.98) 100%) !important;
    border-color:#90dfe8 !important;
    box-shadow:0 14px 30px rgba(59,146,155,.08), inset 0 0 0 1px rgba(168,249,255,.26) !important;
  }
  html[data-theme="auto"] .lesson-card--lecture::before{background:linear-gradient(180deg,#4ccfdb 0%, #73dbff 100%) !important}
  html[data-theme="auto"] .lesson-card--lecture .lesson-time strong,
  html[data-theme="auto"] .lesson-card--lecture .lesson-main h3{color:#18464d !important}
  html[data-theme="auto"] .lesson-card--lecture .lesson-main p,
  html[data-theme="auto"] .lesson-card--lecture .lesson-time span{color:#557176 !important}
  html[data-theme="auto"] .lesson-kind{
    background:#f8fcfc;
    border-color:#d6eaed;
    color:#26454a;
  }
  html[data-theme="auto"] .lesson-kind--lecture{
    background:rgba(154,229,230,.30) !important;
    border-color:#8bd8e1 !important;
    color:#155c64 !important;
    box-shadow:none !important;
  }
  html[data-theme="auto"] .lesson-card--practical{background:linear-gradient(180deg, rgba(154,229,230,.10), rgba(255,255,255,.98) 56%)}
  html[data-theme="auto"] .lesson-kind--practical{
    background:rgba(154,229,230,.22);
    border-color:#a7e2e7;
    color:#1a6b73;
  }
  html[data-theme="auto"] .lesson-kind--seminar{background:rgba(255,194,94,.16);color:#99620a;border-color:rgba(224,175,84,.42)}
  html[data-theme="auto"] .lesson-kind--lab{background:rgba(91,210,197,.16);color:#136f73;border-color:rgba(91,210,197,.42)}
  html[data-theme="auto"] .soon-card{background:radial-gradient(circle at 85% 10%, rgba(168,249,255,.38), transparent 42%), #ffffff}
}


/* ===== BreakMed LIGHT V3.12 — cyan redesign ===== */
html[data-theme="light"]{
  --bg:#f3f6f5!important;
  --bg-2:#eef7f7!important;
  --panel:#ffffff!important;
  --panel-2:#f6fbfb!important;
  --panel-3:#e8f7f8!important;
  --line:#cfe7e9!important;
  --line-soft:#e0eef0!important;
  --text:#12383d!important;
  --muted:#55757a!important;
  --muted-2:#789297!important;
  --accent:#54c9cf!important;
  --accent-2:#37b9c2!important;
  --accent-ink:#11383d!important;
  --accent-soft:rgba(154,229,230,.34)!important;
  --green:#46b8a4!important;
  --shadow:0 18px 48px rgba(39,111,117,.10)!important;
}
@media(prefers-color-scheme:light){
  html[data-theme="auto"]{
    --bg:#f3f6f5!important;
    --bg-2:#eef7f7!important;
    --panel:#ffffff!important;
    --panel-2:#f6fbfb!important;
    --panel-3:#e8f7f8!important;
    --line:#cfe7e9!important;
    --line-soft:#e0eef0!important;
    --text:#12383d!important;
    --muted:#55757a!important;
    --muted-2:#789297!important;
    --accent:#54c9cf!important;
    --accent-2:#37b9c2!important;
    --accent-ink:#11383d!important;
    --accent-soft:rgba(154,229,230,.34)!important;
    --green:#46b8a4!important;
    --shadow:0 18px 48px rgba(39,111,117,.10)!important;
  }
}
html[data-theme="light"] body{
  background:
    radial-gradient(circle at 10% 38%, rgba(154,229,230,.22), transparent 26%),
    radial-gradient(circle at 88% 7%, rgba(168,249,255,.30), transparent 30%),
    #f3f6f5!important;
}
html[data-theme="light"] body::before{display:none!important}
html[data-theme="light"] .topbar{
  background:rgba(243,246,245,.88)!important;
  border-bottom:1px solid #cfe7e9!important;
  box-shadow:0 6px 28px rgba(39,111,117,.06)!important;
}
html[data-theme="light"] .brand-mark,
html[data-theme="light"] .profile-chip span,
html[data-theme="light"] .user-card-avatar,
html[data-theme="light"] .teacher-avatar,
html[data-theme="light"] .teacher-admin-avatar,
html[data-theme="light"] .teacher-profile-avatar,
html[data-theme="light"] .department-hero-mark{
  background:linear-gradient(135deg,#9ae5e6,#a8f9ff)!important;
  color:#12383d!important;
}
html[data-theme="light"] .brand-name span,
html[data-theme="light"] .menu-nav a.active span,
html[data-theme="light"] .text-button{color:#2aa8b3!important}
html[data-theme="light"] .desktop-nav,
html[data-theme="light"] .profile-chip,
html[data-theme="light"] .icon-button,
html[data-theme="light"] .menu-button{
  background:rgba(255,255,255,.92)!important;
  border-color:#cfe7e9!important;
}
html[data-theme="light"] .desktop-nav a.active{
  background:linear-gradient(135deg,rgba(154,229,230,.58),rgba(168,249,255,.42))!important;
  color:#12383d!important;
  box-shadow:none!important;
}
html[data-theme="light"] .panel{
  background:rgba(255,255,255,.88)!important;
  border:1px solid #cfe7e9!important;
  box-shadow:0 16px 46px rgba(42,110,117,.07)!important;
}
html[data-theme="light"] .schedule-day-head h2,
html[data-theme="light"] .section-head h1,
html[data-theme="light"] .section-head h2{color:#12383d!important}
html[data-theme="light"] .lesson-card{
  border:1px solid #bfe5e8!important;
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(244,252,252,.98))!important;
  box-shadow:0 8px 26px rgba(40,112,118,.045)!important;
}
html[data-theme="light"] .lesson-card::before{width:5px!important}
html[data-theme="light"] .lesson-card--practical{
  border-color:#a9dfe3!important;
  background:linear-gradient(135deg,rgba(154,229,230,.18),rgba(255,255,255,.98) 44%)!important;
}
html[data-theme="light"] .lesson-card--practical::before{background:linear-gradient(180deg,#54c9cf,#9ae5e6)!important}
html[data-theme="light"] .lesson-card--lecture{
  border-color:#7fd8e0!important;
  background:linear-gradient(135deg,rgba(168,249,255,.52),rgba(255,255,255,.98) 58%)!important;
  box-shadow:0 10px 30px rgba(65,174,185,.10)!important;
}
html[data-theme="light"] .lesson-card--lecture::before{background:linear-gradient(180deg,#35bdc7,#72dce5)!important}
html[data-theme="light"] .lesson-time strong,
html[data-theme="light"] .lesson-main h3,
html[data-theme="light"] .lesson-card--lecture .lesson-time strong,
html[data-theme="light"] .lesson-card--lecture .lesson-main h3{color:#12383d!important}
html[data-theme="light"] .lesson-time span,
html[data-theme="light"] .lesson-main p,
html[data-theme="light"] .lesson-card--lecture .lesson-time span,
html[data-theme="light"] .lesson-card--lecture .lesson-main p{color:#58757a!important}
html[data-theme="light"] .lesson-kind{
  background:#f6fbfb!important;
  border-color:#cfe7e9!important;
  color:#31585e!important;
}
html[data-theme="light"] .lesson-kind--practical{
  background:rgba(154,229,230,.36)!important;
  border-color:#8bd5dc!important;
  color:#17636b!important;
}
html[data-theme="light"] .lesson-kind--lecture{
  background:rgba(168,249,255,.58)!important;
  border-color:#70d4de!important;
  color:#145b63!important;
}
html[data-theme="light"] .day-tab{
  background:#ffffff!important;
  border-color:#cfe7e9!important;
  color:#55757a!important;
}
html[data-theme="light"] .day-tab.active{
  background:linear-gradient(135deg,#9ae5e6,#a8f9ff)!important;
  border-color:#77d2db!important;
  color:#12383d!important;
}
html[data-theme="light"] .primary-button{
  background:linear-gradient(135deg,#9ae5e6,#a8f9ff)!important;
  color:#12383d!important;
  box-shadow:0 10px 25px rgba(65,174,185,.18)!important;
}
html[data-theme="light"] .secondary-button{
  background:#ffffff!important;
  border-color:#cfe7e9!important;
  color:#234c52!important;
}
html[data-theme="light"] input,
html[data-theme="light"] select,
html[data-theme="light"] textarea{
  background:#ffffff!important;
  border-color:#c6e1e4!important;
  color:#12383d!important;
}
html[data-theme="light"] input:focus,
html[data-theme="light"] select:focus,
html[data-theme="light"] textarea:focus{
  border-color:#67ccd5!important;
  box-shadow:0 0 0 4px rgba(154,229,230,.28)!important;
}
html[data-theme="light"] .eyebrow,
html[data-theme="light"] .stage-kicker,
html[data-theme="light"] .homework-subject,
html[data-theme="light"] .headman-badge,
html[data-theme="light"] .feedback-kind,
html[data-theme="light"] .teacher-university-chip{
  background:rgba(154,229,230,.36)!important;
  color:#17636b!important;
  border-color:#9bdde3!important;
}
html[data-theme="light"] .course-card:hover,
html[data-theme="light"] .course-card.active,
html[data-theme="light"] .subject-button:hover,
html[data-theme="light"] .subject-button.active,
html[data-theme="light"] .category-grid button:hover,
html[data-theme="light"] .category-grid button.active{
  border-color:#7bd4dc!important;
  background:linear-gradient(135deg,rgba(154,229,230,.30),rgba(168,249,255,.20),#fff)!important;
}

@media(max-width:360px){.guest-auth-actions{grid-template-columns:1fr}}

/* BreakMed 3.13 — daily view for cycle-based schedules. */
.parity-badge.cycle{background:linear-gradient(135deg,rgba(98,224,193,.17),rgba(109,176,255,.15));border:1px solid rgba(98,224,193,.25);color:#9df1df}
.current-cycle-panel{position:relative;overflow:hidden;margin-bottom:16px;background:radial-gradient(circle at 92% 5%,rgba(98,224,193,.09),transparent 34%),var(--panel)}
.cycle-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cycle-summary-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;min-width:0;padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--panel-2)}
.cycle-summary-card h3{margin:0 0 4px;font-size:1rem}.cycle-summary-card p{margin:0;color:var(--muted);font-size:.82rem}
.cycle-summary-dates{display:grid;gap:2px;min-width:83px}.cycle-summary-dates strong{font-size:1.15rem}.cycle-summary-dates span{color:var(--muted);font-size:.75rem}
.cycle-summary-time{display:grid;gap:3px;text-align:right}.cycle-summary-time span{color:var(--muted);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.cycle-summary-time strong{font-size:.9rem;color:var(--accent)}
.cycle-all-details{margin-top:14px;border-top:1px solid var(--line);padding-top:14px}.cycle-all-details summary{cursor:pointer;color:var(--accent);font-weight:900}.cycle-timeline{display:grid;gap:8px;margin-top:12px}
.cycle-timeline>div{display:grid;grid-template-columns:120px 1fr auto;gap:14px;align-items:center;padding:10px 12px;border-radius:13px;background:var(--panel-2)}.cycle-timeline span,.cycle-timeline small{color:var(--muted);font-size:.78rem}
.schedule-conflict-alert{display:flex;align-items:center;gap:14px;margin:0 0 16px;padding:13px 16px;border:1px solid rgba(255,113,113,.32);border-radius:16px;background:rgba(255,113,113,.09);color:var(--danger)}.schedule-conflict-alert span{color:var(--muted);font-size:.84rem}
.cycle-day-panel{margin-bottom:16px}.day-load{display:inline-flex;align-items:center;min-height:29px;padding:0 10px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.72rem;font-weight:900;white-space:nowrap}
.empty-state.compact{padding:15px 16px}.lesson-card.has-time-conflict{border-color:rgba(255,113,113,.48);box-shadow:0 0 0 1px rgba(255,113,113,.08) inset}.status-pill.conflict{background:rgba(255,113,113,.12);color:var(--danger)}
html[data-theme="light"] .parity-badge.cycle{background:linear-gradient(135deg,rgba(154,229,230,.42),rgba(168,249,255,.36));border-color:#8bd5dc;color:#17636b}
html[data-theme="light"] .current-cycle-panel{background:radial-gradient(circle at 92% 5%,rgba(154,229,230,.22),transparent 36%),#fff!important}
html[data-theme="light"] .cycle-summary-card,html[data-theme="light"] .cycle-timeline>div{background:#f6fbfb;border-color:#cfe7e9}
@media(max-width:900px){.cycle-summary-grid{grid-template-columns:1fr}}
@media(max-width:620px){.cycle-summary-card{grid-template-columns:1fr auto}.cycle-summary-dates{grid-column:1/-1;display:flex;align-items:baseline;gap:6px}.cycle-summary-time{align-self:end}.cycle-timeline>div{grid-template-columns:1fr auto}.cycle-timeline>div span{grid-column:1/-1}.schedule-conflict-alert{align-items:flex-start;flex-direction:column;gap:5px}.cycle-day-panel .lesson-card{grid-template-columns:72px minmax(0,1fr);gap:12px}.cycle-day-panel .lesson-card>.status-pill{grid-column:2}.cycle-day-panel{padding-left:14px;padding-right:14px}.day-load{font-size:.68rem}}

/* BreakMed 3.14: cohesive product interface refinement. */
:root{
  --bg:#0b100e;--bg-2:#0f1613;--panel:#151d19;--panel-2:#1a2420;--panel-3:#213029;
  --line:#2b3a33;--line-soft:#202c27;--text:#f1f7f3;--muted:#a2b0a8;--muted-2:#8b9d93;
  --accent:#b5f36a;--accent-2:#91d944;--accent-ink:#152308;--accent-soft:rgba(181,243,106,.11);
  --green:#72cf8c;--danger:#ff8585;--warning:#f1bd69;
  --shadow:0 18px 48px rgba(1,12,7,.24);--shadow-soft:0 10px 28px rgba(1,12,7,.14);
  --radius:16px;--radius-control:12px;--top:68px;--max:1320px;
  --ease-out:cubic-bezier(.23,1,.32,1);
}
html[data-theme="light"]{
  --bg:#f3f7f5!important;--bg-2:#edf5f2!important;--panel:#ffffff!important;--panel-2:#f7fbf9!important;--panel-3:#e7f4ef!important;
  --line:#cfe2da!important;--line-soft:#e0ebe6!important;--text:#16372d!important;--muted:#587168!important;--muted-2:#60786f!important;
  --accent:#54c9b2!important;--accent-2:#35b79f!important;--accent-ink:#103a32!important;--accent-soft:rgba(84,201,178,.13)!important;
  --green:#45b798!important;--shadow:0 18px 48px rgba(29,86,67,.10)!important;--shadow-soft:0 9px 24px rgba(29,86,67,.08)!important;
}
@media(prefers-color-scheme:light){html[data-theme="auto"]{
  --bg:#f3f7f5!important;--bg-2:#edf5f2!important;--panel:#ffffff!important;--panel-2:#f7fbf9!important;--panel-3:#e7f4ef!important;
  --line:#cfe2da!important;--line-soft:#e0ebe6!important;--text:#16372d!important;--muted:#587168!important;--muted-2:#60786f!important;
  --accent:#54c9b2!important;--accent-2:#35b79f!important;--accent-ink:#103a32!important;--accent-soft:rgba(84,201,178,.13)!important;
  --green:#45b798!important;--shadow:0 18px 48px rgba(29,86,67,.10)!important;--shadow-soft:0 9px 24px rgba(29,86,67,.08)!important;
}}

html{scrollbar-color:var(--line) var(--bg);scroll-padding-top:calc(var(--top) + 18px)}
body{
  min-height:100dvh;
  background:radial-gradient(circle at 88% 2%,color-mix(in srgb,var(--accent) 7%,transparent),transparent 28rem),var(--bg)!important;
  font-family:"Segoe UI Variable Text","Segoe UI",ui-sans-serif,-apple-system,BlinkMacSystemFont,sans-serif;
  font-size:15.5px;line-height:1.55;text-rendering:optimizeLegibility;
}
body::before{display:none!important}.ambient{opacity:.045;filter:blur(120px)}
::selection{background:color-mix(in srgb,var(--accent) 32%,transparent);color:var(--text)}
*{scrollbar-width:thin}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:var(--bg)}
*::-webkit-scrollbar-thumb{background:var(--line);border:3px solid var(--bg);border-radius:999px}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 58%,transparent);outline-offset:3px}

.topbar{
  height:var(--top);grid-template-columns:auto minmax(0,1fr) auto;gap:18px;
  padding:0 max(16px,calc((100vw - var(--max))/2));
  background:color-mix(in srgb,var(--bg) 88%,transparent)!important;border-bottom:1px solid var(--line-soft)!important;
  box-shadow:none!important;backdrop-filter:blur(16px) saturate(135%);-webkit-backdrop-filter:blur(16px) saturate(135%);
}
.topbar .brand-logo{width:48px;height:48px;border-radius:14px;box-shadow:none}
.desktop-nav{gap:2px;padding:0;border:0;background:transparent!important}
.desktop-nav a{min-height:40px;padding:0 13px;border-radius:10px;font-size:.84rem;font-weight:700;transition:background-color 180ms var(--ease-out),color 180ms var(--ease-out),transform 140ms var(--ease-out)}
.desktop-nav a.active{background:var(--panel-3)!important;color:var(--text)!important;box-shadow:none!important}
.icon-button,.menu-button,.profile-chip,.login-chip{border-radius:var(--radius-control);background:var(--panel)!important;border-color:var(--line)!important;box-shadow:none!important}
.icon-button,.menu-button{transition:border-color 180ms var(--ease-out),background-color 180ms var(--ease-out),transform 140ms var(--ease-out)}
.profile-chip{height:42px;font-weight:700}.profile-chip span{background:var(--panel-3)!important;color:var(--text)!important}

.page-shell{width:min(var(--max),calc(100% - 40px));padding:clamp(28px,4vw,48px) 0 80px;min-height:calc(100dvh - var(--top) - 88px)}
.section-head{align-items:flex-start;margin-bottom:24px}.section-head>div{display:grid;gap:4px}
.section-head h1,.section-head h2{margin:0;max-width:22ch;font-family:"Onest","Segoe UI Variable Text","Segoe UI",sans-serif;font-weight:700;letter-spacing:-.035em;line-height:1.08;text-wrap:balance}
.section-head h1{font-size:clamp(2rem,4vw,3.35rem)}.section-head h2{font-size:clamp(1.65rem,3vw,2.55rem)}
.section-head p{max-width:68ch;margin-top:4px;color:var(--muted);text-wrap:pretty}
.eyebrow,.stage-kicker{width:max-content;min-height:auto;padding:0;border:0!important;border-radius:0;background:transparent!important;color:var(--muted)!important;font-size:.76rem;font-weight:700;letter-spacing:.01em;text-transform:none}
.section-head .eyebrow,.section-head .stage-kicker{display:none}

.primary-button,.secondary-button,.danger-button,.text-button,.footer-link,.news-link{border-radius:var(--radius-control);font-weight:750;transition:transform 140ms var(--ease-out),background-color 180ms var(--ease-out),border-color 180ms var(--ease-out),color 180ms var(--ease-out),box-shadow 180ms var(--ease-out),filter 180ms var(--ease-out)}
.primary-button{background:var(--accent)!important;color:var(--accent-ink)!important;box-shadow:0 8px 22px color-mix(in srgb,var(--accent) 13%,transparent)!important}
.secondary-button{background:var(--panel)!important;border:1px solid var(--line)!important;color:var(--text)!important}
.danger-button{background:color-mix(in srgb,var(--danger) 10%,transparent);border:1px solid color-mix(in srgb,var(--danger) 23%,transparent)}
.text-button{color:color-mix(in srgb,var(--accent) 86%,var(--text))!important}
.primary-button:active,.secondary-button:active,.danger-button:active,.icon-button:active,.menu-button:active,.footer-link:active,.news-link:active{transform:scale(.98)}
button:disabled,.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.48;box-shadow:none!important;transform:none!important}

input,select,textarea{min-height:46px;padding:10px 13px;border-radius:var(--radius-control);border-color:var(--line)!important;background:var(--panel-2)!important;color:var(--text)!important;caret-color:var(--accent);transition:border-color 180ms var(--ease-out),box-shadow 180ms var(--ease-out),background-color 180ms var(--ease-out)}
input::placeholder,textarea::placeholder{color:var(--muted-2)!important;opacity:1}
input:focus,select:focus,textarea:focus{border-color:color-mix(in srgb,var(--accent) 65%,var(--line))!important;box-shadow:0 0 0 3px var(--accent-soft)!important}
.stack-form{gap:16px}.stack-form label{gap:7px;font-size:.86rem;font-weight:700}.stack-form label small{line-height:1.45;color:var(--muted)}

.panel,.test-card{border-radius:var(--radius);border:1px solid var(--line)!important;background:var(--panel)!important;box-shadow:none!important;padding:clamp(18px,2.4vw,26px)}
.panel h2,.test-card h2{letter-spacing:-.025em}.flash,.form-error,.empty-state{border-radius:var(--radius-control)}
.empty-state{padding:clamp(28px,5vw,48px);background:var(--panel-2);border:1px dashed var(--line);color:var(--muted)}

.news-section{margin-bottom:clamp(52px,7vw,88px)}.news-card{border-radius:20px;box-shadow:var(--shadow-soft)}
.news-image,.news-visual{aspect-ratio:21/9}.news-content{padding:clamp(22px,3vw,32px)}
.news-content h2{font-size:clamp(1.75rem,3.5vw,2.9rem);letter-spacing:-.035em;line-height:1.08}
.news-label{padding:0;background:transparent;color:var(--muted);font-size:.76rem;letter-spacing:.01em;text-transform:none}
.news-link{min-width:190px;box-shadow:none}.carousel-controls button{border-radius:var(--radius-control);background:var(--panel);transition:border-color 180ms var(--ease-out),transform 140ms var(--ease-out)}

.course-grid{gap:12px;margin-bottom:32px}.course-card{min-height:108px;border-radius:var(--radius);padding:17px;border-color:var(--line);background:var(--panel);box-shadow:none;transition:transform 180ms var(--ease-out),border-color 180ms var(--ease-out),background-color 180ms var(--ease-out),box-shadow 180ms var(--ease-out)}
.course-card::after{display:none}.course-card:hover,.course-card.active{transform:none;box-shadow:none}
.course-card.active{border-color:color-mix(in srgb,var(--accent) 46%,var(--line));background:var(--accent-soft)}
.course-number{width:48px;height:48px;border-radius:13px;background:var(--panel-3);font-variant-numeric:tabular-nums}
.flow-stage{padding-top:32px;margin-top:32px;border-color:var(--line-soft)}
.subject-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.subject-button{min-height:88px;border-radius:14px;padding:14px;background:var(--panel);transition:transform 180ms var(--ease-out),border-color 180ms var(--ease-out),background-color 180ms var(--ease-out)}
.subject-button:hover,.subject-button.active{background:var(--accent-soft);transform:none}
.category-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.category-grid button{min-height:116px;border-radius:14px;padding:14px;background:var(--panel);transition:transform 180ms var(--ease-out),border-color 180ms var(--ease-out),background-color 180ms var(--ease-out)}
.category-grid button:hover,.category-grid button.active{transform:none;background:var(--accent-soft)}.category-grid button>span{top:14px;left:14px;width:36px;height:36px;border-radius:10px}
.library-tools{border-radius:14px;box-shadow:var(--shadow-soft);background:color-mix(in srgb,var(--panel) 94%,transparent)}
.materials-grid{gap:14px}.material-card{min-height:340px;border-radius:var(--radius);transition:transform 180ms var(--ease-out),border-color 180ms var(--ease-out),box-shadow 180ms var(--ease-out)}
.material-card:hover{transform:none;box-shadow:none}.material-body{padding:18px}.source-link{border-radius:10px}

.schedule-week-panel,.lesson-card,.cycle-summary-card,.homework-card,.profile-upcoming-theme,.profile-theme-material{border-radius:14px;border-color:var(--line)!important;box-shadow:none!important}
.schedule-week-panel{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}
.schedule-week-panel>div:first-child{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;min-width:0}
.schedule-week-panel>div:first-child small{flex-basis:100%;color:var(--muted);line-height:1.45}
.schedule-week-actions{display:flex;gap:6px;flex:0 0 auto}.schedule-week-actions .secondary-button{min-width:44px;justify-content:center}
.lesson-card{padding:17px 18px;grid-template-columns:96px minmax(0,1fr) auto;transition:border-color 180ms var(--ease-out),background-color 180ms var(--ease-out),transform 180ms var(--ease-out)}
.lesson-card::before{display:none!important}.lesson-title-row h3{letter-spacing:-.015em}
.lesson-card--practical{background:color-mix(in srgb,var(--accent) 4%,var(--panel))!important}
.lesson-card--lecture{background:color-mix(in srgb,#6db0ff 6%,var(--panel))!important}
html[data-theme="light"] .lesson-card--practical{background:color-mix(in srgb,var(--accent) 8%,var(--panel))!important}
html[data-theme="light"] .lesson-card--lecture{background:color-mix(in srgb,#54c9cf 11%,var(--panel))!important}
.lesson-time,.exam-unit,.course-number,.cycle-summary-dates,.cycle-summary-time{font-variant-numeric:tabular-nums}
.day-tab{border-radius:11px;transition:border-color 180ms var(--ease-out),background-color 180ms var(--ease-out),color 180ms var(--ease-out),transform 140ms var(--ease-out)}
.day-tab.active{box-shadow:none}.lesson-kind,.status-pill,.parity-badge,.day-load{border-radius:999px}
.profile-grid{gap:18px}.profile-avatar{border-radius:16px;box-shadow:none}.telegram-card{border-radius:14px;background:var(--panel-2)}

.auth-body{padding:24px;background:var(--bg)!important}.auth-shell{width:min(450px,100%)}.auth-brand{margin-bottom:22px}
.auth-brand .brand-logo{width:82px;height:82px;border-radius:20px;box-shadow:var(--shadow-soft)}
.auth-card{border-radius:20px;padding:clamp(24px,5vw,38px);box-shadow:var(--shadow);position:relative;overflow:hidden}
.auth-card::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--accent)}
.auth-card h1{font-size:2.15rem;letter-spacing:-.035em}.password-row button{font-weight:700}

.side-menu{width:min(390px,94vw);background:var(--bg-2);border-color:var(--line);box-shadow:-22px 0 56px rgba(0,0,0,.25);transition:transform 240ms var(--ease-out)}
.menu-backdrop{transition:opacity 180ms var(--ease-out)}.user-card,.theme-select{border-radius:14px}
.menu-nav a{min-height:46px;border-radius:11px;font-weight:720;transition:background-color 180ms var(--ease-out),color 180ms var(--ease-out),transform 140ms var(--ease-out)}
.menu-nav a.active{background:var(--panel);color:var(--text)}.feedback-fab{border-radius:14px;box-shadow:var(--shadow-soft)}
.feedback-modal{border-radius:18px;box-shadow:var(--shadow)}.footer{width:min(var(--max),calc(100% - 40px));padding:24px 0 36px}
.admin-tabs{border-radius:14px}.admin-tabs a{border-radius:10px}.admin-item,.feedback-admin-card,.department-card,.teacher-review-card{border-radius:14px}.material-status-switch{border-radius:12px}

@media(hover:hover) and (pointer:fine){
  .desktop-nav a:hover,.menu-nav a:hover{transform:translateY(-1px)}
  .primary-button:hover,.secondary-button:hover,.icon-button:hover,.menu-button:hover,.footer-link:hover,.news-link:hover{transform:translateY(-1px)}
  .course-card:hover,.subject-button:hover,.category-grid button:hover,.material-card:hover,.day-tab:hover,.lesson-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 38%,var(--line))!important;box-shadow:var(--shadow-soft)!important}
}
@media(max-width:1050px){.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){
  .page-shell{width:min(var(--max),calc(100% - 28px));padding-top:26px}.section-head{gap:14px}.section-head h1{font-size:clamp(2rem,9vw,2.65rem)}
  .news-image,.news-visual{aspect-ratio:16/9}.subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .schedule-week-panel{align-items:flex-start;flex-direction:column;gap:12px}.schedule-week-actions{width:100%}.schedule-week-actions .secondary-button{flex:1}
  .lesson-card{grid-template-columns:78px minmax(0,1fr);gap:13px}.lesson-card>.status-pill{grid-column:2;justify-self:start}
  .panel,.test-card{padding:18px}.footer{width:min(var(--max),calc(100% - 28px))}
}
@media(max-width:560px){
  :root{--top:64px}.topbar{padding:0 12px}.page-shell{width:min(var(--max),calc(100% - 20px));padding-top:22px}
  .section-head h1{font-size:2.05rem}.section-head h2{font-size:1.65rem}.news-card{border-radius:16px}.course-card{min-height:86px}
  .subject-grid{grid-template-columns:1fr}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-grid button{min-height:108px}
  .material-card{min-height:320px}.auth-body{padding:14px}.auth-card{border-radius:16px;padding:22px 18px}.footer{width:min(var(--max),calc(100% - 20px))}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Semantic states use the whole surface instead of decorative edge stripes. */
.review.ok{border-left-width:1px;border-color:color-mix(in srgb,var(--accent) 40%,var(--line));background:var(--accent-soft)}
.review.bad{border-left-width:1px;border-color:color-mix(in srgb,var(--danger) 40%,var(--line));background:color-mix(in srgb,var(--danger) 7%,var(--panel))}
.feedback-card.correct{box-shadow:none;border-color:color-mix(in srgb,var(--accent) 44%,var(--line));background:color-mix(in srgb,var(--accent) 6%,var(--panel))}
.feedback-card.incorrect{box-shadow:none;border-color:color-mix(in srgb,var(--danger) 44%,var(--line));background:color-mix(in srgb,var(--danger) 6%,var(--panel))}
.feedback-admin-card.is-new{box-shadow:none;background:color-mix(in srgb,var(--accent) 6%,var(--panel))}
.auth-card::before{content:none}
.ui-icon{width:18px;height:18px;display:block;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.feedback-kind-switch span{gap:8px}.feedback-fab .ui-icon,.feedback-menu-button .ui-icon,.pwa-install-button .ui-icon{width:17px;height:17px}
