:root{--bg:#f4f7fb;--panel:#fff;--panel-2:#f8fafc;--text:#152033;--muted:#718096;--line:#e5eaf1;--accent:#5b67f1;--accent-2:#8968ef;--green:#16a36a;--amber:#e79b29;--red:#d64f5e;--purple:#785be8;--shadow:0 18px 45px rgba(27,39,75,.1);--shadow-sm:0 8px 22px rgba(27,39,75,.08)}[data-theme=dark]{--bg:#0d1119;--panel:#151b25;--panel-2:#101620;--text:#edf2fa;--muted:#97a5b9;--line:#263143;--accent:#7782ff;--accent-2:#9a78f8;--green:#35c68a;--amber:#ffb64d;--red:#f16b78;--purple:#a58bff;--shadow:0 18px 45px rgba(0,0,0,.35);--shadow-sm:0 8px 22px rgba(0,0,0,.28)}*{box-sizing:border-box}html,body,#root{background:var(--bg);min-height:100%;color:var(--text);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}.shell{grid-template-columns:268px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--panel);border-right:1px solid var(--line);z-index:30;flex-direction:column;gap:18px;height:100vh;padding:22px 18px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;padding:6px 8px 12px;display:flex}.logo{color:#fff;background:linear-gradient(135deg,var(--accent),#9a65ff);border-radius:15px;place-items:center;width:42px;height:42px;font-weight:850;display:grid;box-shadow:0 12px 25px rgba(91,103,241,.28)}.brand strong{font-size:17px;display:block}.brand span,.profile span{color:var(--muted);margin-top:2px;font-size:12px;display:block}.mode-switch{background:var(--panel-2);border:1px solid var(--line);border-radius:14px;grid-template-columns:1fr 1fr;padding:4px;display:grid}.mode-switch button{color:var(--muted);background:0 0;border:0;border-radius:10px;padding:9px 10px;font-size:13px;font-weight:780;transition:all .18s}.mode-switch button.active{background:var(--panel);color:var(--text);box-shadow:var(--shadow-sm)}.nav-label{color:var(--muted);text-transform:uppercase;letter-spacing:.11em;padding:0 10px;font-size:11px;font-weight:850}nav{flex-direction:column;gap:5px;display:flex}.nav-item{color:var(--muted);text-align:left;background:0 0;border:0;border-radius:13px;align-items:center;gap:12px;padding:11px 12px;font-weight:740;transition:background .18s,color .18s,transform .18s;display:flex}.nav-item:hover{background:var(--panel-2);color:var(--text);transform:translate(2px)}.nav-item.active{color:var(--accent);background:rgba(91,103,241,.12)}.nav-icon{text-align:center;width:22px;font-size:17px}.counter{min-width:24px;height:22px;color:var(--red);background:rgba(214,79,94,.12);border-radius:999px;place-items:center;margin-left:auto;padding:0 7px;font-size:11px;font-weight:850;display:grid}.sidebar-bottom{gap:10px;margin-top:auto;display:grid}.theme-button,.icon-button,.primary,.soft,.white,.glass,.mini{border-radius:13px;font-weight:780;transition:transform .16s,box-shadow .16s,background .16s,border-color .16s}.theme-button{border:1px solid var(--line);background:var(--panel);color:var(--text);padding:10px}.theme-button:hover,.soft:hover,.icon-button:hover,.mini:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.profile{border:1px solid var(--line);background:var(--panel-2);border-radius:16px;align-items:center;gap:11px;padding:10px;display:flex}.avatar{color:#3e4bb2;background:linear-gradient(135deg,#dce4ff,#d4c6ff);border-radius:50%;place-items:center;width:38px;height:38px;font-weight:850;display:grid}.profile strong{font-size:13px}main{min-width:0}.topbar{z-index:20;background:color-mix(in srgb,var(--bg) 88%, transparent);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);align-items:center;gap:10px;height:76px;padding:0 30px;display:flex;position:sticky;top:0}.top-title{font-size:18px;font-weight:850}.top-sub{color:var(--muted);margin-top:2px;font-size:12px}.grow{flex:1}.icon-button{border:1px solid var(--line);background:var(--panel);width:42px;height:42px;color:var(--text);padding:0}.menu{display:none}.primary,.soft{border:1px solid var(--line);padding:10px 14px}.primary{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 10px 24px rgba(91,103,241,.22)}.primary:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(91,103,241,.26)}.soft{background:var(--panel);color:var(--text)}.content{max-width:1500px;margin:0 auto;padding:28px 30px 90px}@keyframes pageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.hero-grid{grid-template-columns:1.45fr .85fr;gap:20px;display:grid}.hero-card,.game-hero{color:#fff;background:linear-gradient(135deg,#5866ef 0%,#7b63e9 55%,#9574f4 100%);border-radius:28px;padding:26px;position:relative;overflow:hidden;box-shadow:0 24px 54px rgba(91,103,241,.26)}.hero-card{min-height:230px}.hero-card:after,.game-hero:after{content:"";background:rgba(255,255,255,.08);border-radius:50%;width:290px;height:290px;position:absolute;top:-130px;right:-100px}.hero-card h1,.game-hero h1{max-width:720px;margin:5px 0 10px;font-size:30px;line-height:1.12}.hero-card p,.game-hero p{color:rgba(255,255,255,.82);max-width:650px;margin:0 0 20px;line-height:1.55}.eyebrow{letter-spacing:.11em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:850}.eyebrow.light{color:rgba(255,255,255,.72)}.hero-actions,.row,.actions-right{align-items:center;gap:9px;display:flex}.wrap{flex-wrap:wrap}.hero-actions button{border:0;padding:11px 15px}.white{color:#3944ac;background:#fff}.glass{color:#fff;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.15)!important}.card{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:22px;padding:21px;transition:transform .18s,box-shadow .18s}.card:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.next-card{padding:22px}.big-time{margin:14px 0 4px;font-size:34px;font-weight:900}.muted{color:var(--muted)}.body{font-size:13px;line-height:1.55}.progress{background:var(--panel-2);border-radius:999px;height:8px;margin:20px 0 8px;overflow:hidden}.progress span{background:linear-gradient(90deg,var(--accent),var(--accent-2));border-radius:999px;height:100%;transition:width .35s;display:block}.progress.green span{background:linear-gradient(90deg,var(--green),#69d5a5)}.stats-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0;display:grid}.stat{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:17px 18px;transition:transform .18s,box-shadow .18s}.stat:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}.stat b{font-size:25px;display:block}.stat span{color:var(--muted);margin-top:4px;font-size:12px;display:block}.two-col{grid-template-columns:1.2fr .8fr;gap:20px;display:grid}.three-col{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.mt{margin-top:20px}.mt-small{margin-top:14px}.mb{margin-bottom:14px}.card-head{align-items:center;gap:10px;margin-bottom:16px;display:flex}.card-head h3{margin:0;font-size:16px}.link{color:var(--accent);background:0 0;border:0;padding:6px;font-weight:800}.lesson-list{gap:10px;display:grid}.lesson{background:var(--panel-2);border:1px solid transparent;border-radius:15px;grid-template-columns:74px 1fr auto;align-items:center;gap:14px;padding:12px;transition:all .18s;display:grid}.lesson:hover{transform:translate(2px)}.lesson.current{background:rgba(91,103,241,.08);border-color:rgba(91,103,241,.35)}.lesson strong{font-size:13px}.lesson small,.task small,.mini-line small,.person small,.setting small,.mission small{color:var(--muted);margin-top:4px;display:block}.tag{background:var(--panel-2);border:1px solid var(--line);white-space:nowrap;border-radius:999px;align-items:center;padding:6px 9px;font-size:11px;font-weight:850;display:inline-flex}.tag.green{color:var(--green);background:rgba(22,163,106,.09);border-color:rgba(22,163,106,.16)}.tag.amber{color:var(--amber);background:rgba(231,155,41,.1);border-color:rgba(231,155,41,.18)}.tag.red{color:var(--red);background:rgba(214,79,94,.09);border-color:rgba(214,79,94,.16)}.tag.purple{color:var(--purple);background:rgba(120,91,232,.09);border-color:rgba(120,91,232,.18)}.announcement{border-bottom:1px solid var(--line);padding:14px 0}.announcement:last-child{border-bottom:0}.announcement .row{margin-bottom:7px}.announcement>strong{font-size:14px}.announcement p{color:var(--muted);margin:5px 0 0;font-size:13px;line-height:1.5}.task,.mini-line{border-bottom:1px solid var(--line);align-items:flex-start;gap:11px;padding:12px 0;display:flex}.task:last-child,.mini-line:last-child{border-bottom:0}.task>div,.mini-line>div{flex:1}.task>strong,.mini-line strong{font-size:13px}.fake-check{border:2px solid var(--line);border-radius:7px;flex:none;width:22px;height:22px}.notice{color:#2999c3;background:rgba(31,154,199,.09);border:1px solid rgba(31,154,199,.15);border-radius:14px;padding:12px 14px;font-size:12px;line-height:1.45}.segments{gap:8px;display:flex}.segments.wrap{flex-wrap:wrap}.segments button,.duration-grid button{border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:11px;padding:9px 11px;font-size:12px;font-weight:800;transition:all .16s}.segments button:hover,.duration-grid button:hover{transform:translateY(-1px)}.segments button.active,.duration-grid button.active{color:var(--accent);background:rgba(91,103,241,.1);border-color:rgba(91,103,241,.28)}.quick-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.ai-panel{background:linear-gradient(135deg,rgba(91,103,241,.08),rgba(154,101,255,.06));border:1px solid rgba(91,103,241,.22);border-radius:22px;padding:21px}.upload-box{text-align:center;background:var(--panel);border:1.5px dashed rgba(91,103,241,.35);border-radius:16px;margin:14px 0;padding:22px}.upload-box strong,.upload-box small{display:block}.upload-box small{color:var(--muted);margin-top:6px}.upload-icon{margin-bottom:6px;font-size:32px}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.field,.form-grid label{color:var(--muted);gap:6px;font-size:11px;font-weight:800;display:grid}.field{margin-top:12px}input,select,textarea{border:1px solid var(--line);background:var(--panel);width:100%;color:var(--text);border-radius:12px;outline:none;padding:10px 12px}textarea{resize:vertical;min-height:120px}.actions-right{justify-content:flex-end;margin-top:16px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:760px}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:12px 10px;font-size:13px}th{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:11px}.person{align-items:center;gap:10px;display:flex}.mini-avatar{background:var(--panel-2);border:1px solid var(--line);border-radius:50%;place-items:center;width:32px;height:32px;font-size:11px;font-weight:850;display:grid}.mini{border:1px solid var(--line);background:var(--panel);color:var(--text);padding:6px 8px;font-size:11px}.red-text{color:var(--red)}.amber-text{color:var(--amber)}.green-text{color:var(--green)}.setting{border-bottom:1px solid var(--line);align-items:center;gap:16px;padding:14px 0;display:flex}.setting:last-child{border-bottom:0}.setting>div{flex:1}.setting strong{font-size:13px}.toggle{background:var(--line);border-radius:999px;width:46px;height:26px;padding:3px;position:relative}.toggle:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:all .18s;display:block;box-shadow:0 2px 6px rgba(0,0,0,.15)}.toggle.on{background:var(--accent)}.toggle.on:after{transform:translate(20px)}.modal-backdrop{z-index:80;background:rgba(7,11,18,.52);justify-content:center;align-items:center;padding:18px;animation:.18s fadeIn;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.modal{background:var(--panel);border:1px solid var(--line);width:min(520px,100%);box-shadow:var(--shadow);border-radius:24px;padding:22px;animation:.2s cubic-bezier(.2,.8,.2,1) popIn}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{opacity:0;transform:scale(.97)translateY(8px)}to{opacity:1;transform:none}}.duration-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0;display:grid}.game-hero{justify-content:space-between;align-items:center;gap:24px;display:flex}.game-level{text-align:center;z-index:2;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.14);border-radius:22px;min-width:130px;padding:18px;position:relative}.game-level span,.game-level small{color:rgba(255,255,255,.75);display:block}.game-level b{margin:8px 0;font-size:45px;line-height:1;display:block}.game-stats{margin:20px 0}.game-stats h2{margin:10px 0 0}.game-layout{grid-template-columns:1.25fr .75fr;gap:20px;display:grid}.game-card{min-height:520px}.signal-grid{grid-template-columns:repeat(3,1fr);gap:10px;width:min(430px,100%);margin:24px auto;display:grid}.signal-grid button{aspect-ratio:1;border:1px solid var(--line);background:linear-gradient(145deg,var(--panel-2),var(--panel));color:var(--muted);border-radius:20px;font-size:20px;font-weight:850;transition:transform .12s,background .12s,box-shadow .12s,color .12s;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)}.signal-grid button:not(:disabled):active{transform:scale(.95)}.signal-grid button.lit{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;transform:scale(.96);box-shadow:0 0 0 6px rgba(91,103,241,.12),0 14px 26px rgba(91,103,241,.28)}.signal-grid button:disabled{cursor:default}.game-controls{text-align:center}.big{min-width:190px;padding:13px 22px}.mission{border-bottom:1px solid var(--line);align-items:flex-start;gap:12px;padding:14px 0;display:flex}.mission>span{width:30px;height:30px;color:var(--accent);background:rgba(91,103,241,.1);border-radius:10px;place-items:center;font-weight:850;display:grid}.mission>div{flex:1}.mobile-tabs{display:none}@media (max-width:1100px){.shell{grid-template-columns:220px 1fr}.hero-grid,.two-col,.game-layout{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.shell{display:block}.sidebar{width:268px;box-shadow:var(--shadow);transition:left .22s;position:fixed;top:0;left:-290px}.sidebar.open{left:0}.menu{place-items:center;display:grid}.topbar{height:68px;padding:0 14px}.desktop-only{display:none}.content{padding:18px 14px 92px}.hero-card{min-height:auto;padding:21px}.hero-card h1,.game-hero h1{font-size:24px}.stats-grid,.three-col{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.quick-grid{grid-template-columns:1fr 1fr}.mobile-tabs{z-index:25;background:color-mix(in srgb,var(--panel) 92%, transparent);backdrop-filter:blur(18px);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;grid-template-columns:repeat(4,1fr);padding:7px;display:grid;position:fixed;bottom:10px;left:10px;right:10px}.mobile-tabs button{color:var(--muted);background:0 0;border:0;border-radius:12px;padding:8px 4px;font-size:10px;font-weight:800}.mobile-tabs button.active{color:var(--accent);background:rgba(91,103,241,.1)}.mobile-tabs span,.mobile-tabs small{display:block}.mobile-tabs span{font-size:18px}.duration-grid{grid-template-columns:repeat(2,1fr)}.game-hero{display:block}.game-level{width:130px;margin-top:16px}.signal-grid{gap:8px}.signal-grid button{border-radius:16px}}@media (max-width:500px){.stats-grid,.three-col{grid-template-columns:1fr}.lesson{grid-template-columns:62px 1fr}.lesson .tag{grid-column:2}.top-sub{display:none}.quick-grid{grid-template-columns:1fr}.game-card{min-height:0}.game-hero{padding:21px}.signal-grid{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.lang-panel{border:1px solid var(--line);background:var(--panel-2);border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;display:flex}.lang-panel>span{color:var(--muted);font-size:12px;font-weight:800}.language-switch{background:var(--panel-2);border:1px solid var(--line);border-radius:12px;grid-template-columns:1fr 1fr;gap:3px;padding:3px;display:inline-grid}.language-switch button{color:var(--muted);background:0 0;border:0;border-radius:9px;min-width:38px;padding:6px 9px;font-size:11px;font-weight:900}.language-switch button.active{background:var(--panel);color:var(--accent);box-shadow:var(--shadow-sm)}.top-language{display:flex}.connection-state{color:var(--muted);padding:0 4px;font-size:11px;line-height:1.4;display:block}.admin-hint{border:1px dashed var(--line);color:var(--muted);background:var(--panel);border-radius:14px;margin-top:18px;padding:12px 14px;font-size:12px}.admin-hero{color:#fff;background:linear-gradient(135deg,#2f7d68 0%,#4569c7 62%,#7659d9 100%);border-radius:28px;justify-content:space-between;align-items:center;gap:20px;padding:24px 26px;display:flex;box-shadow:0 24px 54px rgba(70,91,180,.2)}.admin-hero h1{margin:5px 0 8px;font-size:28px}.admin-hero p{color:rgba(255,255,255,.82);max-width:740px;margin:0;line-height:1.5}.feature-settings{grid-template-columns:1fr 1fr;gap:0 24px;display:grid}.setting-button{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0}.setting-button:hover{background:var(--panel-2);border-radius:13px;padding-left:10px;padding-right:10px}.setting-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.actions-right .primary:disabled{opacity:.62;cursor:wait;transform:none}@media (max-width:900px){.feature-settings{grid-template-columns:1fr}}@media (max-width:760px){.top-language{display:none}.lang-panel{display:flex}.admin-hero{display:block}.admin-hero .tag{margin-top:14px}.admin-hero h1{font-size:24px}}.sidebar-close{border-radius:11px;width:34px;height:34px;margin-left:auto;font-size:22px;line-height:1;display:none}.sidebar-backdrop{display:none}.settings-trigger{font-size:17px}.settings-backdrop{z-index:90;backdrop-filter:blur(5px);background:rgba(8,12,20,.42);justify-content:flex-end;animation:.18s fadeIn;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.settings-sheet{background:var(--panel);border-left:1px solid var(--line);width:min(360px,92vw);height:100%;padding:22px;animation:.24s cubic-bezier(.2,.8,.2,1) sheetIn;box-shadow:-24px 0 60px rgba(11,20,38,.18)}@keyframes sheetIn{0%{opacity:.2;transform:translate(24px)}to{opacity:1;transform:none}}.sheet-head{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.sheet-head h3{margin:4px 0 0;font-size:20px}.sheet-setting{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:16px 0;display:flex}.sheet-setting>div:first-child{min-width:100px}.sheet-setting strong,.sheet-setting small{display:block}.sheet-setting small{color:var(--muted);margin-top:4px;font-size:11px}.admin-tabs{background:var(--panel);border:1px solid var(--line);width:max-content;max-width:100%;box-shadow:var(--shadow-sm);border-radius:16px;gap:8px;margin-top:18px;padding:5px;display:flex;overflow:auto}.admin-tabs button{color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:11px;padding:9px 13px;font-weight:820}.admin-tabs button.active{color:var(--accent);background:rgba(91,103,241,.11)}.member-admin-list,.class-admin-list{gap:10px;margin-top:14px;display:grid}.member-admin-row,.class-admin-row{border:1px solid var(--line);background:var(--panel-2);border-radius:16px;grid-template-columns:minmax(200px,1.4fr) minmax(140px,.8fr) minmax(150px,.9fr) auto;align-items:end;gap:12px;padding:14px;display:grid}.member-admin-row label,.class-admin-row label{gap:6px;display:grid}.member-admin-row label>span,.class-admin-row label>span{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:10px;font-weight:850}.member-person{align-self:center}.member-admin-row .soft,.class-admin-row .soft,.class-admin-row .primary{height:41px}.add-class-card{background:linear-gradient(135deg,color-mix(in srgb,var(--panel) 88%,var(--accent) 12%),var(--panel))}.new-class-row{grid-template-columns:160px 1fr 160px auto}.error-notice{color:var(--red);background:rgba(214,79,94,.09);border-color:rgba(214,79,94,.18)}.success-notice{color:var(--green);background:rgba(22,163,106,.09);border-color:rgba(22,163,106,.18)}.hero-card:before,.game-hero:before,.admin-hero:before{content:"";filter:blur(1px);pointer-events:none;background:rgba(255,255,255,.08);border-radius:38% 62% 55% 45%;width:150px;height:150px;animation:9s ease-in-out infinite alternate floatBlob;position:absolute;bottom:-72px;left:-52px}.admin-hero{position:relative;overflow:hidden}.admin-hero:after{content:"";pointer-events:none;background:rgba(255,255,255,.08);border-radius:50%;width:230px;height:230px;position:absolute;top:-120px;right:-80px}@keyframes floatBlob{0%{transform:translate(0)rotate(0)}to{transform:translate(24px,-18px)rotate(18deg)}}.card,.stat,.nav-item,.mobile-tabs button{-webkit-tap-highlight-color:transparent}.card:active{transform:scale(.998)}.mobile-tabs button{transition:background .16s,color .16s,transform .12s}.mobile-tabs button:active{transform:scale(.96)}@media (max-width:1000px){.member-admin-row,.class-admin-row,.new-class-row{grid-template-columns:1fr 1fr}.member-person{grid-column:1/-1}.member-admin-row .soft,.class-admin-row .soft,.class-admin-row .primary{width:100%}}@media (max-width:760px){.sidebar{z-index:70}.sidebar-close{place-items:center;display:grid}.sidebar-backdrop{z-index:60;backdrop-filter:blur(3px);background:rgba(7,11,18,.42);border:0;animation:.18s fadeIn;display:block;position:fixed;top:0;bottom:0;left:0;right:0}.settings-trigger{place-items:center;display:grid}.settings-sheet{width:min(340px,92vw);padding:18px}.admin-tabs{width:100%}.admin-tabs button{flex:1}.member-admin-row,.class-admin-row,.new-class-row{grid-template-columns:1fr}.member-person{grid-column:auto}.sheet-setting{flex-direction:column;align-items:flex-start}.sheet-setting .segments{width:100%}.sheet-setting .segments button{flex:1}}.role-guide{grid-template-columns:repeat(4,1fr);gap:9px;margin:14px 0;display:grid}.role-guide>div{border:1px solid var(--line);background:var(--panel-2);border-radius:14px;padding:11px}.role-guide small{color:var(--muted);margin-top:7px;font-size:10px;line-height:1.4;display:block}@media (max-width:900px){.role-guide{grid-template-columns:1fr 1fr}}@media (max-width:500px){.role-guide{grid-template-columns:1fr}}html,body,#root{background:radial-gradient(circle at 85% -10%, rgba(137,104,239,.1), transparent 30%), radial-gradient(circle at -5% 30%, rgba(91,103,241,.07), transparent 26%), var(--bg)}.content{position:relative}.content:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(circle,rgba(91,103,241,.08),transparent 68%);border-radius:50%;width:190px;height:190px;animation:6s ease-in-out infinite alternate ambientPulse;position:fixed;bottom:7vh;right:5vw}@keyframes ambientPulse{0%{opacity:.55;transform:scale(.92)}to{opacity:1;transform:scale(1.12)}}.hero-card{isolation:isolate}.hero-card:after{animation:8s ease-in-out infinite alternate heroOrb}@keyframes heroOrb{0%{transform:translate(0,0)scale(1)}to{transform:translate(-22px,18px)scale(1.08)}}.hero-sparkles{z-index:1;opacity:.75;gap:12px;display:flex;position:absolute;top:20px;right:24px}.hero-sparkles span{backdrop-filter:blur(8px);background:rgba(255,255,255,.12);border-radius:11px;place-items:center;width:31px;height:31px;font-weight:900;animation:3.4s ease-in-out infinite alternate sparkFloat;display:grid}.hero-sparkles span:nth-child(2){animation-delay:.55s}.hero-sparkles span:nth-child(3){animation-delay:1.1s}@keyframes sparkFloat{0%{transform:translateY(0)rotate(-3deg)}to{transform:translateY(8px)rotate(4deg)}}.hero-subject-chips{gap:7px;margin:-6px 0 18px;display:flex}.hero-subject-chips span{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.12);border-radius:10px;place-items:center;min-width:34px;height:30px;padding:0 9px;font-size:11px;font-weight:900;display:grid;box-shadow:inset 0 1px rgba(255,255,255,.1)}.next-card{position:relative;overflow:hidden}.next-card:after{content:"";pointer-events:none;background:radial-gradient(circle,rgba(91,103,241,.12),transparent 70%);border-radius:50%;width:150px;height:150px;position:absolute;bottom:-55px;right:-40px}.next-time-row{justify-content:space-between;align-items:center;gap:14px;display:flex}.countdown-orbit{background:conic-gradient(var(--accent) 0 68%,var(--panel-2) 68% 100%);width:58px;height:58px;box-shadow:inset 0 0 0 7px var(--panel);border-radius:50%;align-content:center;place-items:center;display:grid;position:relative}.countdown-orbit span{font-size:15px;font-weight:900;line-height:1}.countdown-orbit small{color:var(--muted);margin-top:2px;font-size:8px}.teacher-line{align-items:center;gap:9px;margin-top:6px;display:flex}.teacher-line p{margin:0}.teacher-avatar,.mini-avatar{width:30px;height:30px;color:var(--accent);background:linear-gradient(135deg,rgba(91,103,241,.15),rgba(137,104,239,.18));border:1px solid rgba(91,103,241,.12);border-radius:10px;place-items:center;font-size:10px;font-weight:900;display:grid}.card{overflow:hidden}.card:focus-within{border-color:color-mix(in srgb,var(--accent) 30%,var(--line));box-shadow:0 14px 34px rgba(91,103,241,.1)}.lesson{position:relative}.lesson:before{content:"";background:linear-gradient(var(--accent),var(--accent-2));opacity:.22;border-radius:999px;align-self:stretch;width:4px}.lesson{grid-template-columns:4px 66px 1fr auto}.lesson.current:before{opacity:1}.lesson>strong{align-self:center}.mobile-tabs button span{transition:transform .16s}.mobile-tabs button.active span{transform:translateY(-1px)scale(1.08)}.subject-admin-list{gap:10px;margin-top:16px;display:grid}.subject-admin-row{border:1px solid var(--line);background:var(--panel-2);border-radius:16px;grid-template-columns:minmax(220px,1fr) 130px auto;align-items:end;gap:12px;padding:13px;display:grid}.subject-admin-row label{gap:6px;display:grid}.subject-admin-row label span{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:10px;font-weight:850}.subject-add-row{border-top:1px solid var(--line);grid-template-columns:1fr 130px auto;gap:10px;margin-top:12px;padding-top:12px;display:grid}.teacher-matrix{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.teacher-class{border:1px solid var(--line);background:var(--panel-2);border-radius:18px;padding:14px}.teacher-class-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding-bottom:10px;display:flex}.teacher-assignment-row{border-bottom:1px solid var(--line);grid-template-columns:1fr minmax(170px,.9fr);align-items:center;gap:12px;padding:11px 0;display:grid}.teacher-assignment-row:last-child{border-bottom:0}.teacher-assignment-row small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.teacher-assignment-row select,.subject-admin-row input,.subject-add-row input{border:1px solid var(--line);background:var(--panel);width:100%;color:var(--text);border-radius:11px;outline:none;padding:10px 11px}.teacher-assignment-row select:focus,.subject-admin-row input:focus,.subject-add-row input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(91,103,241,.1)}@media (max-width:900px){.teacher-matrix{grid-template-columns:1fr}.subject-admin-row,.subject-add-row{grid-template-columns:1fr 120px auto}}@media (max-width:760px){.sidebar{transition:transform .24s cubic-bezier(.2,.8,.2,1);left:0;transform:translate(-105%)}.sidebar.open{left:0;transform:translate(0)}.mobile-tabs{grid-template-columns:repeat(5,1fr)}.hero-sparkles{top:14px;right:14px}.hero-sparkles span{width:27px;height:27px}}@media (max-width:540px){.subject-admin-row,.subject-add-row,.teacher-assignment-row{grid-template-columns:1fr}.hero-subject-chips{margin-top:4px}}.hero-card,.game-hero,.admin-hero{background-size:180% 180%;animation:10s ease-in-out infinite gradientFlow}@keyframes gradientFlow{0%,to{background-position:0%}50%{background-position:100%}}.nav-item.active{position:relative;overflow:hidden}.nav-item.active:after{content:"";background:linear-gradient(90deg,var(--accent),var(--accent-2));border-radius:99px;height:2px;animation:1.8s ease-in-out infinite alternate navGlow;position:absolute;top:auto;bottom:0;left:12px;right:12px}@keyframes navGlow{0%{opacity:.45;transform:scaleX(.55)}to{opacity:1;transform:scaleX(1)}}.admin-hero-rich{background:linear-gradient(125deg,#485be9,#755fe8 48%,#a068ef);justify-content:space-between;align-items:flex-start;gap:20px;display:flex;box-shadow:0 28px 64px rgba(91,103,241,.26)}.admin-hero-rich h1{margin:6px 0 10px;font-size:30px}.admin-hero-rich p{color:rgba(255,255,255,.82);max-width:720px;margin:0;line-height:1.55}.admin-hero-pills{gap:9px;margin-top:18px;display:flex}.admin-hero-pills span{backdrop-filter:blur(8px);background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12);border-radius:13px;place-items:center;width:38px;height:38px;animation:3.6s ease-in-out infinite alternate adminFloat;display:grid}.admin-hero-pills span:nth-child(2){animation-delay:.35s}.admin-hero-pills span:nth-child(3){animation-delay:.7s}.admin-hero-pills span:nth-child(4){animation-delay:1.05s}@keyframes adminFloat{0%{transform:translateY(0)rotate(-2deg)}to{transform:translateY(-7px)rotate(3deg)}}.admin-overview-card{background:linear-gradient(145deg,var(--panel),color-mix(in srgb,var(--panel) 91%,var(--accent) 9%))}.admin-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.admin-metric{border:1px solid var(--line);background:var(--panel-2);color:var(--text);text-align:left;border-radius:18px;min-height:118px;padding:16px;transition:transform .18s,border-color .18s,box-shadow .18s;animation:.38s cubic-bezier(.2,.8,.2,1) both metricRise;position:relative;overflow:hidden}.admin-metric:before{content:"";background:radial-gradient(circle,rgba(91,103,241,.12),transparent 68%);border-radius:50%;width:90px;height:90px;position:absolute;bottom:-34px;right:-28px}.admin-metric:hover{box-shadow:var(--shadow-sm);border-color:rgba(91,103,241,.28);transform:translateY(-3px)}.admin-metric .metric-icon{margin-bottom:10px;font-size:22px;display:block}.admin-metric b{font-size:26px;display:block}.admin-metric small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.admin-metric i{color:var(--accent);font-style:normal;font-weight:900;position:absolute;top:14px;right:14px}@keyframes metricRise{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:none}}.admin-filterbar{grid-template-columns:minmax(240px,1.4fr) minmax(150px,.6fr) minmax(150px,.6fr);gap:10px;margin:14px 0;display:grid}.admin-filterbar input,.admin-filterbar select,.join-request-row select{border:1px solid var(--line);background:var(--panel);width:100%;color:var(--text);border-radius:12px;outline:none;padding:11px 12px}.admin-filterbar input:focus,.admin-filterbar select:focus,.join-request-row select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(91,103,241,.1)}.member-admin-row-rich{transition:transform .16s,border-color .16s,background .16s}.member-admin-row-rich:hover{background:color-mix(in srgb,var(--panel-2) 93%,var(--accent) 7%);border-color:rgba(91,103,241,.22);transform:translate(2px)}.save-user-button{min-width:92px}.empty-state{text-align:center;min-height:130px;color:var(--muted);border:1px dashed var(--line);background:var(--panel-2);border-radius:18px;align-content:center;place-items:center;gap:8px;padding:22px;display:grid}.empty-state>span{width:42px;height:42px;color:var(--green);background:rgba(22,163,106,.1);border-radius:14px;place-items:center;font-size:20px;display:grid}.empty-state strong{font-size:13px}.access-policy-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.policy-card{border:1px solid var(--line);background:var(--panel-2);color:var(--text);text-align:left;border-radius:18px;gap:8px;padding:16px;transition:all .18s;display:grid}.policy-card>span{font-size:24px}.policy-card strong{font-size:14px}.policy-card small{color:var(--muted);line-height:1.4}.policy-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}.policy-card.active{background:linear-gradient(145deg,rgba(91,103,241,.12),rgba(137,104,239,.07));border-color:rgba(91,103,241,.38);box-shadow:0 12px 28px rgba(91,103,241,.1)}.join-request-list{gap:10px;display:grid}.join-request-row{border:1px solid var(--line);background:var(--panel-2);border-radius:16px;grid-template-columns:minmax(220px,1fr) minmax(170px,.7fr) auto;align-items:end;gap:12px;padding:14px;display:grid}.join-request-row label{gap:6px;display:grid}.join-request-row label>span{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:10px;font-weight:850}.join-actions{gap:8px;display:flex}.danger-soft{color:var(--red);background:rgba(214,79,94,.06);border-color:rgba(214,79,94,.22)}.arcade-hero{background:linear-gradient(125deg,#4458e5 0%,#765fe9 44%,#a35fdf 72%,#e18b69 120%);justify-content:space-between;align-items:flex-start;gap:22px;min-height:235px;display:flex}.arcade-hero>div:first-child{z-index:2;position:relative}.arcade-floating-icons{gap:10px;margin-top:18px;display:flex}.arcade-floating-icons span{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.13);border-radius:14px;place-items:center;width:39px;height:39px;font-size:17px;font-weight:950;animation:2.8s ease-in-out infinite alternate arcadeBob;display:grid;box-shadow:inset 0 1px rgba(255,255,255,.1)}.arcade-floating-icons span:nth-child(2){animation-delay:.3s}.arcade-floating-icons span:nth-child(3){animation-delay:.6s}.arcade-floating-icons span:nth-child(4){animation-delay:.9s}@keyframes arcadeBob{0%{transform:translateY(0)rotate(-4deg)}to{transform:translateY(-9px)rotate(5deg)}}.arcade-picker{margin-top:18px}.arcade-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.arcade-tile{border:1px solid var(--line);text-align:left;min-height:172px;color:var(--text);background:var(--panel-2);border-radius:20px;flex-direction:column;gap:8px;padding:18px;transition:transform .2s,box-shadow .2s,border-color .2s;animation:.36s cubic-bezier(.2,.8,.2,1) both arcadeTileIn;display:flex;position:relative;overflow:hidden}.arcade-tile:after{content:"";opacity:.28;filter:blur(18px);background:currentColor;border-radius:50%;width:110px;height:110px;position:absolute;bottom:-48px;right:-38px}.arcade-tile:hover,.arcade-tile.active{box-shadow:var(--shadow);border-color:rgba(91,103,241,.25);transform:translateY(-4px)}.arcade-tile.violet{color:#7459e8;background:linear-gradient(145deg,var(--panel),rgba(116,89,232,.08))}.arcade-tile.cyan{color:#2797bd;background:linear-gradient(145deg,var(--panel),rgba(39,151,189,.08))}.arcade-tile.amber{color:#d98a19;background:linear-gradient(145deg,var(--panel),rgba(217,138,25,.09))}.arcade-tile strong,.arcade-tile small,.arcade-tile i{z-index:2;position:relative}.arcade-tile strong{color:var(--text);font-size:16px}.arcade-tile small{color:var(--muted);min-height:42px;line-height:1.45}.arcade-tile i{color:currentColor;margin-top:auto;font-size:12px;font-style:normal;font-weight:850}.arcade-icon{background:color-mix(in srgb,currentColor 12%,var(--panel));z-index:2;border-radius:16px;place-items:center;width:48px;height:48px;font-size:24px;font-weight:950;display:grid;position:relative}@keyframes arcadeTileIn{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:none}}.game-stage{animation:.28s cubic-bezier(.2,.8,.2,1) stageIn}@keyframes stageIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.arcade-empty{min-height:190px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:9px;display:grid}.arcade-empty>span{width:58px;height:58px;color:var(--accent);background:linear-gradient(135deg,rgba(91,103,241,.12),rgba(137,104,239,.14));border-radius:20px;place-items:center;font-size:24px;animation:2.8s ease-in-out infinite alternate emptyFloat;display:grid}.arcade-empty small{max-width:500px}@keyframes emptyFloat{0%{transform:translateY(0)rotate(-3deg)}to{transform:translateY(-8px)rotate(4deg)}}.game-card{max-width:900px;margin:0 auto}.signal-score-strip{justify-content:center;align-items:end;gap:10px;margin:10px 0 16px;display:flex}.signal-score-strip span{font-size:28px;font-weight:950}.signal-score-strip small{color:var(--muted);padding-bottom:4px}.math-card{flex-direction:column;min-height:430px;display:flex}.math-progress{background:var(--panel-2);border-radius:99px;height:7px;overflow:hidden}.math-progress span{background:linear-gradient(90deg,#39b5d3,var(--accent));border-radius:99px;height:100%;transition:width .3s;display:block}.math-expression{letter-spacing:-.04em;text-align:center;margin:46px 0 16px;font-size:max(38px,min(8vw,68px));font-weight:950}.math-expression span{color:var(--accent);margin-left:12px}.math-feedback{text-align:center;min-height:24px;color:var(--muted);font-weight:800}.math-feedback.correct{color:var(--green);animation:.25s answerPop}.math-feedback.wrong{color:var(--red);animation:.28s answerShake}.math-options{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:24px;display:grid}.math-options button{border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:17px;padding:18px;font-size:20px;font-weight:900;transition:all .16s}.math-options button:hover:not(:disabled){box-shadow:var(--shadow-sm);border-color:rgba(91,103,241,.32);transform:translateY(-2px)}.math-options button:active:not(:disabled){transform:scale(.97)}@keyframes answerPop{50%{transform:scale(1.08)}}@keyframes answerShake{25%{transform:translate(-5px)}75%{transform:translate(5px)}}.math-finish{text-align:center;align-content:center;place-items:center;gap:10px;display:grid}.math-finish-icon{width:76px;height:76px;color:var(--green);background:rgba(22,163,106,.11);border-radius:26px;place-items:center;font-size:38px;font-weight:950;animation:.45s cubic-bezier(.2,.9,.2,1) finishPop;display:grid}@keyframes finishPop{0%{opacity:0;transform:scale(.45)rotate(-18deg)}to{opacity:1;transform:none}}.wheel-card{text-align:center}.wheel-card .card-head{text-align:left}.wheel-wrap{width:270px;height:270px;margin:18px auto 22px;position:relative}.wheel-pointer{z-index:4;color:var(--text);filter:drop-shadow(0 3px 4px rgba(0,0,0,.18));font-size:23px;position:absolute;top:-7px;left:50%;transform:translate(-50%)}.prize-wheel{border:8px solid var(--panel);background:conic-gradient(#695fe9 0 12.5%,#2fa3c5 12.5% 25%,#e6a13b 25% 37.5%,#6cba79 37.5% 50%,#a263dc 50% 62.5%,#e06f83 62.5% 75%,#4a80db 75% 87.5%,#d58744 87.5% 100%);border-radius:50%;transition:transform 2.2s cubic-bezier(.12,.72,.08,1);position:absolute;top:8px;bottom:8px;left:8px;right:8px;overflow:hidden;box-shadow:0 18px 44px rgba(28,39,80,.18),inset 0 0 0 1px rgba(255,255,255,.28)}.prize-wheel:after{content:"CC";background:var(--panel);width:62px;height:62px;color:var(--accent);border-radius:50%;place-items:center;font-weight:950;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 7px 20px rgba(0,0,0,.18)}.prize-wheel span{transform-origin:14px 14px;place-items:center;width:28px;height:28px;font-size:20px;display:grid;position:absolute;top:calc(50% - 14px);left:calc(50% - 14px)}.wheel-button{min-width:190px}.wheel-result{background:linear-gradient(145deg,rgba(231,155,41,.1),rgba(137,104,239,.08));border:1px solid rgba(231,155,41,.18);border-radius:18px;max-width:650px;margin:18px auto 0;padding:18px;animation:.3s resultIn}.wheel-result strong{margin-top:8px;line-height:1.5;display:block}@keyframes resultIn{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}@media (max-width:980px){.admin-metric-grid{grid-template-columns:repeat(2,1fr)}.access-policy-grid,.arcade-grid{grid-template-columns:1fr}.join-request-row{grid-template-columns:1fr 1fr}.join-request-row .person{grid-column:1/-1}.admin-filterbar{grid-template-columns:1fr 1fr}.admin-filterbar input{grid-column:1/-1}}@media (max-width:620px){.admin-hero-rich,.arcade-hero{display:block}.admin-hero-rich>.tag,.arcade-hero .game-level{margin-top:16px}.admin-metric-grid{grid-template-columns:1fr 1fr}.join-request-row,.admin-filterbar{grid-template-columns:1fr}.join-request-row .person,.admin-filterbar input{grid-column:auto}.join-actions{grid-template-columns:1fr 1fr;display:grid}.arcade-grid{gap:10px}.arcade-tile{min-height:145px}.wheel-wrap{width:238px;height:238px}.prize-wheel span{transform-origin:14px 14px}.math-options{gap:9px}.math-options button{padding:15px}.admin-tabs{scroll-snap-type:x mandatory}.admin-tabs button{scroll-snap-align:start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.boot-splash{z-index:2000;color:#fff;background:linear-gradient(145deg,#4e5de9,#7b5fe8 55%,#a768ee);align-content:center;place-items:center;gap:10px;animation:.72s both bootFade;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.boot-logo{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.2);border-radius:26px;place-items:center;width:76px;height:76px;font-size:24px;font-weight:950;animation:.55s cubic-bezier(.2,.9,.2,1) bootPop;display:grid;box-shadow:0 22px 58px rgba(20,20,80,.24)}.boot-splash>strong{letter-spacing:-.03em;font-size:25px}.boot-splash>small{opacity:.72}.boot-splash>i{background:rgba(255,255,255,.2);border-radius:99px;width:64px;height:4px;position:relative;overflow:hidden}.boot-splash>i:after{content:"";background:#fff;border-radius:99px;width:36%;animation:.65s ease-in-out infinite alternate bootLoad;position:absolute;top:0;bottom:0;left:0;right:0}@keyframes bootPop{0%{opacity:0;transform:scale(.6)rotate(-10deg)}to{opacity:1;transform:none}}@keyframes bootLoad{0%{transform:translate(-10%)}to{transform:translate(190%)}}@keyframes bootFade{0%,78%{opacity:1}to{opacity:0;visibility:hidden}}.fatal-screen{text-align:center;color:#1d2544;background:#f6f7fb;align-content:center;place-items:center;gap:12px;min-height:100vh;padding:26px;display:grid}.fatal-logo{color:#fff;background:linear-gradient(135deg,#5566ef,#8f61e9);border-radius:24px;place-items:center;width:72px;height:72px;font-size:22px;font-weight:950;display:grid}.fatal-screen p{color:#66708f;max-width:520px;margin:0}.fatal-screen small{color:#8790aa}.fatal-screen code{white-space:normal;word-break:break-word;color:#bb3f55;background:#fff;border:1px solid #e2e6f0;border-radius:12px;max-width:720px;padding:10px 12px}.fatal-screen button{color:#fff;background:#5968ee;border:0;border-radius:13px;padding:12px 18px;font-weight:850}.onboarding-backdrop{z-index:1800;backdrop-filter:blur(12px);background:rgba(18,25,48,.48);place-items:center;padding:18px;animation:.25s sheetFade;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.onboarding-card{background:var(--panel);border:1px solid var(--line);border-radius:28px;width:min(560px,100%);padding:30px;animation:.45s cubic-bezier(.2,.9,.2,1) onboardIn;position:relative;overflow:hidden;box-shadow:0 40px 90px rgba(20,28,70,.28)}.onboarding-card:before{content:"";background:radial-gradient(circle,rgba(102,90,235,.22),transparent 68%);border-radius:50%;width:220px;height:220px;position:absolute;top:-90px;right:-80px}.welcome-mark{align-items:center;gap:8px;margin-bottom:18px;display:flex}.welcome-mark>span{color:#fff;background:linear-gradient(135deg,#5164ee,#8b61e9);border-radius:18px;place-items:center;width:54px;height:54px;font-weight:950;display:grid;box-shadow:0 13px 30px rgba(81,100,238,.25)}.welcome-mark>i{color:#e69c37;font-size:22px;font-style:normal;animation:2s ease-in-out infinite alternate sparkFloat}.onboarding-card h1{letter-spacing:-.04em;margin:7px 0 10px;font-size:max(26px,min(5vw,38px))}.onboarding-card>p{color:var(--muted);margin:0 0 22px;line-height:1.6}.onboarding-select{gap:7px;display:grid}.onboarding-select>span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:900}.onboarding-select select{border:1px solid var(--line);background:var(--panel-2);width:100%;color:var(--text);border-radius:14px;padding:14px;font-weight:800}.onboarding-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}@keyframes onboardIn{0%{opacity:0;transform:translateY(22px)scale(.96)}to{opacity:1;transform:none}}.schedule-hero-real{color:#fff;background:linear-gradient(125deg,#485ce8,#725fe8 52%,#9867e9) 0 0/180% 180%;border-radius:24px;justify-content:space-between;align-items:center;gap:20px;padding:24px 26px;animation:10s ease-in-out infinite gradientFlow;display:flex;box-shadow:0 22px 52px rgba(75,92,232,.22)}.schedule-hero-real h1{margin:5px 0 4px;font-size:max(27px,min(5vw,38px))}.schedule-hero-real p{color:rgba(255,255,255,.76);margin:0}.schedule-orbit{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.2);border-radius:50%;align-content:center;place-items:center;width:82px;height:82px;animation:4s ease-in-out infinite alternate ambientPulse;display:grid;box-shadow:inset 0 0 0 7px rgba(255,255,255,.06)}.schedule-orbit span{font-size:27px;font-weight:950;line-height:1}.schedule-orbit small{color:rgba(255,255,255,.72);margin-top:4px;font-size:9px}.day-tabs{grid-template-columns:repeat(5,1fr);gap:8px;margin:14px 0;display:grid}.day-tabs button{border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:14px;padding:11px 8px;font-size:12px;font-weight:850;transition:all .18s}.day-tabs button:hover{transform:translateY(-2px)}.day-tabs button.active{color:var(--accent);background:linear-gradient(135deg,rgba(91,103,241,.13),rgba(137,104,239,.1));border-color:rgba(91,103,241,.35);box-shadow:0 8px 20px rgba(91,103,241,.08)}.schedule-timeline{gap:0;padding:8px 0 30px;display:grid}.timeline-lesson{grid-template-columns:66px 24px minmax(0,1fr);gap:8px;min-height:112px;animation:.38s cubic-bezier(.2,.8,.2,1) both metricRise;display:grid}.timeline-time{text-align:right;padding-top:15px}.timeline-time strong{font-size:14px;display:block}.timeline-time small{color:var(--muted);margin-top:4px;font-size:10px;display:block}.timeline-dot{justify-content:center;display:flex;position:relative}.timeline-dot:before{content:"";background:linear-gradient(var(--accent),rgba(91,103,241,.12));width:2px;position:absolute;top:0;bottom:0}.timeline-dot i{background:var(--accent);border:3px solid var(--panel);border-radius:50%;width:12px;height:12px;margin-top:20px;position:relative;box-shadow:0 0 0 2px rgba(91,103,241,.18)}.timeline-card{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:18px;margin:4px 0 13px;padding:16px;transition:all .18s}.timeline-card:hover{border-color:rgba(91,103,241,.24);transform:translate(3px)}.timeline-card>div:first-child{align-items:center;gap:10px;display:flex}.timeline-card h3{margin:0;font-size:16px}.subject-badge{min-width:42px;height:30px;color:var(--accent);background:rgba(91,103,241,.1);border-radius:10px;place-items:center;padding:0 9px;font-size:10px;font-weight:950;display:grid}.lesson-meta{color:var(--muted);flex-wrap:wrap;gap:10px;margin-top:10px;font-size:11px;display:flex}.timeline-card p{color:var(--muted);margin:10px 0 0;font-size:11px;line-height:1.45}.schedule-empty{text-align:center;min-height:300px;color:var(--muted);align-content:center;place-items:center;gap:9px;padding:24px;display:grid}.schedule-empty span{background:linear-gradient(135deg,rgba(91,103,241,.12),rgba(137,104,239,.14));border-radius:21px;place-items:center;width:62px;height:62px;font-size:27px;display:grid}.schedule-empty strong{color:var(--text)}.schedule-empty small{max-width:470px}.schedule-empty.compact{border:1px dashed var(--line);background:var(--panel-2);border-radius:18px;min-height:150px}.schedule-skeleton{gap:12px;display:grid}.schedule-skeleton i{background:linear-gradient(90deg,var(--panel-2),color-mix(in srgb,var(--panel-2) 75%,var(--accent) 25%),var(--panel-2));background-size:220% 100%;border-radius:18px;height:92px;animation:1.2s linear infinite skeleton}@keyframes skeleton{to{background-position:-220% 0}}.admin-schedule-head{border:1px solid var(--line);background:linear-gradient(145deg,var(--panel),color-mix(in srgb,var(--panel) 92%,var(--accent) 8%));border-radius:20px;justify-content:space-between;align-items:end;gap:18px;margin-top:16px;padding:18px;display:flex}.admin-schedule-head h2{margin:4px 0 8px}.admin-schedule-head p{max-width:700px;color:var(--muted);margin:0;line-height:1.5}.admin-schedule-head label{gap:6px;min-width:190px;display:grid}.admin-schedule-head label>span{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:10px;font-weight:850}.admin-schedule-head select,.schedule-create-card select,.schedule-create-card input,.admin-schedule-row select,.admin-schedule-row input{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:12px;min-width:0;padding:10px 11px}.schedule-create-card{border:1px solid var(--line);background:var(--panel-2);border-radius:18px;grid-template-columns:1.2fr 110px 110px 110px 1.2fr auto;gap:9px;padding:13px;display:grid}.admin-schedule-list{gap:9px;margin-top:12px;display:grid}.admin-schedule-row{border:1px solid var(--line);background:var(--panel);border-radius:16px;grid-template-columns:105px 1.2fr 110px 1.2fr 46px 46px;align-items:center;gap:8px;padding:11px;animation:.28s both metricRise;display:grid}.subject-admin-row-i18n,.subject-add-row-i18n{grid-template-columns:1fr 1fr 110px auto}@media (max-width:900px){.schedule-create-card{grid-template-columns:1fr 1fr 1fr}.schedule-create-card select:first-child{grid-column:span 2}.admin-schedule-row{grid-template-columns:100px 1fr 90px}.admin-schedule-row select:nth-of-type(2){grid-column:span 2}.subject-admin-row-i18n,.subject-add-row-i18n{grid-template-columns:1fr 1fr}}@media (max-width:620px){.onboarding-card{border-radius:24px;padding:22px}.onboarding-actions{grid-template-columns:1fr 1fr;display:grid}.schedule-hero-real{padding:20px}.schedule-orbit{width:68px;height:68px}.day-tabs{gap:5px}.day-tabs button{padding:10px 4px;font-size:10px}.timeline-lesson{grid-template-columns:54px 20px minmax(0,1fr)}.admin-schedule-head{display:grid}.admin-schedule-head label{min-width:0}.schedule-create-card,.admin-schedule-row,.subject-admin-row-i18n,.subject-add-row-i18n{grid-template-columns:1fr}.schedule-create-card select:first-child,.admin-schedule-row select:nth-of-type(2){grid-column:auto}}.home-no-lesson{text-align:center;min-height:160px;color:var(--muted);align-content:center;place-items:center;gap:7px;display:grid}.home-no-lesson>span{background:rgba(91,103,241,.1);border-radius:16px;place-items:center;width:48px;height:48px;font-size:21px;display:grid}.home-no-lesson strong{color:var(--text);font-size:13px}.home-empty-inline{text-align:center;min-height:150px;color:var(--muted);border:1px dashed var(--line);background:var(--panel-2);border-radius:15px;place-items:center;padding:16px;display:grid}@media (prefers-reduced-motion:reduce){.boot-splash,.boot-logo,.boot-splash>i:after,.onboarding-card,.welcome-mark>i,.schedule-orbit,.timeline-lesson,.schedule-skeleton i{animation:none!important}.timeline-card,.day-tabs button{transition:none!important}}.announcement-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.announcement-live{border:1px solid var(--line);background:linear-gradient(145deg,var(--panel),color-mix(in srgb,var(--panel) 94%,var(--accent) 6%));box-shadow:var(--shadow-sm);border-radius:22px;padding:20px;transition:transform .18s,border-color .18s,box-shadow .18s;animation:.42s cubic-bezier(.2,.8,.2,1) both metricRise;position:relative;overflow:hidden}.announcement-live:hover{border-color:rgba(91,103,241,.24);transform:translateY(-3px);box-shadow:0 18px 40px rgba(46,55,112,.12)}.announcement-live:before{content:"";pointer-events:none;background:radial-gradient(circle,rgba(91,103,241,.13),transparent 68%);border-radius:50%;width:150px;height:150px;position:absolute;top:-65px;right:-55px}.announcement-urgent{background:linear-gradient(145deg,var(--panel),rgba(218,73,91,.055));border-color:rgba(218,73,91,.24)}.announcement-important{background:linear-gradient(145deg,var(--panel),rgba(229,155,54,.05));border-color:rgba(229,155,54,.24)}.announcement-live-head,.announcement-live-foot,.announcement-editor-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.announcement-priority{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-size:10px;font-weight:900}.announcement-urgent .announcement-priority{color:#d84e62}.announcement-important .announcement-priority{color:#d9922e}.announcement-lang,.announcement-class{color:var(--muted);font-size:10px;font-weight:850}.announcement-class{margin-top:12px}.announcement-live h2{letter-spacing:-.02em;margin:11px 0 8px;font-size:19px;line-height:1.25}.announcement-live p{color:var(--muted);white-space:pre-wrap;margin:0;line-height:1.6}.announcement-live-foot{border-top:1px solid var(--line);margin-top:16px;padding-top:13px}.announcement-live-foot small{color:var(--muted)}.announcement-empty{min-height:280px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:10px;display:grid}.announcement-empty span{background:linear-gradient(135deg,rgba(91,103,241,.12),rgba(137,104,239,.15));border-radius:22px;place-items:center;width:68px;height:68px;font-size:34px;display:grid}.announcement-empty strong{color:var(--text)}.announce-skeleton{background:linear-gradient(90deg,var(--panel-2),color-mix(in srgb,var(--panel-2) 72%,var(--accent) 28%),var(--panel-2));background-size:220% 100%;border-radius:22px;height:190px;animation:1.2s linear infinite skeleton}.announcement-admin-hero{color:#fff;background:linear-gradient(125deg,#455ce8,#755de8 55%,#ad66df) 0 0/180% 180%;border-radius:22px;justify-content:space-between;align-items:center;gap:18px;margin-top:16px;padding:22px;animation:10s ease-in-out infinite gradientFlow;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 56px rgba(84,88,222,.22)}.announcement-admin-hero h2{margin:5px 0 8px;font-size:28px}.announcement-admin-hero p{color:rgba(255,255,255,.82);max-width:760px;margin:0;line-height:1.55}.announce-spark{font-size:38px;animation:2.5s ease-in-out infinite alternate sparkFloat}.announcement-editor{border:1px solid var(--line);background:var(--panel);border-radius:22px;padding:16px}.announcement-editor-top h3{margin:0}.announcement-editor-meta{grid-template-columns:150px 1fr 170px;gap:10px;margin-top:14px;display:grid}.announcement-editor-meta label{gap:6px;display:grid}.announcement-editor-meta label>span{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:10px;font-weight:850}.announcement-editor select,.announcement-editor input,.announcement-editor textarea{border:1px solid var(--line);background:var(--panel-2);width:100%;color:var(--text);border-radius:13px;outline:none;padding:11px 12px}.announcement-editor textarea{resize:vertical;line-height:1.5}.announcement-editor select:focus,.announcement-editor input:focus,.announcement-editor textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(91,103,241,.1)}.translation-note{color:var(--muted);background:linear-gradient(135deg,rgba(91,103,241,.09),rgba(137,104,239,.07));border-radius:14px;margin:13px 0;padding:11px 13px;font-size:11px;line-height:1.5}.translation-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.translation-pane{border:1px solid var(--line);background:var(--panel-2);border-radius:16px;gap:8px;padding:12px;transition:all .18s;display:grid}.translation-pane.source-pane{border-color:rgba(91,103,241,.34);box-shadow:inset 0 0 0 1px rgba(91,103,241,.08)}.translation-pane-head{justify-content:space-between;align-items:center;display:flex}.translation-pane-head strong{font-size:12px}.translation-pane-head span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:9px}.announcement-checks{flex-wrap:wrap;gap:15px;margin:13px 0;display:flex}.announcement-checks label{color:var(--muted);align-items:center;gap:7px;font-size:11px;display:flex}.announcement-checks input{width:auto}.announcement-admin-list{gap:9px;display:grid}.announcement-admin-row{border:1px solid var(--line);background:var(--panel);border-radius:16px;grid-template-columns:150px minmax(220px,1fr) auto;align-items:center;gap:12px;padding:13px;transition:all .16s;display:grid}.announcement-admin-row:hover{border-color:rgba(91,103,241,.22);transform:translate(2px)}.announcement-admin-row>div:nth-child(2) strong{display:block}.announcement-admin-row>div:nth-child(2) small{color:var(--muted);margin-top:4px;display:block}.announcement-admin-status{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:10px;font-weight:850}.status-dot{background:#9aa1b8;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.status-published{background:#20a66a}.status-draft{background:#d99a35}.status-archived{background:#8e94a8}.announcement-admin-actions{gap:6px;display:flex}.success-soft{color:var(--green)!important;background:rgba(22,163,106,.07)!important;border-color:rgba(22,163,106,.25)!important}.schedule-copy-tools{border:1px solid var(--line);background:linear-gradient(145deg,var(--panel),color-mix(in srgb,var(--panel) 94%,var(--accent) 6%));border-radius:18px;grid-template-columns:minmax(220px,1.5fr) 150px auto minmax(170px,.8fr) auto;align-items:center;gap:9px;margin:10px 0;padding:13px;display:grid}.schedule-copy-tools>div strong{font-size:12px;display:block}.schedule-copy-tools>div small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.schedule-copy-tools select{border:1px solid var(--line);background:var(--panel-2);width:100%;color:var(--text);border-radius:11px;padding:10px}.copy-replace{color:var(--muted);grid-column:1/-1;align-items:center;gap:7px;font-size:10px;display:flex}.page-enter{animation:.34s cubic-bezier(.2,.8,.2,1) both pageSoftIn}@keyframes pageSoftIn{0%{opacity:0;filter:blur(2px);transform:translateY(8px)scale(.995)}to{opacity:1;filter:none;transform:none}}@media (max-width:980px){.announcement-grid,.translation-columns{grid-template-columns:1fr}.announcement-editor-meta{grid-template-columns:1fr 1fr}.announcement-admin-row{grid-template-columns:1fr}.schedule-copy-tools{grid-template-columns:1fr 1fr}.schedule-copy-tools>div,.copy-replace{grid-column:1/-1}}@media (max-width:620px){.announcement-editor-meta,.schedule-copy-tools{grid-template-columns:1fr}.announcement-admin-actions{flex-wrap:wrap}.announcement-admin-hero{padding:18px}.announce-spark{display:none}}@media (prefers-reduced-motion:reduce){.announcement-live,.announcement-admin-hero,.announce-spark,.page-enter,.announce-skeleton{animation:none!important}.announcement-live,.announcement-admin-row{transition:none!important}}
