@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-sans-3-cyrillic-ext-wght-normal-DzyfIafT.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-sans-3-cyrillic-wght-normal-BMDVbyM7.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-sans-3-greek-ext-wght-normal-BWSLJLk6.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-sans-3-greek-wght-normal-C9H9m1vD.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-sans-3-vietnamese-wght-normal-C1uRvKPU.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-sans-3-latin-ext-wght-normal-C8iNium2.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Sans 3 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-sans-3-latin-wght-normal-BqRLTx4X.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color:#000;font-synthesis:none;text-rendering:optimizelegibility;--ink:#000;--muted:#4d4d4d;--line:#d9d9d9;--surface:#fff;--canvas:#f6f6f6;--surface-soft:#f0f0f0;--emerald:#b6dc12;--emerald-dark:#87a500;--emerald-soft:#f0f8cf;--accent-contrast:#000;--coral:#000;--coral-soft:#f2f2f2;--blue-soft:#f1f1f1;--sand-soft:#f3f3f3;--field:#f0f0f0;--track:#d8d8d8;--radius:14px;--shadow:0 12px 34px #0000001a;--focus:#d1ff178c;background:#fff;font-family:"Source Sans 3 Variable",sans-serif}:root[data-theme=dark]{--ink:#fff;--muted:#bcbcbc;--line:#303030;--surface:#111;--canvas:#000;--surface-soft:#1a1a1a;--emerald:#d1ff17;--emerald-dark:#b9e600;--emerald-soft:#263000;--accent-contrast:#000;--coral:#d1ff17;--coral-soft:#191919;--blue-soft:#181818;--sand-soft:#1d1d1d;--field:#121212;--track:#3a3a3a;--shadow:0 18px 46px #0000006b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;color:var(--ink);background:var(--canvas);margin:0;transition:color .22s,background .22s}button,input{font:inherit}button{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:2px}button:disabled{cursor:not-allowed}::selection{background:var(--emerald);color:#000}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--emerald);border:3px solid var(--canvas);border-radius:10px}h1,h2,h3,p{margin-top:0}h1,h2,h3,.brand{letter-spacing:-.035em;font-family:Manrope Variable,sans-serif}h1{margin-bottom:8px;font-size:clamp(2rem,3vw,2.7rem);line-height:1.08}h2{margin-bottom:7px;font-size:1.45rem;line-height:1.2}h3{font-size:1.15rem;line-height:1.3}p{color:var(--muted);line-height:1.55}.app-shell{min-height:100vh}.sidebar{background:var(--surface);border-right:1px solid var(--line);z-index:20;flex-direction:column;width:232px;padding:25px 16px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand{white-space:nowrap;align-items:center;gap:11px;font-size:1.1rem;font-weight:800;display:flex}.brand-mark{width:39px;height:39px;color:var(--emerald-dark);place-items:center;display:grid}.brand-mark svg{width:39px;height:39px;overflow:visible}.brand-mark circle,.brand-mark path{fill:none;stroke:currentColor;stroke-width:3.2px;stroke-linecap:round;stroke-linejoin:round}.brand-mark circle:nth-child(2){fill:currentColor;stroke-width:2.4px}.side-nav{gap:8px;margin-top:42px;display:grid}.nav-item{appearance:none;width:100%;min-height:46px;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:13px;padding:0 13px;transition:background .18s,color .18s;display:flex}.nav-item:hover{background:var(--surface-soft)}.nav-item.active{color:#000;background:var(--emerald);font-weight:800}.sidebar-spacer{flex:1}.teacher-nav{border-top:1px solid var(--line);border-radius:0;margin-top:16px;padding-top:20px}.demo-note{color:#7a867f;align-items:center;gap:7px;margin:15px 10px 0;font-size:.7rem;display:flex}.demo-note.connected{color:#7fd1b2}.app-main{min-height:100vh;padding-left:232px}.page{max-width:1490px;margin:0 auto;padding:30px 34px 60px}.mobile-header,.mobile-nav{display:none}.topbar{justify-content:space-between;align-items:flex-start;gap:24px;min-height:78px;margin-bottom:18px;display:flex}.topbar h1{margin-bottom:4px}.topbar p{margin:0;font-size:1.02rem}.topbar-actions{align-items:center;gap:22px;display:flex}.streak{color:var(--coral);border-right:1px solid var(--line);align-items:center;gap:10px;padding-right:21px;display:flex}.streak span{color:var(--ink);display:grid}.streak strong{font-size:.9rem}.streak small{color:var(--muted);margin-top:1px;font-size:.72rem}.profile-button{cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;font-weight:700;display:flex}.avatar{background:var(--emerald);color:#000;border:0;border-radius:50%;place-items:center;width:42px;height:42px;font-weight:800;display:grid}.profile-menu{position:relative}.profile-button.compact{padding:0}.profile-popover{background:var(--surface);border:1px solid var(--line);z-index:80;width:245px;box-shadow:var(--shadow);border-radius:13px;padding:10px;position:absolute;top:52px;right:0}.profile-popover-title{color:var(--muted);align-items:center;gap:7px;padding:7px 8px 10px;font-size:.73rem;font-weight:700;display:flex}.profile-popover>button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;grid-template-columns:34px 1fr auto;align-items:center;gap:9px;width:100%;padding:9px 8px;display:grid}.profile-popover>button:hover{background:var(--surface-soft)}.mini-avatar{color:#000;background:var(--emerald);border-radius:50%;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.profile-popover>button>span:nth-child(2){display:grid}.profile-popover small{color:var(--muted)}.profile-popover p{border-top:1px solid var(--line);margin:5px 0 0;padding:9px 8px 0;font-size:.7rem}.profile-popover .profile-signout{border-top:1px solid var(--line);color:#a13f3f;border-radius:0;margin-top:5px;padding-top:12px}.mobile-demo-banner{display:none}.theme-toggle{border:1px solid var(--line);min-height:40px;color:var(--ink);background:var(--surface);cursor:pointer;border-radius:10px;align-items:center;gap:7px;padding:0 12px;font-weight:750;transition:border-color .18s,background .18s,transform .18s;display:inline-flex}.theme-toggle:hover{border-color:var(--emerald-dark);background:var(--emerald-soft);transform:translateY(-1px)}.theme-toggle.compact{border-radius:50%;justify-content:center;width:38px;height:38px;min-height:38px;padding:0}.mobile-header-actions{align-items:center;gap:9px;display:flex}.dashboard-banner{border-radius:var(--radius);width:100%;box-shadow:var(--shadow);background:#000;margin:0 0 14px;display:block;overflow:hidden}.dashboard-banner img{aspect-ratio:3;object-fit:cover;width:100%;height:auto;display:block}.route-panel{background:var(--field);border-radius:var(--radius);isolation:isolate;margin-bottom:14px;padding:25px 28px 20px;position:relative;overflow:hidden}.route-panel:before{content:"";opacity:.28;z-index:-1;background:url(/assets/route-map-Bf5xiwJr.png) 50% 47%/cover no-repeat;position:absolute;inset:29% 0 0}.route-panel:after{content:"";background:color-mix(in srgb, var(--field) 55%, transparent);z-index:-1;position:absolute;inset:29% 0 0}.route-heading{z-index:1;grid-template-columns:1.25fr 1fr;align-items:start;gap:40px;display:grid;position:relative}.route-heading h2{margin-bottom:4px;font-size:clamp(1.7rem,2.2vw,2.3rem)}.route-heading p{margin:0}.route-metrics{grid-template-columns:1fr 1fr;gap:26px;display:grid}.route-metric{border-left:1px solid #b8cdc4;padding-left:22px}.route-metric>span{align-items:center;gap:5px;font-size:.78rem;font-weight:700;display:flex}.route-metric strong{font-family:Manrope Variable;font-size:2.45rem;line-height:1.2;display:block}.route-metric.readiness strong{color:#000}.progress-track{background:var(--track);border-radius:10px;height:7px;display:block;overflow:hidden}.progress-track i{background:var(--emerald);border-radius:inherit;height:100%;display:block}.metric-help{z-index:1;max-width:52ch;margin:8px 0 2px auto;font-size:.76rem;line-height:1.45;position:relative}.route-stages{z-index:1;grid-template-columns:repeat(4,1fr);margin-top:17px;display:grid;position:relative}.route-line{background:#bec8c5;height:4px;position:absolute;top:19px;left:12.5%;right:12.5%}.route-line i{background:var(--emerald);width:38%;height:100%;display:block}.route-stage{text-align:center;z-index:1;place-items:center;gap:2px;display:grid}.route-dot{background:var(--surface);border:3px solid var(--muted);border-radius:50%;place-items:center;width:42px;height:42px;margin-bottom:3px;display:grid}.route-stage.done .route-dot{background:var(--emerald);color:#000;border-color:var(--surface);box-shadow:0 0 0 2px var(--emerald)}.route-stage.active .route-dot{background:var(--emerald);box-shadow:0 0 0 2px var(--emerald);border:9px solid #fff}.route-stage strong{font-size:.85rem}.route-stage small{color:var(--muted);font-size:.72rem}.continue-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:1.25fr .95fr .8fr;align-items:stretch;gap:16px;margin-bottom:14px;padding:16px 17px;display:grid}.continue-copy{padding:4px 4px 2px}.continue-copy h2{margin-bottom:19px}.module-label{color:var(--muted);align-items:center;gap:8px;font-size:.78rem;font-weight:600;display:flex}.module-label i{background:currentColor;border-radius:50%;width:3px;height:3px}.continue-copy h3{margin:5px 0 12px;font-size:clamp(1.15rem,1.7vw,1.55rem)}.lesson-meta{color:var(--muted);gap:18px;margin-bottom:16px;font-size:.78rem;display:flex}.lesson-meta span{align-items:center;gap:7px;display:flex}.primary-button,.secondary-button{cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:0 19px;font-weight:750;transition:transform .18s,background .18s;display:inline-flex}.primary-button{border:1px solid var(--emerald);background:var(--emerald);color:#000}.primary-button:hover{background:var(--emerald-dark);transform:translateY(-1px)}.secondary-button{border:1px solid var(--line);background:var(--surface);color:var(--ink)}.secondary-button:hover{background:var(--surface-soft)}.secondary-button:disabled{opacity:.45}.continue-map{object-fit:cover;object-position:center;border-radius:12px;width:100%;height:100%;min-height:165px}.lesson-outcomes{background:var(--surface-soft);border-radius:12px;align-content:center;gap:14px;padding:18px;font-size:.78rem;display:grid}.lesson-outcomes>strong{color:var(--emerald-dark)}.lesson-outcomes span{align-items:center;gap:9px;line-height:1.35;display:flex}.lesson-outcomes svg{color:var(--emerald);background:#ccebdd;border-radius:50%;flex:none;padding:2px}.dashboard-lower{grid-template-columns:1.1fr .95fr 1.15fr;gap:14px;display:grid}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:19px}.panel>h2{margin-bottom:3px}.panel>p{margin-bottom:16px;font-size:.78rem}.itinerary{margin-top:11px;position:relative}.itinerary:before{content:"";background:#b9c8c2;width:2px;position:absolute;top:31px;bottom:31px;left:12px}.itinerary-row{text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #e9ecea;grid-template-columns:30px 35px 1fr auto 18px;align-items:center;gap:10px;width:100%;min-height:65px;display:grid}.itinerary-row:first-child{border-top:0}.step-number{background:var(--muted);width:26px;height:26px;color:var(--surface);z-index:1;border-radius:50%;place-items:center;font-size:.8rem;display:grid;position:relative}.itinerary-row:first-child .step-number{background:var(--emerald)}.step-icon{background:var(--surface-soft);border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.step-copy{gap:2px;display:grid}.step-copy strong{font-size:.82rem}.step-copy small,.itinerary-row time{color:var(--muted);font-size:.7rem}.section-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.section-head h2{margin-bottom:3px}.section-head p{margin:0;font-size:.78rem}.section-head>svg,.section-head>strong{color:var(--emerald)}.metric-row{grid-template-columns:repeat(3,1fr);margin-top:31px;display:grid}.metric-row div{border-left:1px solid var(--line);gap:4px;padding:0 12px;display:grid}.metric-row div:first-child{border-left:0;padding-left:0}.metric-row strong{letter-spacing:-.04em;font-family:Manrope Variable;font-size:1.75rem}.metric-row span{color:var(--muted);font-size:.67rem;line-height:1.3}.mini-chart{height:72px;margin-top:22px;position:relative}.mini-chart.empty-chart{opacity:.35}.mini-chart svg{width:100%;height:100%;overflow:visible}.chart-area{fill:#e2f3ed}.chart-line{fill:none;stroke:var(--emerald);stroke-width:3px;stroke-linecap:round}.mini-chart span{color:var(--muted);font-size:.65rem;position:absolute;bottom:-14px}.mini-chart span:last-child{color:var(--emerald);font-weight:700;right:0}.weak-area{background:var(--coral-soft);border-radius:11px;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;padding:11px;display:grid}.weak-icon{color:#000;background:var(--emerald);border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.weak-area div{gap:2px;display:grid}.weak-area strong{font-size:.78rem}.weak-area small{color:#9c4d4a;font-size:.7rem}.weak-area button{border:1px solid var(--emerald);background:var(--emerald);color:#000;cursor:pointer;border-radius:8px;padding:7px 10px;font-size:.72rem;font-weight:700}.strengths{margin-top:14px}.subheading{font-size:.72rem;font-weight:700}.strengths>div{gap:8px;margin-top:7px;display:flex}.strengths>div span{background:var(--emerald-soft);border-radius:7px;flex:1;align-items:center;gap:6px;padding:7px 9px;font-size:.68rem;display:flex}.pending-review{border:0;border-top:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;grid-template-columns:30px 1fr auto;align-items:center;width:100%;margin-top:13px;padding:13px 0 0;display:grid}.pending-review>span{gap:2px;display:grid}.pending-review strong{font-size:.72rem}.pending-review small{color:var(--muted);font-size:.66rem}.course-summary{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);grid-template-columns:1fr .8fr;gap:40px;margin-bottom:20px;padding:25px 28px;display:grid}.course-summary span{color:var(--muted);font-size:.75rem}.course-summary h2{margin:5px 0;font-size:2.2rem}.course-summary p{color:var(--muted);max-width:58ch;margin:0}.summary-route{grid-template-columns:auto 1fr;align-self:center;align-items:center;gap:13px;display:grid}.summary-route>span{grid-column:2}.summary-route .progress-track{background:#34445a}.module-list{gap:12px;display:grid}.module-block{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.module-block.expanded{box-shadow:var(--shadow);border-color:#0000}.module-header{background:var(--surface);text-align:left;cursor:pointer;border:0;grid-template-columns:74px minmax(0,1fr) 180px 24px;align-items:center;gap:20px;width:100%;min-height:122px;padding:20px 24px;display:grid}.module-number{background:var(--emerald-soft);width:66px;height:66px;color:var(--emerald);border-radius:13px;place-items:center;font-family:Manrope Variable;font-size:1.4rem;font-weight:800;display:grid}.module-block.blue .module-number{background:var(--blue-soft);color:#337082}.module-block.sand .module-number{background:var(--sand-soft);color:#8a6b2a}.module-block.coral .module-number{background:var(--coral-soft);color:var(--coral)}.module-copy{gap:3px;display:grid}.module-copy small{color:var(--emerald);text-transform:uppercase;letter-spacing:.06em;font-weight:700}.module-copy strong{font-family:Manrope Variable;font-size:1.22rem}.module-copy>span{color:var(--muted);font-size:.82rem}.module-progress{grid-template-columns:1fr 42px;align-items:center;gap:10px;display:grid}.module-progress strong{order:2;font-size:.78rem}.module-chevron{transition:transform .2s}.expanded .module-chevron{transform:rotate(90deg)}.lesson-list{border-top:1px solid var(--line);padding:4px 24px 14px 118px}.lesson-row{text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #edf0ee;grid-template-columns:36px 1fr auto;align-items:center;gap:12px;width:100%;min-height:68px;display:grid}.lesson-row:first-child{border-top:0}.lesson-row.locked{opacity:.52}.lesson-status{background:var(--surface-soft);width:32px;height:32px;color:var(--muted);border-radius:50%;place-items:center;display:grid}.lesson-row.completed .lesson-status{background:var(--emerald);color:#000}.lesson-row.current .lesson-status{background:var(--emerald-soft);color:var(--emerald)}.lesson-title{gap:4px;display:grid}.lesson-title strong{font-size:.86rem}.lesson-title small{color:var(--muted);align-items:center;font-size:.7rem;display:flex}.lesson-action{color:var(--emerald);font-size:.75rem;font-weight:700}.floating-teacher{z-index:15;background:var(--emerald);color:#000;min-height:45px;box-shadow:var(--shadow);cursor:pointer;border:0;border-radius:24px;align-items:center;gap:8px;padding:0 18px;display:flex;position:fixed;bottom:24px;right:25px}.course-notice{z-index:18;background:var(--ink);color:#fff;width:min(540px,100% - 300px);box-shadow:var(--shadow);border-radius:12px;justify-content:space-between;align-items:center;gap:15px;padding:13px 14px;font-size:.84rem;display:flex;position:fixed;bottom:26px;left:calc(232px + 50%);transform:translate(-50%)}.course-notice>span{flex:1;gap:2px;display:grid}.course-notice>span small{color:#c8d2df;line-height:1.35}.course-notice button{color:var(--ink);cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #fff;border-radius:8px;padding:7px 10px}.course-notice .notice-secondary{color:#fff;background:0 0;border-color:#526174}.course-notice button:disabled{opacity:.6;cursor:wait}.lesson-modal-layer{z-index:100;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.lesson-modal-scrim{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#081426b8;border:0;position:absolute;inset:0}.lesson-player{background:var(--surface);border-radius:18px;width:min(960px,100%);position:relative;overflow:hidden;box-shadow:0 30px 90px #00000080}.lesson-player header{justify-content:space-between;align-items:center;gap:20px;min-height:82px;padding:17px 20px;display:flex}.lesson-player header small{color:var(--emerald);text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;font-weight:800}.lesson-player h2{margin:3px 0 0;font-size:1.25rem}.lesson-player header>button{border:1px solid var(--line);background:var(--surface);width:38px;height:38px;color:var(--ink);cursor:pointer;border-radius:10px;place-items:center;display:grid}.video-frame{aspect-ratio:16/9;background:#07111f;width:100%;position:relative}.video-frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.video-unavailable{aspect-ratio:16/9;color:#cbd5df;background:#07111f;place-items:center;display:grid}.lesson-player footer{justify-content:space-between;gap:12px;padding:16px 20px 19px;display:flex}.lesson-player footer button{flex:0 auto}.save-state{color:#2f6956;margin-top:7px;font-weight:700;display:block}.save-state.error{color:#8d5c1f}.app-loading{min-height:100vh;color:var(--muted);background:#f7f9f7;place-content:center;justify-items:center;gap:12px;display:grid}.loading-mark{background:var(--emerald);color:#000;width:66px;height:66px;font-family:var(--font-heading);letter-spacing:-.04em;box-shadow:var(--shadow);border-radius:18px;place-items:center;font-weight:800;display:grid}.access-page{background:#f5f5f5;grid-template-columns:minmax(430px,1.08fr) minmax(420px,.92fr);min-height:100dvh;display:grid;overflow:hidden}.access-story{color:#fff;isolation:isolate;background:#050505;flex-direction:column;justify-content:space-between;padding:clamp(32px,5vw,78px);display:flex;position:relative;overflow:hidden}.access-story:before{content:"";opacity:.17;filter:grayscale(.35)invert()brightness(.55)contrast(1.25);z-index:-2;background:url(/assets/route-map-green-C382CWFZ.png) 54%/cover no-repeat;position:absolute;inset:0}.access-story:after{content:"";opacity:.08;z-index:-1;background:#d1ff17;width:clamp(120px,18vw,260px);height:140%;position:absolute;top:-20%;right:-7%;transform:rotate(13deg)}.access-story>*{z-index:1;position:relative}.access-story .brand{color:#fff;align-self:flex-start}.access-story .brand-mark{color:#d1ff17;background:0 0}.access-story-copy{max-width:760px}.access-story h1{letter-spacing:-.04em;text-wrap:balance;max-width:720px;margin:18px 0 16px;font:750 clamp(2.5rem,5vw,5rem)/.98 Manrope Variable,sans-serif}.access-story p{color:#dedede;max-width:610px;margin:0;font-size:clamp(1rem,1.7vw,1.25rem);line-height:1.6}.access-story .eyebrow{color:#d1ff17}.access-story ul{color:#dfe8f2;flex-wrap:wrap;gap:22px;margin:0;padding:0;list-style:none;display:flex}.access-story li{align-items:center;gap:9px;font-size:.86rem;display:flex}.access-story li svg{color:#d1ff17}.access-form-wrap{isolation:isolate;background:#f5f5f5;place-items:center;padding:86px 32px 42px;display:grid;position:relative}.access-form-wrap:before{content:"";opacity:.16;z-index:-1;background:url(/assets/route-map-green-C382CWFZ.png) 50%/cover no-repeat;position:absolute;inset:0}.access-theme{z-index:2;position:absolute;top:26px;right:28px}.access-theme .theme-toggle{color:#000;background:#fff;border-color:#d2d2d2;justify-content:center;min-width:106px}.access-form{color:#000;background:#fff;border:1px solid #d8d8d8;border-radius:16px;width:min(100%,430px);padding:clamp(28px,4vw,40px);box-shadow:0 18px 48px #00000021}.access-lock{color:#647b00;background:#eff8c8;border-radius:14px;place-items:center;width:48px;height:48px;display:grid}.access-form h2{color:#000;margin:22px 0 5px;font-size:2rem}.access-form>p{color:#555;margin:0 0 26px}.access-form label{color:#242424;gap:7px;margin-top:16px;font-size:.82rem;font-weight:700;display:grid}.access-form input{height:48px;font:inherit;color:#000;background:#fff;border:1px solid #c8c8c8;border-radius:10px;outline:none;padding:0 13px}.access-form input::placeholder{color:#6a6a6a}.access-form input:focus{border-color:#87a500;box-shadow:0 0 0 3px #b6dc1247}.access-submit{width:100%;margin-top:23px}.access-form>small{text-align:center;color:#5b5b5b;margin-top:17px;line-height:1.4;display:block}.auth-error{color:#923d3d;background:#fff0ef;border-radius:9px;margin-top:14px;padding:10px 12px;font-size:.78rem}.exam-cta{background:var(--emerald);color:#000;border-radius:var(--radius);grid-template-columns:1fr 300px;min-height:275px;padding:28px 34px;display:grid;overflow:hidden}.exam-cta h2{margin:14px 0 6px;font-size:2rem}.exam-cta p{color:#000;max-width:58ch}.exam-icon{width:52px;height:52px;color:var(--emerald);background:#000;border-radius:14px;place-items:center;display:grid}.exam-facts{gap:20px;margin:22px 0;font-size:.75rem;display:flex}.exam-facts span{align-items:center;gap:7px;display:flex}.exam-cta .primary-button{color:var(--emerald);background:#000;border-color:#000}.exam-sheet{color:#000;background:#fff;border-radius:14px 14px 0 0;align-content:start;margin:-7px 4px -64px 20px;padding:22px;transform:rotate(3deg);box-shadow:0 20px 50px #0003}.exam-sheet-top,.exam-sheet-footer,.exam-sheet-options span{justify-content:space-between;align-items:center;display:flex}.exam-sheet-top span{letter-spacing:.08em;font-size:.68rem;font-weight:800}.exam-sheet-top strong{color:var(--emerald);background:#000;border-radius:7px;padding:5px 8px;font-size:.68rem}.exam-sheet-progress{background:#e6e6e6;border-radius:4px;height:5px;margin:14px 0 20px;overflow:hidden}.exam-sheet-progress i{background:var(--emerald);width:32%;height:100%;display:block}.exam-sheet>p{color:#000;margin-bottom:16px;font-size:.86rem;font-weight:750;line-height:1.35}.exam-sheet-options{gap:8px;display:grid}.exam-sheet-options span{border:1px solid #d8d8d8;border-radius:9px;min-height:34px;padding:5px 8px}.exam-sheet-options span>i{background:#f0f0f0;border-radius:50%;place-items:center;width:23px;height:23px;font-size:.65rem;font-style:normal;font-weight:800;display:grid}.exam-sheet-options span>b{background:#e7e7e7;border-radius:5px;width:70%;height:5px}.exam-sheet-options span.selected{border-color:var(--emerald);background:#f7fbdc}.exam-sheet-options span.selected>i{background:var(--emerald)}.exam-sheet-footer{color:#555;margin-top:15px;font-size:.65rem}.exam-sheet-footer svg{color:#000}.sim-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:14px;display:grid}.daily .section-head>span{background:var(--sand-soft);color:#755b25;border-radius:7px;padding:6px 9px;font-size:.7rem;font-weight:700}.daily-progress{align-items:center;gap:14px;margin:25px 0 20px;display:flex}.daily-progress .progress-track{flex:1}.daily-progress strong{font-size:.8rem}.history-chart{align-items:flex-end;gap:14px;height:120px;margin-top:20px;display:flex}.history-empty{min-height:136px;color:var(--muted);background:var(--surface-soft);border-radius:12px;grid-template-columns:48px 1fr;align-items:center;gap:10px 13px;margin-top:16px;padding:16px;display:grid}.history-trophy{background:var(--emerald);color:#000;border-radius:50%;place-items:center;width:48px;height:48px;display:grid;box-shadow:0 8px 20px #667c0029}.history-empty-copy{gap:2px;display:grid}.history-empty-copy strong{color:var(--ink);font-family:Manrope Variable;font-size:.94rem}.history-empty-copy span{font-size:.73rem;line-height:1.35}.history-xp{color:var(--ink);grid-column:1/-1;justify-content:space-between;font-size:.67rem;display:flex}.history-xp span{font-weight:700}.history-xp strong{font-variant-numeric:tabular-nums}.history-xp-track{background:var(--track);border-radius:7px;grid-column:1/-1;height:7px;overflow:hidden}.history-xp-track i{border-radius:inherit;background:var(--emerald);width:8%;height:100%;display:block}.history-chart div{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:6px;height:100%;display:flex}.history-chart i{background:#d5dedb;border-radius:5px 5px 2px 2px;width:100%;max-width:40px;display:block}.history-chart i.latest{background:var(--emerald)}.history-chart span{color:var(--muted);font-size:.62rem}.topic-training{margin-top:24px}.topic-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:1fr 1fr;margin-top:12px;display:grid;overflow:hidden}.topic-list button{border:0;border-bottom:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;grid-template-columns:38px 1fr auto 20px;align-items:center;gap:10px;min-height:68px;padding:0 18px;display:grid}.topic-list button:nth-child(odd){border-right:1px solid var(--line)}.topic-list button:hover{background:var(--surface-soft)}.topic-list button>span{color:var(--emerald);font-size:.7rem;font-weight:800}.topic-list button strong{font-size:.82rem}.topic-list button small{color:var(--muted);font-size:.68rem}.exam-page{max-width:1250px}.exam-header{grid-template-columns:1fr 1fr 1fr;align-items:center;margin-bottom:14px;display:grid}.text-button{cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;width:fit-content;padding:8px 0;font-weight:650;display:inline-flex}.exam-header>div{text-align:center;display:grid}.exam-header>div span{color:var(--muted);font-size:.72rem}.exam-time{font-variant-numeric:tabular-nums;justify-self:end;align-items:center;gap:7px;font-weight:700;display:flex}.exam-progress{background:#dfe5e2;height:4px;margin-bottom:26px}.exam-progress i{background:var(--emerald);height:100%;display:block}.exam-layout{grid-template-columns:minmax(0,1fr) 265px;align-items:start;gap:18px;display:grid}.question-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;min-height:565px;padding:30px;display:flex}.question-top{justify-content:space-between;align-items:center;gap:18px;display:flex}.question-top>span{color:var(--emerald);text-transform:uppercase;letter-spacing:.05em;font-size:.76rem;font-weight:800}.question-visual{border:1px solid var(--line);background:var(--surface-soft);border-radius:12px;align-content:center;place-items:center;min-height:184px;margin:22px 0 0;display:grid;overflow:hidden}.question-visual svg{filter:drop-shadow(0 9px 9px #0000001a);width:min(220px,72%);height:150px}.question-visual figcaption{color:var(--muted);margin:-5px 0 12px;font-size:.72rem}.question-visual text{text-anchor:middle;font-family:Manrope Variable,sans-serif;font-weight:900}.sign-pole{fill:none;stroke:#747474;stroke-width:7px;stroke-linecap:round}.sign-stop{fill:#d93232}.sign-inner{fill:none;stroke:#fff;stroke-width:3px}.sign-stop+.sign-inner+text{fill:#fff;font-size:19px}.sign-white,.yield-inner{fill:#fff}.sign-red-ring{fill:none;stroke:#d93232;stroke-width:8px}.speed-text{fill:#111;font-size:35px}.yield-outer{fill:#d93232}.sign-blue{fill:#2456a6}.parking-text{fill:#fff;font-size:38px}.sign-slash{fill:none;stroke:#d93232;stroke-width:9px;stroke-linecap:round}.question-visual.compact{background:var(--surface-soft);border:0;border-radius:10px;width:48px;height:48px;min-height:48px;margin:0}.question-visual.compact svg{filter:none;width:54px;height:54px;transform:translateY(7px)}.question-visual.compact figcaption{display:none}.mark-button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:9px;align-items:center;gap:7px;min-height:38px;padding:0 11px;font-size:.72rem;display:flex}.mark-button.marked{background:var(--sand-soft);color:#775d20;border-color:#dcc894}.question-panel h1{max-width:34ch;margin:30px 0 24px;font-size:1.65rem}.options{gap:10px;display:grid}.option{border:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;border-radius:11px;align-items:center;gap:13px;min-height:55px;padding:10px 14px;display:flex}.option:hover{border-color:#8ab6aa}.option span{border:1px solid #cbd3d0;border-radius:50%;place-items:center;width:30px;height:30px;font-size:.78rem;font-weight:750;display:grid}.option.selected{border-color:var(--emerald);background:var(--emerald-soft)}.option.selected span{color:#000;border-color:var(--emerald);background:var(--emerald)}.question-panel footer{justify-content:space-between;margin-top:auto;padding-top:28px;display:flex}.question-map{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:19px}.question-map>p{margin-bottom:14px;font-size:.75rem}.question-map>div{grid-template-columns:repeat(5,1fr);gap:7px;display:grid}.question-map button{aspect-ratio:1;border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:7px;font-size:.7rem}.question-map button.answered{color:#000;background:var(--emerald);border-color:var(--emerald)}.question-map button.marked{box-shadow:inset 0 -3px #e4b442}.question-map button.current{outline:2px solid var(--ink);outline-offset:1px}.question-map>span{color:var(--muted);align-items:center;gap:7px;margin-top:14px;font-size:.62rem;display:flex}.question-map>span i{background:var(--emerald);border-radius:2px;width:9px;height:9px}.question-map>span i.marked{background:#e4b442;margin-left:6px}.result-hero{background:var(--emerald-soft);border-radius:var(--radius);grid-template-columns:58px 1fr auto;align-items:center;gap:18px;margin:18px 0 14px;padding:30px;display:grid}.result-icon{width:54px;height:54px;color:var(--emerald);background:#000;border-radius:50%;place-items:center;display:grid}.result-hero h1{font-size:2rem}.result-hero p{margin:0}.score{text-align:right;display:grid}.score strong{color:var(--emerald);font-family:Manrope Variable;font-size:3rem}.score small{font-size:1rem}.score span{color:var(--muted);font-size:.74rem}.result-grid{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px;display:grid}.result-next>p{margin-bottom:16px}.result-actions{flex-wrap:wrap;gap:9px;display:flex}.wrong-review-panel{margin-bottom:14px}.wrong-review-panel .section-head>strong{background:var(--emerald-soft);color:var(--ink);border-radius:7px;align-self:start;padding:6px 9px;font-size:.7rem}.wrong-preview-list{border-top:1px solid var(--line);margin-top:14px}.wrong-preview-list article{border-bottom:1px solid var(--line);grid-template-columns:50px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:104px;padding:13px 0;display:grid}.wrong-preview-art{background:var(--surface-soft);width:48px;height:48px;color:var(--ink);font-variant-numeric:tabular-nums;border-radius:10px;place-items:center;font-weight:800;display:grid;overflow:hidden}.wrong-preview-list article>div>small{color:var(--emerald-dark);text-transform:uppercase;letter-spacing:.05em;font-weight:800}.wrong-preview-list h3{margin:3px 0 7px;font-size:.9rem}.wrong-preview-list p{flex-wrap:wrap;gap:5px 13px;margin:0;font-size:.72rem;display:flex}.wrong-preview-list p span{color:var(--muted)}.wrong-preview-list p strong{color:var(--ink)}.wrong-preview-list article>button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:9px;align-items:center;gap:7px;min-height:38px;padding:0 11px;font-size:.72rem;font-weight:700;display:flex}.wrong-preview-list article>button:hover{border-color:var(--emerald);background:var(--emerald-soft)}.wrong-all{color:var(--ink);margin-top:12px}.result-stats{gap:28px;margin-top:22px;display:flex}.result-stats span{color:var(--muted);grid-template-columns:auto auto;align-items:center;gap:6px;font-size:.75rem;display:grid}.result-stats svg{width:19px;color:var(--emerald)}.result-stats strong{color:var(--ink)}.topic-row{border-top:1px solid var(--line);grid-template-columns:190px 1fr 45px;align-items:center;gap:14px;min-height:48px;font-size:.78rem;display:grid}.topic-row:first-of-type{margin-top:14px}.topic-row strong{text-align:right}.library-tools{justify-content:space-between;align-items:center;margin:10px 0 22px;display:flex}.search{border:1px solid var(--line);background:var(--surface);border-radius:11px;align-items:center;gap:9px;width:min(430px,100%);min-height:45px;padding:0 13px;display:flex}.search input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;flex:1}.library-tools>span{color:var(--muted);font-size:.75rem}.library-section-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:17px;display:flex}.library-section-heading>div>span{color:var(--emerald-dark);text-transform:uppercase;letter-spacing:.09em;font-size:.68rem;font-weight:850}.library-section-heading h2{margin:3px 0 0}.library-section-heading p{text-align:right;max-width:390px;margin:0;font-size:.86rem}.materials-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.material-item{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);text-align:left;cursor:pointer;padding:0;transition:transform .2s,border-color .2s,box-shadow .2s;overflow:hidden}.material-item:hover{border-color:var(--emerald-dark);box-shadow:var(--shadow);transform:translateY(-3px)}.material-cover{aspect-ratio:5/3.35;isolation:isolate;flex-direction:column;align-items:flex-start;padding:20px;display:flex;position:relative;overflow:hidden}.material-cover:after{content:"";z-index:-1;background:linear-gradient(90deg,#000000eb 0%,#000000b8 48%,#00000014 100%);position:absolute;inset:0}.material-cover img{z-index:-2;object-fit:cover;object-position:center 28%;width:100%;height:100%;transition:transform .35s;position:absolute;inset:0}.material-item:hover .material-cover img{transform:scale(1.035)}.material-cover>span{color:var(--emerald);text-transform:uppercase;letter-spacing:.09em;font-size:.68rem;font-weight:850}.material-cover>strong{color:#fff;max-width:15ch;margin-top:6px;font-family:Manrope Variable;font-size:1.22rem;line-height:1.18}.material-open{color:#fff;align-items:center;gap:7px;margin-top:auto;font-size:.76rem;font-weight:750;display:inline-flex}.material-info{gap:5px;padding:15px 17px 17px;display:grid}.material-info>span{color:var(--emerald);text-transform:uppercase;letter-spacing:.06em;font-size:.65rem;font-weight:800}.material-info>strong{font-size:.96rem}.material-info p{min-height:38px;margin:0 0 4px;font-size:.77rem;line-height:1.4}.material-info small{color:var(--muted);align-items:center;gap:6px;display:flex}.library-empty{border:1px dashed var(--line);border-radius:var(--radius);min-height:230px;color:var(--muted);text-align:center;place-content:center;justify-items:center;gap:7px;display:grid}.library-empty strong{color:var(--ink)}.reader-page{background:var(--canvas);grid-template-rows:72px 42px minmax(0,1fr);height:100vh;padding:0;display:grid;overflow:hidden}.reader-header{background:var(--surface);border-bottom:1px solid var(--line);grid-template-columns:1fr minmax(0,2fr) 1fr;align-items:center;gap:20px;padding:0 24px;display:grid}.reader-back,.reader-fullscreen{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:10px;align-items:center;gap:8px;width:max-content;min-height:40px;padding:0 12px;font-weight:750;display:inline-flex}.reader-back:hover,.reader-fullscreen:hover{border-color:var(--emerald-dark);background:var(--emerald-soft)}.reader-fullscreen{justify-self:end}.reader-title{text-align:center;min-width:0;display:grid}.reader-title span{color:var(--emerald-dark);text-transform:uppercase;letter-spacing:.06em;font-size:.64rem;font-weight:800}.reader-title strong{text-overflow:ellipsis;white-space:nowrap;font-family:Manrope Variable;overflow:hidden}.reader-context{color:var(--muted);background:var(--surface-soft);border-bottom:1px solid var(--line);justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:.72rem;display:flex}.reader-context i{background:var(--line);width:1px;height:16px}.reader-context>span{color:var(--ink);font-weight:750}.pdf-native-stage{background:#242424;min-height:0;padding:12px}.pdf-native-frame{background:#fff;border:0;border-radius:8px;width:100%;height:100%;display:block}.reader-page:fullscreen{width:100%;height:100%}.errors-summary{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:42px;margin-bottom:20px;padding:24px;display:flex}.errors-summary>div{align-items:center;gap:12px;display:flex}.errors-summary>div span{color:#c7d2dc;font-size:.72rem;display:grid}.errors-summary>div strong{color:var(--ink);font-size:1.5rem}.errors-summary .primary-button{margin-left:auto}.errors-layout{grid-template-columns:1fr 330px;align-items:start;gap:18px;display:grid}.error-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:23px}.error-row{border-top:1px solid var(--line);grid-template-columns:42px 1fr auto;align-items:center;gap:15px;min-height:92px;display:grid}.error-row:first-of-type{margin-top:18px}.error-index{color:var(--coral);font-weight:800}.error-row>div>span{color:var(--coral);text-transform:uppercase;letter-spacing:.05em;font-size:.66rem;font-weight:700}.error-row h3{margin:3px 0;font-size:.9rem}.error-row small{color:var(--muted)}.error-row button{color:var(--emerald);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;font-weight:700;display:flex}.error-row.mastered{opacity:.55}.error-row.reviewing{background:#f2faf6;border-color:#7fbca5}.mastered-label{color:var(--emerald);align-items:center;gap:6px;font-size:.74rem;font-weight:700;display:flex}.errors-empty{min-height:220px;color:var(--muted);text-align:center;place-content:center;justify-items:center;gap:7px;display:grid}.errors-empty svg{color:var(--emerald)}.errors-empty strong{color:var(--ink)}.review-method{background:var(--surface-soft);border-radius:var(--radius);padding:23px}.review-method.active-review{align-self:start}.review-topic{color:var(--emerald);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:800}.active-review h2{margin-top:9px;font-size:1.05rem;line-height:1.35}.review-answer{border-radius:9px;gap:3px;margin:11px 0;padding:11px 12px;font-size:.82rem;font-weight:700;display:grid}.review-answer small{text-transform:uppercase;letter-spacing:.06em;font-size:.68rem}.review-answer.wrong{color:#7f3a35;background:#fff1ef}.review-answer.correct{color:#225f49;background:#eaf7f1}.active-review>p{color:var(--muted);font-size:.82rem;line-height:1.55}.review-actions{gap:8px;margin-top:14px;display:grid}.review-actions .primary-button,.review-actions .secondary-button{width:100%}.errors-summary .primary-button:disabled{opacity:.5;cursor:not-allowed}.review-method ol{gap:18px;margin:22px 0 0;padding:0;list-style:none;display:grid}.review-method li{gap:12px;display:flex}.review-method li>span{background:var(--emerald);color:#000;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:.72rem;font-weight:800;display:grid}.review-method li div{gap:3px;display:grid}.review-method li strong{font-size:.82rem}.review-method li p{margin:0;font-size:.72rem}.drawer-scrim{z-index:90;background:#05121c61;border:0;position:fixed;inset:0}.teacher-drawer{background:var(--surface);z-index:100;flex-direction:column;width:min(410px,100%);animation:.3s cubic-bezier(.2,.8,.2,1) drawer-in;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-18px 0 50px #00000052}@keyframes drawer-in{0%{transform:translate(100%)}}.teacher-drawer header{border-bottom:1px solid var(--line);grid-template-columns:42px 1fr 38px;align-items:center;gap:10px;min-height:76px;padding:0 18px;display:grid}.teacher-drawer header>div{gap:2px;display:grid}.teacher-drawer header small{color:var(--muted)}.teacher-icon{background:var(--emerald-soft);width:40px;height:40px;color:var(--emerald);border-radius:12px;place-items:center;display:grid}.icon-button{cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.teacher-context{background:var(--sand-soft);color:#6d5727;border-radius:10px;gap:9px;margin:16px 18px 0;padding:12px;font-size:.72rem;line-height:1.45;display:flex}.messages{flex-direction:column;flex:1;gap:12px;padding:22px 18px;display:flex;overflow:auto}.message{border-radius:12px;max-width:88%;padding:12px 14px;font-size:.78rem;line-height:1.5}.message.teacher{background:var(--surface-soft);border-radius:4px 12px 12px}.message.user{background:var(--emerald);color:#000;border-radius:12px 4px 12px 12px;align-self:flex-end}.suggestions{gap:7px;padding:0 18px 12px;display:flex;overflow-x:auto}.suggestions button{border:1px solid var(--line);background:var(--surface);white-space:nowrap;cursor:pointer;border-radius:18px;padding:7px 11px;font-size:.68rem}.composer{border:1px solid #b9c6c1;border-radius:12px;align-items:center;min-height:48px;margin:0 18px;padding:5px 5px 5px 13px;display:flex}.composer input{border:0;outline:0;flex:1;min-width:0;font-size:.76rem}.composer button{background:var(--emerald);color:#000;cursor:pointer;border:0;border-radius:9px;place-items:center;width:38px;height:38px;display:grid}.demo-disclaimer{text-align:center;margin:0;padding:10px;font-size:.62rem}@media (width>=1121px){.dashboard-page .route-panel{min-height:286px}.dashboard-page .continue-panel{min-height:242px}.dashboard-page .dashboard-lower>.panel{min-height:362px}.dashboard-page .route-metric>span,.dashboard-page .metric-help,.dashboard-page .route-stage small,.dashboard-page .module-label,.dashboard-page .lesson-meta,.dashboard-page .lesson-outcomes,.dashboard-page .panel>p,.dashboard-page .step-copy small,.dashboard-page .itinerary-row time,.dashboard-page .metric-row span,.dashboard-page .weak-area small,.dashboard-page .subheading,.dashboard-page .pending-review strong,.dashboard-page .pending-review small{font-size:.8rem}}@media (width<=1120px){.continue-panel{grid-template-columns:1.1fr 1fr}.lesson-outcomes{display:none}.dashboard-lower{grid-template-columns:1fr 1fr}.attention-panel{grid-column:1/-1}.route-heading{grid-template-columns:1fr;gap:18px}.metric-help{margin-left:0}.materials-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=780px){body{background:var(--canvas);padding-bottom:72px}.sidebar{display:none}.app-main{padding-left:0}.mobile-header{background:var(--surface);justify-content:space-between;align-items:center;height:68px;padding:0 19px;display:flex}.mobile-header .avatar{width:38px;height:38px}.mobile-demo-banner{background:var(--surface-soft);min-height:25px;color:var(--muted);justify-content:center;align-items:center;gap:6px;font-size:.69rem;display:flex}.mobile-demo-banner.connected{background:var(--emerald-soft);color:var(--ink)}.mobile-nav{z-index:50;background:var(--surface);border-top:1px solid var(--line);height:68px;padding-bottom:env(safe-area-inset-bottom);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-nav-item{color:#536279;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:.69rem;display:flex}.mobile-nav-item.active{color:#000;background:var(--emerald);font-weight:800}.page{padding:15px 16px 28px}.dashboard-banner{border-radius:12px;margin-inline:0}.dashboard-banner img{aspect-ratio:3;object-fit:contain}.topbar{min-height:auto;margin-bottom:20px}.topbar h1{font-size:2rem}.topbar p{font-size:.94rem}.topbar-actions{display:none}.route-panel{padding:22px 18px 18px}.route-heading h2{font-size:1.72rem}.route-metrics{gap:11px}.route-metric{padding-left:11px}.route-metric:first-child{border-left:0;padding-left:0}.route-metric strong{font-size:2rem}.metric-help{max-width:none;margin:11px 0 0;font-size:.73rem;display:block}.route-stages{margin:20px -7px 0}.route-line{left:12%;right:12%}.route-stage strong{font-size:.74rem}.route-stage small{font-size:.66rem}.route-dot{width:36px;height:36px}.continue-panel{flex-direction:column;padding:18px;display:flex}.continue-copy h2{margin-bottom:14px}.continue-copy .primary-button{width:100%;margin-top:3px}.continue-map{order:2;min-height:125px;max-height:150px}.dashboard-lower,.sim-grid,.result-grid,.errors-layout{grid-template-columns:1fr}.panel{padding:17px}.metric-row{margin-top:20px}.attention-panel{grid-column:auto}.course-summary{grid-template-columns:1fr;gap:22px;padding:22px}.course-summary h2{font-size:1.9rem}.module-header{grid-template-columns:52px 1fr 18px;gap:13px;min-height:105px;padding:16px}.module-number{width:50px;height:50px;font-size:1.05rem}.module-progress{grid-area:2/2/auto/3;grid-template-columns:1fr 38px}.module-chevron{grid-area:1/3/3}.lesson-list{padding:4px 16px 12px}.lesson-row{grid-template-columns:34px 1fr}.lesson-action{grid-column:2;font-size:.7rem}.floating-teacher{bottom:82px;right:15px}.course-notice{flex-wrap:wrap;width:auto;bottom:82px;left:14px;right:14px;transform:none}.course-notice>span{flex-basis:100%}.course-notice button{flex:1}.lesson-modal-layer{align-items:end;padding:0}.lesson-player{border-radius:18px 18px 0 0}.lesson-player header{min-height:76px;padding:14px 16px}.lesson-player h2{font-size:1rem}.lesson-player footer{padding:13px 14px calc(14px + env(safe-area-inset-bottom))}.lesson-player footer button{flex:1;padding:0 10px}.profile-popover{position:fixed;top:70px;right:14px}.mobile-more-scrim{z-index:48;background:#0a18302e;border:0;position:fixed;inset:0}.mobile-more-sheet{z-index:49;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:15px;padding:10px;position:fixed;bottom:78px;left:12px;right:12px}.more-sheet-head{justify-content:space-between;align-items:center;min-height:42px;padding:0 7px 3px 10px;display:flex}.more-sheet-head button{background:0 0;border:0;place-items:center;width:34px;height:34px;display:grid}.mobile-more-sheet>button{border:0;border-top:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:32px 1fr;align-items:center;gap:10px;width:100%;min-height:62px;padding:9px 10px;display:grid}.mobile-more-sheet>button>span{gap:2px;display:grid}.mobile-more-sheet>button small{color:var(--muted)}.exam-cta{grid-template-columns:1fr;padding:24px}.exam-sheet{display:none}.exam-facts{flex-direction:column;gap:9px}.topic-list{grid-template-columns:1fr}.topic-list button:nth-child(odd){border-right:0}.topic-list button{grid-template-columns:34px 1fr 20px}.topic-list button small{display:none}.exam-layout{grid-template-columns:1fr}.question-map{display:none}.exam-header{grid-template-columns:1fr 1fr}.exam-header>div{display:none}.question-panel{min-height:calc(100vh - 190px);padding:20px 17px}.question-top{align-items:flex-start}.question-top>span{max-width:45%}.mark-button{font-size:0}.mark-button svg{margin:0}.question-panel h1{margin-top:23px;font-size:1.35rem}.question-panel footer .primary-button,.question-panel footer .secondary-button{padding:0 13px}.result-hero{grid-template-columns:48px 1fr;padding:20px}.score{text-align:left;border-top:1px solid #c7ddd5;grid-column:1/-1;padding-top:14px}.result-stats{flex-direction:column;gap:10px}.result-actions{grid-template-columns:1fr;display:grid}.result-actions .primary-button,.result-actions .secondary-button{width:100%}.wrong-preview-list article{grid-template-columns:48px minmax(0,1fr);align-items:start}.wrong-preview-list article>button{grid-column:2;justify-self:start}.wrong-preview-list p{gap:4px;display:grid}.wrong-review-panel .section-head{align-items:flex-start}.topic-row{grid-template-columns:1fr 42px;padding:10px 0}.topic-row .progress-track{grid-area:2/1/auto/-1}.library-section-heading{display:block}.library-section-heading p{text-align:left;margin-top:5px}.materials-grid{grid-template-columns:1fr 1fr;gap:12px}.material-cover{padding:15px}.material-cover>strong{font-size:.92rem}.material-info>strong{font-size:.78rem}.material-info p{display:none}.reader-page{grid-template-rows:66px 36px minmax(0,1fr);height:calc(100dvh - 140px);min-height:520px}.reader-header{grid-template-columns:auto minmax(0,1fr) auto;gap:9px;padding:0 12px}.reader-back,.reader-fullscreen{justify-content:center;width:40px;padding:0}.reader-back span,.reader-fullscreen span{display:none}.reader-title strong{font-size:.8rem}.reader-title span{font-size:.56rem}.reader-context{font-size:.65rem}.reader-context i,.reader-context>span{display:none}.pdf-native-stage{padding:5px}.errors-summary{grid-template-columns:1fr 1fr;gap:18px;display:grid}.errors-summary .primary-button{grid-column:1/-1;margin-left:0}.review-method{order:-1}}@media (width<=900px){.access-page{grid-template-columns:1fr}.access-story{gap:48px;min-height:310px;padding:26px 24px 38px}.access-story:before{opacity:.14;background-position:50%}.access-story:after{width:170px;right:-70px}.access-story h1{max-width:13ch;font-size:clamp(2.25rem,10vw,3.65rem)}.access-story p{max-width:52ch}.access-story ul{display:none}.access-form-wrap{padding:82px 18px max(46px, env(safe-area-inset-bottom))}.access-theme{top:22px;right:18px}.access-form{padding:28px 22px}}@media (width<=410px){.brand{font-size:1rem}.route-metric>span{min-height:31px;font-size:.74rem}.route-stage strong{font-size:.69rem}.itinerary-row{grid-template-columns:27px 31px 1fr auto 14px;gap:7px}.itinerary-row time{display:none}.strengths>div{flex-direction:column}.materials-grid{grid-template-columns:1fr}}:root[data-theme=dark] .route-panel:before{opacity:.12;filter:grayscale()}:root[data-theme=dark] .route-panel:after{background:#121212bd}:root[data-theme=dark] .route-metric{border-color:#3d3d3d}:root[data-theme=dark] .route-metric.readiness strong{color:var(--emerald)}:root[data-theme=dark] .route-stage.active .route-dot{border-color:var(--surface)}:root[data-theme=dark] .continue-map{filter:none}:root[data-theme=dark] .brand-mark{color:var(--emerald)}:root[data-theme=dark] .chart-area{fill:#263000}:root[data-theme=dark] .itinerary-row{border-color:var(--line)}:root[data-theme=dark] .weak-area,:root[data-theme=dark] .result-hero,:root[data-theme=dark] .error-row.reviewing,:root[data-theme=dark] .option.selected{background:var(--emerald-soft)}:root[data-theme=dark] .weak-area small,:root[data-theme=dark] .active-review>p{color:var(--muted)}:root[data-theme=dark] .course-notice{border:1px solid var(--line);background:#111}:root[data-theme=dark] .course-notice button{background:var(--emerald);border-color:var(--emerald);color:#000}:root[data-theme=dark] .course-notice .notice-secondary{color:#fff;background:0 0;border-color:#555}:root[data-theme=dark] .module-block.blue .module-number,:root[data-theme=dark] .module-block.sand .module-number,:root[data-theme=dark] .module-block.coral .module-number{background:var(--emerald-soft);color:var(--emerald)}:root[data-theme=dark] .exam-sheet{color:#000;background:#f4f4f4}:root[data-theme=dark] .material-cover img{filter:saturate(.75)brightness(.72)}:root[data-theme=dark] .review-answer.wrong{color:#fff;background:#242424}:root[data-theme=dark] .review-answer.correct{color:#000;background:var(--emerald)}:root[data-theme=dark] .access-story{color:#fff;background:#000}:root[data-theme=dark] .access-page,:root[data-theme=dark] .access-form-wrap{background:#090909}:root[data-theme=dark] .access-form-wrap:before{opacity:.1;filter:grayscale(.15)brightness(.48)contrast(1.25)}:root[data-theme=dark] .access-form{color:#000;background:#fff;border-color:#2f2f2f;box-shadow:0 22px 58px #0000007a}:root[data-theme=dark] .access-form h2{color:#000}:root[data-theme=dark] .access-form>p,:root[data-theme=dark] .access-form>small{color:#555}:root[data-theme=dark] .access-form label{color:#242424}:root[data-theme=dark] .access-form input{color:#000;background:#fff;border-color:#c8c8c8}:root[data-theme=dark] .search input,:root[data-theme=dark] .composer input{color:#fff;background:0 0}:root[data-theme=dark] .mobile-nav-item{color:#bcbcbc}:root[data-theme=dark] .mobile-nav-item.active{color:#000}:root[data-theme=dark] .mobile-more-scrim{background:#000000b3}@media (prefers-reduced-motion:no-preference){.dashboard-banner{animation:.55s cubic-bezier(.16,1,.3,1) both banner-reveal}@keyframes banner-reveal{0%{clip-path:inset(0 0 18% round 14px);opacity:.72}to{clip-path:inset(0 round 14px);opacity:1}}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.simulation-hero{border-radius:var(--radius);background:var(--emerald);color:#000;grid-template-columns:minmax(0,1.4fr) minmax(240px,.6fr);align-items:center;gap:36px;min-height:260px;padding:30px 34px;display:grid}.simulation-hero h2{max-width:18ch;margin:13px 0 7px;font-size:clamp(1.8rem,3vw,2.6rem)}.simulation-hero p{color:#000;max-width:58ch}.simulation-hero-icon{width:54px;height:54px;color:var(--emerald);background:#000;border-radius:14px;place-items:center;display:grid}.simulation-hero-actions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.simulation-hero .primary-button{color:var(--emerald);background:#000;border-color:#000}.simulation-hero .secondary-button{color:#000;background:0 0;border-color:#00000052}.readiness-board{color:#fff;background:#000;border-radius:13px;align-content:center;min-height:172px;padding:24px;display:grid}.readiness-board>span{color:#d7d7d7;font-size:.78rem}.readiness-board>strong{margin:7px 0 15px;font:800 3.4rem/1 Manrope Variable}.readiness-board small{color:#a8a8a8;margin-top:11px}.mode-rail{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:repeat(5,1fr);margin:16px 0;display:grid;overflow:hidden}.mode-rail>button{border:0;border-left:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;grid-template-columns:38px 1fr;gap:12px;min-height:122px;padding:18px;display:grid}.mode-rail>button:first-child{border-left:0}.mode-rail>button:hover{background:var(--surface-soft)}.mode-rail>button>span{color:#000;background:var(--emerald);border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.mode-rail>button>div{align-content:start;gap:5px;display:grid}.mode-rail>button strong{font-size:.84rem}.mode-rail>button small{color:var(--muted);line-height:1.3}.mode-rail>button>svg{display:none}.simulation-dashboard{grid-template-columns:.85fr 1.15fr;gap:14px;display:grid}.daily-progress-card .section-head>span{color:#000;background:var(--emerald);border-radius:7px;padding:6px 9px;font-size:.7rem;font-weight:800}.history-preview .history-empty{grid-template-columns:32px 1fr;align-content:center}.history-preview .history-empty strong,.history-preview .history-empty span{grid-column:2}.history-preview .history-empty svg{color:var(--emerald-dark)}.simulation-setup-page{max-width:1100px}.simulation-setup{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);grid-template-columns:.85fr 1.15fr;min-height:520px;margin-top:18px;display:grid;overflow:hidden}.setup-copy{color:#000;background:var(--emerald);padding:46px}.setup-copy h1{max-width:10ch;margin-top:20px}.setup-copy p{color:#000;max-width:35ch}.setup-fields{align-content:center;gap:24px;padding:46px;display:grid}.setup-fields fieldset{border:0;padding:0}.setup-fields legend,.setup-fields label{font-size:.82rem;font-weight:750}.segmented{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:9px;display:grid}.segmented button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:10px;height:48px;font-weight:800}.segmented button.active{color:#000;border-color:var(--emerald);background:var(--emerald)}.setup-fields label{gap:8px;display:grid}.setup-fields select,.factory-form select,.factory-form input{height:48px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:0 12px}.setup-rules{color:var(--muted);flex-wrap:wrap;gap:15px;font-size:.75rem;display:flex}.setup-rules span{align-items:center;gap:6px;display:flex}.setup-start{width:100%}.option.correct{border-color:var(--emerald-dark);background:var(--emerald);color:#000}.option.wrong{color:#6f2929;background:#fff0ef;border-color:#a44646}.instant-feedback{background:var(--surface-soft);border-radius:11px;margin-top:15px;padding:14px}.instant-feedback.correct{border:1px solid var(--emerald-dark)}.instant-feedback.wrong{border:1px solid #a44646}.instant-feedback p{margin:4px 0;font-size:.84rem}.instant-feedback small{color:var(--muted)}.result-command{flex-wrap:wrap;gap:9px;margin-bottom:14px;display:flex}.review-heading{justify-content:space-between;align-items:end;gap:20px;margin:20px 0;display:flex}.review-heading p{margin:0}.review-heading>strong{color:#000;background:var(--emerald);border-radius:8px;padding:8px 11px}.answer-review-list{gap:14px;display:grid}.answer-review-list article{border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);padding:22px}.answer-review-list article>header{grid-template-columns:38px 1fr;gap:12px;display:grid}.answer-review-list article>header>span{color:#000;background:var(--emerald);border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.answer-review-list article.wrong>header>span{color:#fff;background:#a44646}.answer-review-list h2{font-size:1.15rem}.answer-review-list header small{color:var(--muted)}.answer-review-list .question-visual.compact{float:right;margin:-48px 0 10px 15px}.answer-review-list dl{grid-template-columns:1fr 1fr;gap:9px;margin:18px 0;display:grid}.answer-review-list dl>div{background:var(--surface-soft);border-radius:9px;padding:11px}.answer-review-list dt{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:800}.answer-review-list dd{margin:3px 0 0;font-weight:700}.review-explanation{background:var(--surface-soft);border-radius:11px;margin-bottom:13px;padding:15px}.review-explanation p{margin:3px 0 11px;font-size:.84rem}.review-explanation small{color:var(--muted)}.history-table{padding:0 19px}.history-table>div{border-top:1px solid var(--line);grid-template-columns:34px 1fr auto 64px;align-items:center;gap:14px;min-height:72px;display:grid}.history-table>div:first-child{border-top:0}.history-table>div>div{display:grid}.history-table small{color:var(--muted)}.history-rank{background:var(--surface-soft);border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.history-score{text-align:center;color:#000;background:var(--emerald);border-radius:7px;padding:6px 8px;font-weight:800}.admin-factory{grid-template-columns:1.25fr .75fr;gap:18px;display:grid}.factory-flow{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:repeat(4,1fr);display:grid;overflow:hidden}.factory-flow>span{border-left:1px solid var(--line);align-content:start;gap:8px;min-height:168px;padding:21px;display:grid}.factory-flow>span:first-child{border-left:0}.factory-flow svg{color:var(--emerald-dark)}.factory-flow small{color:var(--muted);line-height:1.35}.factory-form{border-radius:var(--radius);color:#000;background:var(--emerald);gap:14px;padding:22px;display:grid}.factory-form label{gap:5px;font-size:.75rem;font-weight:800;display:grid}.factory-form .primary-button{color:var(--emerald);background:#000;border-color:#000}.factory-error{color:#7a1f1f;margin:0}.generated-preview{margin-top:16px}.generated-preview .section-head>strong{align-items:center;gap:6px;display:flex}.generated-preview article{border-top:1px solid var(--line);grid-template-columns:36px 1fr auto;align-items:center;gap:12px;min-height:74px;display:grid}.generated-preview article>div{display:grid}.generated-preview small{color:var(--muted)}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1100px){.topbar-actions{gap:10px}.topbar .streak{display:none}.mode-rail{grid-template-columns:repeat(2,1fr)}.mode-rail>button{border-top:1px solid var(--line)}.admin-factory{grid-template-columns:1fr}}@media (width<=780px){.simulation-hero,.simulation-setup{grid-template-columns:1fr}.simulation-hero{padding:22px}.readiness-board{min-height:145px}.mode-rail{grid-template-columns:1fr}.mode-rail>button{border-left:0;grid-template-columns:38px 1fr 19px;align-items:center;min-height:84px}.mode-rail>button>svg{display:block}.simulation-dashboard,.admin-factory,.factory-flow{grid-template-columns:1fr}.factory-flow>span{border-left:0;border-top:1px solid var(--line);min-height:96px}.factory-flow>span:first-child{border-top:0}.setup-copy,.setup-fields{padding:26px 20px}.setup-rules{display:grid}.review-heading{flex-direction:column;align-items:flex-start}.answer-review-list dl{grid-template-columns:1fr}.result-command{grid-template-columns:1fr;display:grid}.history-table>div{grid-template-columns:30px 1fr auto}.history-score{grid-column:2/-1;justify-self:start;margin-bottom:10px}}:root[data-theme=dark] .option.wrong{color:#fff;background:#2a1717}.auth-link{color:var(--ink);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;justify-self:center;font-weight:750;text-decoration:underline}.access-switches{flex-wrap:wrap;justify-content:center;gap:8px 18px;margin-top:15px;display:flex}.access-switches .auth-link{padding:0}.auth-success{color:#254000;background:#eaffb0;border-radius:9px;padding:11px 12px;font-size:.78rem;font-weight:700}.password-setup-page{background:var(--bg);grid-template-rows:auto 1fr;min-height:100dvh;padding:28px;display:grid}.password-setup-brand{width:100%;max-width:1180px;margin:0 auto}.password-setup-card{width:min(100%,460px);margin:auto}.password-setup-card h1{margin:5px 0 0}.members-layout{grid-template-columns:minmax(300px,.7fr) minmax(420px,1.3fr);gap:16px;display:grid}.invite-card{border-radius:var(--radius);color:#000;background:var(--emerald);padding:28px}.invite-icon{width:52px;height:52px;color:var(--emerald);background:#000;border-radius:14px;place-items:center;margin-bottom:18px;display:grid}.invite-card h2{margin:4px 0;font-size:1.8rem}.invite-card>p{color:#000;margin:0 0 22px}.invite-card form{gap:13px;display:grid}.invite-card label{gap:5px;font-size:.75rem;font-weight:800;display:grid}.invite-card input{color:#000;background:#ffffffe6;border:1px solid #00000047;border-radius:10px;min-height:48px;padding:0 13px}.invite-card .primary-button{width:100%;color:var(--emerald);background:#000;border-color:#000}.invite-card .auth-success,.invite-card .auth-error{margin-top:13px}.members-count{color:#000;background:var(--emerald);border-radius:8px;align-items:center;gap:6px;padding:7px 10px;font-weight:800;display:flex}.invitations-panel{padding-bottom:8px}.invitation-list article{border-top:1px solid var(--line);grid-template-columns:40px 1fr auto;align-items:center;gap:12px;min-height:76px;display:grid}.invitation-list article>div{display:grid}.invitation-list small{color:var(--muted)}.invitation-avatar{background:var(--surface-soft);border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.invite-status{border-radius:7px;align-items:center;gap:5px;padding:6px 8px;font-size:.7rem;font-weight:800;display:flex}.invite-status.pending{color:var(--muted);background:var(--surface-soft)}.invite-status.accepted{color:#000;background:var(--emerald)}.invitations-empty,.reader-state{text-align:center;min-height:230px;color:var(--muted);align-content:center;place-items:center;gap:7px;display:grid}.invitations-empty strong,.reader-state strong{color:var(--ink)}.reader-state.error svg{color:#a44646}@media (width<=900px){.members-layout{grid-template-columns:1fr}.password-setup-page{padding:18px}}@media (width<=520px){.invitation-list article{grid-template-columns:38px 1fr;padding:12px 0}.invite-status{grid-column:2;justify-self:start}}
