:root{--ink:#102a43;--muted:#627d98;--paper:#f5f7fa;--card:#fff;--line:#d9e2ec;--blue:#1565c0;--blue2:#e3f2fd;--green:#087f5b;--green2:#e6fcf5;--orange:#c05621;--orange2:#fff4e6;--red:#b42318;--red2:#fff0ee;--purple:#7048e8;--shadow:0 10px 30px rgba(16,42,67,.09)}
.mistake-heading{display:flex;justify-content:space-between;align-items:start;gap:18px;margin-bottom:17px}.mistake-heading .view-subtitle{max-width:780px;margin-bottom:0}.mistake-heading .primary:disabled{opacity:.45}.mistake-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.mistake-metrics article{padding:15px;border:1px solid var(--line);border-radius:13px;background:var(--card)}.mistake-metrics span,.mistake-metrics strong{display:block}.mistake-metrics span{color:var(--muted);font-size:.74rem;font-weight:700}.mistake-metrics strong{margin-top:3px;font-size:1.2rem}.manual-mistake-panel{margin-bottom:16px}.manual-mistake-form{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.mistake-form-wide{grid-column:1/-1}.mistake-filter{display:flex;align-items:center;gap:7px;margin:13px 0}.mistake-filter button{padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-weight:800}.mistake-filter button.active{border-color:var(--ink);background:var(--ink);color:#fff}.mistake-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.mistake-card{padding:18px;border:1px solid var(--line);border-left:6px solid var(--subject);border-radius:14px;background:var(--card)}.mistake-card.fixed{opacity:.82}.mistake-card-head{display:flex;justify-content:space-between;align-items:start;gap:12px}.mistake-card h3{margin:0 0 3px;font-size:1.12rem}.mistake-card-head p{margin:0;color:var(--muted);font-size:.78rem}.mistake-status{padding:4px 8px;border-radius:999px;background:var(--orange2);color:var(--orange);font-size:.68rem;font-weight:850;white-space:nowrap}.mistake-card.new .mistake-status{background:var(--red2);color:var(--red)}.mistake-card.retry .mistake-status{background:var(--blue2);color:var(--blue)}.mistake-card.fixed .mistake-status{background:var(--green2);color:var(--green)}.mistake-tags{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.mistake-tags span{padding:3px 7px;border-radius:999px;background:var(--paper);color:var(--muted);font-size:.65rem;font-weight:800}.mistake-tags .repeat-tag{background:#f1edff;color:var(--purple)}.mistake-detail{min-height:44px;margin:0 0 11px;color:var(--ink);font-size:.83rem}.mistake-correction-note{margin-bottom:12px;padding:8px 10px;border-radius:8px;background:var(--green2);font-size:.78rem}.mistake-correction-note p{margin:5px 0 0}.mistake-cycle{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin:14px 0}.mistake-cycle span{position:relative;color:#9fb3c8;text-align:center;font-size:.62rem;font-weight:800}.mistake-cycle span:not(:last-child):after{content:"";position:absolute;top:11px;left:66%;width:68%;height:2px;background:var(--line)}.mistake-cycle i{position:relative;z-index:1;width:24px;height:24px;margin:0 auto 4px;display:grid;place-items:center;border-radius:50%;background:var(--line);color:#fff;font-style:normal}.mistake-cycle span.done,.mistake-cycle span.active{color:var(--ink)}.mistake-cycle span.done i{background:var(--green)}.mistake-cycle span.active i{background:var(--subject)}.mistake-correction-form,.mistake-retry-form{display:grid;gap:10px;margin-top:12px;padding:12px;border-radius:10px;background:var(--paper)}.mistake-retry-form>p{margin:0;color:var(--muted);font-size:.78rem}.mistake-retry-form>div{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mistake-fixed{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px;border-radius:9px;background:var(--green2);color:var(--green);font-size:.78rem}.delete-manual-mistake{display:block;margin-top:10px;color:var(--red)}.readiness-mistake-impact{display:flex;justify-content:space-between;gap:10px;margin:-5px 0 13px;padding:8px 10px;border-radius:8px;background:var(--red2);color:var(--red);font-size:.72rem}@media(max-width:820px){.mistake-metrics,.mistake-list{grid-template-columns:1fr 1fr}}@media(max-width:600px){.mistake-heading{display:block}.mistake-heading .primary{width:100%;margin-top:12px}.mistake-metrics,.mistake-list,.manual-mistake-form{grid-template-columns:1fr}.mistake-form-wide{grid-column:auto}.mistake-card{padding:15px}.mistake-card-head{display:block}.mistake-status{display:inline-block;margin-top:8px}.mistake-fixed,.readiness-mistake-impact{display:grid}.mistake-retry-form>div{grid-template-columns:1fr}}
.global-subject-filter{margin:22px 0 17px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--card);box-shadow:0 6px 20px rgba(16,42,67,.05)}.global-filter-heading{display:flex;justify-content:space-between;align-items:end;gap:14px;margin-bottom:10px}.global-filter-heading .eyebrow{margin-bottom:1px}.global-filter-heading strong{font-size:1.05rem}.global-filter-heading>span{color:var(--muted);font-size:.8rem;font-weight:750}.global-filter-chips{display:flex;gap:8px;flex-wrap:wrap}.global-subject-filter>p{margin:9px 0 0;color:var(--muted);font-size:.76rem}.global-subject-filter .filter-chip{display:inline-flex;align-items:center;gap:5px;margin:0}.global-subject-filter .global-all{--subject:var(--ink)}
.readiness-heading{display:flex;justify-content:space-between;align-items:start;gap:18px;margin-bottom:18px}.readiness-heading .view-subtitle{max-width:800px;margin-bottom:0}.readiness-heading .primary:disabled{opacity:.45;cursor:not-allowed}.readiness-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.readiness-summary article{padding:15px;border:1px solid var(--line);border-radius:13px;background:var(--card)}.readiness-summary span,.readiness-summary strong{display:block}.readiness-summary span{color:var(--muted);font-size:.76rem;font-weight:700}.readiness-summary strong{margin-top:3px;font-size:1.22rem}.readiness-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.readiness-card{padding:19px;border:1px solid var(--line);border-top:6px solid var(--subject);border-radius:15px;background:var(--card)}.readiness-card-head{display:flex;justify-content:space-between;gap:15px;align-items:start}.readiness-card h3{margin:0 0 7px;font-size:1.3rem}.readiness-status{display:inline-block;padding:4px 9px;border-radius:999px;font-size:.72rem;font-weight:850}.readiness-status.on-track{background:var(--green2);color:var(--green)}.readiness-status.slightly-behind{background:var(--orange2);color:var(--orange)}.readiness-status.at-risk{background:var(--red2);color:var(--red)}.readiness-ring{width:82px;height:82px;flex:0 0 82px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--subject) var(--score),var(--line) 0);position:relative}.readiness-ring:after{content:"";position:absolute;inset:9px;border-radius:50%;background:#fff}.readiness-ring strong{position:relative;z-index:1;font-size:1.15rem}.readiness-target{display:flex;justify-content:space-between;gap:12px;margin:15px 0;padding:9px 11px;border-radius:9px;background:var(--paper);color:var(--muted);font-size:.76rem}.readiness-breakdown{display:grid;gap:11px}.readiness-breakdown>div>span{display:flex;justify-content:space-between;gap:8px;font-size:.79rem;font-weight:750}.readiness-breakdown i{display:block;height:7px;margin:5px 0 3px;overflow:hidden;border-radius:99px;background:var(--line)}.readiness-breakdown i b{display:block;height:100%;border-radius:inherit;background:var(--subject)}.readiness-breakdown small{color:var(--muted);font-size:.69rem}.readiness-action{margin-top:15px;padding:12px;border-left:4px solid var(--subject);border-radius:9px;background:var(--paper)}.readiness-action p{margin:4px 0;color:var(--ink);font-size:.82rem}.readiness-action small{color:var(--muted)}.readiness-explanation{margin-top:16px}.readiness-explanation p+p{margin-top:8px}.readiness-update{border-left:5px solid var(--green)}@media(max-width:820px){.readiness-summary,.readiness-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.global-filter-chips{flex-wrap:nowrap;overflow:auto;padding-bottom:3px}.global-filter-chips .filter-chip{white-space:nowrap}.readiness-heading{display:block}.readiness-heading .primary{width:100%;margin-top:12px}.readiness-summary,.readiness-grid{grid-template-columns:1fr}.readiness-target{display:grid}.readiness-card{padding:16px}}
.reminder-autosave{grid-column:1/-1;margin:10px 0 0;padding:9px 11px;border-radius:9px;background:var(--green2);color:var(--green);font-size:.8rem;font-weight:800}
.study-session-dialog{width:min(760px,calc(100% - 24px));max-height:92vh;overflow:auto;padding:28px;border-radius:22px}.session-heading{display:flex;align-items:start;justify-content:space-between;gap:16px;padding-right:34px}.session-heading h2{margin:0 0 4px;font-size:clamp(1.55rem,4vw,2.15rem)}.session-heading p{margin:0;color:var(--muted)}.session-goal{margin:18px 0;padding:14px 16px;border-left:5px solid var(--green);border-radius:11px;background:var(--green2);color:#075f46;font-weight:700}.session-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.session-metrics article{padding:11px 13px;border-radius:10px;background:var(--paper)}.session-metrics span,.session-metrics strong{display:block}.session-metrics span{color:var(--muted);font-size:.7rem}.session-metrics strong{font-size:.96rem}.study-session-dialog .timer{margin:18px 0 5px}.study-session-dialog .timer.overtime{color:var(--orange)}.session-progress{height:9px;overflow:hidden;border-radius:99px;background:var(--line);margin-bottom:19px}.session-progress i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--green));transition:width .35s}.study-session-dialog .timer-actions{margin-bottom:12px}.study-session-dialog .session-reset{background:var(--paper);color:var(--ink);border:1px solid var(--line)}.session-help-actions{display:flex;gap:9px;flex-wrap:wrap;margin:12px 0}.session-help-actions button{padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font-weight:780}.session-help-actions button:hover{border-color:var(--blue);background:var(--blue2)}.session-notes{margin-top:13px}.session-notes textarea{resize:vertical}.study-session-dialog .focus-rule{margin:16px 0 0}.start-study-session,.calendar-start-session{border:0;border-radius:8px;background:var(--ink);color:#fff;font-weight:800}.start-study-session{grid-column:2;justify-self:start;padding:7px 11px;margin-top:7px}.calendar-start-session{height:34px;padding:0 10px;font-size:.72rem}.actual-time{color:var(--green);font-weight:800}.saved-session-notes{margin-top:7px;color:var(--muted);font-size:.78rem}.saved-session-notes summary{cursor:pointer;color:var(--blue);font-weight:800}.saved-session-notes p{margin:5px 0 0!important;padding:7px 9px;border-radius:8px;background:var(--paper);color:var(--ink)!important}.session-complete-notice{border-left:5px solid var(--green)}#calendar .calendar-task{grid-template-columns:minmax(0,1fr) 275px!important}@media(max-width:700px){.session-metrics{grid-template-columns:1fr}.study-session-dialog{padding:21px}.study-session-dialog .timer-actions button{flex:1}.session-heading{display:block}.session-heading .tag{display:inline-block;margin-top:8px}#calendar .calendar-task{grid-template-columns:1fr!important}.calendar-start-session{height:32px}}
.calendar-task,.calendar-task:active{cursor:default!important}
.session-menu-wrap{position:relative;display:inline-flex;align-items:flex-end}.session-menu-button{width:34px;height:34px;padding:0;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-size:1.25rem;font-weight:900;line-height:1}.session-menu-button:hover,.session-menu-button[aria-expanded=true]{border-color:var(--blue);background:var(--blue2)}.session-menu{position:absolute;z-index:80;right:0;top:calc(100% + 7px);width:238px;padding:7px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 18px 46px rgba(8,30,48,.24)}.session-menu button{display:block;width:100%;padding:10px 11px;border:0;border-radius:8px;background:transparent;color:var(--ink);font-size:.82rem;font-weight:760;text-align:left}.session-menu button:hover:not(:disabled){background:var(--paper)}.session-menu button:disabled{color:#9fb3c8;cursor:not-allowed}.session-menu .remove-session{color:var(--red)}.session-menu small{display:block;margin:6px;padding:8px;border-radius:7px;background:var(--paper);color:var(--muted);font-size:.68rem;line-height:1.35}.session-move-dialog{width:min(520px,calc(100% - 24px));padding:25px;border-radius:19px}.session-move-dialog form{display:grid;gap:15px}.session-move-dialog h2{margin:2px 0 0}.session-move-dialog p{margin:0;color:var(--muted)}.session-move-dialog .inline-actions{justify-content:flex-end}.calendar-action-toast{position:fixed;z-index:11000;left:50%;bottom:24px;transform:translateX(-50%);display:flex;align-items:center;gap:12px;width:min(680px,calc(100% - 28px));padding:13px 14px 13px 17px;border-radius:13px;background:var(--ink);color:#fff;box-shadow:0 18px 60px rgba(8,30,48,.36)}.calendar-action-toast span{flex:1;font-weight:700}.calendar-action-toast button{border:0;border-radius:8px;padding:7px 10px;background:#f6c453;color:var(--ink);font-weight:850}.calendar-action-toast .toast-close{background:transparent;color:#fff;font-size:1.2rem;padding:3px 7px}@media(max-width:700px){#calendar .calendar-time-controls{flex-wrap:wrap}.session-menu{right:auto;left:0}.calendar-action-toast{bottom:12px}.calendar-action-toast span{font-size:.82rem}}
.reminder-panel{border-left:5px solid var(--blue)}.reminder-status{background:var(--paper);border-radius:10px;padding:10px 12px;margin:14px 0}.reminder-status.granted{background:var(--green2);color:var(--green)}.reminder-status.denied{background:var(--red2);color:var(--red)}.reminder-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.reminder-switch{display:flex;align-items:center;gap:9px;background:var(--paper);border-radius:10px;padding:11px;font-weight:750}.reminder-switch input{width:18px;height:18px;accent-color:var(--green)}.quiet-hours{display:grid;grid-template-columns:1fr 1fr;gap:10px}.reminder-actions{margin-top:14px}@media(max-width:620px){.reminder-form,.quiet-hours{grid-template-columns:1fr}}
.mock-panel{margin-bottom:16px;border-left:5px solid var(--purple)}.mock-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.mock-form fieldset{border:1px solid var(--line);border-radius:11px;padding:13px}.mock-form legend{font-weight:820}.mock-wide{grid-column:1/-1}.mock-form small{display:block;color:var(--muted);font-weight:500;margin-top:5px}.mock-history{display:grid;gap:8px;margin-top:14px}.mock-history article{display:grid;grid-template-columns:58px 1fr;align-items:center;gap:12px;background:var(--paper);border-radius:11px;padding:10px}.mock-history p,.mock-history small{display:block;margin:2px 0;color:var(--muted)}@media(max-width:600px){.mock-form{grid-template-columns:1fr}.mock-wide{grid-column:auto}}
.paper-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:11px 13px;margin-bottom:16px}.paper-filters>strong{margin-right:3px;font-size:.86rem}.paper-filters .filter-chip{margin:0}
.exam-day-zone{display:grid;gap:13px;margin-bottom:18px}.exam-day-card{display:grid;grid-template-columns:64px 1fr;gap:14px;border:1px solid var(--line);border-left:6px solid var(--subject);border-radius:15px;background:linear-gradient(120deg,#fff9e8,#fff);padding:18px}.exam-day-card.result-saved{background:var(--green2)}.exam-celebration{font-size:2.5rem;line-height:1}.exam-day-card h3{margin:2px 0 5px;font-size:1.3rem}.exam-day-card p{margin:0 0 12px;color:#486581}.exam-result-form{display:grid;gap:11px;max-width:680px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.exam-marks{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:520px){.exam-day-card{grid-template-columns:1fr}.exam-marks{grid-template-columns:1fr}}
#calendar .calendar-task{display:grid;grid-template-columns:minmax(0,1fr) 210px;grid-template-rows:auto auto;column-gap:12px;padding:12px 10px 12px 40px!important;align-items:center}#calendar .calendar-task>strong{grid-column:1;grid-row:1;min-width:0;overflow-wrap:anywhere}#calendar .calendar-task>.task-meta{grid-column:1;grid-row:2}#calendar .calendar-time-controls{position:static;transform:none;grid-column:2;grid-row:1/3;justify-self:end;align-self:center}.calendar-time-input{font-variant-numeric:tabular-nums}@media(max-width:700px){#calendar .calendar-task{grid-template-columns:1fr;padding-right:10px!important}#calendar .calendar-time-controls{grid-column:1;grid-row:3;justify-self:start;margin-top:8px}}
.calendar-task{position:relative;padding-right:210px}.calendar-time-controls{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:flex;align-items:end;gap:5px}.calendar-time-controls label{display:grid;color:var(--muted);font-size:.65rem;font-weight:800}.calendar-time-input{width:86px;padding:5px 6px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);font-weight:800}.session-arrow{width:32px;height:32px;padding:0;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-size:1.05rem;font-weight:900}.session-arrow:hover:not(:disabled){background:var(--blue2);border-color:var(--blue)}.session-arrow:disabled,.calendar-time-input:disabled{opacity:.42;cursor:not-allowed}@media(max-width:680px){.calendar-task{padding-right:8px}.calendar-time-controls{position:static;transform:none;margin-top:9px;justify-content:flex-end}}
.paper-save-notice{position:relative;background:var(--green2);color:#075f46;border-left:5px solid var(--green);border-radius:12px;padding:15px 48px 15px 17px;margin-bottom:16px}.paper-save-notice ul{margin:9px 0 0;padding-left:21px}.paper-save-notice li{margin:4px 0}.paper-save-notice .dismiss-paper-notice{position:absolute;right:10px;top:8px;color:var(--green);font-size:1.2rem}
.availability-rebuild-note{background:var(--blue2);color:#174f78;border-radius:11px;padding:12px 14px;margin:15px 0}.availability-rebuild-note+button{margin-top:0}
.redo-choice{display:flex;align-items:center;gap:8px;font-weight:800;background:var(--paper);border-radius:10px;padding:11px}.redo-choice input{accent-color:var(--green);width:18px;height:18px}.calendar-paper-link{display:block;color:var(--green);font-weight:800;margin-top:4px}.paper-result-locked{cursor:not-allowed;opacity:.82}.paper-result-locked .calendar-done:disabled,#today [data-task-done]:disabled{cursor:not-allowed;opacity:1}.paper-result-locked strong{color:var(--green)}
.linked-paper-notice{border-left:5px solid var(--green)}.linked-session-badge{color:var(--green)!important;font-weight:800}.paper-duration-panel form{margin-top:14px}.paper-duration-panel .secondary{align-self:end}
.paper-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px}.paper-heading .view-subtitle{margin-bottom:0}.paper-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.paper-metrics article{background:var(--card);border:1px solid var(--line);border-radius:13px;padding:15px}.paper-metrics span{display:block;color:var(--muted);font-size:.82rem}.paper-metrics strong{font-size:1.35rem}.paper-form-panel{margin-bottom:16px}.paper-form{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.paper-form fieldset{border:1px solid var(--line);border-radius:11px;padding:13px}.paper-form legend{font-weight:820;padding:0 5px}.paper-wide{grid-column:1/-1}.paper-files small{display:block;color:var(--muted);font-weight:500;margin-top:5px}.mistake-types,.paper-topic-choices{display:flex;flex-wrap:wrap;gap:8px}.mistake-types label,.paper-topic-choices label,.revision-toggle{background:var(--paper);border-radius:9px;padding:8px 10px}.mistake-types input,.paper-topic-choices input,.revision-toggle input{accent-color:var(--green)}.paper-layout{display:grid;grid-template-columns:1.5fr .7fr;gap:16px;margin-bottom:16px}.score-chart{height:230px;display:flex;align-items:end;gap:10px;overflow-x:auto;padding:18px 5px 0}.score-column{display:grid;grid-template-rows:22px 160px 30px;min-width:48px;text-align:center}.score-column>span{font-size:.75rem;font-weight:800}.score-column>div{height:160px;background:var(--paper);border-radius:7px 7px 3px 3px;display:flex;align-items:end;overflow:hidden}.score-column i{display:block;width:100%;min-height:4px}.score-column small{color:var(--muted);font-size:.68rem;padding-top:5px}.mistake-highlight{display:grid;place-items:center;text-align:center;min-height:180px;background:var(--orange2);border-radius:13px;margin-top:16px;padding:20px}.mistake-highlight strong{font-size:1.7rem;text-transform:capitalize;color:var(--orange)}.mistake-highlight span{color:#7c4a03}.paper-history{margin-top:16px}.paper-table{display:grid;gap:9px;margin-top:14px}.paper-table article{display:grid;grid-template-columns:66px 1fr auto;align-items:center;gap:14px;border-left:5px solid var(--subject);background:var(--paper);border-radius:11px;padding:12px}.paper-table p,.paper-table small{display:block;margin:2px 0;color:var(--muted)}.paper-table details{margin-top:7px}.paper-score{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;font-weight:900;background:var(--red2);color:var(--red)}.paper-score.mid{background:var(--orange2);color:var(--orange)}.paper-score.good{background:var(--green2);color:var(--green)}.paper-actions{text-align:right}.paper-actions span{display:block;color:var(--muted);font-size:.78rem}@media(max-width:820px){.paper-metrics{grid-template-columns:1fr 1fr}.paper-layout{grid-template-columns:1fr}}@media(max-width:580px){.paper-heading{align-items:start;flex-direction:column}.paper-heading button{width:100%}.paper-metrics,.paper-form{grid-template-columns:1fr}.paper-wide{grid-column:auto}.paper-table article{grid-template-columns:58px 1fr}.paper-actions{grid-column:2;text-align:left}}
.week-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px}.week-heading .view-subtitle{margin-bottom:0}.week-warning{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--orange2);color:#7c4a03;border-left:5px solid #f59e0b;border-radius:12px;padding:14px 16px;margin-bottom:16px}.week-warning span{flex:1}.week-warning .link-button{color:#7c4a03;font-weight:800}.week-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.week-metrics article{background:var(--card);border:1px solid var(--line);border-radius:13px;padding:15px}.week-metrics span,.week-metrics small{display:block;color:var(--muted)}.week-metrics strong{display:block;font-size:1.45rem;margin:3px 0}.week-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:16px}.week-side{display:grid;gap:16px}.week-days{display:grid;gap:7px;margin-top:16px}.week-day{display:grid;grid-template-columns:88px minmax(80px,1fr) 72px 62px;align-items:center;gap:10px;padding:10px;border-radius:10px;background:var(--paper)}.week-day.current{outline:2px solid var(--blue);background:var(--blue2)}.week-day>div:first-child span,.week-day small{display:block;color:var(--muted);font-size:.72rem}.week-day-bar{height:8px;background:var(--line);border-radius:99px;overflow:hidden}.week-day-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--green));border-radius:inherit}.week-day b{text-align:right}.attention-list{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:11px}.attention-list li{display:flex;align-items:center;gap:10px}.attention-list small,.exam-list small{display:block;color:var(--muted)}.attention-rank{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--orange2);color:var(--orange);font-weight:850}.exam-list{display:grid;gap:8px;margin-top:14px}.exam-list>div{display:flex;justify-content:space-between;gap:12px;border-left:4px solid var(--subject);padding:8px 10px;background:var(--paper);border-radius:8px}@media(max-width:900px){.week-heading{align-items:start;flex-direction:column}.week-metrics{grid-template-columns:1fr 1fr}.week-layout{grid-template-columns:1fr}}@media(max-width:560px){.week-metrics{grid-template-columns:1fr}.week-day{grid-template-columns:68px 1fr 62px}.week-day small{display:none}.week-heading .inline-actions{width:100%}.week-heading .inline-actions button{flex:1}}
.login-card label+label{margin-top:13px}.login-status{margin:14px 0 0;text-align:center}.notice.error{background:var(--red2);color:var(--red)}
.login-secondary{width:100%;margin-top:9px}
.account-choice-copy{text-align:center;margin:18px 0 0;color:var(--muted);font-size:.9rem}.account-choice-copy+.login-secondary{margin-top:7px}
.learning-check-dialog{width:min(620px,calc(100% - 24px));padding:30px;border-radius:22px}.learning-check-dialog h2{font-size:2rem;margin:5px 0}.check-subtitle{color:var(--muted);margin:0 0 20px}.learning-check-form{display:grid;gap:15px}.learning-check-form fieldset{border:1px solid var(--line);border-radius:12px;padding:13px;display:grid;gap:8px}.learning-check-form legend{font-weight:820;padding:0 5px}.learning-check-form fieldset label{background:var(--paper);border-radius:8px;padding:8px 10px}.learning-check-form input[type=radio]{accent-color:var(--green);margin-right:7px}.learning-check-form>.primary{margin-top:4px}.learning-check-form>.link-button{margin:0 auto}.learning-update{border-left:5px solid var(--green)}
.availability-panel>p{margin-bottom:16px!important}.availability-list{display:grid;gap:8px}.availability-row{display:grid;grid-template-columns:1fr 160px 160px;align-items:end;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:var(--paper)}.availability-day{font-weight:820;padding-bottom:11px}.availability-day input{accent-color:var(--green)}.break-field{max-width:240px;margin:16px 0}.break-field small{display:block;color:var(--muted);font-weight:500;margin-top:5px}.session-edit-row{grid-template-columns:1fr minmax(300px,360px)}.session-date-time{display:grid;grid-template-columns:1fr 1fr;gap:8px}.session-time{display:inline-block;color:var(--green);font-variant-numeric:tabular-nums}.calendar-task strong{display:block}@media(max-width:650px){.availability-row{grid-template-columns:1fr 1fr}.availability-day{grid-column:1/-1;padding-bottom:0}.session-edit-row{grid-template-columns:1fr}.session-date-time{grid-template-columns:1fr}}
.availability-panel>p{margin-bottom:16px!important}.availability-list{display:grid;gap:10px}.availability-row{display:block;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--paper)}.availability-day-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.availability-day{font-weight:820}.availability-day input{accent-color:var(--green)}.availability-windows{display:grid;gap:7px}.availability-window{display:grid;grid-template-columns:160px 160px auto;align-items:end;gap:10px;padding-top:7px;border-top:1px solid var(--line)}.break-field{max-width:240px;margin:16px 0}.break-field small{display:block;color:var(--muted);font-weight:500;margin-top:5px}.session-edit-row{grid-template-columns:1fr minmax(300px,360px)}.session-date-time{display:grid;grid-template-columns:1fr 1fr;gap:8px}.session-time{display:inline-block;color:var(--green);font-variant-numeric:tabular-nums}.calendar-task strong{display:block}.edit-grid{align-items:start}.collapsible-panel{padding-top:12px;align-self:start}.section-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;border:0;background:transparent;color:var(--ink);font-size:1.08rem;font-weight:850;text-align:left;padding:6px 0 12px}.section-chevron{font-size:1.5rem;transition:transform .2s}.section-toggle[aria-expanded=true] .section-chevron{transform:rotate(180deg)}.collapsible-panel.collapsed>:not(.section-toggle){display:none!important}.collapsible-panel.collapsed .section-toggle{padding-bottom:6px}@media(max-width:650px){.availability-day-head{align-items:flex-start}.availability-window{grid-template-columns:1fr 1fr}.availability-window .remove-window{grid-column:1/-1;justify-self:start}.session-edit-row{grid-template-columns:1fr}.session-date-time{grid-template-columns:1fr}}
.link-button{display:block;margin:12px auto 0;border:0;background:transparent;color:var(--blue);font-weight:750;text-decoration:underline}
[hidden]{display:none!important}
.subject-launch{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin-top:14px;padding:16px;border:1px solid var(--line);border-radius:13px;background:linear-gradient(135deg,var(--blue2),#fff)}.subject-launch-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:var(--ink);color:#fff;font-size:1.7rem}.subject-launch strong{font-size:1.04rem}.subject-launch p{margin:3px 0 0;color:var(--muted);font-size:.86rem}.subject-wizard-dialog{width:min(720px,calc(100% - 24px));padding:28px;border-radius:22px}.wizard-head{display:flex;align-items:start;justify-content:space-between}.wizard-head h2{font-size:2rem;margin:0}.wizard-progress{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:20px 0 26px}.wizard-progress span{height:7px;border-radius:999px;background:var(--line)}.wizard-progress span.active{background:var(--green)}.wizard-progress span.done{background:#8fcfbe}.wizard-step h3{font-size:1.5rem;margin:0 0 4px}.wizard-step>p{margin:0 0 18px;color:var(--muted)}.wizard-step>.field{margin-top:14px}.wizard-two{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.wizard-choice{display:flex;align-items:center;gap:9px;padding:13px;margin-top:14px;background:var(--paper);border:1px solid var(--line);border-radius:11px}.wizard-choice input{width:19px;height:19px;accent-color:var(--green)}.wizard-choice.strong{font-weight:800}.disabled-options{opacity:.42;pointer-events:none}.wizard-actions{display:flex;justify-content:space-between;gap:12px;margin-top:26px;padding-top:18px;border-top:1px solid var(--line)}.wizard-actions .primary{margin-left:auto}.wizard-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.wizard-summary article{padding:13px;background:var(--paper);border-radius:10px}.wizard-summary span,.wizard-summary strong{display:block}.wizard-summary span{font-size:.75rem;color:var(--muted)}.wizard-reassurance{padding:13px!important;margin-top:14px!important;background:var(--green2);color:#116149!important;border-radius:11px}.guided-tour{position:fixed;z-index:10001;background:#fff;border:1px solid var(--line);border-radius:17px;padding:21px;box-shadow:0 20px 70px rgba(8,30,48,.3)}.guided-tour-close{position:absolute;right:11px;top:8px;border:0;background:transparent;font-size:1.5rem;color:var(--muted)}.guided-tour-progress{display:flex;gap:4px;padding-right:28px;margin-bottom:14px}.guided-tour-progress i{height:5px;flex:1;border-radius:99px;background:var(--line)}.guided-tour-progress i.active{background:var(--green)}.guided-tour-progress i.done{background:#8fcfbe}.guided-tour-count{font-size:.69rem;font-weight:850;letter-spacing:.12em;color:var(--muted);margin:0}.guided-tour h3{font-size:1.35rem;margin:4px 0 7px}.guided-tour-text{color:#334e68;margin:0}.guided-tour-tip{background:var(--blue2);color:#174f78;border-radius:10px;padding:11px;margin-top:14px;font-size:.86rem}.guided-tour-actions{display:flex;align-items:center;gap:8px;margin-top:16px}.guided-tour-actions [data-tour-next]{margin-left:auto}.guided-tour-actions .link-button{margin:0}.tour-highlight{position:relative;z-index:10000!important;outline:4px solid #f6c453!important;outline-offset:5px;border-radius:10px;box-shadow:0 0 0 9999px rgba(8,30,48,.42)!important}.tour-highlight.tab{box-shadow:0 0 0 9999px rgba(8,30,48,.42)!important}@media(max-width:620px){.subject-launch{grid-template-columns:auto 1fr}.subject-launch button{grid-column:1/-1;width:100%}.wizard-two,.wizard-summary{grid-template-columns:1fr}.subject-wizard-dialog{padding:20px}.guided-tour{left:12px!important;max-height:70vh;overflow:auto}.guided-tour-actions{flex-wrap:wrap}.guided-tour-actions [data-tour-skip]{order:3;width:100%;text-align:center}}
.wizard-file-drop{position:relative;display:flex;align-items:center;gap:13px;padding:16px;border:2px dashed #8ba7bb;border-radius:13px;background:var(--blue2);cursor:pointer}.wizard-file-drop:hover{border-color:var(--blue);background:#e2f1fc}.wizard-file-drop input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.wizard-file-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--ink);color:#fff;font-size:1.5rem;font-weight:900}.wizard-file-drop strong,.wizard-file-drop small{display:block}.wizard-file-drop small{color:var(--muted);margin-top:2px}.wizard-step #wizardImportStatus{margin:10px 0 0}.wizard-step #wizardImportStatus.success{background:var(--green2);color:#116149}.shared-import-launch{display:flex;align-items:center;justify-content:space-between;gap:22px}.shared-import-launch h2{margin:0 0 5px}.shared-import-launch p{max-width:720px;margin:0;color:var(--muted)}@media(max-width:650px){.shared-import-launch{display:block}.shared-import-launch button{width:100%;margin-top:15px}}
.paper-schedule-options{border:0;padding:0;margin:20px 0 0}.paper-schedule-options legend{font-weight:850;margin-bottom:8px}.paper-schedule-choice{display:flex;align-items:flex-start;gap:11px;padding:13px;margin-top:9px;border:1px solid var(--line);border-radius:12px;background:var(--paper);cursor:pointer}.paper-schedule-choice:has(input:checked){border-color:var(--green);background:var(--green2);box-shadow:0 0 0 2px rgba(0,128,96,.08)}.paper-schedule-choice>input{width:19px;height:19px;margin-top:2px;accent-color:var(--green)}.paper-schedule-choice span,.paper-schedule-choice strong,.paper-schedule-choice small{display:block}.paper-schedule-choice small{color:var(--muted);margin-top:2px}.paper-schedule-choice select{display:inline;width:auto;padding:3px 24px 3px 7px;margin:0 3px}
.profile-menu-wrap{position:relative}.profile-menu-button{display:flex;align-items:center;gap:8px;min-height:48px}.profile-menu-button>span:first-child{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f6c453;color:var(--ink);font-weight:900}.profile-menu-button>span:last-child{font-size:.8rem;margin-left:2px}.profile-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:50;width:220px;padding:7px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 45px rgba(8,30,48,.24)}.profile-menu button{display:block;width:100%;padding:11px 12px;border:0;border-radius:8px;background:transparent;color:var(--ink);font-weight:750;text-align:left}.profile-menu button+button{border-top:1px solid var(--line)}.profile-menu button:hover{background:var(--paper)}.account-settings-dialog h2{margin:3px 0}.account-email{color:var(--muted);margin-top:0}.account-settings-dialog form{display:grid;gap:12px}.account-settings-dialog hr{border:0;border-top:1px solid var(--line);margin:22px 0}.account-danger{margin-top:22px;padding:16px;border:1px solid #ffd5cf;border-radius:12px;background:#fffafa}.account-danger h3,.account-danger p{margin:0 0 8px}@media(max-width:520px){.profile-menu-button #profileMenuName{display:none}.profile-menu{right:0}}
.mastery-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:15px}.mastery-heading .view-subtitle{margin-bottom:0;max-width:700px}.mastery-apply{width:min(360px,42%);padding:11px;border:1px solid var(--line);border-radius:12px;background:var(--blue2)}.mastery-apply label{display:block;font-size:.78rem;font-weight:850}.mastery-apply select{display:block;width:100%;margin:4px 0 8px;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff}.mastery-apply button{width:100%;margin-top:10px}.mastery-apply small{display:block;margin-top:6px;color:#334e68;line-height:1.35}.mastery-legend{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:17px}.mastery-legend span,.mastery-topic small{padding:4px 8px;border-radius:999px;font-size:.72rem;font-weight:850}.mastery-legend .not-learned,.mastery-topic.not-learned small{background:#ffe4e0;color:#a61b1b}.mastery-legend .learning,.mastery-topic.learning small{background:#fff1cc;color:#8a5700}.mastery-legend .needs-practice,.mastery-topic.needs-practice small{background:#e4efff;color:#175ea8}.mastery-legend .exam-ready,.mastery-topic.exam-ready small{background:#dff7ed;color:#087f5b}.mastery-legend .needs-refreshing,.mastery-topic.needs-refreshing small{background:#f0e8ff;color:#7048e8}.mastery-average{padding:8px 11px;border-radius:10px;background:var(--green2);color:var(--green);font-weight:900;white-space:nowrap}.mastery-overview{padding:11px 12px;margin-bottom:11px;border-radius:10px;background:var(--paper)}.mastery-overview strong,.mastery-overview span{display:block}.mastery-overview span{color:var(--muted);font-size:.82rem;margin-top:2px}.mastery-topic-list{display:grid;gap:7px}.mastery-topic{border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden}.mastery-topic summary{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:11px 12px;cursor:pointer;list-style:none}.mastery-topic summary::-webkit-details-marker{display:none}.mastery-topic summary>span:first-child{display:flex;align-items:center;gap:8px;min-width:0}.mastery-topic summary strong{overflow:hidden;text-overflow:ellipsis}.mastery-score{display:grid;grid-template-columns:78px 38px;align-items:center;gap:7px}.mastery-score i{display:block;height:7px;border-radius:99px;background:linear-gradient(90deg,var(--green) var(--mastery),var(--line) var(--mastery))}.mastery-score b{font-size:.78rem}.mastery-detail{padding:0 12px 11px;color:var(--muted);font-size:.82rem}.mastery-detail p{margin:4px 0}@media(max-width:620px){.mastery-heading{display:block}.mastery-apply{width:100%;margin-top:12px}.mastery-topic summary>span:first-child{display:block}.mastery-topic small{display:inline-block;margin-top:4px}.mastery-score{grid-template-columns:55px 34px}}
.question-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.question-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:17px 0}.question-metrics article{padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff}.question-metrics span,.question-metrics strong{display:block}.question-metrics span{color:var(--muted);font-size:.75rem}.question-metrics strong{font-size:1.15rem;margin-top:3px;text-transform:capitalize}.question-form-panel{margin-bottom:16px}.question-form{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:14px}.question-wide{grid-column:1/-1}.question-history{margin-top:16px}.question-list{display:grid;gap:9px;margin-top:12px}.question-list>article{display:grid;grid-template-columns:68px 1fr auto;gap:12px;align-items:start;padding:12px;border:1px solid var(--line);border-left:5px solid var(--subject);border-radius:11px;background:#fff}.question-list p,.question-list small{display:block;margin:2px 0;color:var(--muted)}.question-actions{display:grid;justify-items:end;gap:8px}.question-actions label{font-size:.78rem;font-weight:800;white-space:nowrap}.question-actions input{accent-color:var(--green)}@media(max-width:760px){.question-metrics{grid-template-columns:1fr 1fr}.question-list>article{grid-template-columns:58px 1fr}.question-actions{grid-column:2;display:flex;justify-content:space-between}.question-form{grid-template-columns:1fr}.question-wide{grid-column:auto}}@media(max-width:500px){.question-heading{display:block}.question-heading button{width:100%;margin-top:12px}.question-metrics{grid-template-columns:1fr}}
html.guided-tour-open,body.guided-tour-open{overflow:hidden!important;overscroll-behavior:none;touch-action:none;height:100%}.guided-tour{touch-action:auto;max-height:calc(100vh - 24px);overflow:auto}
.wizard-progress{grid-template-columns:repeat(7,1fr)}.wizard-availability{display:grid;gap:8px}.wizard-availability>div{display:grid;grid-template-columns:minmax(130px,1fr) 145px 145px;gap:10px;align-items:end;padding:10px 12px;background:var(--paper);border-radius:10px}.wizard-availability label{font-size:.8rem;font-weight:750}.wizard-availability input[type=time]{display:block;width:100%;margin-top:4px;padding:8px;border:1px solid var(--line);border-radius:8px}.wizard-day{align-self:center;font-size:.9rem!important}.wizard-day input{accent-color:var(--green)}@media(max-width:580px){.wizard-availability>div{grid-template-columns:1fr 1fr}.wizard-day{grid-column:1/-1}}
.password-recovery-dialog{width:min(480px,calc(100% - 24px));padding:30px;border-radius:22px}.password-recovery-dialog h2{font-size:2rem;margin:9px 0 5px}.password-recovery-dialog>p:not(.eyebrow){color:var(--muted)}.password-recovery-dialog form{display:grid;gap:14px;margin-top:20px}.password-recovery-dialog .primary{margin-top:4px}.password-recovery-dialog .notice{margin:0}.password-recovery-dialog .notice.error{background:var(--red2);color:var(--red)}
.calendar-viewbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0}.calendar-view-switch{display:flex;padding:4px;background:#dfe9f1;border-radius:11px}.calendar-view-switch button,.calendar-period-nav button{border:0;border-radius:8px;background:transparent;color:var(--ink);font-weight:800;padding:8px 13px}.calendar-view-switch button.active{background:var(--ink);color:#fff}.calendar-period-nav{display:flex;align-items:center;gap:7px}.calendar-period-nav strong{min-width:170px;text-align:center}.calendar-period-nav button{background:var(--card);border:1px solid var(--line)}.month-weekdays,.month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.month-weekdays{margin:14px 0 7px}.month-weekdays b{text-align:center;color:var(--muted);font-size:.75rem}.month-day,.month-blank{min-height:105px;border-radius:11px}.month-day{display:flex;flex-direction:column;align-items:flex-start;border:1px solid var(--line);background:var(--card);padding:10px;text-align:left;color:var(--ink)}.month-day:hover{border-color:var(--blue);background:var(--blue2)}.month-day.today{outline:2px solid var(--blue)}.month-day.past{opacity:.68}.month-day>span{font-weight:900}.month-day>strong{font-size:.83rem;margin-top:8px}.month-day>small{color:var(--muted);font-size:.7rem}.month-day>i{display:flex;gap:4px;margin-top:auto}.month-day>i b{width:7px;height:7px;border-radius:50%;background:var(--dot)}@media(max-width:680px){.calendar-viewbar{align-items:stretch;flex-direction:column}.calendar-period-nav{justify-content:space-between}.calendar-period-nav strong{min-width:0}.month-weekdays,.month-grid{gap:3px}.month-day,.month-blank{min-height:72px}.month-day{padding:6px}.month-day>strong{font-size:.68rem}.month-day>small{font-size:.58rem}}
.calendar-filters{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.filter-chip{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--subject,var(--ink));border-radius:999px;padding:8px 12px;font-size:.84rem;font-weight:750}.filter-chip input{accent-color:var(--blue)}.calendar-task-list{list-style:none!important;padding:0!important}.calendar-task{background:var(--paper);border-left:4px solid var(--subject);border-radius:8px;padding:9px!important;margin:7px 0!important;cursor:grab;display:flex;flex-direction:column}.calendar-task:active{cursor:grabbing}.drop-day{transition:border-color .15s,background .15s}.drop-day.drag-over{border:2px dashed var(--blue);background:var(--blue2)}.drop-hint{font-size:.78rem!important;opacity:.45;margin-top:12px!important}.topic-import-panel{margin-top:16px}.session-filter{min-width:190px}.session-editor{display:grid;gap:8px;margin-top:16px;max-height:560px;overflow:auto;padding-right:4px}.session-edit-row{display:grid;grid-template-columns:1fr 170px;gap:12px;align-items:center;border-top:1px solid var(--line);padding:10px 0}.session-edit-row small{display:block;color:var(--muted);margin-top:2px}@media(max-width:520px){.session-edit-row{grid-template-columns:1fr}.calendar-task{cursor:default}.session-filter{min-width:0;width:100%}.card-head{flex-direction:column}}
.calendar-task{position:relative;padding-left:40px!important}.calendar-done{position:absolute;left:11px;top:12px;width:19px;height:19px;accent-color:var(--green);cursor:pointer}.calendar-task.done{opacity:.58}.calendar-task.done strong{text-decoration:line-through}
.recovery-saved{margin-top:18px}.coach-result #viewRecoveryToday{margin-top:0}
.regenerate-explanation{margin:18px 0 10px!important;padding:12px;border-radius:10px;background:var(--blue2);color:#174f78!important}.daily-limit-field small{display:block;margin-top:6px;color:var(--muted);font-weight:500}.capacity-warning{border:2px solid #f0a43c;border-left-width:7px;background:#fff8e8;border-radius:14px;padding:17px;margin-bottom:18px}.capacity-warning h3,.capacity-warning p{margin:3px 0 8px}.capacity-warning .eyebrow{color:#9a5200}
.capacity-warning button{margin-top:10px}
.tutorial-dialog{width:min(620px,calc(100% - 24px));padding:28px;border-radius:22px}.tutorial-top{display:flex;align-items:start;justify-content:space-between}.tutorial-top .dialog-close{float:none}.tutorial-progress{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin:18px 0 24px}.tutorial-progress span{height:6px;border-radius:999px;background:var(--line)}.tutorial-progress span.done{background:#8fcfbe}.tutorial-progress span.active{background:var(--green)}.tutorial-icon{font-size:2.5rem;margin-bottom:4px}.tutorial-count{font-size:.72rem;font-weight:850;letter-spacing:.12em;color:var(--muted);margin:0}.tutorial-dialog h2{font-size:clamp(1.65rem,5vw,2.3rem);margin:6px 0 10px}.tutorial-dialog #tutorialContent>p:not(.tutorial-count){font-size:1.05rem;color:#334e68}.tutorial-tip{background:var(--blue2);color:#174f78;padding:13px 15px;border-radius:12px;margin:20px 0}.tutorial-actions{display:flex;align-items:center;gap:10px;margin-top:24px}.tutorial-actions .primary{margin-left:auto}.tutorial-actions .link-button{margin:0}.tutorial-back{background:var(--paper);color:var(--ink);border:1px solid var(--line)}.tutorial-skip-all{display:block;margin:15px auto 0;border:0;background:transparent;color:var(--muted);font-size:.84rem;text-decoration:underline}@media(max-width:520px){.tutorial-dialog{padding:20px}.tutorial-actions{flex-wrap:wrap}.tutorial-actions .link-button{order:3;width:100%;text-align:center}.tutorial-actions .primary{margin-left:auto}}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.5}button,input,select,textarea{font:inherit}button{cursor:pointer}.login-screen{min-height:100vh;display:grid;place-items:center;padding:22px;background:linear-gradient(145deg,#102a43,#156b8a)}.login-card{width:min(440px,100%);background:#fff;border-radius:20px;padding:34px;box-shadow:0 24px 80px rgba(0,0,0,.25)}.login-card h1{margin:4px 0}.login-card>p{color:var(--muted)}.login-card label,.field{font-weight:750;display:block}.login-card input,.field input,.field select,.field textarea{display:block;width:100%;margin-top:6px;padding:11px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink)}.login-card .primary{width:100%;margin-top:18px}.brand-mark{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--ink);color:#fff;font-weight:900}.privacy-note{font-size:.8rem;text-align:center}.hero{background:linear-gradient(125deg,#102a43,#174f78);color:#fff;padding:38px max(24px,calc((100% - 1180px)/2));display:flex;justify-content:space-between;align-items:end;gap:28px}.eyebrow{font-size:.74rem;letter-spacing:.13em;font-weight:850;margin:0 0 7px;opacity:.78}.hero h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.05;margin:0;max-width:760px}.hero-copy{max-width:700px;margin:13px 0 0;color:#d9eaf7}.hero-actions,.inline-actions,.timer-actions{display:flex;gap:10px;flex-wrap:wrap}.primary,.secondary,.quiet,.danger,.tab,.icon-btn{border:0;border-radius:10px;padding:10px 15px;font-weight:780}.primary{background:#f6c453;color:#102a43}.secondary{background:var(--ink);color:#fff}.quiet{background:rgba(255,255,255,.12);color:inherit;border:1px solid rgba(255,255,255,.25)}.danger{background:var(--red2);color:var(--red)}.icon-btn{background:transparent;color:var(--muted);padding:6px 8px}.small-btn{padding:7px 10px;font-size:.82rem}main{max-width:1180px;margin:0 auto;padding:28px 22px 60px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:-45px}.stats article{background:var(--card);border-radius:14px;padding:18px;box-shadow:var(--shadow);display:flex;flex-direction:column}.stats span{color:var(--muted);font-size:.82rem;font-weight:700}.stats strong{font-size:1.28rem;margin-top:3px}.progress-section{margin:27px 0}.section-heading,.card-head{display:flex;justify-content:space-between;align-items:start;gap:12px}.section-heading h2{font-size:1rem;margin:0 0 8px}.progress-track,.mini-progress{height:11px;background:#dbe7f0;border-radius:20px;overflow:hidden}.progress-track div,.mini-progress div{height:100%;width:0;background:linear-gradient(90deg,#1565c0,#25a18e);transition:width .3s}.tabs{display:flex;gap:6px;overflow:auto;border-bottom:1px solid var(--line);margin-bottom:22px}.tab{background:transparent;color:var(--muted);border-radius:8px 8px 0 0;white-space:nowrap}.tab.active{background:var(--ink);color:#fff}.view{display:none}.view.active{display:block}.view-title{margin:0 0 4px}.view-subtitle{margin:0 0 20px;color:var(--muted)}.notice{background:var(--blue2);color:#174f78;border-radius:11px;padding:12px 15px;margin-bottom:16px}.empty{background:var(--card);border:1px dashed #9fb3c8;border-radius:14px;padding:30px;text-align:center;color:var(--muted)}.task-list,.day-grid,.subject-grid,.edit-grid,.topic-editor{display:grid;gap:12px}.task{background:var(--card);border:1px solid var(--line);border-left:5px solid var(--subject,#1565c0);border-radius:12px;padding:14px;display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:12px}.task.done{opacity:.6}.task.done .task-name{text-decoration:line-through}.task input[type=checkbox]{width:21px;height:21px;accent-color:var(--green)}.task-name{font-weight:820}.task-meta{color:var(--muted);font-size:.84rem;margin-top:3px}.tag{font-size:.71rem;font-weight:820;border-radius:999px;padding:4px 8px;background:var(--blue2);color:var(--blue);white-space:nowrap}.tag.practice{background:var(--orange2);color:var(--orange)}.tag.review{background:var(--green2);color:var(--green)}.tag.manual{background:#f1edff;color:var(--purple)}.day-grid{grid-template-columns:repeat(2,1fr)}.day-card,.subject-card,.panel,.coach-result{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px}.day-card.today{border:2px solid var(--blue);box-shadow:var(--shadow)}.day-card.past{opacity:.68}.day-card h3,.subject-card h3,.panel h3{margin:0 0 4px}.day-card p,.subject-card p,.panel>p{margin:0;color:var(--muted);font-size:.9rem}.day-card .mini-progress{height:7px;margin:12px 0}.day-card ul{padding-left:18px;margin:8px 0 0}.day-card li{margin:5px 0}.subject-grid{grid-template-columns:repeat(2,1fr)}.subject-card{border-top:6px solid var(--subject)}.subject-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.subject-summary div{background:var(--paper);border-radius:9px;padding:9px}.subject-summary span{display:block;color:var(--muted);font-size:.72rem}.subject-summary strong{font-size:.95rem}.topic-list{list-style:none;margin:10px 0 0;padding:0}.topic-list li{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid var(--line)}.confidence{font-size:.75rem;font-weight:800}.confidence.low{color:var(--red)}.confidence.medium{color:var(--orange)}.confidence.high{color:var(--green)}.coach-shell{display:grid;grid-template-columns:minmax(260px,.8fr) 1.2fr;gap:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .wide{grid-column:1/-1}.coach-result{border-left:5px solid var(--green);min-height:240px}.coach-result h3{margin-top:0}.coach-result ol{padding-left:21px}.coach-result .pep{font-weight:820;color:var(--green)}.edit-grid{grid-template-columns:1fr 1fr}.panel.wide{grid-column:1/-1}.panel form{margin-top:15px}.weekday-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:7px}.weekday-row label{font-size:.82rem;background:var(--paper);padding:7px 9px;border-radius:8px}.weekday-row input{accent-color:var(--blue)}.subject-editor{border-top:5px solid var(--subject);margin-top:12px}.topic-editor{margin-top:12px}.topic-edit-row{display:grid;grid-template-columns:1.5fr .75fr .6fr auto;gap:8px;align-items:end;border-top:1px solid var(--line);padding-top:10px}.topic-edit-row .field{font-size:.78rem}.compact-input{width:100%;padding:8px;border:1px solid var(--line);border-radius:8px}.colour-input{height:42px;padding:3px!important}.manual-form{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:10px;align-items:end}.manual-form .field:first-child{grid-column:span 2}.danger-zone{border-color:#ffd5cf;background:#fffafa}dialog{border:0;border-radius:18px;padding:30px;width:min(520px,calc(100% - 28px));box-shadow:0 24px 80px rgba(0,0,0,.28);color:var(--ink)}dialog::backdrop{background:rgba(8,30,48,.72)}.dialog-close{float:right;border:0;background:transparent;font-size:1.7rem}.timer{font-size:4rem;font-weight:850;text-align:center;font-variant-numeric:tabular-nums;margin:24px 0}.timer-actions{justify-content:center}.focus-rule{text-align:center;color:var(--muted);margin-top:22px}footer{text-align:center;color:var(--muted);padding:20px;font-size:.84rem}footer button{border:0;background:transparent;color:var(--blue);font-weight:750;padding:0}@media(max-width:820px){.hero{padding-top:28px;padding-bottom:68px;display:block}.hero-actions{margin-top:20px}.stats{grid-template-columns:1fr 1fr}.day-grid,.subject-grid,.edit-grid,.coach-shell{grid-template-columns:1fr}.panel.wide{grid-column:auto}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.manual-form{grid-template-columns:1fr 1fr}.manual-form .field:first-child{grid-column:1/-1}.tabs{margin-left:-22px;margin-right:-22px;padding:0 22px}.timer{font-size:3rem}}@media(max-width:520px){.stats{grid-template-columns:1fr}.stats article{flex-direction:row;justify-content:space-between;align-items:center}.task{grid-template-columns:auto 1fr}.task .tag{grid-column:2}.topic-edit-row{grid-template-columns:1fr 1fr}.topic-edit-row .icon-btn{justify-self:start}.manual-form{grid-template-columns:1fr}.manual-form .field:first-child{grid-column:auto}.subject-summary{grid-template-columns:1fr}.hero h1{font-size:2rem}}
.readiness-status.building-baseline{background:var(--paper);color:var(--muted)}
.mastery-topic.no-evidence .mastery-score i{background:var(--line)}.mastery-topic.no-evidence .mastery-score b,.mastery-topic.no-evidence summary small{color:var(--muted)}.mastery-legend .no-evidence{background:var(--paper);color:var(--muted)}
.bulk-apply{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,.65fr) auto;gap:12px;align-items:end;margin:14px 0;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.bulk-apply p{margin:3px 0 0;color:var(--muted);font-size:.76rem}.bulk-apply fieldset,.bulk-apply details,.bulk-apply>small{grid-column:1/-1}.bulk-apply fieldset{padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff}.bulk-apply legend{padding:0 5px;font-size:.75rem;font-weight:800}.bulk-apply .weekday-row{margin:3px 0 9px}.bulk-topic-checks{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.bulk-topic-checks label{padding:6px 8px;border-radius:8px;background:#fff;font-size:.75rem}.bulk-apply>small{color:var(--muted)}.capacity-solutions{margin-top:16px;padding-top:15px;border-top:1px solid #efc47b}.capacity-solutions h4{margin:0 0 6px}.capacity-solutions h4:nth-of-type(2){margin-top:14px}.capacity-solutions p{margin:0}.capacity-action-grid{display:flex;gap:8px;flex-wrap:wrap;margin:9px 0}.capacity-action-grid button{width:auto}.capacity-solutions small{color:var(--muted)}@media(max-width:700px){.bulk-apply{grid-template-columns:1fr}.bulk-apply fieldset,.bulk-apply details,.bulk-apply>small{grid-column:auto}.capacity-action-grid{display:grid}.capacity-action-grid button{width:100%}}
.capacity-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0 12px}.capacity-action-grid .capacity-strategy{display:flex;width:100%;min-height:128px;margin:0!important;padding:17px;border:2px solid #d7e2ec;border-radius:14px;background:#fff;color:var(--ink);text-align:left;flex-direction:column;align-items:flex-start;justify-content:flex-start;box-shadow:0 4px 12px rgba(16,42,67,.06);transition:border-color .15s,transform .15s,box-shadow .15s}.capacity-action-grid .capacity-strategy:hover{border-color:var(--blue);transform:translateY(-2px);box-shadow:0 9px 22px rgba(16,42,67,.13)}.capacity-action-grid .capacity-strategy:focus-visible{outline:3px solid #74c0fc;outline-offset:2px}.capacity-strategy strong,.capacity-strategy span{display:block}.capacity-strategy strong{font-size:1rem;line-height:1.25}.capacity-strategy span{margin-top:9px;color:var(--muted);font-size:.8rem;font-weight:550;line-height:1.45}.capacity-strategy[data-capacity-action="all"]{border-top:5px solid var(--blue)}.capacity-strategy[data-capacity-action="learn"]{border-top:5px solid var(--green)}.capacity-strategy[data-capacity-action="essential"]{border-top:5px solid var(--orange)}.capacity-manual{display:inline-block;margin:2px 0 10px!important;padding:0;border:0;background:transparent;color:var(--blue);font-weight:800;text-decoration:underline}.capacity-solutions>small{display:block;margin-top:2px}@media(max-width:800px){.capacity-action-grid{grid-template-columns:1fr}.capacity-action-grid .capacity-strategy{min-height:0}}
/* v73 personalization */
.distribution-picker{border:0;padding:0;margin:28px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.distribution-picker legend{font-weight:900;font-size:1.05rem;margin-bottom:12px}.distribution-picker label{position:relative;display:block}.distribution-picker input{position:absolute;opacity:0;pointer-events:none}.distribution-picker span{display:flex;flex-direction:column;gap:5px;height:100%;padding:16px;border:2px solid #d5e0ea;border-radius:15px;background:#f7f9fc;cursor:pointer}.distribution-picker input:checked+span{border-color:#087f5b;background:#e5f7f1;box-shadow:0 0 0 3px rgba(8,127,91,.1)}.distribution-picker small{color:#486f93;line-height:1.35}.hierarchy-help{padding:14px 16px;margin:0 0 15px;background:#eef6ff;border-left:5px solid #1674c2;border-radius:12px}.hierarchy-help p{margin:0 0 9px}.hierarchy-help pre{margin:0 0 8px;padding:12px;background:#fff;border:1px solid #d4e3f1;border-radius:10px;font:700 .9rem/1.4 system-ui;white-space:pre-wrap}.hierarchy-preview{margin-top:10px}.hierarchy-preview-list{display:grid;gap:6px}.hierarchy-preview-list>div{display:flex;gap:8px;align-items:center;margin-left:calc(var(--depth)*18px);padding:7px 10px;border-left:3px solid #7048e8;background:#f7f4ff;border-radius:7px}.hierarchy-preview-list span{color:#627d98;font-size:.8rem}.hierarchy-empty{color:#627d98}.topic-edit-row{align-items:end}.topic-path-field{min-width:250px}.topic-path-field small{display:block;color:#627d98;margin-top:4px}.add-child-topic{white-space:nowrap}.curriculum-tree{margin:18px 0;padding:14px 16px;border:1px solid #d7e2ec;border-radius:14px;background:#f8fafc}.curriculum-tree>summary{font-weight:900;cursor:pointer}.curriculum-tree ul{list-style:none;margin:9px 0 0;padding-left:20px;border-left:2px solid #d9e6f2}.curriculum-tree>ul{padding-left:4px;border:0}.curriculum-tree li{margin:7px 0}.curriculum-branch>strong{color:#102a43}.curriculum-leaf{padding:6px 9px;background:#fff;border-radius:8px}.curriculum-leaf small{color:#627d98;margin-left:5px}.mastery-topic-path{display:block;color:#627d98;font-weight:700;margin-bottom:2px}.session-feedback-dialog,.recommendation-dialog{width:min(760px,calc(100vw - 28px));max-height:calc(100vh - 30px);overflow:auto;border:0;border-radius:24px;padding:28px;box-shadow:0 28px 90px rgba(5,35,60,.35)}.session-feedback-dialog::backdrop,.recommendation-dialog::backdrop{background:rgba(9,42,66,.62)}.feedback-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:18px 0}.feedback-more{display:flex;align-items:center;gap:10px;padding:13px;border-radius:12px;background:#eef6ff;font-weight:800}.feedback-actions{margin-top:16px}.feedback-required{font-size:.88rem;color:#486f93}.recommendation-dialog{width:min(900px,calc(100vw - 28px))}.recommendation-row{display:grid;grid-template-columns:1.1fr 1.4fr;gap:13px;padding:18px;margin:13px 0;border:1px solid #d7e2ec;border-left:6px solid #087f5b;border-radius:16px;background:#f8fafc}.recommendation-toggle{display:flex;gap:10px;align-items:flex-start}.recommendation-toggle span{display:flex;flex-direction:column}.recommendation-toggle small{color:#486f93;margin-top:4px}.recommendation-edit{display:grid;grid-template-columns:1fr 1fr;gap:10px}.recommendation-row p{grid-column:1/-1;margin:0;color:#334e68}.recommendation-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:18px}.distribution-setting small{display:block;margin-top:5px;color:#486f93}
@media(max-width:760px){.distribution-picker{grid-template-columns:1fr}.feedback-grid,.recommendation-row{grid-template-columns:1fr}.recommendation-actions{flex-direction:column}.recommendation-actions button{width:100%}.topic-path-field{min-width:0}}
.topic-edit-row{grid-template-columns:1.15fr 1.45fr .7fr .6fr auto auto}@media(max-width:760px){.topic-edit-row{grid-template-columns:1fr 1fr}.topic-path-field{grid-column:1/-1}}
.recommendation-context{display:grid;gap:3px;margin:14px 0 18px;padding:13px 15px;border-left:5px solid #087f5b;border-radius:11px;background:#e5f7f1;color:#243b53}.recommendation-context strong,.recommendation-context span{display:block}.recommendation-context span{font-size:.86rem;color:#486581}.recommendation-row.readiness{border-left-color:#1674c2}.recommendation-cadence{grid-column:1/-1;display:inline-flex;width:max-content;padding:5px 9px;border-radius:999px;background:#e5f7f1;color:#087f5b;font-weight:850}.recommendation-row.readiness .recommendation-cadence{background:#e7f2ff;color:#175ea8}@media(max-width:760px){.recommendation-cadence{width:auto}}
/* v74 visual curriculum + unified progress */
.visual-tree-builder{margin:16px 0;padding:16px;border:1px solid var(--line);border-radius:16px;background:#f8fafc}.visual-tree-toolbar{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;margin-bottom:14px}.visual-tree-toolbar strong,.visual-tree-toolbar small{display:block}.visual-tree-toolbar small{margin-top:3px;color:var(--muted)}.tree-session-count{padding:6px 10px;border-radius:999px;background:var(--green2);color:var(--green);font-size:.75rem;font-weight:900}.visual-tree-list{display:grid;gap:9px}.visual-tree-node{position:relative}.visual-tree-box{position:relative;display:grid;grid-template-columns:auto auto minmax(170px,1fr) auto auto auto;gap:8px;align-items:center;padding:10px;margin-left:calc(min(var(--tree-depth),6)*22px);border:2px solid #cad8e4;border-radius:12px;background:#fff}.visual-tree-box.category{border-color:#9db8d0;background:#f2f7fc}.visual-tree-box.leaf{border-color:#8fcfbe;background:#f2fbf8}.visual-tree-box input{min-width:0;padding:10px 11px;border:1px solid var(--line);border-radius:9px;background:#fff;font-weight:800}.tree-drag-handle{display:grid;place-items:center;width:30px;height:40px;border-radius:8px;color:#55738e;font-size:1.05rem;font-weight:950;letter-spacing:-3px;cursor:grab;user-select:none}.tree-drag-handle:hover{background:#dceaf5;color:var(--ink)}.tree-drag-handle:active{cursor:grabbing}.tree-kind{min-width:92px;color:var(--muted);font-size:.66rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.visual-tree-box.leaf .tree-kind{color:var(--green)}.tree-move,.tree-add-child,.tree-delete{min-height:40px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font-weight:850}.tree-move{padding:0 10px;color:#175ea8}.tree-add-child{padding:0 11px}.tree-delete{width:40px;color:var(--red);font-size:1.15rem}.visual-tree-children{position:relative;display:grid;gap:9px;margin-top:9px}.visual-tree-children:before{content:"";position:absolute;top:-9px;bottom:10px;left:calc(min(var(--tree-depth),6)*22px + 20px);border-left:2px solid #cbd8e4}.tree-empty{display:grid;gap:3px;padding:25px;border:2px dashed #b9c9d8;border-radius:13px;color:var(--muted);text-align:center}.tree-top-drop{display:none;margin:0 0 10px;padding:13px;border:2px dashed var(--blue);border-radius:11px;background:#eef7ff;color:#175ea8;font-weight:850;text-align:center}.tree-is-dragging .tree-top-drop{display:block}.visual-tree-box.drop-inside{border-color:var(--blue);background:#e8f4ff;box-shadow:0 0 0 4px rgba(22,116,194,.13)}.visual-tree-box.drop-before:before,.visual-tree-box.drop-after:after{content:"";position:absolute;left:8px;right:8px;height:4px;border-radius:4px;background:var(--blue)}.visual-tree-box.drop-before:before{top:-7px}.visual-tree-box.drop-after:after{bottom:-7px}.tree-move-dialog{width:min(560px,calc(100vw - 30px));border:0;border-radius:22px;padding:26px;box-shadow:0 25px 80px rgba(7,36,60,.35)}.tree-move-dialog::backdrop{background:rgba(8,38,62,.62)}.tree-move-dialog h2{margin:4px 0 7px}.tree-move-dialog .field{margin-top:15px}.tree-move-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.import-format-example{display:flex;gap:10px;align-items:flex-start;justify-content:space-between;margin:12px 0 16px;padding:13px 14px;border:1px solid #bdd4e7;border-radius:13px;background:#eef7ff}.import-format-example details{min-width:0}.import-format-example summary{color:#124f82;font-weight:900;cursor:pointer}.import-format-example p{margin:10px 0;color:#334e68;font-size:.84rem;line-height:1.45}.import-format-example pre{overflow:auto;margin:10px 0;padding:12px;border:1px solid #d7e4ef;border-radius:9px;background:#fff;font:750 .75rem/1.55 system-ui;white-space:pre}.import-format-example button{flex:none}.wizard-preference{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0 0;padding:0;border:0}.wizard-preference legend{grid-column:1/-1;margin-bottom:2px;font-size:1rem;font-weight:900}.wizard-preference label{position:relative}.wizard-preference label>input{position:absolute;opacity:0}.wizard-preference label>span{display:block;height:100%;padding:14px;border:2px solid var(--line);border-radius:13px;background:#fff;cursor:pointer}.wizard-preference label>input:checked+span{border-color:var(--green);background:var(--green2);box-shadow:0 0 0 3px rgba(8,127,91,.09)}.wizard-preference strong,.wizard-preference small{display:block}.wizard-preference small{margin-top:4px;color:var(--muted);line-height:1.4}.feedback-preference{grid-template-columns:repeat(3,1fr)}.feedback-warning{grid-column:1/-1;margin:2px 0 0;padding:11px 13px;border-radius:10px;background:var(--orange2);color:#7a4c00;font-size:.82rem}.edit-tree-builder{margin:18px 0}.curriculum-order-edit{margin-top:4px}.progress-intro{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:center;margin-bottom:16px;padding:20px;border:1px solid #bfd3e5;border-left:7px solid var(--blue);border-radius:16px;background:linear-gradient(135deg,#eef7ff,#fff)}.progress-intro h2{margin:2px 0 7px;font-size:1.45rem}.progress-intro p{margin:0;color:#334e68}.progress-formula{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;padding:15px;border-radius:12px;background:#fff;color:var(--muted);font-size:.77rem}.progress-formula span,.progress-formula strong{padding:6px 8px;border-radius:8px;background:var(--paper)}.progress-formula strong{background:var(--green2);color:var(--green)}.progress-switch{display:inline-flex;margin-bottom:18px;padding:5px;border-radius:12px;background:#dfeaf3}.progress-switch button{padding:10px 16px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-weight:900}.progress-switch button.active{background:var(--ink);color:#fff}.progress-panel[hidden]{display:none!important}
@media(max-width:760px){.visual-tree-toolbar{grid-template-columns:1fr auto}.visual-tree-toolbar button{grid-column:1/-1}.visual-tree-box{grid-template-columns:auto 1fr auto auto auto;margin-left:calc(min(var(--tree-depth),4)*10px)}.tree-kind{min-width:0}.visual-tree-box input{grid-column:1/-1;grid-row:2}.tree-add-child span{display:none}.tree-move{font-size:.76rem}.import-format-example{flex-direction:column}.wizard-preference,.feedback-preference,.progress-intro{grid-template-columns:1fr}.progress-formula{justify-content:flex-start}.progress-switch{display:flex}.progress-switch button{flex:1}}

/* v81: pointer dragging is consistent for top-level and nested boxes. */
.tree-drag-handle{touch-action:none}
.visual-tree-children:before{pointer-events:none}
.visual-tree-box.drag-source{opacity:.5;box-shadow:0 0 0 3px rgba(22,116,194,.12)}
/* GradePath v84 */
.gradepath-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}.gradepath-heading .view-title{margin:.15rem 0}.gradepath-heading .view-subtitle{max-width:850px}.gradepath-promise{background:linear-gradient(120deg,#0d304d,#155b72);color:#fff;border-radius:22px;padding:24px 28px;display:grid;gap:20px;margin-bottom:22px;box-shadow:0 16px 36px rgba(16,42,67,.12)}.gradepath-promise>div:first-child{display:flex;flex-direction:column;gap:4px}.gradepath-promise strong{font-size:1.3rem}.gradepath-promise span{color:#d9edf4}.gradepath-flow{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.gradepath-flow span{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:8px 12px;font-weight:800;font-size:.85rem}.gradepath-flow i{font-style:normal;color:#ffc857;font-weight:900}.gradepath-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}.gradepath-summary article,.gradepath-dialog-summary>div{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:5px}.gradepath-summary span,.gradepath-dialog-summary span{color:var(--muted);font-weight:700;font-size:.82rem}.gradepath-summary strong,.gradepath-dialog-summary strong{font-size:1.45rem}.gradepath-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.gradepath-card{background:#fff;border:1px solid var(--line);border-top:7px solid var(--subject);border-radius:22px;padding:22px;display:flex;flex-direction:column;gap:18px;box-shadow:0 14px 32px rgba(16,42,67,.07)}.gradepath-card-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.gradepath-card-head h3{font-size:1.35rem;margin:.15rem 0 .5rem}.gradepath-score{text-align:right;display:flex;flex-direction:column}.gradepath-score strong{font-size:2rem}.gradepath-score span{color:var(--muted);font-size:.78rem;font-weight:700}.evidence-chip{display:inline-block;border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.evidence-chip.strong{background:#d9f7ed;color:#087f5b}.evidence-chip.growing{background:#e7f5ff;color:#1864ab}.evidence-chip.early{background:#fff3bf;color:#8d5a00}.evidence-chip.none{background:#edf2f7;color:#627d98}.gradepath-target{display:grid;grid-template-columns:minmax(150px,.7fr) 1.3fr;gap:18px;align-items:center;background:#f4f8fc;border-radius:15px;padding:15px}.gradepath-target label{font-weight:900}.gradepath-target label span{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#d9e8f5;color:#174a6e;cursor:help}.gradepath-target input{width:72px;margin:0 5px;padding:8px;border:1px solid #b8cadb;border-radius:9px;font:inherit;font-weight:900}.gradepath-target div{display:flex;flex-direction:column;gap:3px}.gradepath-target small{color:var(--muted)}.gradepath-facts{display:flex;flex-wrap:wrap;gap:10px}.gradepath-facts span{background:#f7fafc;border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:.78rem;color:var(--muted)}.gradepath-facts b{color:var(--ink)}.gradepath-verification{display:flex;flex-direction:column;background:#fff5e6;border-left:4px solid #f59f00;border-radius:10px;padding:12px 14px}.gradepath-verification span{font-size:.84rem;color:#795000}.gradepath-explainer{margin-top:22px}.gradepath-notice{margin-bottom:18px}.today-gradepath,.gradepath-paper-banner{display:flex;justify-content:space-between;align-items:center;gap:20px;background:linear-gradient(110deg,#e7f5ff,#eefcf7);border:1px solid #9ccce4;border-left:5px solid #146c94;border-radius:18px;padding:18px 20px;margin:18px 0}.today-gradepath>div,.gradepath-paper-banner>div{display:flex;flex-direction:column;gap:3px}.today-gradepath .eyebrow{margin:0}.today-gradepath span,.gradepath-paper-banner span{color:var(--muted)}
.gradepath-dialog{width:min(1100px,94vw);max-height:92vh;border:0;border-radius:24px;padding:28px}.gradepath-dialog::backdrop{background:rgba(11,35,56,.67)}.gradepath-dialog-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0 8px}.gradepath-routes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0}.gradepath-route{appearance:none;text-align:left;background:#f7fafc;border:2px solid var(--line);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:6px;color:var(--ink);cursor:pointer}.gradepath-route:hover,.gradepath-route.active{border-color:#1671c5;background:#eaf4ff;box-shadow:0 0 0 3px rgba(22,113,197,.1)}.gradepath-route strong{font-size:1.05rem}.gradepath-route span{color:var(--muted);font-size:.86rem}.gradepath-route small{font-weight:900;color:#155f94}.gradepath-row{display:grid;grid-template-columns:auto minmax(0,1fr) 230px;gap:16px;align-items:start;border:1px solid var(--line);border-radius:16px;padding:16px;margin-bottom:12px;background:#fff}.gradepath-row-toggle{padding-top:29px}.gradepath-row-toggle input{width:20px;height:20px}.gradepath-stage{display:block;margin-top:7px;border-radius:999px;padding:4px 7px;font-size:.68rem;font-weight:900;text-transform:uppercase}.gradepath-stage.correct{background:#fff3bf;color:#8d5a00}.gradepath-stage.verify{background:#d9f7ed;color:#087f5b}.gradepath-row-main p{margin:8px 0 0;color:var(--muted);font-size:.86rem}.gradepath-row-edit{display:grid;grid-template-columns:1fr 1.25fr;gap:10px}.gradepath-dialog-actions{display:flex;gap:10px;margin-top:20px}.gradepath-no-auto{color:var(--muted);font-size:.82rem}.marked-paper-scan{background:#f4f8fc;border:1px solid var(--line);border-radius:14px;padding:14px;display:grid;gap:10px}.marked-paper-scan>div:first-child{display:flex;flex-direction:column}.marked-paper-scan span{color:var(--muted);font-size:.84rem}.marked-paper-scan textarea{width:100%;margin-top:8px}.gradepath-topic-choice{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px}.lost-mark-input{display:flex;align-items:center;gap:6px;font-size:.74rem;color:var(--muted);margin-left:auto}.lost-mark-input input{width:58px;padding:6px;border:1px solid #b8cadb;border-radius:7px}.gradepath-paper-choice{background:#e9fbf5!important;border:1px solid #90d7c2!important}.gradepath-card button:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:900px){.gradepath-grid{grid-template-columns:1fr}.gradepath-summary,.gradepath-dialog-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.gradepath-routes{grid-template-columns:1fr}.gradepath-row{grid-template-columns:auto 1fr}.gradepath-row-edit{grid-column:2}.gradepath-target{grid-template-columns:1fr}.today-gradepath,.gradepath-paper-banner{align-items:stretch;flex-direction:column}.gradepath-heading{flex-direction:column}.gradepath-heading button{width:100%}}
@media(max-width:560px){.gradepath-summary,.gradepath-dialog-summary{grid-template-columns:1fr}.gradepath-flow i{display:none}.gradepath-dialog{padding:20px 14px}.gradepath-row{grid-template-columns:1fr}.gradepath-row-toggle{padding:0;display:flex;align-items:center;gap:8px}.gradepath-row-edit{grid-column:1}.gradepath-card-head{flex-direction:column}.gradepath-score{text-align:left}.gradepath-dialog-actions{flex-direction:column}}
.idle-warning-dialog{width:min(500px,calc(100% - 28px));border:0;border-radius:22px;padding:30px;box-shadow:0 24px 80px rgba(8,31,51,.32);color:var(--ink)}
.idle-warning-dialog::backdrop{background:rgba(8,31,51,.7);backdrop-filter:blur(4px)}
.idle-warning-dialog h2{margin:.2rem 0 .65rem;font-size:clamp(1.7rem,4vw,2.25rem)}
.idle-warning-dialog p:not(.eyebrow){color:var(--muted);line-height:1.55}
.idle-warning-dialog strong{display:block;margin:20px 0;padding:15px;border-radius:12px;background:#eef6fc;text-align:center;font-size:1.35rem;color:var(--navy)}
.idle-warning-dialog .primary{width:100%}
