:root{--ink:#171525;--muted:#777486;--purple:#6d58d9;--purple-dark:#4d3eb3;--lavender:#eeeaff;--line:#e9e7ef;--cream:#f8f7f4;--green:#35a87b;--orange:#f39a55;--white:#fff;--shadow:0 18px 50px rgba(50,40,92,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Manrope,system-ui,sans-serif}.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;z-index:20;inset:0 auto 0 0;width:252px;padding:30px 20px 20px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column}.brand,.auth-brand{display:flex;align-items:center;gap:10px;padding:0 10px;color:var(--ink);text-decoration:none;font-size:25px;font-weight:800;letter-spacing:-1.5px}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--purple);color:#fff;font-size:20px;box-shadow:0 7px 18px rgba(109,88,217,.28)}.nav{margin-top:42px}.nav-label{padding:0 14px;margin:0 0 10px;color:#aaa7b3;font-size:10px;font-weight:800;letter-spacing:1.4px}.nav-label-space{margin-top:30px}.nav-item{height:48px;display:flex;align-items:center;gap:13px;padding:0 14px;margin:4px 0;border-radius:12px;color:#777486;text-decoration:none;font-size:13px;font-weight:650;transition:.2s}.nav-item:hover{background:#f8f7fc;color:var(--purple)}.nav-item.active{background:var(--lavender);color:var(--purple);font-weight:800}.nav-icon,.inline-icon{display:inline-flex;width:20px;height:20px}.nav-icon svg,.inline-icon svg,.icon-button svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.nav-count{margin-left:auto;background:var(--purple);color:white;border-radius:9px;padding:2px 7px;font-size:9px}.sidebar-card{position:relative;margin-top:auto;padding:19px 17px;background:#f2efff;border-radius:16px;overflow:hidden}.sidebar-card:after{content:"";position:absolute;width:85px;height:85px;border:1px solid #dcd4ff;border-radius:50%;right:-35px;bottom:-35px}.sidebar-card .sparkle{color:var(--purple);font-size:20px}.sidebar-card strong{display:block;margin:7px 0 4px;font-size:12px}.sidebar-card p{margin:0;color:#767185;font-size:10px;line-height:1.55}.user-chip{display:flex;align-items:center;gap:10px;width:100%;margin-top:16px;padding:10px 7px;border:0;background:none;text-align:left;cursor:pointer}.avatar{display:grid;place-items:center;flex:0 0 35px;height:35px;border-radius:50%;background:#e2b78d;color:#fff;font-size:11px;font-weight:800}.user-chip strong,.user-chip small{display:block}.user-chip strong{font-size:11px}.user-chip small{margin-top:2px;color:#9b98a5;font-size:8px}.chevron{margin-left:auto;color:#999}.main{width:calc(100% - 252px);margin-left:252px}.topbar{height:76px;padding:0 5.5%;display:flex;justify-content:flex-end;align-items:center;border-bottom:1px solid var(--line);background:rgba(248,247,244,.85);backdrop-filter:blur(12px)}.top-actions{display:flex;align-items:center;gap:12px}.streak-pill{display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:#fff;border-radius:20px;padding:8px 14px;color:var(--ink);font:inherit;font-size:10px}.streak-pill strong{font-size:12px}.streak-text{color:#9793a1}.icon-button{position:relative;display:grid;place-items:center;width:38px;height:38px;padding:10px;border:1px solid var(--line);border-radius:50%;background:#fff;color:#777;cursor:pointer}.notification i{position:absolute;right:6px;top:5px;width:6px;height:6px;background:#f26c67;border:2px solid white;border-radius:50%}.menu-button,.mobile-brand{display:none}.content{max-width:1280px;margin:auto;padding:42px 5.5% 70px}.page-enter{animation:pageIn .35s ease}@keyframes pageIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.welcome-row,.page-title{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:28px}.eyebrow,.section-kicker,.hero-kicker{color:#aaa6b4;font-size:9px;font-weight:800;letter-spacing:1.4px}.welcome-row h1,.page-title h1{margin:7px 0 7px;font-size:28px;letter-spacing:-1.3px}.welcome-row h1 span{font-size:23px}.welcome-row p,.page-title p{margin:0;color:var(--muted);font-size:12px}.level-chip{display:flex;align-items:center;gap:18px;padding:11px 16px;border:1px solid var(--line);border-radius:13px;background:#fff;font-size:10px}.level-chip span{color:var(--muted)}.level-chip strong{font-size:13px}.level-chip small{color:var(--purple);font-size:8px}.hero-card{position:relative;min-height:320px;display:grid;grid-template-columns:55% 45%;overflow:hidden;background:linear-gradient(120deg,#4c3eaa,#7866df);border-radius:23px;color:#fff;box-shadow:0 18px 45px rgba(75,58,169,.2)}.hero-card:before{content:"";position:absolute;width:390px;height:390px;border:1px solid rgba(255,255,255,.12);border-radius:50%;right:-75px;top:-135px}.hero-copy{z-index:2;padding:38px 44px}.subject-pill{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border:1px solid rgba(255,255,255,.2);border-radius:15px;background:rgba(255,255,255,.08);font-size:9px}.subject-pill i{width:5px;height:5px;background:#b7aaff;border-radius:50%}.hero-kicker{margin:25px 0 8px;color:#c9c1f4}.hero-copy h2{margin:0;font-size:27px;letter-spacing:-1px}.hero-copy>p{max-width:410px;margin:9px 0 19px;color:#d8d3f2;font-size:11px;line-height:1.6}.hero-progress{max-width:410px}.hero-progress div{display:flex;justify-content:space-between;font-size:9px}.hero-progress strong{font-size:10px}.hero-progress progress,.course-card progress{width:100%;height:5px;margin-top:8px;border:0;border-radius:5px;overflow:hidden;background:rgba(255,255,255,.2)}progress::-webkit-progress-bar{background:rgba(255,255,255,.2)}progress::-webkit-progress-value{background:#fff;border-radius:5px}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;margin-top:24px;padding:12px 18px;border:0;border-radius:11px;background:#fff;color:var(--purple-dark);font:inherit;font-size:10px;font-weight:800;cursor:pointer;box-shadow:0 8px 20px rgba(36,25,94,.18)}.primary-button .inline-icon{width:14px;height:14px}.hero-visual{position:relative;min-height:300px}.hero-sphere{position:absolute;display:grid;place-items:center;width:172px;height:172px;left:43%;top:50%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 35% 28%,#fff 0,#e5ddff 24%,#a996fb 61%,#745dd8 100%);box-shadow:inset -20px -20px 35px rgba(69,44,159,.28),0 25px 45px rgba(38,24,105,.28)}.hero-sphere span{color:#4f3da6;font-size:42px;font-weight:800}.hero-sphere small{font-size:17px}.orbit{position:absolute;border:1px solid rgba(255,255,255,.17);border-radius:50%;left:43%;top:50%;transform:translate(-50%,-50%) rotate(-20deg)}.orbit-one{width:280px;height:125px}.orbit-two{width:335px;height:170px;transform:translate(-50%,-50%) rotate(32deg)}.math-card{position:absolute;display:grid;place-items:center;background:rgba(255,255,255,.92);color:#5845bd;border-radius:10px;font-weight:800;box-shadow:0 12px 28px rgba(40,27,107,.25)}.card-a{width:52px;height:52px;left:6%;top:25%;transform:rotate(-9deg)}.card-b{width:45px;height:45px;right:13%;top:27%;transform:rotate(12deg)}.card-c{width:40px;height:40px;right:15%;bottom:20%;transform:rotate(-6deg)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}.stat-card{display:flex;align-items:center;gap:14px;min-height:105px;padding:20px;background:#fff;border:1px solid var(--line);border-radius:16px}.stat-icon{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:12px}.stat-icon .inline-icon{width:18px}.stat-icon.purple{background:#eeeaff;color:var(--purple)}.stat-icon.orange{background:#fff0e4;font-size:18px}.stat-icon.green{background:#e6f5ef;color:var(--green)}.stat-card span,.stat-card strong,.stat-card small{display:block}.stat-card span{color:#8c8997;font-size:9px}.stat-card strong{margin:4px 0;font-size:20px}.stat-card strong em{font-size:11px;font-style:normal}.stat-card small{color:#aaa6b1;font-size:8px}.stat-card small b{color:var(--green)}.two-columns{display:grid;grid-template-columns:1.35fr 1fr;gap:16px}.panel{padding:25px;background:#fff;border:1px solid var(--line);border-radius:18px}.panel-heading{display:flex;justify-content:space-between;align-items:center}.panel h3{margin:5px 0 0;font-size:16px}.text-button{display:flex;align-items:center;gap:5px;border:0;background:none;color:var(--purple);font:inherit;font-size:9px;font-weight:700;cursor:pointer}.text-button .inline-icon{width:13px}.lesson-list{margin-top:16px}.lesson-row{display:flex;align-items:center;width:100%;padding:14px 4px;border:0;border-top:1px solid #f0eef3;background:none;text-align:left;font:inherit;cursor:pointer}.lesson-row:hover:not(:disabled){background:#faf9ff}.lesson-number{display:grid;place-items:center;width:33px;height:33px;margin-right:12px;border-radius:10px;background:#f0ecff;color:var(--purple);font-size:9px;font-weight:800}.lesson-main{flex:1}.lesson-main small,.lesson-main strong,.lesson-main em{display:block}.lesson-main small{color:#aaa6b2;font-size:7px;text-transform:uppercase;letter-spacing:.7px}.lesson-main strong{margin:3px 0;font-size:10px}.lesson-main em{display:flex;align-items:center;color:#aaa6b2;font-size:7px;font-style:normal}.lesson-main .inline-icon{width:10px;height:10px;margin-right:3px}.lesson-action{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:var(--purple);color:#fff}.lesson-action .inline-icon{width:13px}.is-locked{opacity:.55}.is-locked .lesson-number,.is-locked .lesson-action{background:#f1f0f3;color:#aaa}.week-total{padding:5px 9px;background:#eaf8f1;color:var(--green);border-radius:10px;font-size:8px;font-weight:800}.bars{display:flex;align-items:flex-end;justify-content:space-around;height:130px;margin-top:18px}.bar-wrap{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;gap:7px}.bar{position:relative;width:15px;min-height:8px;background:#ded9f8;border-radius:5px}.bar.today{background:var(--purple)}.bar span{position:absolute;top:-18px;left:50%;transform:translateX(-50%);font-size:7px;color:var(--purple);font-weight:800}.bar-wrap small{color:#aaa6b2;font-size:7px}.week-message{display:flex;gap:10px;padding:12px;background:#f5f2ff;border-radius:10px;color:var(--purple)}.week-message p{margin:0;color:#7f7a91;font-size:8px;line-height:1.5}.week-message strong{color:var(--ink)}.soft-badge{padding:8px 12px;border-radius:12px;background:var(--lavender);color:var(--purple);font-size:9px;font-weight:800}.course-card{padding:30px}.course-head{display:flex;justify-content:space-between}.course-head span{color:var(--purple);font-size:9px;font-weight:800;text-transform:uppercase}.course-head h2{margin:7px 0 14px;font-size:22px}.course-head>strong{color:var(--muted);font-size:9px}.course-card progress{height:7px;background:#eee}.course-card progress::-webkit-progress-bar{background:#eee}.course-card progress::-webkit-progress-value{background:var(--purple)}.expanded .lesson-row{padding:18px 5px}.assignment-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.assignment-card{position:relative;min-height:230px;padding:27px;border:1px solid var(--line);border-radius:20px;background:#fff;overflow:hidden}.assignment-card:after{content:"";position:absolute;width:130px;height:130px;right:-50px;top:-50px;border-radius:50%;background:#f1edff}.assignment-index{color:#c8c3d4;font-size:10px;font-weight:800}.assignment-status{float:right;position:relative;z-index:1;padding:5px 9px;background:#eeeaff;border-radius:10px;color:var(--purple);font-size:8px;font-weight:800}.assignment-card h3{max-width:75%;margin:36px 0 9px;font-size:17px}.assignment-card p{color:var(--muted);font-size:10px}.assignment-card>div{display:flex;justify-content:space-between;align-items:center;margin-top:27px;color:var(--green);font-size:9px;font-weight:800}.circle-button{display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;background:var(--purple);color:#fff;cursor:pointer}.circle-button .inline-icon{width:15px}.progress-hero{display:flex;align-items:center;gap:30px}.progress-ring{display:grid;place-items:center;flex:0 0 130px;height:130px;border-radius:50%;background:conic-gradient(var(--purple) 87%,#eeeaff 0);position:relative}.progress-ring:after{content:"";position:absolute;width:100px;height:100px;background:#fff;border-radius:50%}.progress-ring span{z-index:1;font-size:26px;font-weight:800}.progress-ring small{font-size:11px}.progress-hero h2{margin:7px 0;font-size:21px}.progress-hero p{color:var(--muted);font-size:10px}.profile-card{display:flex;align-items:center;gap:18px}.profile-avatar{display:grid;place-items:center;width:72px;height:72px;border-radius:22px;background:linear-gradient(135deg,#7a67dd,#5140b6);color:#fff;font-size:20px;font-weight:800}.profile-card h2{margin:0;font-size:20px}.profile-card p{margin:3px 0 8px;color:var(--muted);font-size:10px}.outline-button{margin-left:auto;padding:10px 15px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--purple);font:inherit;font-size:9px;font-weight:800;cursor:pointer}.details{margin-top:16px}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:18px}.details-grid label{padding:15px;background:var(--cream);border-radius:11px;color:var(--muted);font-size:8px}.details-grid strong{display:block;margin-top:5px;color:var(--ink);font-size:11px}.auth-dialog{width:min(430px,calc(100% - 30px));padding:36px;border:0;border-radius:22px;box-shadow:0 30px 100px rgba(25,19,54,.3)}.auth-dialog::backdrop{background:rgba(25,21,45,.55);backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:17px;top:14px;border:0;background:none;color:#999;font-size:24px;cursor:pointer}.auth-brand{padding:0;justify-content:center}.auth-dialog h2{text-align:center;margin:25px 0 6px;font-size:23px}.auth-dialog>p{text-align:center;margin:0 0 24px;color:var(--muted);font-size:10px}.auth-dialog label{display:block;margin:13px 0;color:var(--ink);font-size:9px;font-weight:800}.auth-dialog input{display:block;width:100%;margin-top:7px;padding:13px;border:1px solid var(--line);border-radius:10px;font:inherit;font-size:11px;outline:none}.auth-dialog input:focus{border-color:var(--purple);box-shadow:0 0 0 3px var(--lavender)}.primary-button.full{width:100%;background:var(--purple);color:#fff}.auth-note{display:block;margin-top:15px;text-align:center;color:#aaa;font-size:8px}.toast-stack{position:fixed;z-index:50;right:22px;bottom:22px}.toast{display:flex;align-items:flex-start;gap:11px;width:300px;margin-top:10px;padding:15px;background:#201d2c;color:#fff;border-radius:13px;box-shadow:var(--shadow);animation:pageIn .3s}.toast>span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--green)}.toast svg{width:15px;fill:none;stroke:#fff;stroke-width:2}.toast strong{font-size:10px}.toast p{margin:3px 0 0;color:#bbb8c4;font-size:8px;line-height:1.5}
@media(max-width:950px){.sidebar{transform:translateX(-100%);transition:.25s;box-shadow:15px 0 45px rgba(20,18,35,.12)}.sidebar.open{transform:none}.main{width:100%;margin-left:0}.topbar{justify-content:space-between}.menu-button,.mobile-brand{display:grid}.mobile-brand{font-weight:800;font-size:20px}.two-columns{grid-template-columns:1fr}.hero-card{grid-template-columns:62% 38%}}
@media(max-width:650px){.content{padding:27px 18px 50px}.topbar{height:65px;padding:0 18px}.streak-text{display:none}.welcome-row,.page-title{gap:15px}.welcome-row h1,.page-title h1{font-size:23px}.level-chip{display:none}.hero-card{display:block;min-height:auto}.hero-copy{padding:28px 24px 32px}.hero-copy h2{font-size:23px}.hero-visual{display:none}.stats-grid,.assignment-grid{grid-template-columns:1fr}.stat-card{min-height:90px}.panel{padding:20px}.panel-heading{align-items:flex-start}.course-head{display:block}.course-head>strong{display:block;margin-bottom:10px}.progress-hero{display:block}.progress-ring{margin:0 auto 25px}.details-grid{grid-template-columns:1fr}.profile-card{flex-wrap:wrap}.outline-button{width:100%;margin:8px 0 0}.toast-stack{right:12px;left:12px}.toast{width:100%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Product UI v2 */
body{min-width:320px}.ui-icon{display:inline-flex;width:20px;height:20px}.ui-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.overline{color:#8e8a9b;font-size:10px;font-weight:800;letter-spacing:1.5px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:0 18px;border:1px solid transparent;border-radius:12px;font:700 12px Manrope,sans-serif;text-decoration:none;cursor:pointer;transition:transform .18s,background .18s,border-color .18s}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.65;cursor:not-allowed;transform:none}.btn.primary{background:var(--purple);color:#fff}.btn.primary:hover{background:var(--purple-dark)}.btn.secondary{border-color:var(--line);background:#fff;color:var(--ink)}.btn.light{background:#fff;color:var(--purple-dark)}.btn .ui-icon{width:15px;height:15px}
.auth-page{display:grid;grid-template-columns:minmax(380px,1.08fr) minmax(430px,.92fr);min-height:100vh;background:#fff}.auth-story{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:44px clamp(38px,6vw,90px);overflow:hidden;background:#252139;color:#fff}.auth-story:after{content:"";position:absolute;width:500px;height:500px;left:-210px;bottom:-280px;border:1px solid rgba(255,255,255,.08);border-radius:50%}.auth-logo{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-size:24px;font-weight:800;letter-spacing:-1px}.auth-logo b,.product-sidebar .brand b{display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:#7865de;font-size:18px}.auth-story>div:not(.story-visual){max-width:590px;position:relative;z-index:1}.auth-story .overline{color:#9f94dc}.auth-story h1{max-width:650px;margin:16px 0;font-size:clamp(32px,4vw,58px);line-height:1.08;letter-spacing:-2.6px}.auth-story p{max-width:520px;color:#bbb7ca;font-size:13px;line-height:1.8}.story-visual{position:relative;z-index:1;display:grid;grid-template-columns:35px 1fr;gap:9px 15px;max-width:270px}.story-visual span{color:#8176b5;font-size:9px}.story-visual strong{font-size:10px;text-transform:uppercase;letter-spacing:1.2px}.visual-grid{position:absolute!important;left:300px;bottom:-40px;width:310px;height:210px;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:28px 28px;transform:perspective(400px) rotateX(55deg) rotateZ(-20deg)}.auth-form-wrap{display:grid;place-items:center;padding:36px}.auth-form-box{width:min(100%,440px)}.auth-mobile-logo{display:none}.auth-form-box h2{margin:10px 0 7px;font-size:31px;letter-spacing:-1.3px}.auth-form-box>p{margin:0 0 28px;color:var(--muted);font-size:11px}.field{display:block;margin:14px 0;color:var(--ink);font-size:10px;font-weight:700}.field>span{display:flex;justify-content:space-between;margin-bottom:7px}.field i{color:#aaa;font-size:8px;font-style:normal;font-weight:500}.field input{width:100%;height:45px;padding:0 13px;border:1px solid #dedce5;border-radius:10px;background:#fff;color:var(--ink);font:500 11px Manrope,sans-serif;outline:none;transition:.18s}.field input:focus{border-color:var(--purple);box-shadow:0 0 0 3px var(--lavender)}.field input:invalid:not(:placeholder-shown){border-color:#dd7777}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.password-wrap{position:relative}.password-wrap input{padding-right:48px}.eye-btn{position:absolute;right:5px;top:4px;display:grid;place-items:center;width:37px;height:37px;border:0;background:transparent;color:#8d8998;cursor:pointer}.eye-btn .ui-icon{width:18px}.field-error{display:block;min-height:11px;margin-top:4px;color:#c54e56;font-size:8px}.submit-btn{width:100%;margin-top:8px}.form-error{padding:11px 13px;margin-bottom:13px;border:1px solid #f1c7ca;border-radius:10px;background:#fff3f3;color:#a53e47;font-size:10px;line-height:1.5}.auth-switch{text-align:center!important;margin:19px 0 0!important}.auth-switch a{color:var(--purple);font-weight:800;text-decoration:none}
.state-view{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;text-align:center}.state-view>.ui-icon{width:38px;height:38px;color:#aaa}.state-view h2{margin:15px 0 7px;font-size:20px}.state-view p{max-width:420px;margin:0 0 20px;color:var(--muted);font-size:10px;line-height:1.6}.loader{width:34px;height:34px;border:3px solid #e3dff5;border-top-color:var(--purple);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.product-shell{display:flex;min-height:100vh;background:#f7f6f3}.product-sidebar{position:fixed;z-index:20;inset:0 auto 0 0;width:238px;padding:29px 20px 20px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column}.product-sidebar .brand{display:flex;align-items:center;gap:10px;padding:0 9px;color:var(--ink);font-size:24px;font-weight:800;text-decoration:none}.product-sidebar nav{margin-top:46px}.product-sidebar nav a{display:flex;align-items:center;gap:13px;height:47px;margin:4px 0;padding:0 13px;border-radius:11px;color:#797585;font-size:11px;font-weight:700;text-decoration:none}.product-sidebar nav a:hover{background:#f7f5fd;color:var(--purple)}.product-sidebar nav a.active{background:#efebff;color:var(--purple)}.product-sidebar nav .ui-icon{width:18px;height:18px}.nav-caption{display:block;margin:0 13px 9px;color:#aaa6b1;font-size:8px;font-weight:800;letter-spacing:1.4px}.nav-caption.second{margin-top:30px}.side-user{display:flex;align-items:center;gap:10px;margin-top:auto;padding:13px 8px;border-top:1px solid var(--line)}.side-user .avatar{background:#6d58d9}.side-user strong,.side-user small{display:block}.side-user strong{font-size:10px}.side-user small{margin-top:2px;color:#9995a3;font-size:8px}.product-main{width:calc(100% - 238px);margin-left:238px}.product-top{height:72px;padding:0 5vw;display:flex;justify-content:flex-end;align-items:center;border-bottom:1px solid var(--line);background:rgba(247,246,243,.9);backdrop-filter:blur(10px)}.logout-btn,.mobile-menu{display:flex;align-items:center;gap:7px;padding:8px 10px;border:0;background:none;color:#777381;font:700 9px Manrope;cursor:pointer}.logout-btn .ui-icon{width:17px}.mobile-menu,.mobile-logo{display:none}.product-content{max-width:1250px;margin:auto;padding:43px 5vw 70px}.page-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:28px}.page-head h1{margin:7px 0;font-size:30px;letter-spacing:-1.5px}.page-head p{margin:0;color:var(--muted);font-size:11px}.role-badge{display:inline-flex;padding:7px 11px;border-radius:9px;background:#eeeaff;color:var(--purple);font-size:9px;font-weight:800}.real-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:17px}.real-stats article{padding:22px;background:#fff;border:1px solid var(--line);border-radius:16px}.real-stats span,.real-stats small,.real-stats strong{display:block}.real-stats span{color:#858190;font-size:9px}.real-stats strong{margin:8px 0 4px;font-size:25px}.real-stats small{color:#aaa6b2;font-size:8px}.dashboard-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:17px}.focus-card{min-height:280px;padding:33px;border-radius:19px;background:#5546b7;color:#fff;overflow:hidden;position:relative}.focus-card:after{content:"";position:absolute;width:240px;height:240px;right:-110px;bottom:-110px;border:1px solid rgba(255,255,255,.15);border-radius:50%}.focus-card .overline{color:#c8c0ee}.focus-card h2{max-width:420px;margin:18px 0 9px;font-size:23px;letter-spacing:-.8px}.focus-card p{max-width:430px;min-height:45px;color:#d7d2ef;font-size:10px;line-height:1.65}.focus-card .btn{position:relative;z-index:2;margin-top:24px}.clean-panel{padding:27px;background:#fff;border:1px solid var(--line);border-radius:19px}.section-title{display:flex;justify-content:space-between;align-items:flex-start}.section-title h2{margin:5px 0;font-size:16px}.section-title a{color:var(--purple);font-size:9px;font-weight:800;text-decoration:none}.compact-list{margin-top:14px}.compact-list>div{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:11px;padding:13px 0;border-top:1px solid #eeecf1}.compact-list>div>span{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#f1edff;color:var(--purple)}.compact-list .ui-icon{width:16px}.compact-list strong{font-size:10px}.compact-list small{color:#9995a1;font-size:8px}.inline-empty{min-height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#aaa6b2;text-align:center}.inline-empty .ui-icon{width:26px}.inline-empty p{font-size:9px}
.games-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.game-card{display:flex;flex-direction:column;min-height:360px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:18px;transition:transform .2s,border-color .2s}.game-card:hover{transform:translateY(-3px);border-color:#d4cdef}.game-art{position:relative;height:135px;margin-bottom:18px;border-radius:13px;background:#29263a;overflow:hidden}.game-art>span{position:absolute;z-index:2;left:17px;top:15px;color:#b6addf;font-size:10px;font-weight:800}.game-art>div{position:absolute;width:150px;height:150px;right:-30px;bottom:-65px;border:18px solid #6e5bd2;border-radius:50%;transform:rotate(-18deg)}.game-art:after{content:"";position:absolute;width:70px;height:70px;right:75px;top:25px;border:1px solid rgba(255,255,255,.16);transform:rotate(45deg)}.game-meta{color:var(--purple);font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.8px}.game-card h2{margin:8px 0;font-size:16px;line-height:1.35}.game-card p{flex:1;margin:0 0 18px;color:var(--muted);font-size:9px;line-height:1.6}.game-card .btn{align-self:flex-start}.lesson-catalog{display:grid;gap:10px}.lesson-catalog article{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:15px;padding:18px 20px;background:#fff;border:1px solid var(--line);border-radius:14px}.lesson-symbol{display:grid;place-items:center;width:43px;height:43px;border-radius:11px;background:#eeeaff;color:var(--purple)}.lesson-symbol .ui-icon{width:19px}.lesson-catalog h2{margin:0 0 5px;font-size:13px}.lesson-catalog p{margin:0;color:var(--muted);font-size:8px}.lesson-type{padding:6px 9px;background:#f4f2f7;border-radius:8px;color:#777381;font-size:8px}.profile-real{background:#fff;border:1px solid var(--line);border-radius:19px;overflow:hidden}.profile-top{display:flex;align-items:center;gap:17px;padding:30px;border-bottom:1px solid var(--line)}.profile-avatar{display:grid;place-items:center;width:75px;height:75px;border-radius:20px;background:#5546b7;color:#fff;font-size:20px;font-weight:800}.profile-top h2{margin:0;font-size:20px}.profile-top p{margin:4px 0 8px;color:var(--muted);font-size:10px}.profile-fields{display:grid;grid-template-columns:1fr 1fr}.profile-fields>div{padding:23px 30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.profile-fields span,.profile-fields strong{display:block}.profile-fields span{color:#9995a2;font-size:8px}.profile-fields strong{margin-top:5px;font-size:11px}.game-header{display:flex;justify-content:space-between;margin-bottom:23px}.game-header a{color:var(--purple);font-size:9px;font-weight:800;text-decoration:none}.game-header>span{color:var(--muted);font-size:9px}.quiz-shell{max-width:780px;margin:0 auto}.quiz-intro,.question-card,.quiz-result{padding:45px;background:#fff;border:1px solid var(--line);border-radius:20px;text-align:center}.quiz-intro h1{margin:15px auto 10px;font-size:28px;letter-spacing:-1.2px}.quiz-intro>p{max-width:520px;margin:0 auto 26px;color:var(--muted);font-size:10px;line-height:1.7}.quiz-progress{display:grid;grid-template-columns:1fr auto;margin-bottom:14px;color:var(--muted);font-size:9px}.quiz-progress progress{grid-column:1/-1;width:100%;height:5px;margin-top:8px;border:0;background:#e8e5ef}.quiz-progress progress::-webkit-progress-bar{background:#e8e5ef}.quiz-progress progress::-webkit-progress-value{background:var(--purple)}.question-card h2{max-width:620px;margin:16px auto 27px;font-size:22px;line-height:1.45}.options{display:grid;grid-template-columns:1fr 1fr;gap:11px}.options button{display:flex;align-items:center;gap:12px;min-height:58px;padding:11px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font:600 10px Manrope;text-align:left;cursor:pointer}.options button:hover:not(:disabled){border-color:#9586dc;background:#faf9ff}.options button b{display:grid;place-items:center;flex:0 0 31px;height:31px;border-radius:8px;background:#f0edfa;color:var(--purple)}.options button.correct{border-color:#62b997;background:#f0faf6}.options button.wrong{border-color:#df8c91;background:#fff5f5}.answer-feedback{display:flex;align-items:center;justify-content:space-between;margin-top:18px;padding-top:18px;border-top:1px solid var(--line);text-align:left;font-size:11px}.quiz-result{display:flex;flex-direction:column;align-items:center}.result-score{display:grid;place-items:center;width:135px;height:135px;margin-bottom:25px;border:8px solid #e6e1fa;border-radius:50%;color:var(--purple);font-size:35px;font-weight:800}.result-score small{font-size:13px}.quiz-result h2{margin:10px 0}.quiz-result p{color:var(--muted);font-size:9px}.quiz-result>div{display:flex;gap:10px;margin-top:20px}.not-found{min-height:65vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.not-found>strong{color:#d9d3f5;font-size:90px;line-height:1}.not-found h1{margin:13px 0 5px}.not-found p{margin:0 0 22px;color:var(--muted);font-size:10px}.toast{align-items:center}.toast.error>span{background:#c95e65}.toast p{margin:0!important;color:#fff!important;font-size:9px!important}
@media(max-width:1000px){.auth-page{grid-template-columns:1fr 1fr}.auth-story{padding:40px}.auth-story h1{font-size:38px}.games-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.product-sidebar{transform:translateX(-100%);transition:.22s;box-shadow:15px 0 40px rgba(30,25,52,.12)}.product-sidebar.open{transform:none}.product-main{width:100%;margin-left:0}.product-top{justify-content:space-between}.mobile-menu,.mobile-logo{display:flex}.mobile-logo{font-size:18px;font-weight:800}}
@media(max-width:700px){.auth-page{display:block}.auth-story{display:none}.auth-form-wrap{min-height:100vh;padding:25px 19px}.auth-mobile-logo{display:block;margin-bottom:40px;color:var(--purple);font-size:21px;font-weight:800}.field-row{grid-template-columns:1fr;gap:0}.product-content{padding:29px 18px 50px}.product-top{height:64px;padding:0 16px}.page-head h1{font-size:25px}.role-badge{display:none}.real-stats{grid-template-columns:1fr}.games-grid{grid-template-columns:1fr}.game-card{min-height:330px}.lesson-catalog article{grid-template-columns:44px 1fr}.lesson-type{display:none}.profile-fields{grid-template-columns:1fr}.profile-fields>div{border-right:0}.quiz-intro,.question-card,.quiz-result{padding:28px 18px}.quiz-intro h1{font-size:23px}.question-card h2{font-size:18px}.options{grid-template-columns:1fr}.answer-feedback{align-items:flex-start;gap:12px}.logout-btn span{display:none}.compact-list>div{grid-template-columns:36px 1fr}.compact-list small{grid-column:2}.toast-stack{left:10px;right:10px}.toast{width:100%}}

/* Strict dark visual direction based on the supplied MIHO reference */
:root{--ink:#f5f5fb;--muted:#8f98ab;--purple:#8b5cf6;--purple-dark:#7045d6;--lavender:#26234c;--line:#253044;--cream:#08111f;--green:#31d880;--orange:#f1c343;--white:#101a29;--panel:#101a29;--panel-2:#0d1725;--navy:#08111f;--shadow:0 18px 55px rgba(0,0,0,.28)}
body{background:radial-gradient(circle at 68% 0,#101b31 0,#08111f 42%,#07101d 100%);color:var(--ink)}.product-shell{background:transparent}.product-sidebar{width:222px;padding:28px 16px 18px;background:rgba(8,17,31,.94);border-color:#223044;box-shadow:10px 0 40px rgba(0,0,0,.12)}.product-sidebar .brand{color:#fff;font-size:25px}.product-sidebar .brand b,.auth-logo b{position:relative;background:linear-gradient(155deg,#a273ff,#6842dc);box-shadow:0 10px 30px rgba(114,72,220,.25)}.product-sidebar .brand b:after,.auth-logo b:after{content:"";position:absolute;width:18px;height:7px;left:9px;bottom:5px;border-radius:3px;background:#a487ff}.product-sidebar nav{margin-top:38px}.product-sidebar nav a,.nav-logout{width:100%;height:43px;display:flex;align-items:center;gap:12px;margin:3px 0;padding:0 13px;border:0;border-radius:9px;background:transparent;color:#bbc3d2;font:600 10px Manrope;text-decoration:none;cursor:pointer}.product-sidebar nav a:hover,.nav-logout:hover{background:#151e34;color:#fff}.product-sidebar nav a.active{background:linear-gradient(100deg,rgba(116,86,220,.4),rgba(95,77,174,.28));color:#fff;box-shadow:inset 0 0 0 1px rgba(139,92,246,.12)}.product-sidebar nav a.active .ui-icon{color:#9c71ff}.nav-caption{color:#6f7c91}.side-user{margin:0 -16px -18px;padding:17px 20px;border-color:#223044;background:#091321}.side-user .avatar,.top-avatar{background:linear-gradient(145deg,#9b6cff,#6c3ee0)}.side-user strong{color:#f5f5fa}.side-user small{color:#8490a3}.product-main{width:calc(100% - 222px);margin-left:222px}.product-top{height:72px;padding:0 4vw;border-color:transparent;background:transparent}.top-role{display:flex;align-items:center;gap:12px;color:#8994a6;font-size:9px}.top-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:#fff;font-weight:800}.product-content{max-width:1320px;padding:35px 4vw 70px}.page-head{margin-bottom:25px}.page-head h1{font-size:29px;color:#fff}.page-head p{color:#9ba4b5}.overline{color:#8792a6}.btn{border-radius:8px}.btn.primary{background:linear-gradient(135deg,#9866f2,#7045d6);box-shadow:0 8px 22px rgba(112,69,214,.22)}.btn.secondary{border-color:#2b3850;background:#111c2c;color:#c7cede}.btn.light{background:linear-gradient(135deg,#9664ed,#6f42d1);color:#fff}.state-view{color:#eef1f7}.state-view p{color:#8e99ac}.state-view>.ui-icon{color:#59677d}
.dark-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}.dark-stats article{display:flex;align-items:center;gap:13px;min-height:108px;padding:17px;background:linear-gradient(145deg,rgba(17,28,44,.96),rgba(13,23,37,.92));border:1px solid #263248;border-radius:10px;box-shadow:0 15px 35px rgba(0,0,0,.1)}.stat-orb{display:grid;place-items:center;flex:0 0 43px;height:43px;border-radius:50%;background:rgba(124,83,236,.18);color:#9368ff}.stat-orb.s1{background:rgba(31,154,224,.14);color:#35b6fb}.stat-orb.s2{background:rgba(36,201,116,.12);color:#35e984}.stat-orb.s3{background:rgba(233,179,42,.14);color:#f2c84b}.stat-orb .ui-icon{width:20px}.dark-stats small,.dark-stats strong,.dark-stats em{display:block}.dark-stats small{color:#aab2c2;font-size:9px}.dark-stats strong{margin:3px 0;color:#fff;font-size:23px}.dark-stats em{color:#7f8a9e;font-size:8px;font-style:normal}.dark-dashboard{display:grid;grid-template-columns:1.15fr 1fr;gap:17px}.dark-focus,.dark-panel,.path-panel{min-height:294px;padding:20px;background:linear-gradient(145deg,rgba(16,27,43,.98),rgba(12,22,35,.95));border:1px solid #243147;border-radius:10px}.dark-focus{position:relative;display:flex;flex-direction:column;justify-content:center;padding:39px;overflow:hidden;background:radial-gradient(circle at 75% 35%,rgba(92,63,191,.42),transparent 32%),linear-gradient(135deg,#181a45,#171133 60%,#10192b)}.dark-focus:before{content:"";position:absolute;inset:14px;border:1px solid rgba(132,83,241,.55);border-radius:12px;pointer-events:none}.dark-focus>*{position:relative;z-index:1}.dark-focus h2{max-width:520px;margin:14px 0 8px;color:#fff;font-size:25px}.dark-focus p{max-width:500px;color:#b8bfd0;font-size:10px;line-height:1.7}.dark-focus .btn{align-self:flex-start;margin-top:18px}.dark-panel{padding:25px}.dark-panel h2{color:#fff}.dark-list>div{border-color:#243047}.dark-list>div>span{background:#17233a}.dark-list strong{color:#eef1f7}.path-panel{min-height:auto;margin-top:17px}.path-row{display:flex;align-items:stretch;gap:10px;margin-top:16px}.path-row>div{flex:1;display:flex;flex-direction:column;align-items:center;padding:14px 8px;border:1px solid #28364d;border-radius:9px;background:#111c2c}.path-row>div>span{display:grid;place-items:center;width:38px;height:38px;margin-bottom:9px;border-radius:50%;background:#192a45;color:#6dc8ff}.path-row>div:nth-of-type(3)>span{color:#ffd13f}.path-row>div:nth-of-type(5)>span{color:#9670ff}.path-row strong{font-size:10px}.path-row small{margin-top:4px;color:#768399;font-size:8px}.path-row>b{align-self:center;color:#78849a}.path-panel>a{display:inline-flex;margin-top:14px;padding:8px 13px;border-radius:7px;background:#171a37;color:#a987ff;font-size:9px;text-decoration:none}
.games-grid{grid-template-columns:repeat(3,1fr)}.game-card,.assignment-table article,.groups-grid article,.entity-table,.profile-real,.learning-columns>section,.learning-detail,.mini-game,.quiz-intro,.question-card,.quiz-result{background:linear-gradient(145deg,#111c2b,#0d1725);border-color:#263349;color:#f2f4f8}.game-card{border-radius:11px}.game-art{background:#09111f;border:1px solid #293650}.game-card p,.assignment-table p,.groups-grid p{color:#8995a8}.game-meta{color:#9b74ff}.memory-art>div{border-color:#39b8d8}.scramble-art>div{border-color:#8e61ea}.assignment-table{display:grid;gap:10px}.assignment-table article{display:flex;align-items:center;justify-content:space-between;padding:18px;border:1px solid #263349;border-radius:9px}.assignment-table article>div:first-child{display:flex;gap:14px;align-items:center}.assignment-mark,.group-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:9px;background:#1b2840;color:#9670ff}.assignment-table h2,.groups-grid h2{margin:0 0 4px;font-size:13px}.assignment-table p{margin:0 0 5px;font-size:9px}.assignment-table small{color:#68758a;font-size:8px}.row-actions{display:flex;gap:8px}.groups-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.groups-grid article{padding:20px;border:1px solid #263349;border-radius:10px}.groups-grid .group-icon{margin-bottom:20px}.entity-tabs{display:flex;gap:7px;margin-bottom:14px;overflow-x:auto}.entity-tabs button{display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid #27354b;border-radius:8px;background:#0e1928;color:#9ba5b6;font:700 9px Manrope;cursor:pointer}.entity-tabs button.active{border-color:#7254cc;background:#242044;color:#bca6ff}.entity-tabs span{display:grid;place-items:center;min-width:18px;height:18px;border-radius:6px;background:#192436}.entity-table{padding:8px;border:1px solid #263349;border-radius:10px}.entity-table article{display:flex;align-items:center;justify-content:space-between;padding:13px;border-bottom:1px solid #243047}.entity-table article:last-child{border:0}.entity-table article>div:first-child{display:grid;grid-template-columns:40px minmax(150px,1fr);align-items:center}.entity-table article>div:first-child>span{grid-row:1/3;color:#66748a;font-size:8px}.entity-table strong{font-size:10px}.entity-table small{color:#77849a;font-size:8px}.entity-table article>div:last-child{display:flex;gap:5px}.entity-table button{display:grid;place-items:center;width:31px;height:31px;border:1px solid #2a3850;border-radius:7px;background:#121e30;color:#8693a8;cursor:pointer}.entity-table button:hover{color:#b797ff}.entity-table .ui-icon{width:14px}.learning-browser{display:grid;grid-template-columns:1.5fr .8fr;gap:14px}.learning-columns{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:8px;overflow-x:auto}.learning-columns>section{min-height:390px;padding:12px;border:1px solid #263349;border-radius:9px}.learning-columns h2{display:flex;justify-content:space-between;margin:4px 3px 12px;font-size:11px}.learning-columns h2 small{color:#6e7c91}.learning-columns button{display:flex;align-items:center;justify-content:space-between;width:100%;margin:5px 0;padding:9px;border:1px solid #253147;border-radius:7px;background:#0d1725;color:#bdc5d3;font:600 8px Manrope;text-align:left;cursor:pointer}.learning-columns button:hover{border-color:#7959d6;color:#fff}.learning-columns button .ui-icon{width:12px}.learning-detail{min-height:390px;padding:23px;border:1px solid #263349;border-radius:9px}.learning-detail h2{margin:10px 0 20px}.detail-json>div{padding:10px 0;border-bottom:1px solid #243047}.detail-json span,.detail-json strong{display:block}.detail-json span{color:#718096;font-size:8px}.detail-json strong{margin-top:4px;font-size:10px}.lesson-content pre{max-height:230px;overflow:auto;padding:12px;background:#09121f;color:#b9c4d3;font-size:8px}.profile-real{border-color:#263349}.profile-top,.profile-fields>div{border-color:#263349}.profile-top p,.profile-fields span{color:#7d899c}.work-dialog{width:min(560px,calc(100% - 30px));max-height:90vh;overflow:auto;padding:25px;border:1px solid #34425a;border-radius:12px;background:#0d1725;color:#f3f4f8;box-shadow:0 30px 100px #000}.work-dialog::backdrop{background:rgba(2,7,15,.78);backdrop-filter:blur(4px)}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}.dialog-head h2{margin:5px 0}.dialog-head>button{border:0;background:none;color:#8490a3;font-size:24px;cursor:pointer}.work-form label{display:block;margin:12px 0;color:#aeb7c6;font-size:9px}.work-form input,.work-form textarea,.work-form select,.scramble-form input{display:block;width:100%;margin-top:6px;padding:11px;border:1px solid #2d3b52;border-radius:7px;background:#091321;color:#eef1f7;font:500 10px Manrope;outline:none}.work-form input:focus,.work-form textarea:focus,.work-form select:focus{border-color:#805edf}.answer-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.member-list>div{display:flex;justify-content:space-between;align-items:center;padding:11px;border-bottom:1px solid #263349;font-size:10px}.member-list button{border:0;background:none;color:#8995a7}.member-list .ui-icon{width:15px}.mini-game{max-width:850px;margin:auto;padding:35px;border:1px solid #263349;border-radius:11px;text-align:center}.mini-game h1{margin:11px 0}.mini-game>p{color:#8995a7;font-size:10px}.memory-board{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:25px 0}.memory-board button{position:relative;min-height:110px;padding:10px;border:1px solid #2b3951;border-radius:8px;background:#141f32;color:#fff;cursor:pointer;transform-style:preserve-3d}.memory-board button>span{font-size:22px;color:#8a64e7}.memory-board button>strong{display:none;font-size:8px;line-height:1.45}.memory-board button.open,.memory-board button.matched{border-color:#7d5bd8;background:#242044}.memory-board button.open>span,.memory-board button.matched>span{display:none}.memory-board button.open>strong,.memory-board button.matched>strong{display:block}.memory-board button.matched{border-color:#25a86b;background:#113126}.mini-status{margin:13px;color:#8c98aa;font-size:9px}.scrambled-word{letter-spacing:8px;color:#ad8aff}.scramble-form{display:flex;gap:8px;max-width:430px;margin:25px auto}.scramble-form input{margin:0}.text-skip{border:0;background:none;color:#8f71df;font:700 9px Manrope;cursor:pointer}.quiz-progress{color:#8491a5}.quiz-progress progress::-webkit-progress-bar{background:#253147}.question-card .options button{border-color:#2b3950;background:#111c2c;color:#d8deea}.question-card .options button:hover:not(:disabled){border-color:#815fdf;background:#1a1c36}.question-card .options button b{background:#252044;color:#aa89ff}.answer-feedback{border-color:#28354b}.quiz-result p{color:#8995a8}.auth-page{background:#08111f}.auth-story{background:radial-gradient(circle at 30% 80%,#27204c 0,#11182a 42%,#091220 100%)}.auth-form-wrap{background:#0b1422}.auth-form-box h2{color:#fff}.auth-form-box>p,.auth-switch{color:#8994a7!important}.field{color:#bac2cf}.field input{border-color:#2a374d;background:#0d1827;color:#fff}.field input:focus{border-color:#805bdf;box-shadow:0 0 0 3px rgba(128,91,223,.15)}.form-error{border-color:#6b3038;background:#26151d;color:#ef9da4}.toast{background:#111c2b;border:1px solid #2b394f}
@media(max-width:1100px){.dark-stats{grid-template-columns:repeat(2,1fr)}.learning-browser{grid-template-columns:1fr}.learning-detail{min-height:250px}.groups-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:1000px){.product-main{width:100%;margin-left:0}.product-top{background:rgba(8,17,31,.92);border-bottom:1px solid #223044}.product-sidebar{transform:translateX(-100%)}.product-sidebar.open{transform:none}.dark-dashboard{grid-template-columns:1fr}}
@media(max-width:700px){.dark-stats{grid-template-columns:1fr 1fr}.dark-stats article{min-height:90px;padding:12px}.stat-orb{flex-basis:36px;height:36px}.dark-stats strong{font-size:19px}.path-row{overflow-x:auto}.path-row>div{min-width:105px}.path-row>b{display:none}.games-grid,.groups-grid{grid-template-columns:1fr}.assignment-table article{align-items:flex-start;gap:14px}.assignment-table article,.assignment-table article>div:first-child{flex-direction:column}.row-actions{width:100%}.row-actions .btn{flex:1}.learning-columns{grid-template-columns:repeat(5,145px)}.profile-fields{grid-template-columns:1fr}.answer-grid{grid-template-columns:1fr}.memory-board{grid-template-columns:repeat(2,1fr)}.entity-table article>div:first-child{grid-template-columns:28px 1fr}.entity-table small{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-form-wrap{background:#08111f}}
.catalog-count{padding:8px 11px;border:1px solid #2a3850;border-radius:8px;background:#101b2a;color:#9c83e9;font-size:9px;font-weight:800}.learning-columns button.selected{border-color:#825fe1;background:#252045;color:#fff}.selection-help{margin-top:18px;color:#7d899d;font-size:9px;line-height:1.6}.lesson-screen{display:grid;gap:14px}.lesson-hero,.lesson-section{padding:28px;border:1px solid #263349;border-radius:10px;background:linear-gradient(145deg,#111c2b,#0d1725)}.lesson-hero{display:flex;align-items:center;justify-content:space-between;min-height:170px;background:radial-gradient(circle at 78% 30%,rgba(113,72,211,.3),transparent 28%),linear-gradient(135deg,#171936,#10192b)}.lesson-hero h1{margin:9px 0;font-size:29px}.lesson-hero p{color:#8995a8;font-size:9px}.lesson-progress{width:190px;padding:18px;border:1px solid #32375d;border-radius:9px;background:rgba(9,17,31,.55)}.lesson-progress strong,.lesson-progress small{display:block}.lesson-progress strong{font-size:24px}.lesson-progress progress{width:100%;height:6px;margin:9px 0;border:0}.lesson-progress small{color:#8591a4;font-size:8px}.lesson-section h2{margin:8px 0 12px;font-size:18px}.lesson-section>p{max-width:820px;color:#a4adbc;font-size:10px;line-height:1.8}.content-list{display:grid;gap:8px}.content-list>div{display:flex;align-items:center;gap:13px;padding:12px;border:1px solid #263349;border-radius:8px;background:#0c1624}.content-list b{color:#795bd2;font-size:8px}.content-list span{font-size:10px}.lesson-footer{display:flex;justify-content:flex-end;gap:8px}.progress-list,.student-table{display:grid;gap:9px}.progress-list article,.student-table article{display:flex;align-items:center;justify-content:space-between;padding:17px 19px;border:1px solid #263349;border-radius:9px;background:linear-gradient(145deg,#111c2b,#0d1725)}.progress-list article>div:first-child{display:flex;align-items:center;gap:12px}.progress-list article>div:first-child>span{display:grid;place-items:center;width:39px;height:39px;border-radius:9px;background:#1c2840;color:#9977f0}.progress-list h2,.student-table h2{margin:0 0 4px;font-size:11px}.progress-list small,.student-table p{margin:0;color:#7f8b9e;font-size:8px}.progress-list article>div:last-child{width:180px;text-align:right}.progress-list progress{width:100%;height:5px}.profile-avatar.small{width:40px;height:40px;border-radius:10px;font-size:11px}.student-table article{display:grid;grid-template-columns:45px 1fr auto auto;gap:11px}.student-table article>span:not(.profile-avatar){color:#9180ce;font-size:9px}.icon-danger{display:grid;place-items:center;width:32px;height:32px;border:1px solid #55303b;border-radius:7px;background:#24151d;color:#dd7a83;cursor:pointer}.icon-danger .ui-icon{width:14px}.mode-grid .game-card{min-height:350px}.sentence-answer,.truth-statement{min-height:65px;display:grid;place-items:center;margin:22px 0;padding:16px;border:1px solid #35445e;border-radius:9px;background:#0a1422;color:#fff;font-size:14px}.word-bank{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:20px 0}.word-bank button{padding:9px 13px;border:1px solid #6048a2;border-radius:7px;background:#201c3c;color:#d8cef7;font:700 10px Manrope;cursor:pointer}.word-bank button:disabled{opacity:.3}.truth-actions{display:flex;justify-content:center;gap:9px;margin:18px}.progress-stats{grid-template-columns:repeat(3,1fr)}
@media(max-width:700px){.lesson-hero{align-items:flex-start;flex-direction:column}.lesson-progress{width:100%}.student-table article{grid-template-columns:42px 1fr}.student-table article>span:not(.profile-avatar),.student-table .icon-danger{grid-column:2}.progress-list article{align-items:flex-start;flex-direction:column}.progress-list article>div:last-child{width:100%;text-align:left}.progress-stats{grid-template-columns:1fr}.lesson-footer .btn{flex:1}}
.dashboard-extras{margin-top:17px}.breakdown-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:17px}.breakdown-list>div{min-height:88px;padding:13px;border:1px solid #27354b;border-radius:8px;background:#0d1725}.breakdown-list strong,.breakdown-list span{display:block}.breakdown-list strong{margin-bottom:8px;color:#a98cf4;font-size:9px}.breakdown-list span{color:#8c98aa;font-size:8px;line-height:1.7}.achievement-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.achievement-grid article{display:flex;gap:14px;min-height:145px;padding:19px;border:1px solid #27354b;border-radius:10px;background:linear-gradient(145deg,#111c2b,#0d1725)}.achievement-grid article>span{display:grid;place-items:center;flex:0 0 40px;height:40px;border-radius:50%;background:#242044;color:#a17cf7}.achievement-grid article.locked{opacity:.55}.achievement-grid article.locked>span{background:#172233;color:#647087}.achievement-grid small{color:#8471bd;font-size:7px;font-weight:800;letter-spacing:1px}.achievement-grid h2{margin:6px 0 5px;font-size:12px}.achievement-grid p{margin:0;color:#8490a4;font-size:8px;line-height:1.5}.achievement-grid em{display:block;margin-top:9px;color:#a88af1;font-size:8px;font-style:normal}.question-bank{display:grid;gap:11px}.question-bank article{padding:19px;border:1px solid #27354b;border-radius:10px;background:linear-gradient(145deg,#111c2b,#0d1725)}.question-bank small{color:#7e8a9e;font-size:8px}.question-bank h2{margin:7px 0 15px;font-size:13px}.answer-preview{display:grid;grid-template-columns:1fr 1fr;gap:7px}.answer-preview span{display:flex;align-items:center;gap:8px;padding:9px;border:1px solid #28364c;border-radius:7px;color:#929daf;font-size:8px}.answer-preview span.correct{border-color:#2f8c68;background:#102d25;color:#bcebd8}.answer-preview b{display:grid;place-items:center;width:23px;height:23px;border-radius:6px;background:#1d2940;color:#a384ef}.choice-list{display:grid;gap:7px}.choice-list button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px;border:1px solid #2b3950;border-radius:7px;background:#101b2a;color:#ccd3df;font:600 9px Manrope;text-align:left;cursor:pointer}.choice-list button:hover{border-color:#795ad2}.choice-list .ui-icon{width:14px}.result-list{display:grid;margin-top:16px}.result-list>div{display:grid;grid-template-columns:1fr auto;gap:4px;padding:11px 0;border-bottom:1px solid #253147}.result-list strong{font-size:9px}.result-list>div>span{color:#a787f2;font-size:10px;font-weight:800}.result-list small{grid-column:1/-1;color:#758196;font-size:8px}.statistics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.statistics-grid article{display:grid;grid-template-columns:45px 1fr;align-items:center;padding:18px;border:1px solid #27354b;border-radius:10px;background:linear-gradient(145deg,#111c2b,#0d1725)}.statistics-grid .stat-orb{grid-row:1/3}.statistics-grid small{color:#8792a5;font-size:8px}.statistics-grid strong{font-size:22px}.lesson-footer button:disabled{border-color:#276447;background:#123125;color:#9ed8bd;box-shadow:none}
@media(max-width:900px){.achievement-grid,.statistics-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.achievement-grid,.statistics-grid,.breakdown-list,.answer-preview{grid-template-columns:1fr}.lesson-footer{flex-direction:column}.lesson-footer .btn{width:100%}}
.games-history{margin-top:17px}.games-history h2{margin:5px 0}.games-history .compact-list{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
@media(max-width:600px){.games-history .compact-list{grid-template-columns:1fr}}

/* Classroom rows: keep lesson text and actions in one row without overlap. */
.dark-dashboard .compact-list>div{grid-template-columns:38px minmax(0,1fr) auto;grid-template-rows:auto auto;min-height:76px}
.dark-dashboard .compact-list>div>span:first-child{grid-column:1;grid-row:1 / span 2}
.dark-dashboard .compact-list>div>strong{grid-column:2;grid-row:1;min-width:0;overflow-wrap:anywhere}
.dark-dashboard .compact-list>div>small{grid-column:2;grid-row:2}
.dark-dashboard .compact-list>div>.row-actions{grid-column:3;grid-row:1 / span 2;display:flex;place-items:initial;align-items:center;justify-content:flex-end;flex-wrap:wrap;width:auto;height:auto;background:none;color:inherit;border-radius:0}
.dark-dashboard .compact-list>div>.row-actions .btn{white-space:nowrap}
@media(max-width:700px){.dark-dashboard .compact-list>div{grid-template-columns:38px minmax(0,1fr)}.dark-dashboard .compact-list>div>.row-actions{grid-column:2;grid-row:3;justify-content:flex-start;margin-top:8px}}
.game-difficulty{margin:-10px 0 22px}.sentence-controls{justify-content:center;margin-top:16px}.sentence-controls .btn{min-width:120px}
.performance-classes{display:grid;gap:16px}.performance-classes .dark-panel{min-height:0}.performance-classes .section-title>div:last-child{text-align:right}.performance-classes .section-title>div:last-child strong,.performance-classes .section-title>div:last-child small{display:block}.performance-classes .section-title>div:last-child strong{color:#fff;font-size:22px}.performance-classes .section-title>div:last-child small{color:#7f8a9e;font-size:8px}.performance-table{margin-top:18px}.performance-table>div{display:grid;grid-template-columns:minmax(160px,1.4fr) repeat(4,minmax(80px,.6fr));gap:12px;align-items:center;padding:12px 8px;border-top:1px solid #243047}.performance-table span{color:#aab3c2;font-size:9px}.performance-table strong{font-size:10px}.performance-head span{color:#68758a;font-size:8px;font-weight:800;text-transform:uppercase}.student-table .icon-danger{margin-left:8px}@media(max-width:700px){.performance-table{overflow-x:auto}.performance-table>div{min-width:650px}}

/* Admin dashboard — strict dark navy reference layout. */
.admin-welcome{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.admin-welcome h1{margin:0 0 6px;color:#fff;font-size:24px;letter-spacing:-.7px}.admin-welcome p{margin:0;color:#8e9aaf;font-size:10px}.admin-welcome>span{padding:12px 16px;border:1px solid #26354c;border-radius:9px;background:#101c2c;color:#b8c2d2;font-size:9px}.admin-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:14px}.admin-metrics article{position:relative;min-height:150px;padding:17px;overflow:hidden;border:1px solid #25344a;border-radius:10px;background:linear-gradient(145deg,#111e2e,#0d1826)}.admin-metrics article>span{display:grid;place-items:center;width:39px;height:39px;border-radius:10px;background:rgba(128,82,225,.18);color:#a26cff}.admin-metrics .blue>span{background:rgba(29,143,224,.17);color:#37afff}.admin-metrics .green>span{background:rgba(28,179,99,.15);color:#2de37f}.admin-metrics .amber>span{background:rgba(226,155,25,.16);color:#f2ab25}.admin-metrics .pink>span{background:rgba(219,48,104,.16);color:#f24e83}.admin-metrics .cyan>span{background:rgba(23,181,199,.16);color:#35d3e5}.admin-metrics small,.admin-metrics strong,.admin-metrics em{display:block}.admin-metrics small{margin-top:-39px;margin-left:51px;color:#9aa7b9;font-size:9px}.admin-metrics strong{margin:5px 0 0 51px;color:#fff;font-size:25px}.admin-metrics em{margin:10px 0 0 51px;color:#4ccf77;font-size:8px;font-style:normal}.admin-metrics svg{position:absolute;right:12px;bottom:12px;left:12px;width:calc(100% - 24px);height:34px}.admin-metrics polyline{fill:none;stroke:#9360ed;stroke-width:1.5}.admin-metrics .blue polyline{stroke:#27a7ef}.admin-metrics .green polyline{stroke:#31c96c}.admin-metrics .amber polyline{stroke:#e8a31c}.admin-metrics .pink polyline{stroke:#e83d76}.admin-metrics .cyan polyline{stroke:#27c4d3}.admin-card{padding:18px;border:1px solid #26354b;border-radius:10px;background:linear-gradient(145deg,#111e2e,#0d1826)}.admin-card header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.admin-card h2{margin:0;color:#f4f6fa;font-size:12px}.admin-card header a{color:#a36eff;font-size:8px;text-decoration:none}.admin-card header>span{padding:8px 11px;border:1px solid #29384d;border-radius:7px;color:#9aa6b8;font-size:8px}.admin-main-grid{display:grid;grid-template-columns:1.55fr .86fr .92fr;gap:12px;margin-bottom:14px}.admin-chart{min-height:295px}.admin-chart>svg{width:100%;height:205px}.admin-chart g line{stroke:#27364a;stroke-width:1}.admin-chart polyline{fill:none;stroke:#a263f4;stroke-width:2}.admin-chart polygon{fill:rgba(134,73,224,.12)}.admin-chart footer{display:flex;justify-content:space-between;color:#718097;font-size:8px}.admin-chart footer span{text-align:center}.admin-chart footer b{display:block;margin-top:3px;color:#aeb8c7}.admin-recent>div,.admin-alerts>div{display:flex;align-items:center;gap:10px;min-height:48px;border-top:1px solid #243247}.admin-recent .avatar{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:50%;background:#7446d9;color:#fff;font-size:9px}.admin-recent p,.admin-alerts p{min-width:0;margin:0;flex:1}.admin-recent strong,.admin-recent small,.admin-alerts strong,.admin-alerts small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-recent strong,.admin-alerts strong{color:#eef2f7;font-size:9px}.admin-recent small,.admin-alerts small{margin-top:3px;color:#758399;font-size:8px}.admin-recent time,.admin-alerts time{color:#78869a;font-size:7px;white-space:nowrap}.admin-alerts>div>span{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:9px;background:#172641;color:#58aaff}.admin-alerts .ui-icon{width:16px}.admin-bottom-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:12px}.admin-table>div{display:grid;grid-template-columns:.7fr 1fr .55fr 1.25fr 1fr;gap:10px;align-items:center;min-height:39px;padding:0 5px;border-top:1px solid #26344a}.admin-table>div:first-child{background:#142235}.admin-table b,.admin-table strong{color:#e8edf5;font-size:8px}.admin-table span{color:#9aa6b8;font-size:8px}.admin-table span:last-child{display:flex;align-items:center;gap:7px}.admin-table progress{width:75%;height:5px}.admin-popular>div{display:grid;grid-template-columns:28px 1fr auto;align-items:center;min-height:45px;border-top:1px solid #26344a}.admin-popular>div>b{display:grid;place-items:center;width:23px;height:23px;border-radius:7px;background:#503096;color:#fff;font-size:8px}.admin-popular strong{font-size:9px}.admin-popular span{color:#8694a8;font-size:8px}@media(max-width:1250px){.admin-metrics{grid-template-columns:repeat(3,1fr)}.admin-main-grid{grid-template-columns:1fr 1fr}.admin-chart{grid-column:1/-1}}@media(max-width:800px){.admin-metrics{grid-template-columns:1fr 1fr}.admin-main-grid,.admin-bottom-grid{grid-template-columns:1fr}.admin-welcome{align-items:flex-start;gap:14px}.admin-table{overflow-x:auto}.admin-table>div{min-width:650px}}
.lesson-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:14px}.lesson-main{display:grid;gap:14px}.lesson-aside{position:sticky;top:84px;align-self:start;padding:22px;border:1px solid #34355b;border-radius:10px;background:linear-gradient(150deg,#191936,#101928);box-shadow:0 18px 45px rgba(0,0,0,.22)}.lesson-aside p{color:#aab3c2;font-size:10px;line-height:1.8}.lesson-neighbours{display:grid;gap:8px;margin-top:18px;padding-top:15px;border-top:1px solid #303a50}.lesson-neighbours a{color:#a98cf4;font-size:8px;line-height:1.5}.code-block{overflow:auto;margin:18px 0;padding:18px;border:1px solid #28374d;border-radius:8px;background:#07111d;color:#b9e1d2;font:500 11px/1.7 Consolas,monospace;box-shadow:inset 0 1px rgba(255,255,255,.03)}.knowledge-check [data-check-answer]{margin-top:14px;padding:12px;border-left:2px solid #8f69e8;background:#15172d;color:#c4b8e6}.level-banner{display:grid;grid-template-columns:1fr minmax(240px,35%);align-items:center;gap:25px;margin-bottom:17px;padding:22px 25px;border:1px solid #34375a;border-radius:10px;background:radial-gradient(circle at 90% 20%,rgba(119,76,220,.22),transparent 35%),linear-gradient(135deg,#161a31,#101a29)}.level-banner h2{margin:6px 0;font-size:20px}.level-banner p{margin:0;color:#9a87d1;font-size:9px}.level-banner>div:last-child{text-align:right}.level-banner progress,.achievement-grid progress{width:100%;height:6px;border:0}.level-banner strong{display:block;margin-bottom:7px;color:#b699ff;font-size:11px}.achievement-grid progress{margin-top:12px}.path-row>div{transition:transform .2s,border-color .2s}.path-row>div:hover{transform:translateY(-3px)}.path-row .path-completed{border-color:#28684f}.path-row .path-current{border-color:#8b68e8;box-shadow:0 0 24px rgba(126,83,223,.18)}
@media(max-width:900px){.lesson-layout{grid-template-columns:1fr}.lesson-aside{position:static}.level-banner{grid-template-columns:1fr}}
.product-sidebar{display:flex;flex-direction:column}.product-sidebar nav{flex:1;overflow-y:auto;overflow-x:hidden;padding-bottom:18px;scrollbar-width:thin;scrollbar-color:#34425a transparent}.product-sidebar nav::-webkit-scrollbar{width:4px}.product-sidebar nav::-webkit-scrollbar-thumb{border-radius:4px;background:#34425a}.compact-sidebar .product-sidebar nav a,.compact-sidebar .nav-logout{min-height:35px}.filter-tabs{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 17px}.filter-tabs button{padding:9px 14px;border:1px solid #29374e;border-radius:7px;background:#0d1725;color:#8895a8;font:700 8px Manrope;cursor:pointer}.filter-tabs button.active,.filter-tabs button:hover{border-color:#7656cc;background:#242044;color:#fff}.roadmap{position:relative;display:grid;gap:12px;max-width:980px}.roadmap:before{content:"";position:absolute;left:29px;top:35px;bottom:35px;width:1px;background:linear-gradient(#704fc7,#29364b)}.roadmap-step{position:relative;display:grid;grid-template-columns:58px 1fr auto;align-items:center;gap:16px;min-height:112px;padding:20px;border:1px solid #29374c;border-radius:10px;background:linear-gradient(145deg,#111c2b,#0d1725)}.roadmap-step.locked{opacity:.52}.roadmap-step.current{border-color:#795bd3;box-shadow:0 0 30px rgba(112,76,201,.14)}.roadmap-step.completed{border-color:#28684f}.roadmap-index{z-index:1;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#242044;color:#a98cf4}.roadmap-step h2{margin:5px 0;font-size:14px}.roadmap-step p,.roadmap-step small{margin:0;color:#8490a3;font-size:8px}.roadmap-step progress{width:100%;max-width:430px;height:5px;margin-top:10px}.goal-grid,.project-grid,.notes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.goal-grid article,.project-grid article,.notes-grid article{position:relative;min-height:185px;padding:20px;border:1px solid #29374c;border-radius:10px;background:linear-gradient(145deg,#111c2b,#0d1725)}.goal-grid article>span{display:grid;place-items:center;width:38px;height:38px;margin-bottom:15px;border-radius:9px;background:#242044;color:#a98cf4}.goal-grid article.completed{border-color:#28684f}.goal-grid small,.project-grid small,.notes-grid small{color:#8171b4;font-size:7px;font-weight:800}.goal-grid h2,.project-grid h2,.notes-grid h2{margin:7px 0;font-size:13px}.goal-grid p,.project-grid p,.notes-grid p{color:#8995a7;font-size:9px;line-height:1.6}.goal-grid progress{width:100%;height:5px}.goal-grid .icon-danger{position:absolute;top:17px;right:17px}.activity-timeline{position:relative;display:grid;gap:9px;max-width:900px}.activity-timeline:before{content:"";position:absolute;left:20px;top:20px;bottom:20px;width:1px;background:#34415a}.activity-timeline article{z-index:1;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:14px;padding:16px;border:1px solid #29374c;border-radius:9px;background:#0e1826}.activity-timeline article>span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#242044;color:#a98cf4}.activity-timeline h2{margin:4px 0;font-size:11px}.activity-timeline p,.activity-timeline small{margin:0;color:#7f8b9d;font-size:8px}.activity-timeline strong{color:#a98cf4;font-size:10px}.ranking-table,.saved-list,.notification-list,.schedule-list{display:grid;gap:9px}.ranking-table article,.saved-list article,.notification-list article,.schedule-list article{display:grid;grid-template-columns:50px 44px 1fr auto;align-items:center;gap:12px;padding:15px 18px;border:1px solid #29374c;border-radius:9px;background:#0e1826}.ranking-table article.current{border-color:#795bd3;background:#171933}.ranking-table h2,.saved-list h2,.notification-list h2,.schedule-list h2{margin:0 0 4px;font-size:10px}.ranking-table p,.notification-list p,.schedule-list p{margin:0;color:#7f8b9d;font-size:8px}.ranking-table>article>strong{color:#a98cf4;font-size:13px}.ranking-table>article>b{font-size:12px}.schedule-list article{grid-template-columns:130px 42px 1fr}.schedule-list time{color:#a98cf4;font-size:9px}.project-icon{display:grid;place-items:center;width:42px;height:42px;margin:12px 0;border-radius:9px;background:#242044;color:#a98cf4}.project-status{position:absolute;top:17px;right:17px;padding:5px 8px;border:1px solid #38465c;border-radius:5px;color:#9ca7b7;font-size:7px;text-transform:uppercase}.project-status.completed{border-color:#28684f;color:#84d9b2}.project-links{display:flex;gap:10px;margin:12px 0}.project-links a{color:#a98cf4;font-size:8px}.notes-grid article{min-height:210px}.notes-grid footer{position:absolute;right:16px;bottom:14px;left:16px;display:flex;align-items:center;gap:7px;border-top:1px solid #27354a;padding-top:11px}.notes-grid footer span{margin-right:auto;color:#778396;font-size:7px}.notes-grid footer button,.notification-list button{display:grid;place-items:center;width:29px;height:29px;border:1px solid #334159;border-radius:6px;background:#121d2c;color:#9d83e5;cursor:pointer}.saved-list article{grid-template-columns:42px 1fr auto 34px}.saved-list>article>span,.notification-list>article>span,.schedule-list>article>span{display:grid;place-items:center;width:38px;height:38px;border-radius:9px;background:#242044;color:#a98cf4}.member-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.member-chips span{padding:6px 9px;border:1px solid #2c3a50;border-radius:6px;color:#8d99aa;font-size:7px}.member-chips span.current{border-color:#7658cc;color:#c8b8ed}.notification-list article{grid-template-columns:42px 1fr auto}.notification-list article.read{opacity:.58}.notification-list article.unread{border-color:#51427d}.settings-panel{max-width:760px;padding:22px;border:1px solid #29374c;border-radius:10px;background:linear-gradient(145deg,#111c2b,#0d1725)}.settings-panel form{display:grid}.settings-panel label{display:flex;align-items:center;justify-content:space-between;padding:17px 4px;border-bottom:1px solid #263348}.settings-panel label span{display:grid;gap:4px}.settings-panel label strong{font-size:10px}.settings-panel label small{color:#7e8a9d;font-size:8px}.settings-panel input{width:18px;height:18px;accent-color:#805dd8}.settings-panel .btn{justify-self:start;margin-top:18px}.weekly-bars{display:flex;align-items:flex-end;justify-content:space-around;height:85px;padding-top:12px}.weekly-bars div{display:grid;justify-items:center;align-items:end;height:100%;gap:5px}.weekly-bars span{width:12px;min-height:8px;border-radius:4px 4px 2px 2px;background:linear-gradient(#a57aef,#5940ad)}.weekly-bars small{color:#737f92;font-size:7px}.goal-preview{display:grid;gap:9px;padding:14px 0}.goal-preview progress{width:100%;height:6px}.goal-preview small{color:#7e8a9d;font-size:8px}
@media(max-width:1050px){.goal-grid,.project-grid,.notes-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.goal-grid,.project-grid,.notes-grid{grid-template-columns:1fr}.roadmap-step{grid-template-columns:46px 1fr}.roadmap-step .btn{grid-column:2}.ranking-table article{grid-template-columns:35px 38px 1fr}.ranking-table article>b{grid-column:3}.saved-list article{grid-template-columns:38px 1fr}.saved-list .btn,.saved-list .icon-danger{grid-column:2}.schedule-list article{grid-template-columns:1fr 38px 1fr}.notification-list article{grid-template-columns:38px 1fr}.notification-list article>button{grid-column:2}.filter-tabs{overflow-x:auto;flex-wrap:nowrap}.filter-tabs button{white-space:nowrap}}

/* Reference-led MIHO design system */
:root{--bg-primary:#08111f;--bg-secondary:#0a1423;--surface:#0f1b2b;--surface-hover:#142238;--surface-elevated:#121f31;--border:#26354a;--border-strong:#384963;--text-primary:#f7f9fd;--text-secondary:#b2bdcd;--text-muted:#748299;--purple:#8b5cf0;--purple-light:#ad8aff;--purple-dark:#5c35bf;--purple-glow:rgba(130,81,231,.24);--cyan:#2aaee8;--green:#2bd28d;--amber:#f4bd35;--red:#ef6571;--sidebar-width:278px;--topbar-height:90px}
body{background:var(--bg-primary);color:var(--text-primary)}
.product-sidebar{width:var(--sidebar-width);padding:34px 25px 18px;background:#07111f;border-color:#203047;box-shadow:10px 0 35px rgba(2,8,18,.18)}
.product-main{width:calc(100% - var(--sidebar-width));margin-left:var(--sidebar-width)}
.product-sidebar .brand{height:60px;padding:0 6px;font-size:29px;letter-spacing:-1.4px}.product-sidebar .brand b{width:44px;height:44px;border-radius:12px;background:linear-gradient(145deg,#9c70ff,#7046dd);box-shadow:0 12px 28px var(--purple-glow)}
.product-sidebar nav{margin-top:26px;padding-right:4px}.product-sidebar nav a,.nav-logout{min-height:43px;margin:3px 0;padding:0 12px;border-radius:8px;color:#aeb8c8;font-size:11px}.product-sidebar nav a:hover,.nav-logout:hover{background:#111e30;color:#fff}.product-sidebar nav a.active{background:linear-gradient(90deg,rgba(128,85,225,.3),rgba(128,85,225,.12));color:#fff;box-shadow:inset 3px 0 #9068ee}.nav-caption{margin:26px 12px 9px;color:#637188;font-size:8px;letter-spacing:1.5px}
.sidebar-streak{display:flex;align-items:center;gap:10px;margin:10px 0;padding:13px;border:1px solid #352c5b;border-radius:10px;background:linear-gradient(135deg,#171933,#101a29);color:#a98cf4}.sidebar-streak .ui-icon{flex:0 0 18px}.sidebar-streak strong,.sidebar-streak small{display:block}.sidebar-streak strong{color:#eee9ff;font-size:9px}.sidebar-streak small{margin-top:3px;color:#7f8ca1;font-size:7px}.side-user{border-top:1px solid #203047;padding:16px 4px 4px;color:#fff}.side-user .ui-icon{width:14px;margin-left:auto;color:#728096}
.product-top{position:sticky;z-index:18;top:0;height:var(--topbar-height);padding:0 4.7%;justify-content:space-between;border-bottom:1px solid #1c2a3e;background:rgba(8,17,31,.88);backdrop-filter:blur(18px)}
.global-search{position:relative;width:min(520px,45vw)}.global-search>span{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:17px;color:#718096}.global-search input{width:100%;height:43px;padding:0 18px 0 46px;border:1px solid #233249;border-radius:9px;background:#0c1726;color:#eef3fb;font:500 10px Manrope;outline:none}.global-search input:focus{border-color:#7554cc;box-shadow:0 0 0 3px rgba(128,85,225,.12)}
.search-dropdown,.top-popover{position:absolute;z-index:30;border:1px solid #2a3950;border-radius:10px;background:#101b2a;box-shadow:0 22px 60px rgba(0,0,0,.4)}.search-dropdown{top:50px;right:0;left:0;padding:7px}.search-dropdown a{display:flex;gap:11px;padding:10px;border-radius:7px;color:#dbe2ed;text-decoration:none}.search-dropdown a:hover,.search-dropdown a:focus{background:#1a2740;outline:none}.search-dropdown small,.search-dropdown strong{display:block}.search-dropdown small{color:#8e75d4;font-size:7px}.search-dropdown strong{margin-top:3px;font-size:9px}.search-dropdown p,.top-popover p{padding:8px;color:#7f8ca0;font-size:9px}
.top-actions-new{display:flex;align-items:center;gap:11px}.top-streak{display:flex;align-items:center;gap:6px;color:#f0b934;font-size:10px}.top-icon{position:relative;display:grid;place-items:center;width:39px;height:39px;border:1px solid #26354b;border-radius:9px;background:#0e1928;color:#aeb9c9;cursor:pointer}.top-icon i{position:absolute;right:-5px;top:-6px;min-width:17px;height:17px;padding:2px;border:2px solid #08111f;border-radius:9px;background:#855be1;color:white;font:700 7px Manrope}.top-profile{display:flex;align-items:center;gap:9px;padding:3px 0 3px 8px;border:0;background:none;color:#fff;text-align:left;cursor:pointer}.top-profile strong,.top-profile small{display:block}.top-profile strong{font-size:9px}.top-profile small{margin-top:3px;color:#75839a;font-size:7px}.top-profile>.ui-icon{width:14px;color:#708097}.top-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:linear-gradient(145deg,#9b6cf6,#6940d5);font-size:10px;font-weight:800}.top-popover{right:4.7%;top:72px;width:285px;padding:7px}.notification-popover{right:18%}.top-popover a,.top-popover button{display:flex;width:100%;gap:9px;padding:10px;border:0;border-radius:7px;background:none;color:#c8d0dc;text-decoration:none;font:600 9px Manrope;text-align:left}.top-popover a:hover,.top-popover button:hover{background:#19263a}.top-popover a b,.top-popover a small{display:block}.top-popover a small{margin-top:4px;color:#7c899d}.top-popover a.unread{background:#181c37}
.product-content{max-width:1560px;padding:52px 4.7% 80px}.page-head{margin-bottom:30px}.page-head h1{margin:8px 0 7px;font-size:31px;letter-spacing:-1.35px}.page-head p{color:#8794a8}.overline{color:#819cce;letter-spacing:1.5px}
.dark-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}.dark-stats article{min-height:112px;padding:18px;border-color:var(--border);border-radius:10px;background:linear-gradient(145deg,#111d2d,#0d1725)}.dark-stats strong{font-size:21px}.dark-stats small,.dark-stats em{color:#8290a5}.stat-orb{border-radius:50%}
.dark-dashboard{grid-template-columns:minmax(0,1.4fr) minmax(330px,.9fr);gap:18px;margin-top:20px}.dark-focus,.dark-panel,.path-panel{border-color:var(--border);border-radius:11px;background:linear-gradient(145deg,#111d2d,#0d1725)}.dark-focus{position:relative;min-height:365px;display:flex;align-items:center;overflow:hidden;padding:36px 40px;background:radial-gradient(circle at 78% 30%,rgba(133,80,238,.42),transparent 34%),linear-gradient(135deg,#211b52,#14183a)}.dark-focus:after{content:"";position:absolute;inset:18px;border:1px solid rgba(153,110,255,.55);border-radius:13px;pointer-events:none}.focus-copy{position:relative;z-index:2;width:55%}.dark-focus h2{font-size:28px}.focus-progress{display:grid;grid-template-columns:1fr auto;gap:7px;margin:22px 0 5px;color:#bfc6d7;font-size:8px}.focus-progress progress{grid-column:1/-1;width:100%;height:5px}.learning-illustration{position:absolute;z-index:1;right:-24px;bottom:-28px;width:51%;max-height:350px;object-fit:contain}.dark-focus .btn{position:relative;z-index:3}.dark-panel{padding:27px}.compact-list>div{min-height:62px}.path-panel{margin-top:18px;padding:27px}.path-row>div{border-radius:10px}
@media(max-width:1280px){.dark-stats{grid-template-columns:repeat(3,1fr)}.top-profile>span:nth-child(2){display:none}.notification-popover{right:12%}}
@media(max-width:1000px){.product-main{width:100%;margin-left:0}.global-search{width:min(480px,58vw)}.product-sidebar{transform:translateX(-100%)}.product-sidebar.open{transform:none}.dark-dashboard{grid-template-columns:1fr}}
@media(max-width:720px){.product-top{height:68px;padding:0 16px}.global-search{display:none}.top-streak,.top-profile>.ui-icon{display:none}.product-content{padding:28px 16px 60px}.dark-stats{grid-template-columns:1fr 1fr}.dark-focus{min-height:410px;padding:28px}.focus-copy{width:100%;align-self:flex-start}.learning-illustration{right:-20px;width:70%;opacity:.7}.page-head h1{font-size:26px}.notification-popover{right:16px;top:60px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
.chat-shell{display:grid;grid-template-columns:290px minmax(360px,1fr) 230px;height:calc(100vh - 145px);min-height:600px;overflow:hidden;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.chat-list,.chat-info{background:#0b1625}.chat-list{border-right:1px solid var(--border)}.chat-list header{display:flex;align-items:center;justify-content:space-between;padding:22px}.chat-list h1{margin:4px 0 0;font-size:21px}.chat-search{display:flex;align-items:center;gap:8px;margin:0 16px 13px;padding:0 11px;border:1px solid var(--border);border-radius:8px;background:#0e1a2a}.chat-search .ui-icon{width:15px;color:#748299}.chat-search input{width:100%;height:38px;border:0;background:none;color:#fff;font:500 9px Manrope;outline:none}.chat-row{display:grid;grid-template-columns:39px 1fr auto;align-items:center;gap:10px;width:100%;padding:13px 16px;border:0;border-top:1px solid #1d2b3e;background:none;color:#fff;text-align:left;cursor:pointer}.chat-row:hover,.chat-row.active{background:#172039}.chat-row strong,.chat-row small{display:block}.chat-row strong{font-size:9px}.chat-row small{max-width:150px;margin-top:4px;overflow:hidden;color:#738197;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.chat-row>b{display:grid;place-items:center;min-width:18px;height:18px;border-radius:9px;background:var(--purple);font-size:7px}.conversation{display:grid;grid-template-rows:65px 1fr auto;min-width:0;background:radial-gradient(circle at 50% 100%,rgba(97,64,180,.12),transparent 45%),#0c1726}.conversation>header{display:flex;align-items:center;padding:0 22px;border-bottom:1px solid var(--border)}.conversation>header strong,.conversation>header small{display:block}.conversation>header strong{font-size:11px}.conversation>header small{margin-top:4px;color:#748299;font-size:7px}.messages{display:flex;flex-direction:column;gap:9px;overflow-y:auto;padding:22px}.messages article{align-self:flex-start;max-width:72%}.messages article>div{padding:10px 13px;border:1px solid #2a394e;border-radius:4px 11px 11px;background:#152235;color:#dce3ed;font-size:9px;line-height:1.6}.messages article.own{align-self:flex-end}.messages article.own>div{border-color:#7654d0;background:#6542bd;color:#fff;border-radius:11px 4px 11px 11px}.messages article small{display:block;margin-top:4px;color:#657389;font-size:7px}.messages article.own small{text-align:right}.chat-composer{display:flex;align-items:flex-end;gap:9px;padding:14px 18px;border-top:1px solid var(--border)}.chat-composer textarea{flex:1;min-height:42px;max-height:120px;padding:12px;border:1px solid #2a394e;border-radius:9px;background:#101d2d;color:#fff;font:500 10px/1.5 Manrope;resize:vertical;outline:none}.chat-composer .btn{height:42px;margin:0}.chat-info{padding:30px 18px;border-left:1px solid var(--border);text-align:center}.chat-info .large{width:62px;height:62px;margin:auto}.chat-info h2{font-size:12px}.chat-info p{color:#758298;font-size:8px}.chat-empty{display:grid;place-items:center;align-content:center;grid-row:1/-1;text-align:center}.chat-empty>.ui-icon{width:42px;color:#7658cf}.chat-empty h2{margin:14px 0 4px}.chat-empty p{color:#768399;font-size:9px}
@media(max-width:1100px){.chat-shell{grid-template-columns:260px 1fr}.chat-info{display:none}}@media(max-width:700px){.chat-shell{grid-template-columns:1fr;height:auto;min-height:650px}.chat-list{max-height:280px;overflow:auto;border-right:0;border-bottom:1px solid var(--border)}.conversation{min-height:500px}}
.profile-mini{display:flex;align-items:center;gap:10px;margin:-5px -4px 22px;padding:0 4px 18px;border-bottom:1px solid var(--border)}.profile-mini .avatar{width:42px;height:42px}.profile-mini strong,.profile-mini small{display:block}.profile-mini strong{font-size:10px}.profile-mini small{margin-top:4px;color:#758298;font-size:7px}.profile-mini a{margin-left:auto;color:#9c7ce9}.quick-panel{display:grid;grid-template-columns:240px 1fr;align-items:center;gap:28px;margin-top:18px;padding:25px 27px;border:1px solid var(--border);border-radius:11px;background:#0d1827}.quick-panel h2{margin:7px 0;font-size:17px}.quick-panel nav{display:grid;grid-template-columns:1fr 1fr;gap:8px}.quick-panel nav a{display:grid;grid-template-columns:34px 1fr 14px;align-items:center;gap:10px;padding:12px;border:1px solid #27364c;border-radius:8px;background:#111e2e;color:#fff;text-decoration:none}.quick-panel nav a:hover{border-color:#7657cf;transform:translateY(-1px)}.quick-panel nav a>.ui-icon:first-child{display:grid;place-items:center;width:34px;height:34px;padding:8px;border-radius:8px;background:#242044;color:#aa89fb}.quick-panel nav strong,.quick-panel nav small{display:block}.quick-panel nav span{font-size:9px;font-weight:700}.quick-panel nav small{margin-top:3px;color:#738196;font-size:7px;font-weight:500}.quick-panel nav a>.ui-icon:last-child{color:#708096}.recommend-panel{margin-top:18px;padding:26px;border:1px solid var(--border);border-radius:11px;background:linear-gradient(145deg,#111d2d,#0d1725)}.recommend-panel>div:last-child{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.recommend-panel>div>a{position:relative;display:grid;grid-template-columns:42px 1fr 16px;grid-template-rows:auto auto;align-items:center;gap:3px 11px;min-height:86px;padding:15px;border:1px solid #29384e;border-radius:9px;background:#0d1826;color:#fff;text-decoration:none}.recommend-panel>div>a>span{grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border-radius:9px;background:#242044;color:#a98cf4}.recommend-panel>div>a small{color:#7c67b7;font-size:7px;font-weight:800}.recommend-panel>div>a strong{font-size:9px}.recommend-panel>div>a>.ui-icon{grid-column:3;grid-row:1/3;color:#75839a}
@media(max-width:900px){.quick-panel{grid-template-columns:1fr}.recommend-panel>div:last-child{grid-template-columns:1fr 1fr}}@media(max-width:600px){.quick-panel nav,.recommend-panel>div:last-child{grid-template-columns:1fr}}

/* Pixel-targeted student dashboard — reference 2026-08-11 */
:root{--sidebar-width:235px;--topbar-height:74px}.product-sidebar{padding:21px 18px 16px}.product-sidebar .brand{height:47px;font-size:24px}.product-sidebar .brand b{width:34px;height:34px;border-radius:9px}.product-sidebar nav{margin-top:17px}.product-sidebar nav a,.nav-logout{min-height:34px;padding:0 12px;font-size:9px}.product-sidebar nav a .ui-icon,.nav-logout .ui-icon{width:16px}.nav-caption{margin:20px 12px 8px;font-size:7px}.sidebar-streak{padding:11px}.side-user{display:none}.product-top{padding:0 1.8%}.global-search{width:min(575px,44vw)}.global-search:after{content:"⌘ K";position:absolute;right:10px;top:7px;padding:5px 8px;border-radius:6px;background:#24253e;color:#c7ccda;font:700 8px Manrope}.global-search input{height:39px;padding-right:58px}.product-content{max-width:none;padding:30px 3% 65px}.top-profile{min-width:205px;padding:8px 10px;border-radius:9px;background:#0d1827}.notification-popover{right:17%}
.ref-welcome{margin:-12px 0 22px}.ref-welcome h1{margin:5px 0 5px;font-size:23px;letter-spacing:-.8px}.ref-welcome p{margin:0;color:#9aa6b8;font-size:9px}.ref-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.ref-stats article{position:relative;display:grid;grid-template-columns:37px 1fr;align-items:start;gap:11px;min-height:118px;padding:15px 16px;overflow:hidden;border:1px solid #1e2d41;border-radius:10px;background:linear-gradient(145deg,#111d2d,#0c1725)}.ref-stats article>span{display:grid;place-items:center;width:35px;height:35px;border-radius:8px}.ref-stats .violet>span{background:#302054;color:#c08cff}.ref-stats .cyan>span{background:#064952;color:#28d8d8}.ref-stats .green>span{background:#123c28;color:#42db78}.ref-stats .amber>span{background:#453617;color:#f5b51b}.ref-stats .blue>span{background:#103554;color:#55b8f2}.ref-stats small,.ref-stats strong,.ref-stats p{display:block}.ref-stats small{color:#91a0b3;font-size:8px}.ref-stats strong{margin-top:5px;font-size:23px;line-height:1}.ref-stats strong em{margin-left:5px;font-size:9px;font-style:normal}.ref-stats p{margin:7px 0 0;color:#8996aa;font-size:7px}.ref-stats progress{position:absolute;right:16px;bottom:13px;left:16px;width:calc(100% - 32px);height:4px;border:0}.ref-stats .violet progress::-webkit-progress-value{background:#9755ed}.ref-stats .green progress::-webkit-progress-value{background:#3ddf70}.ref-stats .amber progress::-webkit-progress-value{background:#f2ad18}.ref-stats article>svg{position:absolute;right:14px;bottom:12px;width:48%;height:35px;overflow:visible;fill:none;stroke:#20cbd1;stroke-width:1.3}.ref-stats .cyan p{color:#45cba5}
.ref-dashboard-grid{display:grid;grid-template-columns:minmax(0,2.15fr) minmax(295px,.94fr);gap:16px;margin-top:14px}.ref-left{min-width:0}.ref-right{display:grid;align-content:start;gap:13px}.ref-hero{position:relative;display:flex;align-items:center;min-height:222px;overflow:hidden;border:1px solid #56368b;border-radius:11px;background:radial-gradient(circle at 68% 40%,rgba(158,92,246,.66),transparent 28%),linear-gradient(110deg,#372078,#171735 70%)}.ref-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(45,24,100,.9),transparent 62%);pointer-events:none}.ref-hero>button{position:absolute;z-index:5;display:grid;place-items:center;width:31px;height:31px;padding:8px;border:1px solid rgba(255,255,255,.08);border-radius:50%;background:#17152f;color:#fff;cursor:pointer}.ref-hero>button:first-child{left:16px;transform:rotate(180deg)}.ref-hero>button:nth-of-type(2){right:16px}.ref-hero-copy{z-index:3;width:55%;padding-left:80px}.ref-hero-copy>small{color:#bca9e8;font-size:8px}.ref-hero-copy h2{margin:10px 0 7px;font-size:21px}.ref-hero-copy>p{margin:0;color:#c5badc;font-size:8px}.ref-hero-copy>div{display:flex;align-items:center;gap:15px;margin-top:18px}.ref-hero-copy .btn{height:39px;padding:0 17px;background:#7740d5;color:#fff;box-shadow:0 8px 25px rgba(94,44,185,.38)}.ref-hero-copy>div>span{font-size:7px}.ref-hero>img{position:absolute;z-index:2;right:9%;width:42%;height:210px;object-fit:contain;transform:scale(1.18)}.hero-dots{position:absolute;z-index:5;bottom:8px;left:50%;display:flex;gap:6px}.hero-dots i{width:5px;height:5px;border-radius:50%;background:#45425d}.hero-dots i.active{width:9px;border-radius:4px;background:#b888ff}
.ref-profile,.ref-goal,.ref-activity,.ref-path,.ref-quick,.ref-recommend{border:1px solid #1f2e42;border-radius:10px;background:linear-gradient(145deg,#101c2c,#0c1725)}.ref-profile{display:flex;align-items:center;gap:11px;min-height:89px;padding:17px}.ref-profile .avatar{width:48px;height:48px;background:linear-gradient(145deg,#9f65f4,#7040d5)}.ref-profile strong{font-size:10px}.ref-profile p{margin:6px 0 0;color:#8290a4;font-size:7px}.ref-profile p b{padding:3px 7px;border-radius:8px;background:#20193d;color:#b685f7}.ref-profile a{margin-left:auto;color:#77859a}.ref-goal{min-height:102px;padding:17px}.ref-goal header,.ref-goal footer,.ref-activity header,.ref-path header,.ref-recommend header{display:flex;align-items:center;justify-content:space-between}.ref-goal h2,.ref-activity h2,.ref-path h2,.ref-quick h2,.ref-recommend h2{margin:0;font-size:11px}.ref-goal header span,.ref-goal footer{color:#8995a8;font-size:7px}.ref-goal progress{width:100%;height:5px;margin:18px 0 9px}.ref-goal>a{display:block;margin-top:8px;color:#a47ce9;font-size:8px;text-align:center}.ref-activity{min-height:275px;padding:19px}.ref-activity header{margin-bottom:12px}.ref-activity header a,.ref-path header a,.ref-recommend header a{color:#a278ec;font-size:7px;text-decoration:none}.ref-activity>div:not(.inline-empty){display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:10px;padding:11px 0;border-top:1px solid #1f2d40}.ref-activity>div>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#2a1e4b;color:#b081fa}.ref-activity p{margin:0}.ref-activity strong,.ref-activity small{display:block}.ref-activity strong{font-size:9px}.ref-activity small{margin-top:4px;color:#79869a;font-size:7px}.ref-activity>div>b{color:#f0bb42;font-size:8px}
.ref-mid-row{display:grid;grid-template-columns:minmax(0,2.25fr) minmax(240px,.95fr);gap:13px;margin-top:13px}.ref-path,.ref-quick{min-height:248px;padding:20px}.ref-path>div{display:flex;align-items:start;justify-content:space-between;margin-top:28px}.ref-path>div>a{position:relative;display:grid;justify-items:center;width:75px;color:#fff;text-align:center;text-decoration:none}.ref-path>div>a>span{display:grid;place-items:center;width:58px;height:58px;border:2px solid #334158;border-radius:50%;background:#101b2b;color:#748197}.ref-path>div>a.current>span{border-color:#a158f2;box-shadow:0 0 20px rgba(153,80,237,.28);color:#b978ff}.ref-path>div>a.done>span{border-color:#16ada8;color:#25d2cb}.ref-path>div>a:nth-of-type(3)>span{border-color:#24699d;color:#5ab8f0}.ref-path>div>a:nth-of-type(4)>span{border-color:#8e6c18;color:#f1b52e}.ref-path>div>a>b{display:grid;place-items:center;width:18px;height:18px;margin-top:-8px;border-radius:50%;background:#27374e;font-size:7px}.ref-path>div>a strong{margin-top:8px;font-size:8px;line-height:1.45}.ref-path>div>i{flex:1;margin:29px -2px 0;border-top:1px dashed #3b4759}.ref-quick{display:grid;align-content:start}.ref-quick h2{margin-bottom:12px}.ref-quick>a{display:grid;grid-template-columns:31px 1fr 13px;align-items:center;gap:9px;min-height:46px;border-top:1px solid #1f2d40;color:#fff;text-decoration:none}.ref-quick>a>.ui-icon:first-child{display:grid;place-items:center;width:31px;height:31px;padding:8px;border-radius:7px;background:#282047;color:#b476f8}.ref-quick>a:nth-of-type(2)>.ui-icon:first-child{background:#123550;color:#59b9ee}.ref-quick>a:nth-of-type(3)>.ui-icon:first-child{background:#443318;color:#efb12a}.ref-quick b,.ref-quick small{display:block}.ref-quick b{font-size:8px}.ref-quick small{margin-top:3px;color:#758297;font-size:7px}.ref-quick>a>.ui-icon:last-child{color:#6f7c90}
.ref-recommend{margin-top:13px;padding:0;border:0;background:none}.ref-recommend>div{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:9px}.ref-recommend>div>a{position:relative;min-height:113px;padding:13px;border:1px solid #202e42;border-radius:8px;background:linear-gradient(145deg,#101c2c,#0d1725);color:#fff;text-decoration:none}.ref-recommend small{display:inline-block;padding:4px 7px;border-radius:5px;background:#392670;color:#c8a7ff;font-size:6px}.ref-recommend small.assignment{background:#513517;color:#efbb73}.ref-recommend small.game{background:#0c5151;color:#67dcce}.ref-recommend strong,.ref-recommend p{display:block}.ref-recommend strong{margin-top:9px;font-size:9px}.ref-recommend p{margin:6px 0;color:#7f8ca0;font-size:7px}.ref-recommend progress{position:absolute;right:13px;bottom:12px;left:13px;width:calc(100% - 26px);height:4px}.ref-recommend>div>a>span{position:absolute;right:12px;bottom:15px;padding:3px 6px;border-radius:7px;background:#201a3a;color:#a67aec;font-size:7px}
@media(max-width:1350px){.ref-stats{grid-template-columns:repeat(3,1fr)}.ref-dashboard-grid{grid-template-columns:minmax(0,1.8fr) minmax(280px,.8fr)}.ref-path>div>a:nth-of-type(n+6),.ref-path>div>a:nth-of-type(n+6)+i{display:none}}
@media(max-width:1050px){.ref-dashboard-grid{grid-template-columns:1fr}.ref-right{grid-template-columns:1fr 1fr}.ref-activity{grid-column:1/-1}.ref-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.ref-welcome{margin-top:0}.ref-stats{grid-template-columns:1fr 1fr}.ref-stats article{min-height:108px}.ref-hero{min-height:310px}.ref-hero-copy{width:100%;padding:25px 50px;align-self:flex-start}.ref-hero>img{right:10%;bottom:-25px;width:70%;height:190px;opacity:.65}.ref-mid-row{grid-template-columns:1fr}.ref-path>div{overflow-x:auto;gap:8px}.ref-path>div>a{flex:0 0 76px}.ref-path>div>i{flex:0 0 20px}.ref-recommend>div{grid-template-columns:1fr 1fr}.ref-right{grid-template-columns:1fr}.ref-activity{grid-column:auto}}
@media(max-width:480px){.ref-stats,.ref-recommend>div{grid-template-columns:1fr}.ref-hero-copy h2{font-size:18px}.ref-hero-copy>div{align-items:flex-start;flex-direction:column}.ref-profile{min-height:78px}}

/* Measured alignment against the 1680×937 reference */
.product-content{padding:16px 1.15% 65px 3%}.product-sidebar nav a,.nav-logout{min-height:34px;font-size:11px}.product-sidebar nav a .ui-icon,.nav-logout .ui-icon{width:17px}.nav-caption{font-size:8px}.product-sidebar nav{overflow-y:hidden}.top-streak{min-width:70px;height:38px;justify-content:center;padding:0 12px;border:1px solid #233148;border-radius:9px;background:#0d1725}.top-streak .ui-icon{display:none}.top-streak:before{content:"🔥";font-size:13px}.sidebar-streak>.ui-icon{display:none}.sidebar-streak:before{content:"🔥";font-size:23px}.ref-welcome{margin:0 0 17px}.ref-welcome h1{margin:0 0 5px;font-size:25px}.ref-stats{gap:12px}.ref-dashboard-grid{grid-template-columns:minmax(0,2.23fr) minmax(305px,.94fr)}.ref-hero{background:radial-gradient(circle at 68% 44%,rgba(174,101,255,.72),transparent 27%),linear-gradient(110deg,#372078,#171735 74%)}.ref-hero>img{right:5%;width:49%;height:235px;transform:scale(1.19)}.ref-hero-copy{padding-left:79px}.ref-mid-row{grid-template-columns:minmax(0,2.3fr) minmax(250px,.96fr)}.ref-path,.ref-quick{min-height:248px}.ref-profile{min-height:89px}
@media(max-width:1050px){.product-content{padding-right:3%}.product-sidebar nav{overflow-y:auto}.ref-dashboard-grid{grid-template-columns:1fr}}
.product-content{padding-top:10px}.product-sidebar nav{margin-top:5px}.nav-caption{margin:10px 12px 7px}.nav-caption.second{margin-top:17px}.product-sidebar nav a,.nav-logout{height:34px!important;min-height:34px;margin:0}.ref-hero-copy{transform:translateY(-8px)}.ref-hero>img{right:8%}.ref-recommend{margin-top:24px}

/* Teacher dashboard — approved reference 2026-08-11. */
.teacher-welcome{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:22px}.teacher-welcome>div>span{color:#aa78ff;font-size:8px;font-weight:800;letter-spacing:1.4px}.teacher-welcome h1{margin:8px 0 4px;color:#fff;font-size:30px;letter-spacing:-1.1px}.teacher-welcome p{margin:0;color:#8d9aaf;font-size:10px}.teacher-welcome time{padding:12px 15px;border:1px solid #29384e;border-radius:9px;background:#101b2a;color:#b7c1d1;font-size:9px}
.teacher-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:18px}.teacher-metrics article{display:flex;align-items:center;gap:14px;min-height:99px;padding:17px;border:1px solid #27364c;border-radius:10px;background:linear-gradient(145deg,#111e2e,#0d1826)}.teacher-metrics article>span{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:50%;background:rgba(128,76,224,.18);color:#a66eff}.teacher-metrics .blue>span{background:rgba(22,144,224,.16);color:#2eb4ff}.teacher-metrics .green>span{background:rgba(26,180,94,.16);color:#31e47f}.teacher-metrics .amber>span{background:rgba(213,161,29,.16);color:#efc036}.teacher-metrics small,.teacher-metrics strong,.teacher-metrics em{display:block}.teacher-metrics small{color:#9aa6b8;font-size:8px}.teacher-metrics strong{margin:3px 0;color:#fff;font-size:23px}.teacher-metrics em{color:#75849a;font-size:8px;font-style:normal}
.teacher-main-grid{display:grid;grid-template-columns:minmax(0,1.72fr) minmax(320px,.88fr);gap:14px}.teacher-left,.teacher-right{display:grid;align-content:start;gap:14px}.teacher-current{min-height:277px;padding:22px}.teacher-current header b{margin-left:8px;padding:5px 8px;border-radius:6px;background:#382968;color:#b996ff;font-size:7px}.teacher-current header button{border:0;background:none;color:#8090a6}.teacher-current-body{display:grid;grid-template-columns:82px minmax(0,1.4fr) minmax(190px,.72fr);gap:20px;align-items:start}.lesson-orb{display:grid;place-items:center;width:76px;height:76px;border-radius:50%;background:radial-gradient(circle,#30205d,#171b39);color:#9f70ff}.lesson-orb .ui-icon{width:35px}.teacher-current-copy h2{margin:4px 0 8px;color:#fff;font-size:17px}.teacher-current-copy p,.teacher-current-copy small{display:block;margin:0 0 7px;color:#a5b0c1;font-size:9px}.teacher-current-copy label{display:grid;grid-template-columns:1fr auto;gap:7px;margin:19px 0 15px;color:#8f9caf;font-size:8px}.teacher-current-copy label progress{grid-column:1/-1;width:100%;height:5px}.teacher-current-copy .row-actions{flex-wrap:wrap}.teacher-current-body aside{min-height:165px;padding-left:20px;border-left:1px solid #26354a}.teacher-current-body aside h3{margin:0 0 14px;color:#fff;font-size:10px}.teacher-current-body aside p{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid #26354a;color:#8795a9;font-size:8px}.teacher-current-body aside p b{color:#fff}.teacher-current-body aside .btn{width:100%;margin-top:17px}
.teacher-overview{padding:20px}.teacher-class-table>div{display:grid;grid-template-columns:.75fr .75fr 1.25fr 1fr .55fr;gap:10px;align-items:center;min-height:42px;border-top:1px solid #26354a}.teacher-class-table b{color:#748297;font-size:8px}.teacher-class-table a,.teacher-class-table span{font-size:8px}.teacher-class-table a{color:#f1f4f8;font-weight:800;text-decoration:none}.teacher-class-table span{color:#9ca8ba}.teacher-class-table span:nth-child(4){display:flex;align-items:center;gap:7px}.teacher-class-table progress{width:70%;height:5px}
.teacher-events>div,.teacher-activity>div{display:flex;align-items:center;gap:10px;min-height:53px;border-top:1px solid #26354a}.teacher-events>div>span,.teacher-activity>div>span{display:grid;place-items:center;flex:0 0 36px;height:36px;border-radius:10px;background:#183629;color:#40df83}.teacher-events p,.teacher-activity p{flex:1;min-width:0;margin:0}.teacher-events strong,.teacher-events small,.teacher-activity strong,.teacher-activity small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.teacher-events strong,.teacher-activity strong{color:#eef2f7;font-size:9px}.teacher-events small,.teacher-activity small{margin-top:3px;color:#7e8da2;font-size:8px}.teacher-events time,.teacher-activity time{color:#8b98aa;font-size:7px;text-align:right}
.teacher-tip{display:flex;align-items:center;justify-content:space-between;min-height:105px;padding:20px 28px;border:1px solid #382b69;border-radius:10px;background:linear-gradient(110deg,#161936,#242052)}.teacher-tip>div>span{float:left;margin:2px 12px 30px 0;color:#a66eff}.teacher-tip h2{margin:0 0 6px;color:#fff;font-size:11px}.teacher-tip p,.teacher-tip small{display:block;margin:0;color:#aeb6c9;font-size:8px}.teacher-tip small{margin-top:5px;color:#7f8ba0}.tip-art{display:flex;align-items:center;gap:10px;color:#9d6cff}.tip-art .ui-icon{width:38px;height:38px}.tip-art .ui-icon:nth-child(2){width:55px;height:55px}
@media(max-width:1150px){.teacher-metrics{grid-template-columns:repeat(3,1fr)}.teacher-main-grid{grid-template-columns:1fr}.teacher-right{grid-template-columns:1fr 1fr}}
@media(max-width:750px){.teacher-metrics{grid-template-columns:1fr 1fr}.teacher-current-body{grid-template-columns:1fr}.teacher-current-body aside{padding:15px 0 0;border-left:0;border-top:1px solid #26354a}.teacher-right{grid-template-columns:1fr}.teacher-welcome{align-items:flex-start;gap:14px}.teacher-class-table{overflow-x:auto}.teacher-class-table>div{min-width:650px}}

/* MIHO light theme — shared by Student, Teacher and Admin. */
html[data-theme="light"]{color-scheme:light;--ink:#111827;--muted:#667085;--line:#e1e6ef;--cream:#f8faff;--white:#fff;--shadow:0 12px 34px rgba(42,55,86,.08)}
html[data-theme="light"] body,
html[data-theme="light"] .product-shell,
html[data-theme="light"] .product-main,
html[data-theme="light"] .product-content{background:#fbfcff;color:#111827}
html[data-theme="light"] .product-sidebar{background:#fff;border-color:#e2e7f0;box-shadow:4px 0 18px rgba(35,48,76,.025)}
html[data-theme="light"] .product-sidebar .brand{color:#111827}
html[data-theme="light"] .product-sidebar nav a,
html[data-theme="light"] .nav-logout{color:#526075}
html[data-theme="light"] .product-sidebar nav a:hover,
html[data-theme="light"] .product-sidebar nav a.active{background:linear-gradient(90deg,#f0e9ff,#f5f1ff);color:#7046dc}
html[data-theme="light"] .nav-caption{color:#8290a5}
html[data-theme="light"] .product-top{background:rgba(255,255,255,.94);border-color:#e2e7f0;box-shadow:0 1px 8px rgba(32,48,78,.025)}
html[data-theme="light"] .global-search,
html[data-theme="light"] .top-streak,
html[data-theme="light"] .top-icon,
html[data-theme="light"] .top-profile,
html[data-theme="light"] .top-popover,
html[data-theme="light"] .search-dropdown{background:#fff;border-color:#dfe5ee;color:#172033}
html[data-theme="light"] .global-search input{color:#172033}
html[data-theme="light"] .top-profile strong,
html[data-theme="light"] .side-user strong,
html[data-theme="light"] .page-head h1,
html[data-theme="light"] .teacher-welcome h1{color:#111827}
html[data-theme="light"] .page-head p,
html[data-theme="light"] .teacher-welcome p{color:#667085}
html[data-theme="light"] .side-user,
html[data-theme="light"] .sidebar-streak{background:#fafbff;border-color:#e1e6ef;color:#172033}
html[data-theme="light"] .dark-stats article,
html[data-theme="light"] .dark-panel,
html[data-theme="light"] .admin-card,
html[data-theme="light"] .teacher-metrics article,
html[data-theme="light"] .assignment-table article,
html[data-theme="light"] .settings-panel,
html[data-theme="light"] .product-content .lesson-catalog article,
html[data-theme="light"] .level-banner,
html[data-theme="light"] .performance-classes article,
html[data-theme="light"] .question-bank article,
html[data-theme="light"] .notification-list article,
html[data-theme="light"] .saved-list article,
html[data-theme="light"] .goal-grid article,
html[data-theme="light"] .games-history{background:#fff;border-color:#e0e6ef;color:#172033;box-shadow:0 8px 24px rgba(44,61,91,.035)}
html[data-theme="light"] .dark-panel h2,
html[data-theme="light"] .dark-panel h3,
html[data-theme="light"] .dark-stats strong,
html[data-theme="light"] .teacher-metrics strong,
html[data-theme="light"] .teacher-current-copy h2,
html[data-theme="light"] .teacher-current-body aside h3,
html[data-theme="light"] .product-content .lesson-catalog h2,
html[data-theme="light"] .assignment-table h2,
html[data-theme="light"] .compact-list strong,
html[data-theme="light"] .dark-list strong{color:#131b2b}
html[data-theme="light"] .dark-panel p,
html[data-theme="light"] .dark-panel small,
html[data-theme="light"] .dark-stats small,
html[data-theme="light"] .dark-stats em,
html[data-theme="light"] .teacher-metrics small,
html[data-theme="light"] .teacher-metrics em,
html[data-theme="light"] .teacher-current-copy p,
html[data-theme="light"] .teacher-current-copy small,
html[data-theme="light"] .product-content .lesson-catalog p,
html[data-theme="light"] .product-content .lesson-catalog small{color:#667085}
html[data-theme="light"] .compact-list>div,
html[data-theme="light"] .dark-list>div,
html[data-theme="light"] .teacher-events>div,
html[data-theme="light"] .teacher-activity>div,
html[data-theme="light"] .teacher-class-table>div,
html[data-theme="light"] .result-list>div{border-color:#e5e9f1}
html[data-theme="light"] .teacher-events strong,
html[data-theme="light"] .teacher-activity strong,
html[data-theme="light"] .teacher-class-table a{color:#172033}
html[data-theme="light"] .admin-chart{background:#fff}
html[data-theme="light"] .admin-chart g line{stroke:#e4e8f0}
html[data-theme="light"] .admin-chart polyline{stroke:#7c4dff;filter:drop-shadow(0 0 4px rgba(124,77,255,.2))}
html[data-theme="light"] .admin-chart polygon{fill:#8a5cff;fill-opacity:.12}
html[data-theme="light"] .admin-chart footer,
html[data-theme="light"] .admin-chart footer b{color:#657086}
html[data-theme="light"] .btn.secondary,
html[data-theme="light"] .product-content .lesson-catalog .btn.secondary{background:#fff;border-color:#d8e0eb;color:#25324a}
html[data-theme="light"] .teacher-current-body aside{border-color:#e2e7ef}
html[data-theme="light"] .teacher-current-body aside p{border-color:#e2e7ef;color:#667085}
html[data-theme="light"] .teacher-current-body aside p b{color:#172033}
html[data-theme="light"] .teacher-tip{background:linear-gradient(110deg,#f8f5ff,#f0ebff);border-color:#e1d6ff}
html[data-theme="light"] .teacher-tip h2{color:#172033}
html[data-theme="light"] .teacher-tip p,
html[data-theme="light"] .teacher-tip small{color:#667085}
html[data-theme="light"] .work-dialog{background:#fff;color:#172033}
html[data-theme="light"] .work-form input,
html[data-theme="light"] .work-form select,
html[data-theme="light"] .work-form textarea{background:#fff;border-color:#dce3ed;color:#172033}
.theme-setting{order:-10}.theme-setting input{accent-color:#7650e8}

/* Admin activity chart — color treatment matched to the approved reference. */
.admin-chart{background:linear-gradient(145deg,#101d2d,#0c1725)}
.admin-chart>svg{overflow:visible}
.admin-chart g line{stroke:#223248;stroke-width:.8;opacity:.82}
.admin-chart polyline{fill:none;stroke:#a865f5;stroke-width:2.35;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 5px rgba(166,96,246,.42))}
.admin-chart polygon{fill:#8f54df;fill-opacity:.18;filter:drop-shadow(0 8px 16px rgba(93,51,160,.12))}
.admin-chart footer{padding:0 9px;color:#748299}
.admin-chart footer b{color:#b7c0cf;font-weight:600}

/* Teacher lesson catalogue — dark MIHO treatment. */
.product-content .lesson-catalog{display:grid;gap:10px}
.product-content .lesson-catalog article{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:16px;min-height:92px;padding:16px 20px;border:1px solid #27364c;border-radius:10px;background:linear-gradient(145deg,#111e2e,#0d1826);color:#eef3fa;box-shadow:0 8px 24px rgba(2,8,18,.08)}
.product-content .lesson-catalog article:hover{border-color:#63459e;background:linear-gradient(145deg,#142238,#101a2b)}
.product-content .lesson-catalog .lesson-index{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:#251d48;color:#a979fb;font-size:11px;font-weight:800}
.product-content .lesson-catalog article>div{min-width:0}
.product-content .lesson-catalog small{display:block;margin-bottom:4px;color:#7f8da2;font-size:8px;text-transform:none}
.product-content .lesson-catalog h2{margin:0 0 5px;color:#f4f6fb;font-size:13px;line-height:1.35}
.product-content .lesson-catalog p{margin:0;color:#8492a6;font-size:8px}
.product-content .lesson-catalog .btn.secondary{min-width:112px;min-height:40px;border-color:#384963;background:#121f31;color:#dce6f4}
.product-content .lesson-catalog .btn.secondary:hover{border-color:#8758dc;background:#211b3c;color:#fff}
@media(max-width:650px){.product-content .lesson-catalog article{grid-template-columns:42px minmax(0,1fr);padding:14px}.product-content .lesson-catalog .btn{grid-column:2;justify-self:start}}

/* Final light-theme overrides must stay after every role-specific dark rule. */
html[data-theme="light"] body,
html[data-theme="light"] .product-shell,
html[data-theme="light"] .product-main,
html[data-theme="light"] .product-content{background:#f9fbff!important;color:#152033!important}
html[data-theme="light"] .product-content h1,
html[data-theme="light"] .product-content h2,
html[data-theme="light"] .product-content h3,
html[data-theme="light"] .product-content h4,
html[data-theme="light"] .product-content strong{color:#131b2b}
html[data-theme="light"] .admin-welcome h1,
html[data-theme="light"] .teacher-welcome h1{color:#131b2b!important}
html[data-theme="light"] .admin-welcome p,
html[data-theme="light"] .teacher-welcome p{color:#667085!important}
html[data-theme="light"] .admin-welcome time,
html[data-theme="light"] .teacher-welcome time,
html[data-theme="light"] .catalog-count{background:#fff!important;border-color:#dce3ed!important;color:#34425a!important}
html[data-theme="light"] .dark-stats article,
html[data-theme="light"] .admin-card,
html[data-theme="light"] .dark-panel,
html[data-theme="light"] .teacher-metrics article,
html[data-theme="light"] .teacher-current,
html[data-theme="light"] .teacher-overview,
html[data-theme="light"] .assignment-table article,
html[data-theme="light"] .question-bank article,
html[data-theme="light"] .statistics-grid article,
html[data-theme="light"] .settings-panel,
html[data-theme="light"] .profile-card,
html[data-theme="light"] .details,
html[data-theme="light"] .notification-list article,
html[data-theme="light"] .saved-list article,
html[data-theme="light"] .goal-grid article,
html[data-theme="light"] .performance-classes article,
html[data-theme="light"] .level-banner,
html[data-theme="light"] .roadmap-step,
html[data-theme="light"] .lesson-section,
html[data-theme="light"] .lesson-aside,
html[data-theme="light"] .lesson-hero,
html[data-theme="light"] .game-card,
html[data-theme="light"] .games-history,
html[data-theme="light"] .chat-shell,
html[data-theme="light"] .chat-list,
html[data-theme="light"] .conversation,
html[data-theme="light"] .chat-info,
html[data-theme="light"] .product-content .lesson-catalog article{background:#fff!important;border-color:#dfe5ee!important;color:#172033!important;box-shadow:0 8px 24px rgba(38,54,84,.04)!important}
html[data-theme="light"] .dark-stats article:hover,
html[data-theme="light"] .dark-panel:hover,
html[data-theme="light"] .product-content .lesson-catalog article:hover{background:#fcfbff!important;border-color:#bda8ef!important}
html[data-theme="light"] .dark-stats small,
html[data-theme="light"] .dark-stats em,
html[data-theme="light"] .dark-panel small,
html[data-theme="light"] .dark-panel p,
html[data-theme="light"] .teacher-metrics small,
html[data-theme="light"] .teacher-metrics em,
html[data-theme="light"] .teacher-current-copy p,
html[data-theme="light"] .teacher-current-copy small,
html[data-theme="light"] .assignment-table p,
html[data-theme="light"] .assignment-table small,
html[data-theme="light"] .question-bank small,
html[data-theme="light"] .product-content .lesson-catalog p,
html[data-theme="light"] .product-content .lesson-catalog small{color:#708097!important}
html[data-theme="light"] .dark-stats strong,
html[data-theme="light"] .teacher-metrics strong,
html[data-theme="light"] .teacher-current-copy h2,
html[data-theme="light"] .assignment-table h2,
html[data-theme="light"] .question-bank h2,
html[data-theme="light"] .product-content .lesson-catalog h2{color:#131b2b!important}
html[data-theme="light"] .admin-chart{background:#fff!important}
html[data-theme="light"] .admin-chart g line{stroke:#e3e8f0!important}
html[data-theme="light"] .admin-chart polyline{stroke:#7a4eff!important;filter:drop-shadow(0 0 4px rgba(122,78,255,.22))!important}
html[data-theme="light"] .admin-chart polygon{fill:#8a5dff!important;fill-opacity:.12!important}
html[data-theme="light"] .admin-chart footer,
html[data-theme="light"] .admin-chart footer b{color:#637089!important}
html[data-theme="light"] .compact-list>div,
html[data-theme="light"] .dark-list>div,
html[data-theme="light"] .teacher-events>div,
html[data-theme="light"] .teacher-activity>div,
html[data-theme="light"] .teacher-class-table>div,
html[data-theme="light"] .result-list>div,
html[data-theme="light"] .performance-table>div,
html[data-theme="light"] .chat-row{border-color:#e4e9f1!important}
html[data-theme="light"] .compact-list strong,
html[data-theme="light"] .dark-list strong,
html[data-theme="light"] .teacher-events strong,
html[data-theme="light"] .teacher-activity strong,
html[data-theme="light"] .teacher-class-table a,
html[data-theme="light"] .result-list strong{color:#192235!important}
html[data-theme="light"] .teacher-current-body aside{border-color:#e2e7ef!important}
html[data-theme="light"] .teacher-current-body aside p{border-color:#e2e7ef!important;color:#68768c!important}
html[data-theme="light"] .teacher-current-body aside p b{color:#182235!important}
html[data-theme="light"] .teacher-tip{background:linear-gradient(110deg,#f9f6ff,#f1ecff)!important;border-color:#ded3fb!important}
html[data-theme="light"] .teacher-tip h2{color:#172033!important}
html[data-theme="light"] .teacher-tip p,
html[data-theme="light"] .teacher-tip small{color:#68768c!important}
html[data-theme="light"] .btn.secondary,
html[data-theme="light"] .product-content .lesson-catalog .btn.secondary{background:#fff!important;border-color:#d6deea!important;color:#293750!important}
html[data-theme="light"] .filter-tabs,
html[data-theme="light"] .game-difficulty{background:#f2f5fa!important;border-color:#dfe5ee!important}
html[data-theme="light"] .filter-tabs button,
html[data-theme="light"] .game-difficulty button{color:#5d6b80!important}
html[data-theme="light"] .filter-tabs button.active,
html[data-theme="light"] .game-difficulty button.active{background:#fff!important;color:#7046dc!important;box-shadow:0 4px 12px rgba(55,66,96,.08)!important}
html[data-theme="light"] .work-dialog,
html[data-theme="light"] .auth-dialog{background:#fff!important;color:#172033!important}
html[data-theme="light"] input,
html[data-theme="light"] select,
html[data-theme="light"] textarea{background:#fff;color:#172033;border-color:#d9e1ec}
html[data-theme="light"] .code-block,
html[data-theme="light"] .detail-json,
html[data-theme="light"] .answer-preview,
html[data-theme="light"] .question-card{background:#f5f7fb!important;border-color:#dde4ee!important;color:#172033!important}

html[data-theme="light"] .admin-metrics article,
html[data-theme="light"] .ref-stats article,
html[data-theme="light"] .ref-profile,
html[data-theme="light"] .ref-goal,
html[data-theme="light"] .ref-activity,
html[data-theme="light"] .ref-path,
html[data-theme="light"] .ref-quick,
html[data-theme="light"] .ref-recommend>div>a,
html[data-theme="light"] .progress-list article,
html[data-theme="light"] .student-table article,
html[data-theme="light"] .achievement-grid article,
html[data-theme="light"] .project-grid article,
html[data-theme="light"] .notes-grid article,
html[data-theme="light"] .activity-timeline article,
html[data-theme="light"] .ranking-table article,
html[data-theme="light"] .schedule-list article,
html[data-theme="light"] .quick-panel,
html[data-theme="light"] .quick-panel nav a,
html[data-theme="light"] .recommend-panel,
html[data-theme="light"] .recommend-panel>div>a,
html[data-theme="light"] .breakdown-list>div,
html[data-theme="light"] .homework-target{background:#fff!important;border-color:#dfe5ee!important;color:#172033!important;box-shadow:0 8px 24px rgba(38,54,84,.035)!important}
html[data-theme="light"] .admin-metrics small,
html[data-theme="light"] .ref-stats small,
html[data-theme="light"] .ref-stats p,
html[data-theme="light"] .ref-profile p,
html[data-theme="light"] .ref-activity small,
html[data-theme="light"] .ref-quick small,
html[data-theme="light"] .ref-recommend p,
html[data-theme="light"] .progress-list small,
html[data-theme="light"] .student-table p,
html[data-theme="light"] .achievement-grid p,
html[data-theme="light"] .project-grid p,
html[data-theme="light"] .notes-grid p,
html[data-theme="light"] .activity-timeline p,
html[data-theme="light"] .activity-timeline small,
html[data-theme="light"] .ranking-table p,
html[data-theme="light"] .schedule-list p,
html[data-theme="light"] .quick-panel small,
html[data-theme="light"] .recommend-panel p,
html[data-theme="light"] .homework-target small{color:#6d7b90!important}

/* Light theme completion: neutral controls must never inherit dark-mode shells. */
html[data-theme="light"] .admin-welcome>span,
html[data-theme="light"] .catalog-count,
html[data-theme="light"] .page-head>span,
html[data-theme="light"] .page-head>div+span{
  background:#fff!important;
  border-color:#d9e1ec!important;
  color:#526177!important;
  box-shadow:0 6px 18px rgba(38,54,84,.04)!important;
}
html[data-theme="light"] .entity-table button,
html[data-theme="light"] .notes-grid footer button,
html[data-theme="light"] .notification-list button,
html[data-theme="light"] .saved-list button,
html[data-theme="light"] .admin-card button:not(.btn),
html[data-theme="light"] .dark-panel button:not(.btn),
html[data-theme="light"] .icon-button{
  background:#fff!important;
  border:1px solid #d8e0eb!important;
  color:#65748a!important;
  box-shadow:0 4px 12px rgba(38,54,84,.04)!important;
}
html[data-theme="light"] .entity-table button:hover,
html[data-theme="light"] .notes-grid footer button:hover,
html[data-theme="light"] .notification-list button:hover{
  background:#f2edff!important;
  border-color:#bca7ed!important;
  color:#7046dc!important;
}
html[data-theme="light"] .entity-table .entity-delete,
html[data-theme="light"] .entity-table [data-delete],
html[data-theme="light"] button.icon-danger{
  background:#fff7f8!important;
  border-color:#efcbd0!important;
  color:#c84f5b!important;
}
html[data-theme="light"] .activity-timeline article>span,
html[data-theme="light"] .admin-alerts>div>span,
html[data-theme="light"] .admin-recent>div>span,
html[data-theme="light"] .dark-list>div>span,
html[data-theme="light"] .activity-icon{
  background:#f0eaff!important;
  border-color:#dfd3fa!important;
  color:#7046dc!important;
}
html[data-theme="light"] .entity-table,
html[data-theme="light"] .entity-table article,
html[data-theme="light"] .activity-timeline,
html[data-theme="light"] .activity-timeline article{
  background:#fff!important;
  border-color:#dce3ed!important;
  color:#172033!important;
}
html[data-theme="light"] .entity-table article>div:first-child>span,
html[data-theme="light"] .entity-table article small,
html[data-theme="light"] .activity-timeline article small,
html[data-theme="light"] .activity-timeline article p{color:#708096!important}
html[data-theme="light"] .entity-table article strong,
html[data-theme="light"] .activity-timeline article strong{color:#172033!important}
html[data-theme="light"] .product-content,
html[data-theme="light"] .product-main{background:#f7f9fd!important;color:#172033!important}

/* Language selector */
.language-switcher{position:relative;z-index:60;flex:0 0 auto;font-family:Manrope,sans-serif}
.language-current{height:38px;display:flex;align-items:center;gap:7px;padding:0 10px;border:1px solid #2b3950;border-radius:10px;background:#111c2c;color:#edf2fa;cursor:pointer;font:700 11px/1 Manrope,sans-serif;letter-spacing:.05em}
.language-current>span{font-size:14px;line-height:1}.language-current>i{font-size:13px;font-style:normal;color:#8794a8;transition:transform .2s}.language-current[aria-expanded="true"]>i{transform:rotate(180deg)}
.language-menu{position:absolute;top:calc(100% + 7px);right:0;width:174px;padding:6px;border:1px solid #2b3950;border-radius:12px;background:#111c2c;box-shadow:0 18px 48px rgba(0,0,0,.34)}
.language-menu button{width:100%;display:grid;grid-template-columns:31px 1fr 18px;align-items:center;gap:7px;padding:9px 8px;border:0;border-radius:8px;background:transparent;color:#dce4ef;cursor:pointer;text-align:left;font:600 11px/1.25 Manrope,sans-serif}
.language-menu button:hover,.language-menu button[aria-selected="true"]{background:#202d42;color:#fff}.language-menu button>b{font-size:9px;color:#9d7df0}.language-menu button>i{color:#66d99a;font-style:normal}
.auth-form-box>.language-switcher{position:absolute;top:26px;right:28px}.auth-form-box{position:relative}
html[data-theme="light"] .language-current,html[data-theme="light"] .language-menu{background:#fff;color:#243047;border-color:#d9e1ec;box-shadow:0 12px 32px rgba(38,54,84,.12)}
html[data-theme="light"] .language-menu button{color:#34425a}html[data-theme="light"] .language-menu button:hover,html[data-theme="light"] .language-menu button[aria-selected="true"]{background:#f0ebff;color:#5632aa}
@media(max-width:720px){.language-current{height:34px;padding:0 8px}.language-current>span{display:none}.language-menu{position:fixed;top:58px;right:12px}.auth-form-box>.language-switcher{top:16px;right:16px}}

/* Student home final guard — keep at physical EOF. */
html[data-theme="light"] body .ref-hero{background:radial-gradient(circle at 70% 43%,rgba(163,121,244,.20),transparent 31%),linear-gradient(115deg,#fff 0%,#f6f1ff 58%,#eee7ff 100%)!important;border-color:#d8caef!important}
html[data-theme="light"] body .ref-hero:after{background:linear-gradient(90deg,rgba(255,255,255,.84),transparent 68%)!important}
html[data-theme="light"] body .ref-hero-copy h2{color:#172033!important;text-shadow:none!important}
html[data-theme="light"] body .ref-hero-copy :is(p,small),html[data-theme="light"] body .ref-hero-copy>div>span{color:#68778e!important;text-shadow:none!important}
html[data-theme="light"] body .ref-hero>button{background:#fff!important;border:1px solid #d5deea!important;color:#7046dc!important;box-shadow:0 6px 16px rgba(48,58,85,.10)!important}
html[data-theme="light"] body .ref-path>div>a>b{background:#f0eaff!important;border:1px solid #d7c8f5!important;color:#6740c4!important}
html[data-theme="light"] body .ref-path>div>a>span{background:#faf8ff!important;color:#7046dc!important}
html[data-theme="light"] body :is(.ref-profile p b,.role-badge){background:#f0eaff!important;border:1px solid #d9ccf5!important;color:#6740c4!important}
html[data-theme="light"] body .ref-quick>a>.ui-icon:first-child{background:#f0eaff!important;border:1px solid #dfd4f8!important;color:#7046dc!important}
html[data-theme="light"] body .ref-quick>a:nth-of-type(2)>.ui-icon:first-child{background:#eaf7fd!important;border-color:#c9e8f5!important;color:#1886b7!important}
html[data-theme="light"] body .ref-quick>a:nth-of-type(3)>.ui-icon:first-child{background:#fff7e7!important;border-color:#f3dfb1!important;color:#a66f00!important}
html[data-theme="light"] body .ref-quick>a:nth-of-type(4)>.ui-icon:first-child{background:#eef0ff!important;border-color:#d8dcfa!important;color:#5659bb!important}
html[data-theme="light"] body :is(.ref-activity>div>span,.dark-list>div>span){background:#f0eaff!important;border:1px solid #dfd3f8!important;color:#7046dc!important;box-shadow:none!important}

/* Final two student-home groups: statistics and recommendations. */
html[data-theme="light"] body .ref-stats .violet>span{background:#f0eaff!important;border:1px solid #dfd2f8!important;color:#7046dc!important}
html[data-theme="light"] body .ref-stats .cyan>span{background:#e8f8fa!important;border:1px solid #c9eaee!important;color:#078797!important}
html[data-theme="light"] body .ref-stats .green>span{background:#eaf8f0!important;border:1px solid #caead8!important;color:#168a50!important}
html[data-theme="light"] body .ref-stats .amber>span{background:#fff7e5!important;border:1px solid #f0dfb7!important;color:#a66d00!important}
html[data-theme="light"] body .ref-stats .blue>span{background:#eaf5fc!important;border:1px solid #cde5f4!important;color:#1877a8!important}
html[data-theme="light"] body .ref-recommend small{background:#eee8ff!important;border:1px solid #dacdf7!important;color:#6840c5!important}
html[data-theme="light"] body .ref-recommend small.assignment{background:#fff3e5!important;border-color:#f1d8b5!important;color:#9b5d13!important}
html[data-theme="light"] body .ref-recommend small.game{background:#e8f8f6!important;border-color:#c6e9e5!important;color:#087f76!important}
html[data-theme="light"] body .ref-recommend>div>a>span{background:#f0eaff!important;border:1px solid #dbcffa!important;color:#6840c5!important}

/* Teacher light theme: remove the remaining dark control shells. */
html[data-theme="light"] body .teacher-events>div>span,
html[data-theme="light"] body .teacher-activity>div>span{
  background:#eaf8f0!important;
  border:1px solid #c7ead7!important;
  color:#168a50!important;
  box-shadow:none!important;
}
html[data-theme="light"] body .teacher-activity>div:nth-child(3n+2)>span{background:#eaf5fc!important;border-color:#cce5f4!important;color:#1877a8!important}
html[data-theme="light"] body .teacher-activity>div:nth-child(3n)>span{background:#f0eaff!important;border-color:#ddcff8!important;color:#7046dc!important}
html[data-theme="light"] body .teacher-current header>button,
html[data-theme="light"] body .teacher-card header>button,
html[data-theme="light"] body button.more-button{
  background:#fff!important;
  border:1px solid #d8e0eb!important;
  color:#66758a!important;
  box-shadow:0 4px 12px rgba(38,54,84,.04)!important;
}
html[data-theme="light"] body .answer-preview b{
  background:#f0eaff!important;
  border:1px solid #dacdf7!important;
  color:#6840c5!important;
}
html[data-theme="light"] body .answer-preview span.correct b{
  background:#e4f7ec!important;
  border-color:#b9e2ca!important;
  color:#187c49!important;
}

/* User actions: permanent delete sits beside Disable, never under the name. */
.student-table article{position:relative}
.student-table article>.row-actions{margin-right:42px}
.student-table article>.icon-danger[data-permanent-user]{position:absolute;right:19px;top:50%;margin:0;transform:translateY(-50%)}
@media(max-width:700px){.student-table article>.row-actions{grid-column:2;margin-right:42px}.student-table article>.icon-danger[data-permanent-user]{right:17px;top:auto;bottom:17px;transform:none}}

/* Student light theme: every shell is light, including the dashboard illustration. */
html[data-theme="light"] .ref-hero{
  background:radial-gradient(circle at 70% 43%,rgba(163,121,244,.20),transparent 31%),linear-gradient(115deg,#fff 0%,#f6f1ff 58%,#eee7ff 100%)!important;
  border-color:#d8caef!important;
  box-shadow:0 16px 34px rgba(92,65,151,.10)!important;
}
html[data-theme="light"] .ref-hero:after{background:linear-gradient(90deg,rgba(255,255,255,.82),transparent 68%)!important}
html[data-theme="light"] .ref-hero :is(h1,h2,h3,strong,b){color:#172033!important}
html[data-theme="light"] .ref-hero :is(p,small){color:#69778d!important}
html[data-theme="light"] .ref-hero-copy>div>span{color:#6d7b90!important}
html[data-theme="light"] .ref-hero>img{filter:brightness(1.08) saturate(.88) drop-shadow(0 18px 22px rgba(65,48,112,.18))}
html[data-theme="light"] .ref-hero>button{background:#fff!important;border-color:#d8dfeb!important;color:#7046dc!important;box-shadow:0 5px 14px rgba(48,58,85,.10)!important}
html[data-theme="light"] .hero-dots i{background:#cdd4df!important}
html[data-theme="light"] .hero-dots i.active{background:#8353e6!important}
html[data-theme="light"] .filter-tabs,
html[data-theme="light"] .game-difficulty{background:#f5f7fb!important;border:1px solid #dfe5ee!important}
html[data-theme="light"] .filter-tabs button,
html[data-theme="light"] .game-difficulty button{background:#fff!important;border-color:#d8e0eb!important;color:#66758a!important;box-shadow:none!important}
html[data-theme="light"] .filter-tabs button.active,
html[data-theme="light"] .game-difficulty button.active{background:#efe9ff!important;border-color:#a98aeb!important;color:#6338c7!important}
html[data-theme="light"] :is(.lesson-index,.assignment-mark,.activity-timeline article>span,.dark-list>div>span,.schedule-lesson-icon){background:#f0eaff!important;border-color:#ded2f8!important;color:#7147d6!important}
html[data-theme="light"] :is(.game-card,.game-art,.dark-panel,.path-panel,.ref-activity,.ref-path,.ref-quick,.ref-recommend,.ref-goal){background:#fff!important;border-color:#dce3ed!important;color:#172033!important}
html[data-theme="light"] .game-art{background:linear-gradient(145deg,#faf8ff,#eee8ff)!important}
html[data-theme="light"] .dark-list>div{background:#fff!important;border-color:#e1e7ef!important}
html[data-theme="light"] .dark-list>div>span{box-shadow:none!important}

.ref-schedule-preview{min-height:145px}
.ref-schedule-preview header a{color:#7748db;font-size:8px;text-decoration:none}
.schedule-preview-list{display:grid;margin-top:12px}
.schedule-preview-list>div{display:grid;grid-template-columns:92px 1fr;gap:10px;padding:9px 0;border-top:1px solid #263349}
.schedule-preview-list time,.schedule-preview-list span{display:grid;gap:3px;font-size:8px}
.schedule-preview-list strong{font-size:8px}.schedule-preview-list small{color:#7d899c;font-size:7px}
html[data-theme="light"] .schedule-preview-list>div{border-color:#e2e7ef!important}

.weekly-schedule{display:grid;gap:12px}
.weekly-schedule article{display:grid;grid-template-columns:145px 135px 46px minmax(220px,1fr) auto;align-items:center;gap:16px;min-height:102px;padding:18px 22px;border:1px solid #29374c;border-radius:11px;background:#0e1826}
.schedule-day,.weekly-schedule time{display:grid;gap:5px}.schedule-day strong{text-transform:capitalize}.schedule-day span,.weekly-schedule small{color:#8491a5;font-size:8px}.weekly-schedule time{grid-template-columns:auto 12px auto;align-items:center;color:#a98cf4;font-size:13px;font-weight:800}.weekly-schedule h2{margin:5px 0 0;font-size:12px}.schedule-lesson-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:#242044;color:#a98cf4}
html[data-theme="light"] .weekly-schedule article{background:#fff!important;border-color:#dce3ed!important;color:#172033!important;box-shadow:0 8px 24px rgba(38,54,84,.035)!important}
html[data-theme="light"] .weekly-schedule time{color:#7046dc!important}
@media(max-width:850px){.weekly-schedule article{grid-template-columns:1fr 1fr 42px}.weekly-schedule article>div:last-of-type{grid-column:1/-1}.weekly-schedule article>.btn,.weekly-schedule article>.role-badge{grid-column:1/-1;justify-self:start}}

/* Student home: remove the last dark control shells in light mode. */
html[data-theme="light"] body .ref-hero-copy h2{color:#172033!important;text-shadow:none!important}
html[data-theme="light"] body .ref-hero-copy>small,
html[data-theme="light"] body .ref-hero-copy>p,
html[data-theme="light"] body .ref-hero-copy>div>span{color:#68778e!important;text-shadow:none!important}
html[data-theme="light"] body .ref-hero>button{
  background:#fff!important;
  border:1px solid #d5deea!important;
  color:#7046dc!important;
  box-shadow:0 6px 16px rgba(48,58,85,.10)!important;
}
html[data-theme="light"] body .ref-path>div>a>b{
  background:#f0eaff!important;
  border:1px solid #d7c8f5!important;
  color:#6740c4!important;
}
html[data-theme="light"] body .ref-path>div>a>span{
  background:#faf8ff!important;
  border-color:#a98aeb!important;
  color:#7046dc!important;
}
html[data-theme="light"] body .ref-profile p b,
html[data-theme="light"] body .role-badge{
  background:#f0eaff!important;
  border:1px solid #d9ccf5!important;
  color:#6740c4!important;
}
html[data-theme="light"] body .ref-quick>a>.ui-icon:first-child,
html[data-theme="light"] body .ref-quick>a:nth-of-type(2)>.ui-icon:first-child,
html[data-theme="light"] body .ref-quick>a:nth-of-type(3)>.ui-icon:first-child,
html[data-theme="light"] body .ref-quick>a:nth-of-type(4)>.ui-icon:first-child{
  background:#f0eaff!important;
  border:1px solid #dfd4f8!important;
  color:#7046dc!important;
}
html[data-theme="light"] body .ref-quick>a:nth-of-type(2)>.ui-icon:first-child{background:#eaf7fd!important;border-color:#c9e8f5!important;color:#1886b7!important}
html[data-theme="light"] body .ref-quick>a:nth-of-type(3)>.ui-icon:first-child{background:#fff7e7!important;border-color:#f3dfb1!important;color:#a66f00!important}
html[data-theme="light"] body .ref-quick>a:nth-of-type(4)>.ui-icon:first-child{background:#eef0ff!important;border-color:#d8dcfa!important;color:#5659bb!important}
html[data-theme="light"] body .ref-activity>div>span,
html[data-theme="light"] body .dark-list>div>span{
  background:#f0eaff!important;
  border:1px solid #dfd3f8!important;
  color:#7046dc!important;
  box-shadow:none!important;
}
html[data-theme="light"] body .sidebar-streak{
  background:#fff!important;
  border-color:#dce3ed!important;
  color:#172033!important;
}

/* Absolute final light-mode guard — keep this block at EOF. */
html[data-theme="light"] :is(.ref-hero,.hero-card){color:#fff!important}
html[data-theme="light"] :is(.ref-hero,.hero-card) :is(h1,h2,h3,strong,b){color:#fff!important}
html[data-theme="light"] :is(.ref-hero,.hero-card) :is(p,small){color:#ddd4f0!important}
html[data-theme="light"] .ref-hero-copy>small{color:#cbb8f3!important}
html[data-theme="light"] .ref-hero-copy>p{color:#ded6ef!important}
html[data-theme="light"] .ref-hero-copy>div>span{color:#e3daf4!important}
html[data-theme="light"] .ref-hero-copy .btn{background:#7846df!important;color:#fff!important;border-color:#9168e5!important}
html[data-theme="light"] .ref-hero>button{background:#1c1737!important;color:#fff!important;border-color:rgba(255,255,255,.16)!important}
html[data-theme="light"] :is(.admin-metrics article,.teacher-metrics article,.ref-stats article,.admin-card,.teacher-current,.teacher-overview,.dark-panel,.assignment-table article,.question-bank article,.statistics-grid article,.lesson-section,.lesson-aside,.roadmap-step,.goal-grid article,.project-grid article,.notes-grid article,.activity-timeline article,.ranking-table article,.saved-list article,.notification-list article,.schedule-list article,.settings-panel,.work-dialog){background:#fff!important;border-color:#dfe5ee!important;color:#172033!important}
html[data-theme="light"] :is(.admin-metrics article,.teacher-metrics article,.ref-stats article,.admin-card,.teacher-current,.teacher-overview,.dark-panel,.assignment-table article,.question-bank article,.statistics-grid article,.lesson-section,.lesson-aside,.roadmap-step,.goal-grid article,.project-grid article,.notes-grid article,.activity-timeline article,.ranking-table article,.saved-list article,.notification-list article,.schedule-list article,.settings-panel,.work-dialog) :is(h1,h2,h3,strong,b){color:#172033}

/* Complete surface audit: every non-accent working surface is light. */
html[data-theme="light"] :is(.dark-focus,.path-panel,.game-card,.groups-grid article,.entity-table,.profile-real,.learning-columns>section,.learning-detail,.mini-game,.quiz-intro,.quiz-result,.choice-list button,.learning-columns button,.entity-tabs button,.entity-tabs span,.memory-board button,.path-row>div,.settings-panel,.statistics-grid article,.question-bank article,.progress-list article,.student-table article,.achievement-grid article,.activity-timeline article,.ranking-table article,.saved-list article,.notification-list article,.schedule-list article,.goal-grid article,.project-grid article,.notes-grid article,.quick-panel,.recommend-panel,.admin-card,.admin-metrics article,.teacher-metrics article,.lesson-section,.lesson-aside,.level-banner,.roadmap-step,.work-dialog){background:#fff!important;border-color:#dfe5ee!important;color:#172033!important;box-shadow:0 8px 24px rgba(38,54,84,.035)!important}
html[data-theme="light"] :is(.learning-columns button,.entity-tabs button,.choice-list button,.memory-board button,.question-card .options button,.path-panel>a){background:#f8f9fc!important;border-color:#dce3ed!important;color:#34425a!important}
html[data-theme="light"] :is(.learning-columns button.selected,.entity-tabs button.active,.filter-tabs button.active){background:#eee8ff!important;border-color:#a88ae8!important;color:#6237c7!important}
html[data-theme="light"] :is(.assignment-mark,.group-icon,.progress-list article>div:first-child>span,.project-icon,.roadmap-index,.path-row>div>span,.goal-grid article>span,.achievement-grid article>span,.saved-list>article>span,.notification-list>article>span,.schedule-list>article>span,.quick-panel nav a>.ui-icon:first-child){background:#f0ebff!important;color:#7449dc!important}
html[data-theme="light"] :is(.answer-preview span,.entity-table article,.details-grid label,.profile-fields label){background:#fafbfe!important;border-color:#e0e6ef!important;color:#526177!important}
html[data-theme="light"] .answer-preview span.correct{background:#edf9f2!important;border-color:#9ed9b8!important;color:#217c4b!important}
html[data-theme="light"] :is(.product-content p,.product-content small,.product-content em,.selection-help){color:#6e7c91}
html[data-theme="light"] :is(.product-content h1,.product-content h2,.product-content h3,.product-content strong,.product-content b){text-shadow:none}
html[data-theme="light"] .code-block{background:#f3f6fa!important;border-color:#d8e0ea!important;color:#235c49!important;box-shadow:none!important}
html[data-theme="light"] .lesson-content pre{background:#f3f6fa!important;color:#34425a!important}
html[data-theme="light"] .game-art{background:linear-gradient(145deg,#f4f0ff,#ebe4ff)!important}
html[data-theme="light"] .dark-focus{background:linear-gradient(135deg,#f2edff,#e8ddff)!important;border-color:#c8b5f2!important}
html[data-theme="light"] .dark-focus :is(h1,h2,h3,strong){color:#25194b!important}
html[data-theme="light"] .dark-focus :is(p,small){color:#62557f!important}
html[data-theme="light"] .toast{background:#fff!important;color:#172033!important;border:1px solid #dfe5ee!important}
html[data-theme="light"] .toast p{color:#667085!important}
html[data-theme="light"] ::-webkit-scrollbar-track{background:#f3f5f9}
html[data-theme="light"] ::-webkit-scrollbar-thumb{background:#c8d0dc}

/* Accent surfaces stay purple in light mode and must always keep readable text. */
html[data-theme="light"] :is(.ref-hero,.hero-card) :is(h1,h2,h3,strong,b){color:#fff!important}
html[data-theme="light"] :is(.ref-hero,.hero-card) :is(p,small,span:not(.btn span)){color:#d8cfee!important}
html[data-theme="light"] .ref-hero-copy>small{color:#cbb8f3!important}
html[data-theme="light"] .ref-hero-copy>p{color:#ded6ef!important}
html[data-theme="light"] .ref-hero-copy>div>span{color:#e3daf4!important}
html[data-theme="light"] .ref-hero .btn.primary,
html[data-theme="light"] .ref-hero-copy .btn{background:#7846df!important;color:#fff!important;border-color:#8e61e8!important}
html[data-theme="light"] .ref-hero>button{background:#1c1737!important;color:#fff!important;border-color:rgba(255,255,255,.16)!important}
html[data-theme="light"] .ref-hero .ui-icon,
html[data-theme="light"] .hero-card .ui-icon{color:inherit!important}
html[data-theme="light"] .ref-hero progress::-webkit-progress-bar{background:rgba(255,255,255,.2)!important}
html[data-theme="light"] .ref-hero progress::-webkit-progress-value{background:#fff!important}
html[data-theme="light"] .admin-metrics strong,
html[data-theme="light"] .ref-stats strong,
html[data-theme="light"] .ref-profile strong,
html[data-theme="light"] .ref-goal h2,
html[data-theme="light"] .ref-activity h2,
html[data-theme="light"] .ref-activity strong,
html[data-theme="light"] .ref-path h2,
html[data-theme="light"] .ref-quick h2,
html[data-theme="light"] .ref-quick b,
html[data-theme="light"] .ref-recommend h2,
html[data-theme="light"] .ref-recommend strong,
html[data-theme="light"] .homework-target strong{color:#172033!important}
html[data-theme="light"] .admin-card h2,
html[data-theme="light"] .admin-recent strong,
html[data-theme="light"] .admin-alerts strong,
html[data-theme="light"] .admin-table b,
html[data-theme="light"] .admin-table strong,
html[data-theme="light"] .admin-popular strong{color:#172033!important}
html[data-theme="light"] .admin-recent>div,
html[data-theme="light"] .admin-alerts>div,
html[data-theme="light"] .admin-table>div,
html[data-theme="light"] .admin-popular>div{border-color:#e3e8f0!important}
html[data-theme="light"] .admin-table>div:first-child{background:#f5f7fb!important}
html[data-theme="light"] .admin-table span,
html[data-theme="light"] .admin-recent small,
html[data-theme="light"] .admin-alerts small,
html[data-theme="light"] .admin-recent time,
html[data-theme="light"] .admin-alerts time,
html[data-theme="light"] .admin-popular span{color:#6f7d91!important}
html[data-theme="light"] .ref-path>div>a,
html[data-theme="light"] .ref-quick>a,
html[data-theme="light"] .quick-panel nav a,
html[data-theme="light"] .recommend-panel>div>a{color:#172033!important}
html[data-theme="light"] .ref-path>div>a>span{background:#f6f3ff!important}
html[data-theme="light"] .ref-path>div>i{border-color:#cfd7e3!important}
html[data-theme="light"] .ref-activity>div:not(.inline-empty),
html[data-theme="light"] .ref-quick>a{border-color:#e3e8f0!important}
html[data-theme="light"] .ranking-table article.current{background:#f4efff!important;border-color:#a98aea!important}
html[data-theme="light"] .activity-timeline:before,
html[data-theme="light"] .roadmap:before{background:#d4c8f2!important}
html[data-theme="light"] .content-list>div,
html[data-theme="light"] .sentence-answer,
html[data-theme="light"] .truth-statement,
html[data-theme="light"] .knowledge-check [data-check-answer]{background:#f5f7fb!important;border-color:#dce3ed!important;color:#172033!important}
html[data-theme="light"] .word-bank button{background:#f1ebff!important;border-color:#baa6e8!important;color:#5632aa!important}
html[data-theme="light"] .lesson-progress{background:#fff!important;border-color:#d9e1ec!important}
html[data-theme="light"] .lesson-aside{box-shadow:0 12px 30px rgba(38,54,84,.06)!important}
html[data-theme="light"] .lesson-neighbours{border-color:#e1e6ee!important}
html[data-theme="light"] .icon-danger{background:#fff5f6!important;border-color:#efc9ce!important;color:#c84f5b!important}
html[data-theme="light"] .chat-list,
html[data-theme="light"] .chat-info,
html[data-theme="light"] .chat-composer{border-color:#dfe5ee!important}
html[data-theme="light"] .chat-search,
html[data-theme="light"] .chat-composer textarea,
html[data-theme="light"] .messages article>div{background:#f3f6fa!important;border-color:#dce3ed!important;color:#172033!important}
html[data-theme="light"] .messages article.own>div{background:#7048d7!important;border-color:#7048d7!important;color:#fff!important}
html[data-theme="light"] .game-art{border-color:#dfe5ee!important}
html[data-theme="light"] .top-actions-new:before{background:#effbf4!important;border-color:#bee6ce!important;color:#19894a!important}
html[data-theme="light"] .global-search:after{background:#f0f2f6!important;color:#59677c!important}

.top-actions-new:before{content:"●  Синхронизация";display:flex;align-items:center;padding:8px 11px;border:1px solid #234134;border-radius:9px;background:#0d1d1a;color:#52dc8c;font-size:8px;font-weight:700;animation:liveGlow 1.8s infinite}@keyframes liveGlow{50%{box-shadow:0 0 12px rgba(53,223,131,.18)}}
.homework-target{display:grid;gap:4px;padding:13px 14px;border:1px solid #30415a;border-radius:9px;background:#101d2d}.homework-target strong{color:#fff;font-size:11px}.homework-target small{color:#8492a7;font-size:8px}
@media(max-width:720px){.top-actions-new:before{display:none}}

html[data-theme="light"] .top-actions-new:before{background:#effbf4!important;border-color:#bee6ce!important;color:#19894a!important}
html[data-theme="light"] .homework-target{background:#fff!important;border-color:#dfe5ee!important;color:#172033!important}
html[data-theme="light"] .homework-target strong{color:#172033!important}
html[data-theme="light"] .homework-target small{color:#6d7b90!important}

/* Final light-shell overrides (must remain last). */
html[data-theme="light"] .admin-welcome>span,
html[data-theme="light"] .catalog-count,
html[data-theme="light"] .page-head>span,
html[data-theme="light"] .page-head>div+span{background:#fff!important;border:1px solid #d9e1ec!important;color:#526177!important;box-shadow:0 6px 18px rgba(38,54,84,.04)!important}
html[data-theme="light"] .entity-table button,
html[data-theme="light"] .notes-grid footer button,
html[data-theme="light"] .notification-list button,
html[data-theme="light"] .saved-list button,
html[data-theme="light"] .icon-button{background:#fff!important;border:1px solid #d8e0eb!important;color:#65748a!important;box-shadow:0 4px 12px rgba(38,54,84,.04)!important}
html[data-theme="light"] .entity-table [data-delete],
html[data-theme="light"] button.icon-danger{background:#fff7f8!important;border-color:#efcbd0!important;color:#c84f5b!important}
html[data-theme="light"] .activity-timeline article>span,
html[data-theme="light"] .admin-alerts>div>span,
html[data-theme="light"] .admin-recent>div>span,
html[data-theme="light"] .dark-list>div>span,
html[data-theme="light"] .activity-icon{background:#f0eaff!important;border-color:#dfd3fa!important;color:#7046dc!important}
html[data-theme="light"] .entity-table,
html[data-theme="light"] .entity-table article,
html[data-theme="light"] .activity-timeline,
html[data-theme="light"] .activity-timeline article{background:#fff!important;border-color:#dce3ed!important;color:#172033!important}
html[data-theme="light"] .product-content,
html[data-theme="light"] .product-main{background:#f7f9fd!important;color:#172033!important}
