@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;600;700;800;900&family=Manrope:wght@400;500;600;700&display=swap');
:root{--bg:#11141b;--panel:#1b1f28;--line:#30343e;--muted:#a1a8b6;--text:#f3f5f9;--lime:#d2f86b;--purple:#aa99ff;--font:'Manrope','Noto Sans SC',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px var(--font);line-height:1.6}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button{border:0}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--lime);outline-offset:4px}::selection{background:var(--lime);color:var(--bg)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:#4b5365;border-radius:6px}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-defs{position:absolute;width:0;height:0}.sidebar{position:fixed;inset:0 auto 0 0;width:220px;padding:35px 20px 20px;border-right:1px solid #282c36;display:flex;flex-direction:column;background:#151820;z-index:10}.brand{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:800;letter-spacing:1px}.brand small{display:block;font-size:8px;color:#a9b0be;letter-spacing:1.6px;font-weight:500;margin-top:3px}.brand-mark{font-size:32px;font-weight:700;line-height:44px;color:var(--lime);position:relative;letter-spacing:-4px}.brand-mark span{font-size:24px;position:relative;top:-6px;left:1px}.nav-label{font-size:11px;color:#7f8797;margin:48px 16px 14px}.nav-item{display:flex;width:100%;gap:13px;align-items:center;background:none;border-radius:9px;padding:13px 16px;margin-bottom:8px;color:#aab1c0;text-align:left;transition:background .2s,color .2s}.nav-item:hover{background:#222733;color:white}.nav-item.active{color:var(--lime);background:#2a3325}.nav-item>span:last-child{margin-left:auto;font-size:11px}.tiny-dot{width:5px;height:5px;border-radius:50%;background:var(--lime)}.orbit-mini{display:block;color:var(--purple);font-size:44px;line-height:1}.note-line{display:block;background:#363b46;width:28px;height:2px;margin-top:25px}.admin-entry{margin-top:70px;font-size:13px}.admin-entry small{margin-left:auto}.sidebar-foot{margin-top:auto;border-top:1px solid #2b2f38;padding:18px 14px 0;color:#737e91;font-size:10px;display:flex;justify-content:space-between}.app{margin-left:220px}.topbar{height:88px;padding:0 40px;border-bottom:1px solid #292e38;display:flex;align-items:center;justify-content:space-between}.breadcrumbs{font-size:12px;color:#8993a4}.breadcrumbs span{margin:0 14px;color:#48515f}.breadcrumbs strong{color:#d2d7e0;font-weight:400}.top-actions{display:flex;align-items:center;gap:23px}.demo-tag{font-size:10px;color:#b1b8c7;border:1px solid #3c4350;border-radius:5px;padding:3px 8px}.energy{display:flex;gap:7px;align-items:center;color:#aab2c1;font-size:12px}.energy svg{color:var(--lime);width:16px}.energy b{font-size:17px;color:white}.profile{background:none;display:flex;align-items:center;gap:10px;font-size:12px}.avatar{background:#2c3342;border-radius:50%;width:33px;height:33px;display:grid;place-items:center;color:#b8c1d5}.avatar svg{width:16px}.mobile-brand,.mobile-nav{display:none}main{max-width:1540px;margin:auto;padding:35px 40px 20px}.welcome{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:27px}.welcome h1{font-size:29px;letter-spacing:-1px;line-height:1.4;margin:0 0 8px;font-weight:700}.welcome h1 span{color:var(--lime)}.welcome p{color:var(--muted);margin:0;font-size:12px}.welcome-time{color:#9fa8b9;font-size:11px;display:flex;gap:7px;align-items:center;padding-top:10px}.welcome-time i{width:6px;height:6px;background:var(--lime);border-radius:50%}.subject-tabs{display:flex;gap:8px;background:#1b1f28;border-radius:10px;padding:5px;width:max-content;margin-bottom:28px}.subject-tabs button{padding:11px 22px;border-radius:7px;background:transparent;color:#a8afbe;font-weight:500;font-size:13px;display:flex;gap:11px;align-items:center}.subject-tabs button span{font:10px var(--font);opacity:.65}.subject-tabs button.active{background:var(--lime);color:#1c2813}.dashboard{display:grid;grid-template-columns:minmax(0,1fr) 278px;gap:24px}.map-panel{background:#191e29;border:1px solid #2e3542;border-radius:16px;overflow:hidden;position:relative;min-height:535px}.map-heading{position:relative;z-index:2;padding:25px 27px;display:flex;align-items:flex-start;justify-content:space-between}.map-heading h2{font-size:17px;margin:0 0 5px}.map-heading p{font-size:11px;margin:0;color:#9da6b9}.map-heading .chapter{color:#b4a8ec;background:#2c2940;border:1px solid #443c61;padding:4px 10px;border-radius:5px;font-size:10px;white-space:nowrap}.map-space{height:345px;position:relative;margin-top:-10px;isolation:isolate;background:radial-gradient(ellipse at 40% 45%,#35375670,transparent 65%)}.star-field{position:absolute;inset:0;background-image:radial-gradient(circle,#b3b9d14d 1px,transparent 1px);background-size:47px 43px;mask-image:linear-gradient(transparent,#000 20%,#000 80%,transparent);opacity:.45}.map-orbit{position:absolute;width:440px;height:210px;border:1px solid #464c6533;border-radius:50%;left:50%;top:48%;transform:translate(-50%,-50%) rotate(-19deg)}.map-orbit.two{width:600px;height:300px;transform:translate(-50%,-50%) rotate(-19deg)}.route{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.route path{stroke:#586079;stroke-width:2;stroke-dasharray:5 7;fill:none}.route .lit-route{stroke:var(--lime);stroke-width:3;stroke-dasharray:170;stroke-dashoffset:170;animation:route-in 1.7s .3s ease-out forwards;opacity:.9}.island{position:absolute;width:112px;height:112px;transform:translate(-50%,-50%);background:none;padding:0;z-index:2;outline-offset:10px!important}.island .platform{position:absolute;width:94px;height:63px;left:9px;top:30px;border-radius:19px;transform:rotate(-28deg) skewX(27deg);background:#333a4d;box-shadow:-8px 10px 0 #252b3c,-15px 20px 0 #1c2230,0 25px 40px #05081080;border:1px solid #5d6683;transition:transform .35s,background .35s}.island .core{position:absolute;left:50%;top:9px;transform:translateX(-50%);height:58px;width:58px;display:grid;place-items:center;background:#41485b;border:1px solid #737b91;border-radius:16px;box-shadow:0 8px 0 #282e3e;color:#bbc1cf}.island .core svg{width:29px;height:29px}.island.current .platform{background:#68873b;border-color:#b5e275;box-shadow:-8px 10px 0 #40562d,-15px 20px 0 #293b2c,0 25px 40px #0b160f80}.island.current .core{background:var(--lime);color:#273c17;border-color:#e7ffb1;box-shadow:0 8px 0 #8ead4d;animation:float 3s ease-in-out infinite}.island.current:before{content:'';position:absolute;inset:5px -10px -15px;border:1px solid #c5ef6740;border-radius:50%;transform:scaleY(.6);animation:pulse 3s infinite}.island.done .core{background:#9783e6;color:white}.island:hover .platform{transform:translateY(-5px) rotate(-28deg) skewX(27deg)}.island-label{position:absolute;top:122px;left:50%;transform:translateX(-50%);min-width:135px;font-size:11px;white-space:nowrap;text-align:center;color:#c2cad8}.island-label small{display:block;color:#8490a5;font-size:9px;margin-top:3px}.island.current .island-label{color:var(--lime)}.island .flag{position:absolute;top:-31px;left:50%;transform:translateX(-50%);font-size:10px;color:#18250b;background:var(--lime);padding:3px 10px;border-radius:5px;white-space:nowrap}.island .flag:after{content:'';position:absolute;border:5px solid transparent;border-top-color:var(--lime);top:100%;left:45%}.map-caption{position:absolute;bottom:15px;right:25px;color:#7f8aa1;font-size:9px;letter-spacing:1px}.map-bottom{margin:0 24px 22px;padding-top:20px;border-top:1px solid #323947;display:flex;align-items:center;justify-content:space-between;gap:16px}.map-bottom strong{display:block;font-size:12px}.map-bottom p{font-size:10px;color:#a4aec0;margin:5px 0 0}.primary{display:flex;align-items:center;justify-content:center;gap:16px;background:var(--lime);color:#203015;border-radius:8px;padding:13px 21px;font-size:12px;font-weight:700;white-space:nowrap;transition:background .2s,transform .2s}.primary:hover{background:#e0ff96;transform:translateY(-2px)}.primary svg{width:17px}.secondary{background:#2c3342;padding:12px 20px;border-radius:8px;color:#e1e6ef}.side-rail{display:flex;flex-direction:column;gap:20px}.mission{background:var(--lime);color:#24331b;border-radius:14px;padding:23px;position:relative;overflow:hidden;min-height:222px}.mission-top{display:flex;align-items:center;justify-content:space-between;font-size:11px}.mission-top span{background:#b6da54;border-radius:5px;padding:3px 7px;font-size:9px}.mission h2{font-size:24px;letter-spacing:-.5px;line-height:1.5;margin:18px 0 8px}.mission p{font-size:11px;max-width:170px;margin:0;color:#465a2e}.mission-decor{position:absolute;right:-20px;bottom:10px;font-size:110px;line-height:1;color:#b8de58;transform:rotate(15deg)}.mission-footer{position:relative;display:flex;gap:6px;align-items:center;margin-top:25px;font-size:10px}.mission-footer svg{width:14px}.journey{padding:20px 22px;background:#1b202b;border-radius:14px;border:1px solid #303744;flex:1}.section-line{display:flex;align-items:center;justify-content:space-between}.section-line h3{font-size:13px;margin:0}.section-line>span{color:#8c97a9;font-size:9px}.journey-count{font-size:32px;font-weight:600;line-height:1.4;margin-top:15px}.journey-count span{font-size:12px;color:#a1acbd;font-weight:400}.progress-track{background:#353c49;height:5px;border-radius:4px;overflow:hidden;margin:14px 0}.progress-track i{display:block;background:var(--purple);height:100%;border-radius:4px;transition:opacity .8s}.journey p{font-size:10px;color:#a0aabd;margin:0}.journey-row{border-top:1px solid #303744;margin-top:19px;padding-top:15px;display:flex;justify-content:space-between;font-size:10px;color:#aab2c1}.journey-row strong{color:#e0e5ef}.bottom-section{margin-top:27px}.chapter-list{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:14px}.chapter-item{display:flex;align-items:center;gap:15px;border:1px solid #303641;padding:17px 19px;border-radius:12px;background:#181c25;text-align:left}.chapter-symbol{color:#aa9de1;background:#2b2840;border-radius:10px;width:43px;height:43px;display:grid;place-items:center}.chapter-symbol.lime{background:#2c3627;color:var(--lime)}.chapter-item strong{display:block;font-size:12px;font-weight:500}.chapter-item small{font-size:10px;color:#95a0b3}.chapter-item>svg{margin-left:auto;color:#8893a6;width:16px}.page-footer{max-width:1540px;padding:12px 40px 25px;margin:auto;display:flex;justify-content:space-between;color:#6f7a8e;font-size:9px}.backdrop{position:fixed;inset:0;z-index:40;background:#080b12c9;backdrop-filter:blur(10px);display:grid;place-items:center;padding:22px;animation:fade-in .2s}.modal{width:min(100%,610px);max-height:90dvh;overflow:auto;padding:32px;background:#1c2230;border:1px solid #414a5e;border-radius:19px;box-shadow:0 30px 90px #0007;position:relative;animation:modal-in .35s cubic-bezier(.16,1,.3,1)}.close{position:absolute;top:15px;right:17px;background:none;color:#a7b0c1;font-size:24px;width:30px;height:30px;line-height:1}.modal h2{margin:10px 0 14px;font-size:25px}.modal p{color:#adb8cb;font-size:12px}.quiz-meta{display:flex;gap:12px;color:var(--lime);font-size:11px;margin-right:25px}.quiz-meta span:last-child{color:#9eaabd;margin-left:auto}.question{font-size:18px!important;line-height:1.9;color:white!important;margin:24px 0}.options{display:grid;gap:10px;margin-bottom:18px}.option{display:flex;align-items:center;gap:14px;text-align:left;background:#252d3e;border:1px solid #414b60;border-radius:10px;padding:14px;font-size:13px;line-height:1.6}.option b{display:grid;place-items:center;width:28px;height:28px;border:1px solid #59657b;border-radius:7px;font-size:12px;flex-shrink:0}.option.selected{border-color:var(--lime);background:#333e2b}.option.correct{background:#30492e;border-color:#badf83}.option.wrong{background:#4a2e3b;border-color:#e699a9}.option:disabled{cursor:default;color:inherit}.explanation{padding:14px 16px;background:#141a24;border-radius:10px;margin:16px 0;color:#b6c2d6;font-size:12px}.explanation strong{color:var(--lime)}.quiz-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:24px}.quiz-footer small{color:#92a0b4;font-size:10px}.primary:disabled{opacity:.4;cursor:not-allowed;transform:none}.result{text-align:center;padding-top:18px}.trophy{width:90px;height:90px;margin:0 auto 25px;border-radius:26px;background:#394a29;color:var(--lime);display:grid;place-items:center;transform:rotate(-7deg);animation:trophy-in .7s cubic-bezier(.16,1,.3,1)}.trophy svg{width:50px;height:50px}.result h2{font-size:32px}.result .result-scores{display:flex;justify-content:center;gap:45px;margin:26px 0}.result-scores strong{display:block;color:var(--lime);font-size:27px}.result-scores small{font-size:10px;color:#a6b1c6}.result .primary{width:100%;margin-top:20px}.confetti{position:fixed;top:-20px;width:8px;height:15px;background:var(--lime);z-index:50;pointer-events:none;animation:fall 2.6s ease-in forwards}.auth-modal{max-width:430px}.auth-modal label{display:block;font-size:12px;margin:20px 0 8px}.auth-modal input[type=tel],.auth-modal input[type=text]{width:100%;border:1px solid #46516a;background:#151c28;color:white;padding:13px;border-radius:8px;caret-color:var(--lime);min-width:0}.auth-modal input::placeholder{color:#8996ae}.code-row{display:flex;gap:9px}.code-row button{font-size:11px;white-space:nowrap}.agreement{display:flex!important;gap:9px;align-items:flex-start;color:#aebad0;font-size:10px!important;line-height:1.8;margin-bottom:20px!important}.agreement input{accent-color:var(--lime);margin-top:4px}.agreement button{background:none;padding:0;color:var(--lime);font-size:10px}.auth-modal .primary{width:100%}.form-error{min-height:22px;color:#ffafbc;font-size:11px;margin-top:8px}.auth-hint{font-size:10px!important;background:#292e40;padding:10px;border-radius:7px}.toast{position:fixed;bottom:35px;left:50%;transform:translate(-50%,20px);padding:12px 20px;background:#e1ebd4;color:#23351b;border-radius:9px;z-index:80;opacity:0;pointer-events:none;transition:.25s;font-size:12px;max-width:90vw}.toast.show{opacity:1;transform:translate(-50%,0)}.admin-summary{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:12px;margin:25px 0}.admin-stat{padding:23px;border-right:1px solid var(--line)}.admin-stat:last-child{border:0}.admin-stat p{font-size:12px;color:var(--muted);margin:0}.admin-stat strong{font-size:34px;display:block;margin-top:8px}.admin-stat small{color:var(--lime);font-size:10px}.admin-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:22px 0 15px}.admin-toolbar input,.admin-toolbar select{padding:11px 14px;background:#202632;border:1px solid #3c4657;border-radius:8px;color:#e0e6f1;min-width:0}.admin-toolbar input{flex:1}.table-wrap{overflow:auto;border:1px solid #343d4c;border-radius:12px}table{width:100%;border-collapse:collapse;white-space:nowrap;text-align:left;font-size:12px}th{padding:16px;color:#9daac0;font-size:11px;background:#202632;font-weight:400}td{padding:18px 16px;border-top:1px solid #303744;font-variant-numeric:tabular-nums}.status{color:var(--lime);background:#2c3928;border-radius:5px;padding:4px 8px;font-size:10px}.status.inactive{background:#303246;color:#bbb3ec}.table-foot{padding:14px 0;color:#8f9cb0;font-size:10px}.empty-state{border:1px dashed #3d485c;border-radius:14px;text-align:center;padding:70px 25px;background:#181e29}.empty-state>svg{width:48px;height:48px;color:var(--purple)}.empty-state h2{font-size:21px}.empty-state p{color:#a3b0c4;font-size:13px}.empty-state button{margin:25px auto 0}.badge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}.badge{background:#1d2431;border-radius:14px;padding:30px;text-align:center;border:1px solid #394256}.badge.locked{opacity:.5}.badge svg{width:50px;height:50px;color:var(--lime)}.badge h3{font-size:16px}.badge p{font-size:11px;color:var(--muted)}.error-entry{padding:25px;background:#1b2230;border-radius:12px;margin:15px 0}.error-entry h3{font-size:15px;font-weight:500}.error-entry p{color:#aab7ce;font-size:12px}
@keyframes float{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-7px)}}@keyframes pulse{0%,100%{opacity:.4;transform:scaleY(.6) scale(.95)}50%{opacity:1;transform:scaleY(.6) scale(1.12)}}@keyframes route-in{to{stroke-dashoffset:0}}@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes modal-in{from{opacity:.5;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}@keyframes trophy-in{from{transform:translateY(20px) rotate(-20deg) scale(.6)}to{transform:rotate(-7deg)}}@keyframes fall{to{transform:translate(var(--drift),105dvh) rotate(660deg);opacity:0}}
@media(min-width:1500px){main{padding-top:45px}.map-panel{min-height:580px}.map-space{height:385px}.sidebar{width:240px}.app{margin-left:240px}.dashboard{grid-template-columns:minmax(0,1fr) 300px}.welcome h1{font-size:34px}}
@media(max-width:1150px){.sidebar{width:185px;padding-left:12px;padding-right:12px}.brand{font-size:17px}.app{margin-left:185px}.topbar{padding:0 25px}main{padding:28px 25px 15px}.dashboard{grid-template-columns:minmax(0,1fr) 230px;gap:17px}.mission{padding:20px}.top-actions{gap:13px}.map-heading{padding:23px 20px}.map-bottom{margin:0 20px 22px}.map-bottom p{max-width:180px}.island{transform:translate(-50%,-50%) scale(.85)}.map-orbit{width:340px}.map-orbit.two{width:450px}.page-footer{padding-left:25px;padding-right:25px}}
@media(max-width:950px){.sidebar{width:175px}.app{margin-left:175px}.dashboard{grid-template-columns:1fr}.side-rail{display:grid;grid-template-columns:1fr 1fr}.mission{min-height:210px}.map-panel{min-height:530px}.map-space{height:345px}.island{transform:translate(-50%,-50%)}.demo-tag{display:none}.welcome-time{display:none}.top-actions{gap:15px}.chapter-list{gap:12px}.chapter-item{padding:14px}.page-footer{gap:15px}.badge-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.sidebar{display:none}.app{margin-left:0}.topbar{height:70px;padding:0 20px}.breadcrumbs{display:none}.mobile-brand{display:block;font-size:18px;font-weight:700;letter-spacing:.5px}.mobile-brand span{color:var(--lime);margin-left:5px}.profile>span:last-child{display:none}.top-actions{gap:13px}.energy{font-size:10px;gap:4px}.energy b{font-size:15px}.avatar{width:30px;height:30px}main{padding:25px 18px 15px}.welcome{margin-bottom:23px}.welcome h1{font-size:26px;letter-spacing:-.6px}.welcome p{font-size:11px;max-width:300px}.subject-tabs{display:flex;width:100%;margin-bottom:20px}.subject-tabs button{flex:1;justify-content:center;padding:11px 8px;gap:8px;font-size:12px}.subject-tabs button span{font-size:9px}.map-panel{min-height:510px;border-radius:14px}.map-heading{padding:20px 18px}.map-heading h2{font-size:15px}.map-heading p{font-size:10px}.map-heading .chapter{font-size:9px;padding:3px 6px}.map-space{height:320px;margin-top:-5px}.island{transform:translate(-50%,-50%) scale(.79)}.map-orbit{width:260px;height:170px}.map-orbit.two{width:360px;height:255px}.map-bottom{margin:0 17px 18px;padding-top:18px;gap:10px}.map-bottom strong{font-size:11px}.map-bottom p{max-width:150px;font-size:9px}.map-bottom .primary{padding:12px 14px;font-size:11px;gap:9px}.map-caption{right:15px;font-size:8px}.side-rail{gap:12px}.mission{padding:18px;min-height:210px}.mission h2{font-size:21px;margin-top:17px}.mission p{font-size:10px;max-width:135px}.mission-top{font-size:10px}.mission-top span{font-size:8px;padding:2px 4px}.mission-decor{font-size:90px;right:-25px;bottom:20px}.mission-footer{font-size:9px;margin-top:20px}.journey{padding:18px 15px}.section-line h3{font-size:12px}.section-line>span{font-size:8px}.journey-count{font-size:29px;margin-top:20px}.journey p{font-size:9px}.journey-row{font-size:9px;padding-top:12px;margin-top:20px}.chapter-list{grid-template-columns:1fr;gap:10px}.chapter-item{padding:14px 17px}.bottom-section{margin-top:23px}.page-footer{padding:8px 20px 90px;font-size:8px;gap:8px}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:calc(66px + env(safe-area-inset-bottom));padding:7px 15px env(safe-area-inset-bottom);background:#191e28f7;border-top:1px solid #343c4c;z-index:20;justify-content:space-around}.mobile-nav button{background:none;color:#8c99ad;font-size:9px;display:flex;align-items:center;flex-direction:column;gap:3px;padding:5px 20px}.mobile-nav button.active{color:var(--lime)}.mobile-nav svg{width:20px;height:20px}.modal{padding:28px 22px;border-radius:16px;max-height:88dvh}.backdrop{padding:14px}.modal h2{font-size:22px}.question{font-size:16px!important}.quiz-meta{font-size:10px}.quiz-footer small{max-width:135px}.result h2{font-size:28px}.result .result-scores{gap:30px}.admin-summary{margin:20px 0}.admin-stat{padding:15px 12px}.admin-stat p{font-size:10px}.admin-stat strong{font-size:26px}.admin-stat small{font-size:8px}.admin-toolbar{gap:8px}.admin-toolbar input{width:100%;flex-basis:100%}.admin-toolbar select{flex:1;font-size:11px}.admin-toolbar .primary{font-size:11px;padding:12px}.badge-grid{gap:12px}.badge{padding:25px 12px}.badge h3{font-size:14px}.toast{bottom:85px}.empty-state{padding:50px 20px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition:none!important}.route .lit-route{stroke-dashoffset:0}}


@media(max-width:650px){.island[data-level='4'] .island-label{transform:translateX(-65%)}}

.question-type-row{display:flex;justify-content:space-between;gap:15px;margin-top:22px;font-size:11px;color:#aab8cd}.question-type-row #quiz-time{color:var(--lime);font-variant-numeric:tabular-nums;white-space:nowrap}

.island-label{width:135px;max-width:135px;overflow:hidden;text-overflow:ellipsis}.island-label small{overflow:hidden;text-overflow:ellipsis}

.auth-modal input[type=password]{width:100%;border:1px solid #46516a;background:#151c28;color:white;padding:13px;border-radius:8px;caret-color:var(--lime)}.auth-tabs{margin-top:20px}.auth-tabs button{padding:9px 15px}.admin-header{height:auto;min-height:88px;flex-wrap:wrap;padding-top:18px;padding-bottom:18px}#admin-server-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}#admin-server-actions button{font-size:10px}@media(max-width:600px){.admin-header{min-height:75px;padding-top:12px;padding-bottom:12px}#admin-server-actions{gap:12px}}

.map-scroll{max-height:620px;overflow:auto;overscroll-behavior:contain}.map-scroll .map-space{margin-top:0;min-height:345px}.island[data-level="4"] .island-label{transform:translateX(-50%)}@media(max-width:650px){.map-scroll{max-height:480px}}

.mobile-nav button{flex:1;padding:5px 6px}.resume-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;margin:0 0 23px;border:1px solid #465441;background:#242e29;border-radius:12px}.resume-strip strong{font-size:13px;color:#e5f3dd}.resume-strip p{margin:5px 0 0;color:#b7c9bc;font-size:11px}.resume-actions,.unfinished-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.resume-actions button,.unfinished-actions button{font-size:11px;padding:10px 14px}.unfinished-entry{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;margin-bottom:12px;background:#1b2230;border:1px solid #354052;border-radius:12px}.unfinished-entry h3{font-size:15px;margin:12px 0 4px}.unfinished-entry p{font-size:11px;color:#aab9cf;margin:0}.type-tag{background:#292f41;color:#c5bbef;padding:4px 7px;border-radius:5px;font-size:10px}.collection-summary{color:#aebbd0;font-size:11px;margin-bottom:18px}.collection-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}.collection-heading small{color:#b8aaf4}.collection-heading .text-action,.sync-attempt{background:none;color:var(--lime);font-size:11px;padding:4px 0}.favorite-actions .secondary{font-size:11px;padding:9px 13px;margin-top:5px}.question-heading{display:flex;align-items:flex-start;gap:15px}.question-heading .question{flex:1}.favorite-toggle{background:#2a3443;color:#ccd6e6;border:1px solid #4a5668;border-radius:8px;padding:8px 10px;font-size:11px;display:flex;align-items:center;gap:5px;white-space:nowrap;margin-top:25px}.favorite-toggle svg{width:16px;height:16px}.favorite-toggle.active{color:var(--lime);background:#35432b;border-color:#8fae53}.favorite-toggle.active svg{fill:var(--lime)}.sync-attempt{margin-top:16px}.learning-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:28px 0}.learning-metrics>div{background:#1b2230;border:1px solid #354052;border-radius:12px;padding:20px}.learning-metrics span,.learning-metrics small{display:block;color:#aab8ce;font-size:11px}.learning-metrics strong{display:block;font-size:31px;margin:8px 0 3px}.stats-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:18px}.stats-panel{padding:22px;background:#1b2230;border:1px solid #354052;border-radius:12px}.stats-panel h2{font-size:14px;margin:0}.stats-panel .field-help{color:#aab9cd;font-size:11px}.day-chart{height:210px;display:grid;grid-template-columns:repeat(7,1fr);gap:12px;margin-top:24px}.day-column{display:flex;flex-direction:column;text-align:center;align-items:center;gap:8px;font-size:10px;color:#aebbd0}.day-column>span{color:#e1edda}.day-track{height:150px;width:min(28px,100%);background:#303b48;border-radius:6px;display:flex;align-items:end;overflow:hidden}.day-track i{width:100%;background:var(--lime);border-radius:6px 6px 0 0}.day-column small{font-size:9px}.subject-stat{padding:20px 0;border-bottom:1px solid #344052}.subject-stat:last-child{border:0}.subject-stat>div:first-child{display:flex;justify-content:space-between;gap:10px}.subject-stat strong{font-size:12px}.subject-stat span,.subject-stat small{font-size:10px;color:#aebbd0}.subject-stat .progress-track{margin:12px 0}.subject-stat .progress-track i{background:var(--purple)}.stats-loading{padding:40px 0;color:#aab9cd;font-size:12px}.question-heading .question{min-width:0}.error-entry h3{overflow-wrap:anywhere}
@media(max-width:650px){.resume-strip{padding:15px;flex-wrap:wrap;gap:12px}.resume-actions{width:100%}.resume-actions .primary{flex:1}.unfinished-entry{padding:17px;flex-wrap:wrap;gap:12px}.unfinished-actions{width:100%}.unfinished-actions .primary{flex:1}.learning-metrics{grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.learning-metrics>div{padding:16px}.learning-metrics strong{font-size:25px}.stats-layout{grid-template-columns:1fr;gap:12px}.stats-panel{padding:18px}.day-chart{gap:8px}.favorite-toggle{padding:7px;font-size:10px;gap:3px}.favorite-toggle svg{width:14px}.question-heading{gap:8px}}

.privacy-link,.auth-text{color:var(--lime);text-decoration:underline}.auth-text{display:block;background:none;margin:12px 0;padding:0;font-size:12px}.privacy-page{max-width:760px;padding:48px 24px;color:#dce3ef}.privacy-page h2{margin-top:30px;font-size:18px}.privacy-page p{color:#b9c3d3;line-height:1.9}.privacy-page a{color:var(--lime)}.privacy-page .privacy-notice{padding:16px;border:1px solid #a48651;border-radius:10px;color:#f0d599}.code-row input{flex:1}.code-row button:disabled{opacity:.55;cursor:not-allowed}

.auth-modal{padding:24px}.auth-modal h2{margin:7px 0 8px}.auth-modal label{margin-top:13px}.auth-modal .auth-tabs{margin-top:12px;margin-bottom:16px}.auth-modal .agreement{margin-bottom:10px!important}.auth-modal .form-error{min-height:16px;margin-top:4px}

.island-label{min-width:0;width:150px;max-width:150px;white-space:normal;overflow:visible;text-overflow:clip;line-height:1.3;overflow-wrap:anywhere}.island-label small{white-space:normal}@media(max-width:600px){.island-label{width:108px;max-width:108px}}

.question-material{margin-top:18px;padding:12px 14px;background:#151c28;border:1px solid #394559;border-radius:10px;color:#c7d3e3;font-size:12px}.question-material summary{cursor:pointer;color:var(--lime);font-weight:600}.question-material div{white-space:pre-wrap;line-height:1.8;max-height:190px;overflow:auto;margin-top:10px}

.preview-chapters{display:flex;align-items:center;gap:12px;margin:-14px 0 22px;color:#aab6c7;font-size:12px;flex-wrap:wrap}.preview-chapters select{background:#202632;color:#eef3f9;border:1px solid #46516a;border-radius:8px;padding:9px 12px;max-width:100%}.preview-chapters span{color:#94a1b6}

.preview-chapters button{background:#2b3445;border:1px solid #46516a;border-radius:8px;padding:9px 12px;color:#e3ebf7;font-size:12px}
