:root{--ink:#102a43;--ink-2:#243b53;--paper:#f6f2e9;--white:#fffdfa;--orange:#e85d2a;--orange-dark:#ba3e17;--mint:#cce8d6;--mint-dark:#26734d;--blue:#d8e8f4;--line:#d8d1c5;--muted:#66788a;--shadow:0 14px 40px #102a431a;--radius:22px;--display:Cambria, Constantia, "Times New Roman", Georgia, serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}.loading{letter-spacing:.05em;place-items:center;min-height:100vh;font-weight:800;display:grid}.app-shell{min-height:100vh;padding-bottom:calc(82px + env(safe-area-inset-bottom))}.qae-auth{background:var(--ink);grid-template-columns:minmax(0,1.15fr) minmax(390px,.85fr);min-height:100vh;display:grid}.auth-story{color:#fff;background:radial-gradient(circle at 78% 18%,#cce8d638,#0000 26%),linear-gradient(135deg,#102a43,#183c5b 60%,#102a43);flex-direction:column;justify-content:center;padding:clamp(36px,7vw,100px);display:flex;position:relative;overflow:hidden}.auth-story:after{content:"Q";color:#ffffff09;font:900 min(65vw, 760px)/.8 var(--display);position:absolute;bottom:-18vw;right:-5vw}.qae-wordmark{z-index:1;align-items:center;gap:12px;width:fit-content;display:flex;position:relative}.qae-wordmark>span{width:48px;height:48px;color:var(--ink);background:var(--mint);font:800 26px/1 var(--display);border-radius:15px;place-items:center;display:grid}.qae-wordmark strong,.qae-wordmark small{display:block}.qae-wordmark strong{color:#fff;letter-spacing:.08em;font-size:18px}.qae-wordmark small{color:#b9c8d5;letter-spacing:.1em;text-transform:uppercase;margin-top:2px;font-size:10px}.qae-wordmark.dark strong{color:var(--ink)}.qae-wordmark.dark small{color:var(--muted)}.qae-wordmark.compact{text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.qae-wordmark.compact>span{border-radius:12px;width:38px;height:38px;font-size:21px}.auth-eyebrow,.auth-label{color:var(--orange-dark);letter-spacing:.15em;text-transform:uppercase;font-size:10px;font-weight:950}.auth-story .auth-eyebrow{z-index:1;color:#9fd5b3;margin:clamp(70px,12vh,130px) 0 18px;position:relative}.auth-story h1{z-index:1;max-width:820px;font:700 clamp(48px, 7vw, 92px)/.94 var(--display);letter-spacing:-.055em;margin:0;position:relative}.auth-story>p:not(.auth-eyebrow){z-index:1;color:#cbd5df;max-width:680px;margin:28px 0;font-size:clamp(16px,2vw,20px);line-height:1.7;position:relative}.auth-proof{z-index:1;flex-wrap:wrap;gap:8px;display:flex;position:relative}.auth-proof span{color:#e7edf2;border:1px solid #fff3;border-radius:999px;padding:8px 12px;font-size:11px;font-weight:850}.auth-panel{background:var(--white);flex-direction:column;justify-content:center;gap:24px;padding:clamp(28px,6vw,78px);display:flex}.auth-panel h2,.gate-card h1,.route-setup h1,.portal-section h1,.portal-hero h1{font:700 clamp(30px, 4.5vw, 52px)/1.02 var(--display);letter-spacing:-.035em;margin:6px 0 8px}.auth-panel>div>p:last-child,.gate-card>p,.route-setup>section:first-child>p:last-child{color:var(--muted);line-height:1.6}.auth-tabs{background:#ece7de;border-radius:14px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.auth-tabs button{cursor:pointer;background:0 0;border:0;border-radius:11px;min-height:42px;font-size:12px;font-weight:900}.auth-tabs button.active{background:#fff;box-shadow:0 4px 14px #102a4314}.auth-form,.teacher-compose,.admin-card,.account-card{gap:14px;display:grid}.auth-form label,.gate-field,.teacher-compose label,.admin-card label,.account-card label{color:var(--ink-2);gap:6px;font-size:11px;font-weight:900;display:grid}.auth-form label small{color:var(--muted);font-weight:600}.auth-form input,.gate-field input,.teacher-compose input,.teacher-compose select,.teacher-compose textarea,.admin-card input,.admin-card select,.account-card input,.join-class input{width:100%;min-height:46px;color:var(--ink);border:1px solid var(--line);background:#fbfaf7;border-radius:12px;outline:none;padding:11px 13px}.teacher-compose textarea{resize:vertical}.auth-form input:focus,.gate-field input:focus,.teacher-compose input:focus,.teacher-compose textarea:focus,.admin-card input:focus,.account-card input:focus{border-color:var(--orange);box-shadow:0 0 0 3px #e85d2a1a}.forgot-button{color:var(--orange-dark);cursor:pointer;background:0 0;border:0;border-bottom:1px solid;justify-self:end;padding:0 0 2px;font-size:10px;font-weight:850}.form-notice,.portal-alert{color:#7a341a;background:#fff0e9;border:1px solid #f2c5b3;border-radius:12px;margin:0;padding:11px 13px;font-size:12px;line-height:1.5}.auth-divider{background:var(--line);text-align:center;height:1px;position:relative}.auth-divider span{color:var(--muted);background:var(--white);padding:0 10px;font-size:11px;position:relative;top:-10px}.google-button,.demo-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:14px;min-height:48px;font-weight:850}.google-button b{color:#4285f4;border:1px solid #ddd;border-radius:50%;place-items:center;width:23px;height:23px;margin-right:8px;display:inline-grid}.demo-button{color:var(--orange-dark);background:#fff7f2;border-color:#f3c8b7}.auth-help{color:var(--muted);text-align:center;margin:0;font-size:11px}.auth-help a{color:var(--ink);font-weight:800}.qae-gate{background:radial-gradient(circle at 50% 20%, #294f70, var(--ink));place-items:center;min-height:100vh;padding:24px;display:grid}.qae-loader{color:#fff;text-align:center}.qae-loader span,.gate-mark{width:64px;height:64px;color:var(--ink);background:var(--mint);font:800 36px/1 var(--display);border-radius:20px;place-items:center;margin:0 auto 20px;display:grid;box-shadow:0 18px 46px #0003}.gate-card{background:var(--white);border-radius:28px;width:min(520px,100%);padding:clamp(28px,6vw,52px);box-shadow:0 30px 90px #0000003d}.gate-card h1,.gate-card>p{text-align:center}.gate-card .gate-field{margin:24px 0 14px}.route-setup{background:linear-gradient(120deg, #eef4ef, var(--paper) 45%);grid-template-columns:minmax(300px,.8fr) minmax(460px,1.2fr);align-items:center;gap:clamp(30px,7vw,100px);min-height:100vh;padding:clamp(28px,7vw,96px);display:grid}.route-setup>section:first-child{max-width:620px}.route-setup>section:first-child .qae-wordmark{margin-bottom:70px}.route-card{background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:28px;padding:clamp(24px,5vw,46px)}.route-card fieldset{border:0;margin:0 0 28px;padding:0}.route-card legend{margin-bottom:12px;font-size:13px;font-weight:900}.choice-grid{gap:8px;display:grid}.choice-grid.two{grid-template-columns:repeat(2,1fr)}.choice-grid.two button strong{font:700 15px/1.3 var(--display)}.choice-grid.three{grid-template-columns:repeat(3,1fr)}.choice-grid.four{grid-template-columns:repeat(4,1fr)}.choice-grid button{border:1px solid var(--line);cursor:pointer;background:#f8f6f1;border-radius:14px;min-height:72px;padding:10px}.choice-grid button strong,.choice-grid button small{display:block}.choice-grid button strong{font:700 25px/1 var(--display)}.choice-grid button small{color:var(--muted);margin-top:5px;font-size:9px}.choice-grid button.selected{color:#fff;background:var(--ink);border-color:var(--ink);box-shadow:0 8px 24px #102a432e}.choice-grid button.selected small{color:#cbd5df}.minute-slider{width:100%;accent-color:var(--orange)}.minute-value{text-align:right;margin-top:8px}.minute-value strong{font:700 28px/1 var(--display)}.minute-value span{color:var(--muted);margin-left:5px;font-size:12px}.route-warning{background:#fff3d8;border:1px solid #e7c776;border-radius:14px;margin:-4px 0 20px;padding:14px 16px}.route-warning strong{font-size:12px}.route-warning p{color:#785b14;margin:5px 0 0;font-size:11px;line-height:1.5}.route-outlook{border:1px solid var(--line);background:#f8f6f1;border-radius:14px;grid-template-columns:auto 1fr;align-items:center;gap:16px;margin:-4px 0 20px;padding:14px 16px;display:grid}.route-outlook.good{background:var(--mint);border-color:#add9bd}.route-outlook.fair{background:#fff3d8;border-color:#e7c776}.route-outlook.hard{background:#fbe6dd;border-color:#e0a98f}.outlook-figure{border-right:1px solid #102a4324;justify-items:center;padding-right:16px;display:grid}.outlook-figure strong{font:700 28px/1 var(--display);white-space:nowrap}.outlook-figure span{max-width:88px;color:var(--ink-2);letter-spacing:.04em;text-align:center;text-transform:uppercase;margin-top:5px;font-size:9px;font-weight:800}.route-outlook p{color:var(--ink-2);margin:0;font-size:12px;line-height:1.55}.qae-portal{background:var(--paper);min-height:100vh;padding-bottom:40px}.portal-header{z-index:30;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffdfaeb;border-bottom:1px solid #102a4317;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;min-height:72px;padding:10px max(22px,50vw - 620px);display:grid;position:sticky;top:0}.portal-header nav{justify-content:center;gap:4px;display:flex}.portal-header nav button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;padding:9px 12px;font-size:11px;font-weight:850}.portal-header nav button.active{color:var(--ink);background:#edf1f3}.profile-chip{text-align:left;border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:9px;padding:5px 10px 5px 5px;display:flex}.profile-chip>span{color:#fff;background:var(--orange);border-radius:50%;place-items:center;width:33px;height:33px;font-weight:900;display:grid}.profile-chip strong,.profile-chip small{text-overflow:ellipsis;white-space:nowrap;max-width:140px;display:block;overflow:hidden}.profile-chip strong{font-size:11px}.profile-chip small{color:var(--muted);margin-top:2px;font-size:9px}.qae-portal-body{width:min(1240px,100% - 32px);margin:0 auto}.qae-portal-body>.portal-alert{margin-top:16px}.portal-hero{color:#fff;background:linear-gradient(125deg, var(--ink), #19496a);box-shadow:var(--shadow);border-radius:30px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:40px;margin-top:24px;padding:clamp(30px,6vw,66px);display:grid;position:relative;overflow:hidden}.portal-hero:after{content:"Q";color:#ffffff09;font:800 330px/1 var(--display);position:absolute;bottom:-130px;right:-30px}.portal-hero>div{z-index:1;position:relative}.portal-hero .auth-eyebrow{color:#9fd5b3}.portal-hero h1{max-width:800px;font-size:clamp(42px,6vw,74px)}.portal-hero p:not(.auth-eyebrow){color:#cbd5df}.route-orbit{background:radial-gradient(circle,#cce8d633 0 42%,#0000 43%);border:1px solid #ffffff26;border-radius:50%;place-items:center;width:210px;height:210px;display:grid}.route-orbit div{border:10px solid var(--mint);border-right-color:#ffffff26;border-radius:50%;place-items:center;width:135px;height:135px;display:grid}.route-orbit strong,.route-orbit span{display:block}.route-orbit strong{font:700 42px/1 var(--display)}.route-orbit span{color:#cbd5df;font-size:10px}.portal-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px;display:grid}.portal-card{background:var(--white);border:1px solid var(--line);border-radius:22px;min-height:230px;padding:24px;position:relative}.portal-card.accent{background:var(--mint);border-color:#acd6bc}.portal-icon{color:#fff;background:var(--ink);border-radius:13px;place-items:center;width:42px;height:42px;font-size:10px;font-weight:950;display:grid}.portal-card p{color:var(--orange-dark);letter-spacing:.12em;text-transform:uppercase;margin:22px 0 7px;font-size:10px;font-weight:900}.portal-card h2{font:700 25px/1.1 var(--display);margin:0}.portal-card small{color:var(--muted);margin-top:12px;line-height:1.5;display:block}.portal-card button{border:0;border-bottom:1px solid var(--ink);cursor:pointer;background:0 0;padding:0 0 3px;font-size:11px;font-weight:900;position:absolute;bottom:22px;left:24px}.portal-section{padding:42px 0 90px}.portal-title{justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px;display:flex}.portal-title h1{margin-bottom:0}.join-class{gap:7px;display:flex}.join-class input{width:150px}.join-class button,.report-actions button{border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;border-radius:12px;padding:0 14px;font-size:11px;font-weight:850}.class-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:24px;display:grid}.class-layout h2,.admin-tables h2{font:700 24px/1.1 var(--display);margin:0 0 12px}.class-list,.assignment-list{gap:10px;margin-bottom:30px;display:grid}.class-list article{background:var(--white);border:1px solid var(--line);border-radius:16px;align-items:center;gap:13px;padding:16px;display:flex}.class-list article>span{width:42px;height:42px;color:var(--ink);background:var(--mint);font:700 23px/1 var(--display);border-radius:12px;place-items:center;display:grid}.class-list strong,.class-list small{display:block}.class-list small{color:var(--muted);margin-top:4px;font-size:10px}.assignment-list article{background:var(--white);border:1px solid var(--line);border-radius:16px;justify-content:space-between;align-items:center;gap:20px;padding:18px;display:flex}.assignment-list article span{color:var(--orange-dark);letter-spacing:.12em;text-transform:uppercase;font-size:9px;font-weight:900}.assignment-list h3{margin:5px 0;font-size:15px}.assignment-list small{color:var(--muted)}.assignment-list button{border:1px solid var(--ink);background:0 0;border-radius:10px;padding:8px 12px;font-size:10px;font-weight:900}.submission-compose{background:#fff8f3;border:1px solid #efc4b2;border-radius:20px;gap:13px;margin:18px 0 30px;padding:22px;display:grid}.submission-compose h2{font:700 27px/1.08 var(--display);margin:0}.submission-compose>p{color:var(--muted);margin:0;font-size:12px;line-height:1.55}.submission-compose>textarea,.review-fields textarea,.review-fields input{border:1px solid var(--line);resize:vertical;background:#fff;border-radius:12px;width:100%;padding:12px}.audio-upload{background:var(--white);border:1px dashed var(--line);border-radius:12px;gap:7px;padding:12px;font-size:11px;font-weight:800;display:grid}.submission-rubric{background:#fff;border-radius:12px;gap:8px;padding:14px;display:grid}.submission-rubric label{color:var(--ink-2);font-size:11px}.submission-rubric input{accent-color:var(--orange)}.ai-feedback{background:var(--mint);border:1px solid #a9d4b9;border-radius:13px;padding:14px}.ai-feedback strong,.ai-feedback small{display:block}.ai-feedback pre{color:#244b37;white-space:pre-wrap;margin:8px 0;font:10px/1.5 ui-monospace,monospace;overflow-x:auto}.ai-feedback small{color:#315b45;font-size:9px}.submission-actions{justify-content:flex-end;gap:8px;display:flex}.review-list{gap:12px;display:grid}.review-list>article{background:var(--white);border:1px solid var(--line);border-radius:17px;padding:19px}.review-list header{justify-content:space-between;align-items:center;gap:12px;display:flex}.review-list header strong,.review-list header small{display:block}.review-list header small{color:var(--muted);margin-top:3px;font-size:9px}.review-list header>span{font:700 22px/1 var(--display)}.review-list>article>p{color:var(--ink-2);white-space:pre-wrap;font-size:12px;line-height:1.6}.review-list audio{width:100%;margin:8px 0}.review-list details{color:var(--muted);margin:10px 0;font-size:10px}.review-list pre{background:#f6f4ef;border-radius:9px;padding:10px;font-size:9px;overflow-x:auto}.review-fields{grid-template-columns:110px 1fr;gap:8px;margin:12px 0;display:grid}.teacher-compose,.admin-card,.account-card{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:0 8px 28px #102a430d}.teacher-compose h2,.admin-card h2{font:700 27px/1.05 var(--display);margin:0 0 6px}.empty-card{color:var(--muted);border:1px dashed var(--line);background:#ffffff80;border-radius:16px;padding:22px;font-size:12px}.report-actions{gap:8px;display:flex}.report-actions button{min-height:40px}.report-actions button:first-child{color:var(--ink);background:0 0}.report-metrics{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px;display:grid}.report-metrics article{background:var(--white);border:1px solid var(--line);border-radius:17px;padding:20px}.report-metrics strong,.report-metrics span{display:block}.report-metrics strong{font:700 31px/1 var(--display)}.report-metrics span{color:var(--muted);margin-top:7px;font-size:10px}.report-table-wrap{background:var(--white);border:1px solid var(--line);border-radius:18px;overflow-x:auto}.report-table-wrap table{border-collapse:collapse;width:100%}.report-table-wrap th,.report-table-wrap td{border-bottom:1px solid var(--line);text-align:left;padding:15px 17px;font-size:12px}.report-table-wrap th{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:9px}.report-table-wrap td strong,.report-table-wrap td small{display:block}.report-table-wrap td small{color:var(--muted);margin-top:3px;font-size:9px}.report-footnote{color:var(--muted);font-size:10px}.pilot-badge{color:#fff;background:var(--orange);letter-spacing:.08em;border-radius:999px;padding:9px 12px;font-size:10px;font-weight:900}.admin-grid{grid-template-columns:1.2fr 1fr .9fr;align-items:start;gap:14px;display:grid}.field-row{grid-template-columns:1fr 1fr;gap:9px;display:grid}.csv-import{cursor:pointer;background:#fff5ef;border:1px dashed #e6a98f;border-radius:12px;place-items:center;min-height:42px;display:grid;position:relative;overflow:hidden;color:var(--orange-dark)!important}.csv-import input{opacity:0;cursor:pointer;position:absolute;inset:0}.admin-tables{grid-template-columns:1fr 1fr;gap:18px;margin-top:28px;display:grid}.admin-tables article{min-width:0}.mini-table{background:var(--white);border:1px solid var(--line);border-radius:17px;max-height:380px;display:grid;overflow-y:auto}.mini-table>div{border-bottom:1px solid var(--line);grid-template-columns:130px 1fr auto;gap:12px;padding:13px 15px;font-size:10px;display:grid}.mini-table>div:last-child{border:0}.mini-table span{color:var(--muted);text-overflow:ellipsis;overflow:hidden}.mini-table small{color:var(--muted)}.account-section{max-width:760px}.account-card{margin-top:24px}.account-avatar{color:#fff;background:var(--orange);width:72px;height:72px;font:700 34px/1 var(--display);border-radius:22px;place-items:center;margin-bottom:8px;display:grid}.privacy-card{background:var(--mint);border:1px solid #acd6bc;border-radius:18px;margin:14px 0 20px;padding:22px}.privacy-card h2{font:700 23px/1.1 var(--display);margin:0}.privacy-card p{color:#315b45;font-size:12px;line-height:1.6}.privacy-card a{color:var(--ink);font-size:11px;font-weight:900}.portal-mobile-nav{display:none}@media (max-width:900px){.qae-auth{grid-template-columns:1fr}.auth-story{min-height:52vh}.auth-story .auth-eyebrow{margin-top:70px}.auth-panel{min-height:48vh}.route-setup{grid-template-columns:1fr}.route-setup>section:first-child .qae-wordmark{margin-bottom:38px}.portal-header nav{display:none}.portal-header{grid-template-columns:1fr auto}.portal-hero{grid-template-columns:1fr}.route-orbit{display:none}.portal-grid{grid-template-columns:1fr}.portal-card{min-height:210px}.class-layout,.admin-grid,.admin-tables{grid-template-columns:1fr}.qae-portal{padding-bottom:calc(78px + env(safe-area-inset-bottom))}.portal-mobile-nav{z-index:40;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));border:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdfaf5;border-radius:18px;grid-auto-columns:1fr;grid-auto-flow:column;padding:5px;display:grid;position:fixed;left:10px;box-shadow:0 18px 46px #102a4329}.portal-mobile-nav button{background:0 0;border:0;border-radius:13px;min-width:0;padding:7px 3px}.portal-mobile-nav button.active{color:#fff;background:var(--ink)}.portal-mobile-nav span,.portal-mobile-nav small{display:block}.portal-mobile-nav span{font-weight:900}.portal-mobile-nav small{margin-top:3px;font-size:8px}}@media (max-width:560px){.auth-story{min-height:auto;padding:28px 22px 48px}.auth-story h1{font-size:45px}.auth-story .auth-eyebrow{margin-top:65px}.auth-panel{padding:32px 22px}.route-setup{padding:26px 18px 50px}.route-card{padding:22px 16px}.choice-grid.four{grid-template-columns:repeat(2,1fr)}.portal-header{min-height:64px;padding:8px 14px}.profile-chip div{display:none}.qae-portal-body{width:min(100% - 20px,1240px)}.portal-hero{border-radius:22px;margin-top:10px;padding:30px 22px}.portal-hero h1{font-size:40px}.portal-title{flex-direction:column;align-items:start}.join-class{width:100%}.join-class input{flex:1}.report-actions{width:100%}.report-actions button{flex:1}.report-metrics{grid-template-columns:1fr}.mini-table>div{grid-template-columns:1fr;gap:3px}}@media print{.portal-header,.portal-mobile-nav,.report-actions,.bottom-nav{display:none!important}.qae-portal,.qae-portal-body,.portal-section{background:#fff;width:100%;margin:0;padding:0}.report-table-wrap,.report-metrics article{box-shadow:none;break-inside:avoid}}.topbar{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f6f2e9e6;border-bottom:1px solid #102a4314;justify-content:space-between;align-items:center;height:70px;padding:0 max(18px,50vw - 560px);display:flex;position:sticky;top:0}.brand{text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.brand-mark{color:#fff;background:var(--ink);letter-spacing:.04em;border-radius:12px;place-items:center;width:38px;height:38px;font-size:12px;font-weight:900;display:grid}.brand strong,.brand small{display:block}.brand strong{font-size:15px;line-height:1.1}.brand small{color:var(--orange-dark);letter-spacing:.14em;margin-top:3px;font-size:10px;font-weight:900}.top-stats{align-items:center;gap:12px;font-size:11px;font-weight:800;display:flex}.signal{color:var(--muted);padding-left:10px;position:relative}.signal:before{content:"";background:var(--mint-dark);border-radius:50%;width:6px;height:6px;position:absolute;top:4px;left:0}.signal.offline:before{background:var(--orange)}.streak{background:var(--white);border:1px solid var(--line);border-radius:999px;padding:8px 10px}.content-wrap{width:min(1120px,100% - 28px);margin:0 auto}.hero-card{color:#fff;background:var(--ink);box-shadow:var(--shadow);border-radius:30px;grid-template-columns:1fr auto;gap:30px;margin-top:22px;padding:clamp(26px,5vw,56px);display:grid;position:relative;overflow:hidden}.hero-card:after{content:"90";color:#ffffff0a;font:900 230px/1 var(--display);position:absolute;bottom:-66px;right:-5px}.hero-copy{z-index:1;position:relative}.eyebrow{gap:10px;margin-bottom:18px;display:flex}.eyebrow span{color:#fff;letter-spacing:.12em;border:1px solid #fff3;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:900}.eyebrow span:first-child{color:var(--ink);background:var(--mint);border-color:var(--mint)}.hero-card h1{letter-spacing:-.045em;max-width:680px;margin:0;font:700 clamp(38px,6vw,72px)/.98 Georgia,Times New Roman,serif}.hero-card p{color:#d9e2ec;margin:18px 0 0;font-size:clamp(15px,2vw,18px)}.hero-card p span{color:#9fb3c8}.hero-actions{flex-wrap:wrap;gap:10px;margin-top:30px;display:flex}.button{cursor:pointer;border:1px solid #0000;border-radius:14px;min-height:46px;padding:0 18px;font-weight:850;transition:transform .15s,box-shadow .15s,background .15s}.button:active{transform:translateY(1px)scale(.99)}.button:disabled{opacity:.55;cursor:not-allowed}.button-light{color:var(--ink);background:#fff}.button-ghost{color:#fff;background:0 0;border-color:#ffffff59}.button-primary{color:#fff;background:var(--orange);box-shadow:0 8px 24px #e85d2a3b}.button-dark{color:#fff;background:var(--ink)}.button-outline{color:var(--ink);border-color:var(--ink);background:0 0}.button-complete{color:var(--mint-dark);background:var(--mint);border-color:#94cfac}.button.recording{color:#fff;background:#b42318;animation:1.3s infinite pulse}.wide{width:100%}@keyframes pulse{50%{box-shadow:0 0 0 8px #b423181a}}.hero-meter{z-index:1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff0f;border:1px solid #ffffff26;border-radius:22px;grid-template-columns:auto auto;align-self:center;align-items:baseline;width:170px;padding:20px;display:grid;position:relative}.hero-meter strong{font:700 58px/1 var(--display)}.hero-meter span{color:#9fb3c8;font-weight:800}.hero-meter small{color:#d9e2ec;grid-column:1/-1;margin-top:12px;line-height:1.4}.priority-strip{background:var(--mint);border:1px solid #add9bd;border-radius:18px;grid-template-columns:190px 1fr auto;align-items:center;gap:22px;margin:16px 0 28px;padding:14px 18px;display:grid}.priority-strip span,.priority-strip strong{display:block}.priority-strip span{color:var(--mint-dark);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:900}.priority-strip strong{margin-top:3px;font-size:16px}.priority-strip p{color:#315b45;margin:0;font-size:13px;line-height:1.5}.priority-strip button{border:0;border-bottom:1px solid var(--mint-dark);color:var(--mint-dark);cursor:pointer;background:0 0;font-size:12px;font-weight:900}.lesson{max-width:820px;margin:0 auto}.lesson-head{justify-content:space-between;align-items:end;margin:38px 0 18px;display:flex}.lesson-head h2{font:700 clamp(28px, 5vw, 42px)/1.05 var(--display);letter-spacing:-.025em;margin:10px 0 2px}.lesson-head p{color:var(--muted);margin:0}.skill-tag{color:var(--ink);background:var(--blue);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:900;display:inline-flex}.skill-speaking{background:#f6d2c3}.skill-writing{background:#f3dfad}.skill-listening{background:#d8e8f4}.skill-reading{background:#d9d2ef}.skill-checkpoint{background:var(--mint)}.week-badge{border:1px solid var(--line);background:var(--white);border-radius:16px;place-items:center;width:48px;height:48px;font-weight:900;display:grid}.study-plan{border:1px solid var(--line);background:var(--white);border-radius:18px;grid-template-columns:repeat(5,1fr);margin-bottom:18px;display:grid;overflow:hidden}.study-plan>div{border-right:1px solid var(--line);grid-template-columns:auto auto;gap:8px;padding:14px 12px;display:grid}.study-plan>div:last-child{border:0}.study-plan span{color:#fff;background:var(--ink);border-radius:50%;place-items:center;width:20px;height:20px;font-size:9px;font-weight:900;display:grid}.study-plan strong{font-size:13px}.study-plan p{grid-column:1/-1;margin:3px 0 0;font-size:11px;font-weight:800;line-height:1.25}.study-plan small{color:var(--muted);margin-top:3px;font-size:9px;font-weight:500;display:block}.tabs{z-index:10;background:#e8e2d8;border-radius:16px;grid-template-columns:repeat(3,1fr);gap:4px;margin:18px 0;padding:4px;display:grid;position:sticky;top:78px}.tabs button{cursor:pointer;background:0 0;border:0;border-radius:12px;min-height:40px;font-size:12px;font-weight:900}.tabs button.active{background:var(--white);box-shadow:0 3px 12px #102a4314}.stack{gap:14px;display:grid}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(20px,4vw,30px);box-shadow:0 7px 26px #102a430b}.card-kicker,.eyebrow-text{color:var(--orange-dark);letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:950}.card h3{font:700 clamp(22px, 4vw, 29px)/1.13 var(--display);letter-spacing:-.02em;margin:8px 0 5px}.card h4{color:var(--muted);margin:0 0 18px;font-size:14px}.card>p{line-height:1.65}.translation{color:var(--muted)}.grammar-card{border-top:5px solid var(--orange)}.grammar-card blockquote{color:var(--ink);border-left:4px solid var(--ink);font:600 17px/1.55 var(--display);background:#eef3f7;border-radius:4px 14px 14px 4px;margin:22px 0 0;padding:18px}.vocab-list{margin-top:18px}.vocab-list>div{border-top:1px solid var(--line);grid-template-columns:34px 1fr;gap:10px;padding:14px 0;display:grid}.vocab-list>div:first-child{border-top:0}.vocab-list>div>span{color:var(--orange-dark);font:700 12px/1.7 ui-monospace,monospace}.vocab-list p,.vocab-list strong,.vocab-list em,.vocab-list small{margin:0;display:block}.vocab-list strong{font-size:16px}.vocab-list em{color:var(--orange-dark);margin:2px 0 6px;font-size:12px;font-style:normal;font-weight:750}.vocab-list small{color:var(--muted);line-height:1.45}.mission-card{color:#fff;background:var(--ink-2);border-color:var(--ink-2)}.mission-card .card-kicker{color:#9fd5b3}.mission-card .translation{color:#cbd5df}.card-row{justify-content:space-between;align-items:start;gap:16px;display:flex}.round-action{color:#fff;background:var(--orange);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;width:52px;height:52px;padding-left:4px;display:grid}.question{margin-top:22px;font-weight:850}.option-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.option-grid.vertical{grid-template-columns:1fr}.option-grid button{text-align:left;border:1px solid var(--line);cursor:pointer;background:#f8f6f1;border-radius:12px;min-height:44px;padding:10px 12px}.option-grid button.correct{color:#165c37;background:#dbf3e4;border-color:#76bd91}.option-grid button.wrong{color:#8f2d12;background:#fde5dc;border-color:#e99b80}.feedback{color:var(--muted);margin-top:10px;line-height:1.45;display:block}.text-button{color:var(--orange-dark);cursor:pointer;background:0 0;border:0;border-bottom:1px solid;margin-top:18px;padding:0 0 3px;font-size:12px;font-weight:900}.text-button.danger{color:#a12b1c}.transcript{background:#f2eee6;border-radius:14px;padding:16px;line-height:1.7}.reading-text{color:#243b53;font:500 16px/1.75 var(--display);background:#f2eee6;border-radius:16px;padding:18px}.photo-pair{grid-template-columns:1fr 1fr;gap:8px;margin-top:16px;display:grid}.photo-pair img{aspect-ratio:4/3;object-fit:cover;background:#e7e2d9;border-radius:14px;width:100%}.microcopy{color:var(--muted);margin:12px 0 0;font-size:12px;line-height:1.5}.timer{letter-spacing:-.06em;font:700 32px/1 ui-monospace,monospace}.timer-presets{grid-template-columns:repeat(4,1fr);gap:7px;margin:20px 0 12px;display:grid}.timer-presets button{border:1px solid var(--line);cursor:pointer;background:#f7f4ef;border-radius:10px;min-height:38px;font-size:12px;font-weight:850}.console-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.audio-player{width:100%;margin-top:15px}.word-count{color:var(--orange-dark);white-space:nowrap;background:#fde8df;border-radius:999px;padding:7px 9px;font-size:11px;font-weight:900}.word-count.good{color:var(--mint-dark);background:var(--mint)}textarea{resize:vertical;width:100%;color:var(--ink);border:1px solid var(--line);background:#fbfaf7;border-radius:14px;outline:none;margin-top:14px;padding:16px;line-height:1.6}textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px #e85d2a17}.quiz-item{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.quiz-item p{line-height:1.5}.rubric-card label{border-top:1px solid var(--line);cursor:pointer;gap:10px;padding:13px 0;line-height:1.45;display:flex}.rubric-card label:first-of-type{margin-top:15px}.rubric-card input{width:18px;height:18px;accent-color:var(--mint-dark)}.page-section{max-width:900px;margin:0 auto;padding:40px 0}.section-intro{max-width:680px;margin-bottom:28px}.section-intro h1{font:700 clamp(38px, 7vw, 68px)/.98 var(--display);letter-spacing:-.04em;margin:10px 0 12px}.section-intro p{color:var(--muted);font-size:16px;line-height:1.6}.phase-legend{color:var(--muted);flex-wrap:wrap;gap:10px 16px;margin-bottom:18px;font-size:11px;font-weight:750;display:flex}.phase-legend span{align-items:center;gap:6px;display:flex}.phase-legend i{background:var(--blue);border-radius:50%;width:9px;height:9px}.phase-legend .build{background:var(--mint)}.phase-legend .exam{background:#f3dfad}.phase-legend .peak{background:#f6d2c3}.phase-legend .mock{background:var(--ink)}.weeks{gap:10px;display:grid}.week-card{background:var(--white);border:1px solid var(--line);border-radius:18px;overflow:hidden}.week-card header{background:#eee9df;justify-content:space-between;align-items:center;padding:12px 15px;display:flex}.week-card header span{color:var(--orange-dark);letter-spacing:.12em;font-size:10px;font-weight:950}.week-card header strong{font-size:12px}.day-grid{grid-template-columns:repeat(7,1fr);display:grid}.day-grid button{border:0;border-right:1px solid var(--line);cursor:pointer;background:0 0;align-content:center;place-items:center;gap:5px;min-height:72px;display:grid}.day-grid button:last-child{border-right:0}.day-grid button span{border-radius:50%;place-items:center;width:30px;height:30px;font-weight:900;display:grid}.day-grid button small{color:var(--muted);font-size:8px}.day-grid button.done span{color:#fff;background:var(--mint-dark)}.day-grid button.current{background:#fff1ea}.day-grid button.current span{outline:2px solid var(--orange)}.progress-summary{grid-template-columns:1fr 1fr 1.5fr;gap:10px;margin-bottom:14px;display:grid}.progress-summary>div{background:var(--ink);color:#fff;border-radius:18px;padding:18px}.progress-summary strong,.progress-summary span{display:block}.progress-summary strong{overflow-wrap:anywhere;font:700 clamp(24px, 4vw, 34px)/1 var(--display)}.progress-summary span{color:#b9c8d6;text-transform:uppercase;margin-top:8px;font-size:10px;font-weight:800}.score-card{margin-bottom:14px}.score-row{border-top:1px solid var(--line);padding:18px 0}.score-row:first-of-type{margin-top:18px}.score-row>div:first-child{justify-content:space-between;gap:10px;display:flex}.score-row span{color:var(--muted);font-size:11px}.score-row input{width:100%;accent-color:var(--orange);margin:12px 0 7px}.score-track{background:#e6e0d6;border-radius:999px;height:6px;position:relative}.score-track i{background:var(--orange);border-radius:inherit;position:absolute;inset:0 auto 0 0}.score-track b{background:var(--ink);width:2px;height:14px;position:absolute;top:-4px}.diagnostic-cta{align-items:center;gap:var(--s3,18px);background:var(--blue);border-color:#a9c9e0;grid-template-columns:1fr auto;margin-bottom:14px;display:grid}.diagnostic-cta .microcopy{margin-top:6px}.attempt-timer{grid-template-columns:auto 1fr auto;align-items:center;gap:20px;margin-bottom:14px;display:grid}.attempt-timer strong{font-variant-numeric:tabular-nums;margin-top:4px;font:700 34px/1 ui-monospace,Consolas,monospace;display:block}.attempt-timer.urgent{background:#fff0e9;border-color:#f2c5b3}.attempt-timer.urgent strong{color:var(--orange-dark)}.attempt-timer p{color:var(--muted);margin:0;font-size:12px;line-height:1.5}.tw-inline{margin-top:16px;overflow-x:auto}.section-table{border-collapse:collapse;width:100%;min-width:26rem;font-size:13px}.section-table th,.section-table td{text-align:left;border-bottom:1px solid var(--line);padding:9px 12px}.section-table thead th{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;background:#fbfaf7;font-size:10px;font-weight:900}.section-table td.num,.section-table th.num{text-align:right;font-variant-numeric:tabular-nums}.section-table tbody tr:last-child td{border-bottom:0}.section-table tr.unmeasured td{color:var(--muted);font-style:italic}.option-grid button.chosen{color:#fff;background:var(--ink);border-color:var(--ink)}.lesson-skeleton{text-align:center;color:var(--muted)}.lesson-skeleton p{margin:8px 0 0;font-size:14px}.phase-note{margin:12px 0 0;font-size:14px;line-height:1.65}.server-item{margin-bottom:14px}.empty-content{background:#fff3d8;border-color:#e7c776}.empty-content p{color:#785b14;margin:10px 0 0;font-size:13px;line-height:1.6}.report-button{color:var(--muted);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:999px;flex-shrink:0;padding:7px 13px;font-size:11px;font-weight:800}.report-button[aria-expanded=true]{color:var(--orange-dark);background:#fff0e9;border-color:#f2c5b3}.report-panel{background:#fff0e9;border:1px solid #f2c5b3;border-radius:14px;margin:14px 0;padding:14px}.report-panel p{margin:0 0 10px;font-size:13px;font-weight:800}.report-panel small{color:#7a341a;margin-top:10px;font-size:11px;line-height:1.5;display:block}.report-reasons{flex-wrap:wrap;gap:6px;display:flex}.report-reasons button{cursor:pointer;background:#fff;border:1px solid #f2c5b3;border-radius:999px;padding:8px 12px;font-size:12px}.report-reasons button:hover{background:var(--orange);border-color:var(--orange);color:#fff}.question-group{margin-top:18px}.part-label{border-bottom:1px solid var(--line);color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px;padding-bottom:6px;font-size:10px;font-weight:900}.question-meta{background:var(--blue);color:var(--ink-2);border-radius:999px;margin:0 6px 8px 0;padding:3px 9px;font-size:10px;font-weight:800;display:inline-block}.model-answer{background:var(--mint);border-radius:12px;margin:10px 0 0;padding:12px 14px;font-size:13px;line-height:1.7}.photo-single{margin:14px 0}.photo-single img{object-fit:contain;border:1px solid var(--line);background:#fbfaf7;border-radius:14px;width:100%;max-height:340px}.exam-timeline .timeline-alert{color:#785b14;background:#fff3d8;border:1px solid #e7c776;border-radius:12px;margin:14px 0 0;padding:11px 14px;font-size:13px;font-weight:800}.timeline-list{gap:4px;margin:16px 0 12px;padding:0;list-style:none;display:grid}.timeline-list li{border:1px solid var(--line);background:#fbfaf7;border-left-width:3px;border-radius:12px;grid-template-columns:104px 1fr;gap:14px;padding:12px 14px;display:grid}.timeline-list li.action{border-left-color:var(--orange)}.timeline-list li.warn{border-left-color:#e7c776}.timeline-list li.info{border-left-color:var(--line)}.timeline-when{align-content:start;gap:2px;display:grid}.timeline-when strong{font-variant-numeric:tabular-nums;font:800 13px/1.4 ui-monospace,Consolas,monospace}.timeline-when strong.timeline-rule,.timeline-when span{color:var(--muted);font-size:11px}.timeline-what strong{font-size:13px}.timeline-what p{color:var(--ink-2);margin:4px 0 0;font-size:12px;line-height:1.55}.type-list{gap:10px;margin-top:18px;display:grid}.type-item{border:1px solid var(--line);background:#fbfaf7;border-radius:14px;grid-template-columns:34px 1fr;gap:12px;padding:14px;display:grid}.type-num{color:var(--orange);font:800 13px/1.6 ui-monospace,Consolas,monospace}.type-item strong{font-size:14px}.type-tell{color:var(--muted);margin:4px 0 0;font-size:13px;line-height:1.55}.type-move{margin:6px 0 0;font-size:13px;line-height:1.55}.type-move b{font-weight:850}.cue-row{flex-wrap:wrap;gap:5px;margin-top:9px;display:flex}.cue-row code{background:var(--blue);color:var(--ink-2);border-radius:999px;padding:2px 7px;font:600 11px/1.7 ui-monospace,Consolas,monospace}.drill-card{background:var(--white)}.drill-score{background:var(--ink);color:#fff;border-radius:999px;padding:6px 12px;font:800 12px/1 ui-monospace,Consolas,monospace}.drill-excerpt{background:var(--blue);border-radius:14px;margin:16px 0 14px;padding:16px}.drill-club{color:var(--ink-2);letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;font-size:10px;font-weight:900;display:block}.drill-excerpt p{margin:0;font-size:14px;line-height:1.6}.frame-card{background:var(--white)}.frame-body{border:1px solid var(--line);background:#fbfaf7;border-radius:14px;margin:16px 0 12px;padding:18px;font-size:14px;line-height:2.15}.frame-fixed{white-space:pre-wrap;color:var(--ink-2)}.frame-slot{border:0;border-bottom:2px dashed var(--orange);min-width:90px;max-width:100%;color:var(--orange-dark);background:#fff6e8;border-radius:4px 4px 0 0;padding:2px 8px;font-size:13px;font-weight:700}.frame-slot::placeholder{color:#c08a6a;font-weight:600}.frame-slot.filled{background:var(--mint);border-bottom-color:var(--mint-dark);color:var(--mint-dark)}.frame-slot:focus-visible{outline:2px solid var(--ink);outline-offset:1px}.frame-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.frame-actions .button{flex:1;min-width:140px}.frame-slots{gap:12px;margin:16px 0 0;padding-left:22px;display:grid}.frame-slots li::marker{color:var(--orange);font-weight:900}.slot-head{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.slot-head strong{font-size:14px}.slot-head span{color:var(--muted);font-size:12px}.slot-example{border-left:3px solid var(--line);background:#fbfaf7;border-radius:0 8px 8px 0;margin:4px 0 0;padding:8px 12px;font-size:13px;line-height:1.6}.compare-list{gap:8px;margin:16px 0 0;padding-left:22px;font-size:14px;line-height:1.65;display:grid}.compare-list li::marker{color:var(--orange);font-weight:900}.suggestion-list{gap:6px;margin-top:16px;display:grid}.suggestion-list details{border:1px solid var(--line);background:#fbfaf7;border-radius:12px;padding:12px 14px}.suggestion-list summary{cursor:pointer;font-size:13px;font-weight:850}.suggestion-list ul{color:var(--ink-2);gap:6px;margin:10px 0 0;padding-left:20px;font-size:13px;line-height:1.6;display:grid}.escape-card,.p4-card{background:var(--mint);border-color:#add9bd}.escape-card blockquote,.p4-card blockquote{background:#ffffffb8;border-radius:12px;margin:16px 0 8px;padding:14px 16px;font-size:14px;font-style:italic;line-height:1.65}.feelings-list{gap:8px;margin-top:16px;display:grid}.feelings-list>div{border:1px solid var(--line);background:#fbfaf7;border-radius:12px;padding:12px 14px}.feelings-topic{color:var(--muted);font-size:11px;font-weight:800;line-height:1.5;display:block}.feelings-list p{margin:6px 0 0;font-size:13px;line-height:1.6}.band-hero{grid-template-columns:auto 1fr;align-items:center;gap:22px;margin-bottom:14px;display:grid}.band-hero.reached{background:var(--mint);border-color:#add9bd}.band-hero-total{border-right:1px solid var(--line);justify-items:center;padding-right:22px;display:grid}.band-hero-total strong{font:700 clamp(40px, 9vw, 62px)/1 var(--display);color:var(--orange)}.band-hero.reached .band-hero-total strong{color:var(--mint-dark)}.band-hero-total span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;text-align:center;margin-top:6px;font-size:10px;font-weight:800}.band-hero-meta{gap:12px;display:grid}.band-hero-state{margin:0;font-size:14px;line-height:1.55}.band-hero-bar{background:#e6e0d6;border-radius:999px;height:10px;position:relative;overflow:hidden}.band-hero-bar i{background:var(--orange);border-radius:inherit;transition:width .25s;position:absolute;inset:0 auto 0 0}.band-hero.reached .band-hero-bar i{background:var(--mint-dark)}.next-steps{margin-bottom:14px}.next-step-list{counter-reset:step;gap:6px;margin:16px 0 12px;padding:0;list-style:none;display:grid}.next-step-list li{border:1px solid var(--line);background:#fbfaf7;border-radius:12px;grid-template-columns:1fr auto auto auto;align-items:center;gap:10px;padding:11px 14px;font-size:13px;display:grid}.next-step-list li.primary{background:var(--blue);border-color:#a9c9e0}.step-skill{font-weight:850}.step-move{color:var(--muted);font-variant-numeric:tabular-nums}.step-cost{font-variant-numeric:tabular-nums;font-weight:850}.step-mode{letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:3px 7px;font-size:10px;font-weight:800}.step-mode.machine{color:var(--mint-dark);background:var(--mint)}.step-mode.human{color:var(--orange-dark);background:#f7ddd2}.skill-en{color:var(--muted);font-size:11px;font-style:normal;font-weight:600}.band-chip{color:var(--ink-2);letter-spacing:.04em;vertical-align:middle;background:#e6e0d6;border-radius:999px;margin-left:8px;padding:2px 7px;font-size:10px;font-weight:850;display:inline-block}.band-chip.ok{background:var(--mint);color:var(--mint-dark)}.band-chip.neutral{border:1px dashed var(--line);color:var(--muted);text-transform:none;letter-spacing:0;background:0 0;font-weight:700}.score-track i.hit{background:var(--mint-dark)}.muted-row{opacity:.78}.goal-switch{gap:10px;margin-top:16px;display:grid}.goal-switch button{text-align:left;border:1px solid var(--line);cursor:pointer;background:#fbfaf7;border-radius:14px;gap:5px;padding:14px 16px;display:grid}.goal-switch button.selected{background:var(--blue);border-color:var(--ink)}.goal-switch strong{font-size:14px}.goal-switch small{color:var(--muted);font-size:12px;line-height:1.5}.priority-strip strong.band-ok{color:var(--mint-dark)}.target-card{background:var(--mint);border-color:#add9bd;margin-top:14px}.target-card a,.source-card a{color:var(--ink);margin-top:14px;font-weight:850;display:block}.settings-card,.source-card{margin-bottom:14px}.settings-card ol{color:var(--muted);padding-left:20px;line-height:1.8}.date-field{gap:8px;margin-top:18px;font-size:12px;font-weight:800;display:grid}.date-field input{min-height:48px;color:var(--ink);border:1px solid var(--line);background:#fbfaf7;border-radius:12px;padding:0 12px}.source-card a{border-top:1px solid var(--line);padding:12px 0;text-decoration:none}.bottom-nav{z-index:30;left:50%;bottom:max(10px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#102a43f5;border:1px solid #ffffff1f;border-radius:20px;grid-template-columns:repeat(5,1fr);width:min(540px,100% - 24px);padding:5px;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 14px 34px #102a4340}.bottom-nav button{color:#b9c8d6;cursor:pointer;background:0 0;border:0;border-radius:15px;align-content:center;place-items:center;gap:2px;min-height:54px;display:grid}.bottom-nav button.active{color:var(--ink);background:var(--white)}.bottom-nav button span{font-size:14px;font-weight:950}.bottom-nav button small{font-size:9px;font-weight:800}@media (max-width:760px){.topbar{padding:0 15px}.signal{display:none}.hero-card{border-radius:24px;grid-template-columns:1fr;padding:28px 22px}.hero-meter{grid-template-columns:auto 1fr;width:100%}.hero-meter strong{font-size:42px}.priority-strip{grid-template-columns:1fr auto;gap:8px 14px}.priority-strip p{grid-area:2/1/auto/-1}.study-plan{grid-template-columns:1fr}.study-plan>div{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:24px 38px 1fr;align-items:center;padding:10px 12px}.study-plan p{grid-column:auto;margin:0}.option-grid{grid-template-columns:1fr}.page-section{padding-top:28px}.day-grid button{min-height:64px}.progress-summary{grid-template-columns:1fr 1fr}.progress-summary>div:last-child{grid-column:1/-1}.band-hero{grid-template-columns:1fr;gap:16px}.band-hero-total{border-right:0;border-bottom:1px solid var(--line);justify-items:start;padding:0 0 14px}.band-hero-total span{text-align:left}.next-step-list li{grid-template-columns:1fr auto;row-gap:4px}.step-move{grid-area:2/1}.step-mode{grid-area:2/2;justify-self:end}.timeline-list li{grid-template-columns:1fr;gap:6px}.timeline-when{grid-auto-flow:column;justify-content:start;align-items:baseline;gap:8px}.type-item{grid-template-columns:26px 1fr;gap:9px}.frame-body{padding:14px;line-height:2.3}}@media (max-width:420px){.content-wrap{width:min(100% - 20px,1120px)}.streak{padding:7px 8px;font-size:9px}.hero-card h1{font-size:39px}.photo-pair{grid-template-columns:1fr}.day-grid button{min-height:58px}.day-grid button span{width:27px;height:27px;font-size:12px}.day-grid button small{font-size:7px}.console-actions{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
