:root{--primary:#23776b;--primary-hover:#195e54;--primary-soft:#e9f3ef;--ink:#243c38;--muted:#64746f;--subtle:#71817b;--bg:#f6f8f7;--card:#fff;--border:#e5ebe7;--border-strong:#c7d1cb;--teal:#256d5d;--teal-soft:#eaf4ef;--amber:#966719;--amber-soft:#fbf3e1;--purple:#78619d;--purple-soft:#f1edf7;--blue:#406c94;--blue-soft:#eaf1f8;--rose:#a85c6a;--rose-soft:#f8edef;--slate:#64746f;--slate-soft:#f0f3f1;--danger:#b33e3e;--radius:16px;--motion-fast:.15s;--motion-medium:.22s;color:var(--ink);background:var(--bg);font-family:Inter,-apple-system,BlinkMacSystemFont,PingFang TC,Noto Sans TC,Microsoft JhengHei,sans-serif;font-size:16px;font-synthesis:none;line-height:1.5;font-weight:400;font-variant-numeric:tabular-nums}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit;border:0;background:none}button:disabled{cursor:not-allowed;opacity:.5}button,a,input,select,textarea{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--primary)}button{transition:background-color var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast)}button:active:not(:disabled){filter:brightness(.96)}a{color:inherit;text-decoration:none}svg{flex-shrink:0;stroke-width:1.7;vertical-align:middle}button svg,a svg{pointer-events:none}h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance}h1{font-size:32px;letter-spacing:-.7px;font-weight:650;line-height:1.35}h2{font-size:19px;font-weight:650;letter-spacing:.1px}h3{font-size:17px;font-weight:650}p{line-height:1.7}small{font-size:13px}strong,b{font-weight:600}input,select,textarea{color:var(--ink);background:var(--card);border:1px solid var(--border-strong);border-radius:9px;min-height:46px;padding:10px 13px;max-width:100%;min-width:0}input::placeholder,textarea::placeholder{color:var(--subtle)}select{padding-right:28px}textarea{resize:vertical;width:100%}input[type=checkbox]{width:18px;height:18px;min-height:18px;accent-color:var(--primary);flex-shrink:0}fieldset{border:1px solid var(--border);border-radius:12px;margin:0 0 20px;padding:16px}legend{font-size:14px;font-weight:600;padding:0 6px}::selection{background:var(--primary-soft)}.skip-link{position:fixed;top:-60px;left:20px;z-index:9999;background:var(--primary);color:#fff;padding:12px}.skip-link:focus{top:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:11px 18px;border-radius:9px;font-size:14px;font-weight:550;white-space:nowrap;border:1px solid transparent}.button.primary{color:#fff;background:var(--primary);border-color:var(--primary)}.button.primary:hover{background:var(--primary-hover)}.button.secondary{background:var(--card);border-color:var(--border-strong)}.button.secondary:hover{background:var(--slate-soft)}.button.danger{color:var(--danger);border-color:#edcccc;background:#fff8f8}.button.full{width:100%}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;color:var(--primary);font-size:13px;min-height:44px;padding:6px 3px;font-weight:500}.text-button:hover{text-decoration:underline}.icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border-radius:8px;padding:10px;color:var(--muted);flex-shrink:0}.icon-button:hover{background:var(--slate-soft);color:var(--ink)}.subtle{color:var(--muted);font-size:13px}.inline-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.teal{--tone:var(--teal);--tone-soft:var(--teal-soft)}.amber{--tone:var(--amber);--tone-soft:var(--amber-soft)}.purple{--tone:var(--purple);--tone-soft:var(--purple-soft)}.blue{--tone:var(--blue);--tone-soft:var(--blue-soft)}.rose{--tone:var(--rose);--tone-soft:var(--rose-soft)}.slate{--tone:var(--slate);--tone-soft:var(--slate-soft)}.app-shell{min-height:100dvh}.sidebar{width:236px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;border-right:1px solid var(--border);background:var(--card);padding:35px 20px 0;z-index:30}.brand{display:flex;align-items:center;gap:11px;white-space:nowrap}.brand-icon{width:43px;height:43px;background:var(--primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;flex-shrink:0}.brand b{display:block;font-size:23px;line-height:1.2;letter-spacing:.5px;font-weight:650}.brand b span{font-size:12px;margin-left:5px;font-weight:500;letter-spacing:-.3px}.brand small{display:block;color:var(--muted);font-size:10px;margin-top:7px;letter-spacing:1.2px}.workspace-label{font-size:11px;letter-spacing:1.7px;color:var(--subtle);margin:44px 15px 13px}.sidebar nav{display:grid;gap:7px}.nav-item{display:flex;align-items:center;gap:13px;border-radius:9px;min-height:49px;padding:13px 15px;color:var(--muted);font-size:14px;text-align:left}.nav-item:hover{background:var(--bg)}.nav-item.active{background:var(--primary-soft);color:var(--primary);font-weight:600}.nav-count{margin-left:auto;background:#d7e9e0;color:var(--primary);font-size:11px;min-width:23px;height:21px;border-radius:5px;text-align:center;line-height:21px}.sidebar-note{margin-top:auto;padding:28px 13px 25px}.tiny-book{width:58px;height:58px;display:flex;align-items:center;justify-content:center;transform:rotate(-8deg);color:#779c88;margin-bottom:17px;background:#edf2e8;border-radius:15px}.sidebar-note b{font-size:12px}.sidebar-note p{font-size:12px;color:var(--muted);margin-top:10px;line-height:1.9}.sidebar-note>span{display:block;font-size:7px;letter-spacing:1.1px;color:#788c7f;margin-top:17px}.account{display:flex;align-items:center;gap:10px;width:calc(100% + 40px);margin:0 -20px;padding:20px;border-top:1px solid var(--border);text-align:left}.account>div{flex:1}.account strong,.account small{display:block}.account strong{font-size:13px}.account small{color:var(--muted);font-size:11px;margin-top:4px}.avatar{display:inline-flex;align-items:center;justify-content:center;width:43px;height:43px;border-radius:50%;background:var(--tone-soft);color:var(--tone);font-size:13px;flex-shrink:0;font-weight:550}.avatar.small{width:34px;height:34px;font-size:11px}.avatar.mini{width:33px;height:33px;font-size:12px}.main-shell{margin-left:236px;min-width:0}.topbar{height:77px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 38px;background:var(--card)}.breadcrumb{display:flex;align-items:center;gap:14px;font-size:12px;color:var(--muted)}.breadcrumb strong{color:var(--ink);font-weight:450}.topbar-right{display:flex;align-items:center;gap:20px}.save-state{display:flex;gap:7px;align-items:center;font-size:11px;color:var(--muted)}.save-state svg{color:var(--primary)}.topbar-divider{height:22px;width:1px;background:var(--border)}.mobile-brand{display:none}main{max-width:1540px;margin:auto;padding:33px 38px 22px;min-height:calc(100dvh - 77px)}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:31px}.eyebrow{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:12px;letter-spacing:.4px;margin-bottom:12px}.eyebrow svg{color:var(--amber)}.eyebrow .dot{width:3px;height:3px;border-radius:50%;background:var(--muted);margin:0 3px}.page-heading h1{margin-bottom:10px}.page-heading p{font-size:14px;color:var(--muted)}.greeting-dot{color:var(--primary)}.page-heading>.button{margin-top:16px}.dashboard-tools{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:16px}.section-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:550}.section-label>.subtle{font-size:11px;font-weight:400;margin-left:7px}.live-dot{width:6px;height:6px;border-radius:50%;background:var(--primary)}.date-input{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);padding:0 10px;background:var(--card);border:1px solid var(--border);border-radius:8px;max-width:100%}.date-input input{min-height:39px;min-width:120px;font-size:12px;border:0;padding:7px 0;background:transparent}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:32px}.stat-card{padding:20px 20px 17px;text-align:left;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);min-width:0}.stat-card:hover{border-color:var(--border-strong);background:#fcfdfc}.stat-top{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px;color:var(--muted)}.stat-icon{display:flex;justify-content:center;align-items:center;width:36px;height:36px;border-radius:10px;background:var(--tone-soft);color:var(--tone)}.stat-value{font-size:37px;font-weight:600;line-height:1.3;margin:9px 0 8px;letter-spacing:-1.4px}.stat-value small{font-size:11px;font-weight:400;color:var(--muted);margin-left:9px;letter-spacing:0}.stat-card p{color:var(--muted);font-size:10px;letter-spacing:.1px}.stat-card:not(.slate) .stat-value{color:var(--tone)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 299px;gap:27px;align-items:start}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:14px;min-height:38px}.section-heading h2{display:flex;align-items:center;gap:9px;font-size:17px}.count-pill{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:23px;background:#eaf0ec;font-size:11px;color:var(--muted);border-radius:6px;font-weight:500;padding:2px 7px}.group-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.group-card{padding:20px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);text-align:left;min-width:0}.group-card:hover{border-color:#9bbfb2;background:#fefefd}.group-card-top{display:flex;align-items:center;gap:12px}.group-icon{width:44px;height:44px;border-radius:12px;color:var(--tone);background:var(--tone-soft);display:flex;align-items:center;justify-content:center;flex-shrink:0}.group-card-top>div{min-width:0;flex:1}.group-card h3{font-size:21px;line-height:1.1;letter-spacing:-.2px}.group-card p{font-size:10px;color:var(--muted);margin-top:6px}.group-card-top>svg{color:var(--subtle)}.group-meta{display:flex;align-items:center;gap:16px;margin-top:20px;font-size:11px;color:var(--muted)}.group-meta>span{display:flex;align-items:center;gap:5px}.subject-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:17px;min-height:26px}.subject-chip{display:inline-flex;align-items:center;gap:7px;color:var(--tone,var(--muted));background:var(--tone-soft,var(--slate-soft));padding:3px 8px;border-radius:5px;font-size:10px;white-space:nowrap}.subject-chip b{font-size:10px;font-weight:500}.segmented-progress{height:5px;display:flex;gap:3px;overflow:hidden;border-radius:9px;margin:22px 0 12px;background:var(--slate-soft)}.segmented-progress i:first-child{border-radius:9px 0 0 9px}.segmented-progress i:last-child{border-radius:0 9px 9px 0}.done.legend-dot,.segmented-progress .done{background:#74a58c}.pending.legend-dot,.segmented-progress .pending{background:#dfb767}.home.legend-dot,.segmented-progress .home{background:#ad9ac4}.segmented-progress .none{background:var(--border)}.group-counts{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);gap:5px;flex-wrap:wrap}.group-counts>span{display:flex;align-items:center;gap:5px;white-space:nowrap}.legend-dot{width:5px;height:5px;border-radius:50%;display:inline-block}.independent-heading{margin-top:24px}.independent-list{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.independent-list>button{display:flex;align-items:center;gap:13px;width:100%;text-align:left;padding:16px 20px}.independent-list>button+button{border-top:1px solid var(--border)}.independent-list>button:hover{background:var(--bg)}.independent-list>button>div{flex:1}.independent-list strong{display:block;font-size:13px}.independent-list strong small{font-size:11px;color:var(--muted);font-weight:400;margin-left:8px}.independent-list div>span{font-size:11px;color:var(--muted);display:block;margin-top:4px}.badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:6px;font-size:10px;line-height:1.5;font-weight:500;white-space:nowrap;flex-shrink:0}.badge.done{background:var(--teal-soft);color:var(--teal)}.badge.pending{background:var(--amber-soft);color:var(--amber)}.badge.home{background:var(--purple-soft);color:var(--purple)}.badge.none{background:var(--slate-soft);color:var(--slate)}.attention-panel{background:#fffefa;border:1px solid #e9e9df;border-radius:var(--radius);padding:16px 21px 0;overflow:hidden;min-height:525px}.attention-panel .section-heading{margin-bottom:0}.attention-panel h2{gap:9px}.attention-panel h2>svg{color:#8d8a67}.panel-description{font-size:11px;color:var(--muted);margin:0 0 20px}.attention-item{display:flex;gap:9px;padding:15px 0;border-bottom:1px solid #edeee5}.attention-check{border:1px solid #c9d0c1;border-radius:5px;width:19px;height:19px;margin-top:3px;min-width:19px;padding:0;position:relative;color:transparent}.attention-check:before{content:"";position:absolute;inset:-12px}.attention-check:hover{background:#e9efdf;color:var(--primary)}.attention-item>div{min-width:0;flex:1}.attention-item .icon-button{min-width:28px;min-height:28px;padding:4px;margin-top:-3px;position:relative}.attention-item .icon-button:before{content:"";position:absolute;inset:-8px}.attention-name{font-size:13px;font-weight:550}.attention-name small{font-size:10px;color:var(--muted);margin-left:7px;font-weight:400}.attention-item p{font-size:12px;line-height:1.8;margin-top:6px;color:#52615b;overflow-wrap:anywhere}.attention-item div>span{color:var(--muted);font-size:10px;display:block;margin-top:8px}.add-note{display:flex;align-items:center;justify-content:center;gap:7px;border:1px dashed #ccd4c4;border-radius:8px;width:100%;margin-top:22px;color:#6a7d62;min-height:43px;font-size:11px}.add-note:hover{background:#f2f4ea}.completed-link{font-size:10px;display:flex;margin:4px auto 0;color:var(--muted)}.note-footer{display:flex;justify-content:center;align-items:center;gap:18px;position:relative;margin:16px -21px 0;padding:22px 20px 20px;background:#f3f4e9}.plant-mark{color:#9daf88}.note-footer p{font-size:13px;line-height:1.9;letter-spacing:1px;color:#6d7b5e}.note-footer strong{font-weight:550}.dashboard-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);padding-top:20px;margin-top:33px;font-size:10px;color:var(--subtle)}.dashboard-footer>span:first-child{display:flex;gap:7px;align-items:center}.quiet-empty{padding:25px;text-align:center;color:var(--muted);font-size:13px}.bottom-nav{display:none}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:25px}.search-box{display:flex;align-items:center;gap:10px;border:1px solid var(--border-strong);border-radius:9px;background:var(--card);padding:0 13px;min-width:220px;color:var(--muted);max-width:100%}.search-box input{border:0;padding:11px 0;width:100%;background:none}.toolbar>.search-box{flex:1;max-width:360px}.toolbar select{font-size:14px}.panel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.panel-header{padding:24px 26px;border-bottom:1px solid var(--border)}.panel-header p{font-size:13px;color:var(--muted);margin-top:7px}.panel-header.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.filter-tabs{display:flex;gap:5px;background:#edf1ee;padding:4px;border-radius:10px;flex-wrap:wrap}.filter-tabs button{padding:8px 13px;border-radius:7px;min-height:40px;font-size:12px;color:var(--muted)}.filter-tabs button.active{background:#fff;color:var(--primary)}.table-head,.student-row{display:grid;grid-template-columns:minmax(200px,1.5fr) minmax(110px,1fr) minmax(110px,.8fr) 20px;align-items:center;gap:24px;padding:16px 24px}.table-head{font-size:12px;color:var(--muted);background:#fbfcfb;border-bottom:1px solid var(--border)}.student-row{width:100%;text-align:left;min-height:91px}.student-row+.student-row{border-top:1px solid var(--border)}.student-row:hover{background:#fafcfb}.person{display:flex;align-items:center;gap:13px;min-width:0}.person strong{font-size:14px;display:block}.person strong small{font-size:11px;color:var(--muted);margin-left:9px;font-weight:400}.person div>span{font-size:11px;color:var(--muted);display:block;margin-top:4px}.student-row>.badge{justify-self:start}.progress-cell{max-width:160px}.progress-cell>span{font-size:13px;color:var(--muted)}.progress-cell b{color:var(--primary);font-size:15px}.progress-cell small{font-size:11px}.progress-track{height:4px;background:var(--border);border-radius:4px;margin-top:7px;overflow:hidden}.progress-track i{height:100%;display:block;background:#72a28b;border-radius:4px}.homework-summary{padding:22px 24px;margin-bottom:26px}.homework-pills{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.homework-pill{display:flex;align-items:center;gap:12px;border:1px solid var(--border);border-radius:10px;text-align:left;padding:14px}.homework-pill:hover{background:var(--bg)}.homework-pill>div{flex:1;min-width:0}.homework-pill b{font-size:14px;display:block}.homework-pill small{display:block;color:var(--muted);font-size:11px;margin-top:5px;overflow-wrap:anywhere}.subject-mark{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;border-radius:10px;font-size:12px;background:var(--tone-soft,var(--slate-soft));color:var(--tone,var(--muted));flex-shrink:0;padding:5px}.back{margin-top:-4px;margin-bottom:12px}.student-heading{display:flex;align-items:center;gap:20px;margin-bottom:30px}.student-heading>.avatar{height:65px;width:65px;font-size:20px}.student-heading>div{flex:1}.student-heading h1{font-size:28px}.student-heading h1 span{font-size:17px;font-weight:400;margin-left:13px;color:var(--muted)}.student-heading p{font-size:13px;color:var(--muted);margin-top:7px}.page-tabs{display:flex;border-bottom:1px solid var(--border-strong);margin-bottom:27px;gap:25px}.page-tabs button{display:flex;align-items:center;gap:8px;min-height:56px;border-bottom:3px solid transparent;font-size:14px;color:var(--muted);padding:12px 10px}.page-tabs button.active{color:var(--primary);border-color:var(--primary)}.task-list{display:grid;gap:16px}.task-card{padding:24px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius)}.task-card.completed{border-color:#d4e6da}.task-main{display:flex;align-items:center;gap:16px}.task-main>div{flex:1;min-width:0}.task-main h3{font-size:18px;overflow-wrap:anywhere}.task-main p{font-size:13px;color:var(--muted);margin-top:5px}.task-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:20px;gap:16px}.status-toggle{display:flex;gap:6px;padding:4px;border-radius:9px;background:var(--bg)}.status-toggle button{display:flex;align-items:center;gap:6px;padding:9px 13px;border-radius:7px;min-height:42px;font-size:12px;color:var(--muted)}.status-toggle button.done.active{background:var(--teal-soft);color:var(--teal);box-shadow:0 0 0 1px #b8d6c9 inset}.status-toggle button.home.active{background:var(--purple-soft);color:var(--purple);box-shadow:0 0 0 1px #d5c8e5 inset}.status-toggle button.pending.active{background:var(--amber-soft);color:var(--amber);box-shadow:0 0 0 1px #e6d4a3 inset}.remark{display:flex;align-items:flex-start;gap:8px;margin-top:16px;padding:12px 15px;font-size:13px;color:var(--amber);background:#fdf9ef;border-radius:8px;white-space:pre-wrap;overflow-wrap:anywhere}.remark svg{margin-top:2px}.override-tag{font-size:10px;padding:3px 7px;background:var(--blue-soft);color:var(--blue);border-radius:5px;margin-left:10px;white-space:nowrap}.student-next{display:flex;justify-content:space-between;align-items:center;margin-top:24px;padding:20px 0;border-top:1px solid var(--border);color:var(--muted);font-size:13px}.info-strip{display:flex;align-items:center;gap:9px;border-radius:9px;background:var(--amber-soft);padding:14px 18px;color:var(--amber);font-size:13px;margin-bottom:24px}.history-row{display:flex;align-items:center;gap:22px;padding:20px 26px;width:100%;text-align:left;border-bottom:1px solid var(--border);font-size:13px}.history-row:hover{background:var(--bg)}.history-row>div:nth-child(2){flex:1}.history-row strong,.history-row small{display:block}.history-row small{color:var(--muted);font-size:11px;margin-top:5px}.date-icon{width:45px;height:45px;border-radius:12px;background:var(--primary-soft);color:var(--primary);display:flex;align-items:center;justify-content:center}.grade-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.grade-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:23px;text-align:left}.grade-card>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:12px}.grade-card>div>small{font-size:11px;color:var(--muted)}.grade-card h3{margin:19px 0;font-size:16px}.grade-score{display:flex;align-items:end;justify-content:space-between;gap:12px}.grade-score b{font-size:25px}.grade-score b span{font-size:15px;font-weight:400;color:var(--muted)}.grade-score strong{font-size:27px;color:var(--primary)}.grade-score strong small{font-size:13px}.grade-card p{font-size:12px;color:var(--muted);margin-top:15px}.grade-edit{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted);margin-top:18px;border-top:1px solid var(--border);padding-top:13px}.notes-list{display:grid;gap:16px}.note-card{padding:23px 25px;background:#fffefa;border:1px solid #e8e9dc;border-radius:var(--radius)}.note-card>div{display:flex;justify-content:space-between;align-items:center}.note-card>div>span{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:8px}.note-card p{margin-top:12px;font-size:15px;white-space:pre-wrap;overflow-wrap:anywhere;max-width:72ch}.books-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.book-cover{position:relative;display:flex;flex-direction:column;align-items:flex-start;text-align:left;min-height:280px;width:100%;padding:24px 22px 20px 28px;border-radius:4px 13px 13px 4px;background:var(--tone-soft);color:var(--tone);overflow:hidden;border:1px solid color-mix(in srgb,var(--tone) 13%,transparent)}.book-cover:hover{filter:brightness(.98)}.book-spine{position:absolute;left:7px;top:0;bottom:0;width:1px;background:color-mix(in srgb,var(--tone) 20%,transparent)}.book-cover-top{font-size:8px;letter-spacing:1.4px;margin-bottom:33px}.book-cover>svg{margin-bottom:16px}.book-cover h3{font-size:20px;line-height:1.4;max-width:190px;overflow-wrap:anywhere}.book-cover>span:not([class]){margin-top:10px;font-size:11px}.book-cover-bottom{margin-top:auto;padding-top:25px;font-size:8px;display:flex;align-items:center;justify-content:space-between;width:100%;letter-spacing:1px}.book-info{padding:16px 0;display:flex;align-items:center;gap:5px}.book-info>div{flex:1;min-width:0}.book-info strong{font-size:13px;overflow-wrap:anywhere;display:block}.book-info small{font-size:11px;color:var(--muted);display:block;margin-top:5px}.settings-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:24px}.settings-nav{display:flex;flex-direction:column;gap:6px}.settings-nav button{min-height:47px;display:flex;align-items:center;justify-content:space-between;padding:12px 15px;color:var(--muted);font-size:14px;border-radius:9px;text-align:left}.settings-nav button.active{background:var(--primary-soft);color:var(--primary);font-weight:550}.settings-content{min-height:450px}.settings-tools{padding:13px 26px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--border)}.manage-row{display:flex;align-items:center;justify-content:space-between;padding:15px 26px;gap:16px;border-bottom:1px solid var(--border)}.manage-row strong{font-size:14px}.manage-row small{display:block;color:var(--muted);font-size:12px;margin-top:5px}.manage-row>div+div{display:flex;gap:6px}.account-details{padding:32px;max-width:600px}.account-details>.avatar{height:60px;width:60px;font-size:23px}.account-details h3{margin-top:14px}.account-details>p{color:var(--muted);font-size:13px;margin:8px 0 20px}.account-details .info-box{margin:25px 0}.account-details .info-box p{margin:0}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:45px 24px;gap:13px;text-align:center;color:var(--muted);min-height:180px;grid-column:1/-1}.empty>svg{color:#9bab9f}.empty h3{font-size:16px;color:var(--ink)}.empty p{font-size:13px;max-width:38ch}.empty .button{margin-top:8px}.loading-screen{position:fixed;inset:0;background:var(--bg);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:24px;z-index:80}.loading-screen h2{font-size:18px;color:var(--muted)}.toast{position:fixed;bottom:28px;left:calc(50% + 118px);transform:translate(-50%);background:var(--ink);color:#fff;z-index:1000;border-radius:11px;padding:10px 13px 10px 20px;display:flex;align-items:center;gap:11px;max-width:calc(100vw - 32px);font-size:14px;box-shadow:0 8px 30px #203d3920}.toast>.icon-button{color:#fff}.toast.error{background:#8e3939}.offline{background:var(--amber-soft);color:var(--amber);padding:12px 32px;font-size:13px}dialog{border:1px solid var(--border);border-radius:20px;padding:0;max-width:calc(100vw - 32px);width:540px;max-height:calc(100dvh - 56px);color:var(--ink);background:var(--card);box-shadow:0 28px 90px #16382b2b;overflow:auto;animation:dialog-enter var(--motion-medium) ease-out}dialog.wide{width:730px}dialog::backdrop{background:#20382f70;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;padding:23px 27px 20px;border-bottom:1px solid var(--border);gap:12px}.dialog-head h2{font-size:21px}.dialog-head p{font-size:13px;color:var(--muted);margin-top:7px}.dialog-head>.icon-button{margin:-5px -8px 0 0}.dialog-body{padding:24px 27px}.dialog-footer{display:flex;align-items:center;justify-content:flex-end;padding:18px 27px;border-top:1px solid var(--border);gap:10px;background:#fcfdfc}.dialog-footer>.text-button{margin-right:auto}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;min-width:0}.field>span{font-size:13px;font-weight:550}.field>small{font-size:12px;color:var(--muted);line-height:1.7}.field input,.field select{width:100%}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.checkbox-label{display:inline-flex;align-items:center;gap:9px;font-size:13px;min-height:44px;cursor:pointer}.checkbox-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.page-stepper{display:flex;align-items:center;gap:12px;border:1px solid var(--border-strong);border-radius:10px;max-width:260px;padding:5px 7px}.page-stepper input{border:0;font-size:23px;font-weight:600;text-align:center;width:85px;padding:4px;appearance:textfield;-moz-appearance:textfield}.page-stepper input::-webkit-inner-spin-button{appearance:none}.page-stepper>span{color:var(--muted);margin-left:auto}.info-box{display:flex;gap:10px;align-items:flex-start;border:1px solid #dbe8e1;border-radius:10px;background:#f4f8f5;color:#496a5b;padding:15px 16px;font-size:12px;line-height:1.7}.info-box>svg{margin-top:2px}.form-error{background:#fff0ee;border:1px solid #f1d2cd;color:var(--danger);border-radius:9px;padding:13px 15px;font-size:13px;line-height:1.6;margin:14px 0}.score-preview{display:flex;align-items:center;justify-content:space-between;background:var(--primary-soft);padding:15px 19px;border-radius:10px;color:var(--primary);font-size:13px;margin-bottom:20px}.score-preview strong{font-size:28px}.comparison-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin:23px 0 17px}.comparison-stats>div{background:var(--primary-soft);border-radius:11px;padding:15px}.comparison-stats span{font-size:12px;color:var(--muted);display:block}.comparison-stats strong{font-size:27px;color:var(--primary);display:block;margin-top:7px}.comparison-table{border:1px solid var(--border);border-radius:10px;margin-top:18px;overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:13px}th{background:var(--bg);color:var(--muted);font-weight:500}th,td{padding:15px 17px;border-bottom:1px solid var(--border)}td:last-child{width:42%}.comparison-bar{position:relative;background:var(--bg);border-radius:5px;height:26px;min-width:60px}.comparison-bar>span{display:block;background:#d8e9df;height:100%;border-radius:5px}.comparison-bar b{position:absolute;right:8px;top:3px;font-size:12px;color:var(--primary)}.archived-note{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid var(--border)}.archived-note>div{flex:1;min-width:0}.archived-note strong{font-size:14px}.archived-note p{font-size:13px;margin:6px 0;overflow-wrap:anywhere}.archived-note small{font-size:11px;color:var(--muted)}.recovery-code{display:block;word-break:break-all;background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:20px;font-size:17px;letter-spacing:1px;margin:20px 0;-webkit-user-select:all;user-select:all}.reset-success{margin:20px 0}.reset-success>svg{color:var(--primary)}.reset-success h3{margin:12px 0}.reset-success p{font-size:13px}.pdf-dialog{width:1100px;height:calc(100dvh - 40px);max-height:calc(100dvh - 40px);overflow:hidden}.pdf-dialog[open]{display:flex;flex-direction:column}.pdf-header{display:flex;align-items:center;justify-content:space-between;padding:17px 23px;gap:16px;border-bottom:1px solid var(--border)}.pdf-header>div{display:flex;align-items:center;gap:13px;min-width:0}.pdf-header h2{font-size:17px;overflow-wrap:anywhere}.pdf-header small{font-size:11px;color:var(--muted)}.pdf-toolbar{display:flex;align-items:center;justify-content:space-between;padding:8px 17px;gap:10px;font-size:13px;border-bottom:1px solid var(--border);flex-wrap:wrap}.pdf-toolbar form{display:flex;align-items:center;gap:7px}.pdf-toolbar input{width:66px;min-height:38px;text-align:center;padding:5px;font-size:13px}.pdf-pages{overflow:auto;flex:1;background:#e3e8e4;scroll-padding-top:20px;padding:25px 12px;position:relative}.pdf-page{background:#fff;position:relative;flex-shrink:0;margin:0 auto 22px;box-shadow:0 2px 10px #243c3812}.pdf-page canvas{display:block}.pdf-page>p{padding:25px}.pdf-page-label{position:absolute;bottom:6px;right:10px;background:#fff;border-radius:4px;font-size:10px;color:var(--muted);padding:2px 6px}.auth-shell{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr;background:#fff}.auth-story{background:#eaf1e9;display:flex;flex-direction:column;padding:44px 56px 30px;position:relative;overflow:hidden}.auth-story .brand-icon{background:#285e4d}.auth-story .brand b{color:#285e4d;font-size:28px}.auth-story .brand b span{font-size:14px;margin-left:10px}.auth-story .brand small{font-size:8px;letter-spacing:1.4px}.auth-copy{margin:auto 0;padding:45px 0}.auth-kicker{color:#647c65;font-size:12px;letter-spacing:1.5px;display:inline-block;margin-bottom:21px}.auth-copy h1{font-size:46px;line-height:1.45;letter-spacing:2px;color:#2f5142;font-weight:600}.auth-copy h1>span{color:#829d70}.auth-copy>p{color:#627865;font-size:15px;margin-top:23px;line-height:2;letter-spacing:.3px}.auth-illustration{position:relative;height:258px;max-width:405px;margin:39px 0 0 26px}.paper-back{position:absolute;inset:10px 12px 5px 0;background:#cfdbbf;border-radius:12px;transform:rotate(-8deg)}.paper{position:absolute;inset:0;background:#fffffa;border-radius:12px;transform:rotate(-2deg);padding:23px 25px 15px;border:1px solid #e0e6d7}.paper-top{display:flex;gap:12px;align-items:center;color:#527858;font-size:14px;margin-bottom:19px}.paper-line{display:flex;align-items:center;gap:10px;font-size:12px;color:#4d6653;border-top:1px solid #edf0e7;padding:12px 0}.paper-line>span:last-child{margin-left:auto;font-size:10px;color:#879576}.paper-check{width:20px;height:20px;background:#dce9d8;border-radius:5px;display:flex;align-items:center;justify-content:center;color:#527b4f}.paper-check.empty-check{background:none;border:1px solid #c9d5bf}.paper-footer{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#9da68d;padding-top:14px}.floating-tag{position:absolute;bottom:-15px;right:-24px;display:flex;align-items:center;gap:10px;background:#f9e9ba;border:1px solid #efddb0;color:#7c6939;border-radius:11px;padding:13px 18px;transform:rotate(3deg)}.floating-tag strong{font-size:12px;display:block}.floating-tag small{font-size:8px;margin-top:3px;display:block;letter-spacing:.3px}.auth-story-footer{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#71856e;gap:20px}.auth-story-footer span{font-size:8px;letter-spacing:1px}.auth-form-area{display:flex;align-items:center;justify-content:center;padding:64px 40px}.auth-form{width:380px;max-width:100%}.auth-small-logo{display:none}.auth-form>.eyebrow{font-size:9px;letter-spacing:1.8px;color:#778b7b;margin-bottom:15px}.auth-form h2{font-size:29px;font-weight:600}.auth-form>p{font-size:13px;color:var(--muted);margin:13px 0 34px}.auth-form .field{margin-bottom:20px}.auth-form .field>span{font-size:13px}.auth-form .input-icon{border:1px solid var(--border-strong);border-radius:9px;display:flex;align-items:center;gap:10px;padding:0 14px;color:#8b9a91}.input-icon:focus-within{outline:3px solid var(--primary);outline-offset:3px}.input-icon input{border:0;background:transparent;padding:13px 0;font-size:14px;min-height:48px}.input-icon input:focus-visible{outline:0}.auth-options{display:flex;justify-content:space-between;align-items:center;margin:-4px 0 23px}.auth-options .checkbox-label{font-size:12px;color:var(--muted)}.auth-options .text-button{font-size:12px}.auth-form .button.full{min-height:49px}.auth-form form>.button.primary{justify-content:space-between;padding:12px 17px}.auth-divider{position:relative;text-align:center;margin:24px 0;color:#8b9790;font-size:10px}.auth-divider:before{content:"";height:1px;background:var(--border);position:absolute;top:50%;left:0;right:0}.auth-divider span{position:relative;background:#fff;padding:0 14px}.auth-switch{font-size:12px;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:5px;margin-top:17px}.auth-switch .text-button{font-size:12px}.auth-privacy{border-top:1px solid var(--border);padding-top:23px;margin-top:28px;color:#809084;display:flex;align-items:center;gap:7px;justify-content:center;font-size:10px}.auth-back{margin-top:19px}.brand small,.workspace-label,.sidebar-note p,.sidebar-note b,.account small,.save-state,.breadcrumb,.stat-card p,.stat-value small,.section-label>.subtle,.date-input,.date-input input,.group-card p,.group-meta,.subject-chip,.subject-chip b,.group-counts,.independent-list strong small,.independent-list div>span,.badge,.panel-description,.attention-name small,.attention-item div>span,.add-note,.completed-link,.dashboard-footer,.table-head,.person strong small,.person div>span,.homework-pill small,.grade-card>div>small,.grade-edit,.book-info small,.pdf-header small,.auth-options .text-button,.auth-options .checkbox-label,.auth-privacy,.auth-divider,.auth-switch,.auth-switch .text-button{font-size:12px}.stat-top{font-size:14px}.attention-item p{font-size:13px}.attention-name{font-size:14px}.group-card p{line-height:1.5}.subject-chip{padding:4px 8px}.group-counts{gap:6px}.group-cards{row-gap:18px}.badge{font-size:11px}.auth-form .input-icon input{font-size:16px}.filter-tabs button,.status-toggle button{min-height:44px}.auth-story .brand small{font-size:9px}.checkbox-grid .checkbox-label{font-size:14px}@keyframes dialog-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1600px){.dashboard-grid{grid-template-columns:minmax(0,1fr) 325px}.group-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.group-card{padding:24px}.attention-panel{min-height:510px}.stats-grid{gap:23px}.stat-card{padding:23px}}@media(max-width:1350px){.sidebar{width:215px;padding-inline:16px}.main-shell{margin-left:215px}.brand b{font-size:21px}.brand b span{font-size:10px}.brand{gap:9px}.brand small{font-size:10px}.account{width:calc(100% + 32px);margin-inline:-16px;padding:17px 16px}.topbar{padding-inline:28px}main{padding:28px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 278px;gap:22px}.stats-grid{gap:12px}.stat-card{padding:17px 15px}.group-card{padding:18px 15px}.group-card-top{gap:10px}.group-card h3{font-size:19px}.group-counts{font-size:11px}.group-meta{gap:12px}.attention-panel{padding:14px 17px 0}.note-footer{margin-inline:-17px}.books-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.homework-pills{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-story{padding:38px 42px 28px}.auth-copy h1{font-size:41px}.auth-illustration{margin-left:5px;max-width:360px}.toast{left:calc(50% + 107px)}}@media(max-width:1180px){.sidebar{display:none}.main-shell{margin-left:0}.topbar{height:67px;padding:0 28px}.topbar .breadcrumb>span:not(.mobile-brand){display:none}.mobile-brand{display:flex;align-items:center;gap:8px;font-size:17px;color:var(--primary);font-weight:600}.topbar-right{gap:14px}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:calc(76px + env(safe-area-inset-bottom));padding:7px max(24px,calc((100vw - 760px)/2)) env(safe-area-inset-bottom);align-items:center;justify-content:space-around;z-index:40;background:#fffffff7;border-top:1px solid var(--border)}.bottom-nav>button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:76px;min-height:58px;font-size:11px;color:var(--muted);border-radius:10px}.bottom-nav>button.active{color:var(--primary);background:var(--primary-soft)}main{padding:28px 28px 112px;min-height:calc(100dvh - 67px)}.dashboard-grid{grid-template-columns:minmax(0,1fr) 280px;gap:22px}.toast{left:50%;bottom:95px}.page-heading h1{font-size:29px}.stats-grid{gap:16px}.stat-card,.group-card{padding:20px}.auth-story{padding:35px}.auth-copy h1{font-size:37px}.auth-form-area{padding-inline:32px}.auth-story-footer span{display:none}.auth-illustration{height:245px;max-width:330px}.floating-tag{right:-7px}.page-heading{margin-bottom:28px}.books-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:769px)and (max-width:1000px){.dashboard-grid{grid-template-columns:minmax(0,1fr) 260px;gap:20px}.group-cards{grid-template-columns:1fr}.group-card{padding:21px 23px}.group-card h3{font-size:23px}.group-card p{font-size:12px}.group-meta{margin-top:16px}.subject-chips{margin-top:13px}.segmented-progress{margin-top:19px}.group-counts{font-size:12px}.stat-card{padding:15px}.stat-card p{font-size:11px}.stats-grid{gap:12px}.stat-value{font-size:34px}.stat-top{font-size:13px}.stat-icon{width:32px;height:32px}.independent-list>button{flex-wrap:wrap}.independent-list .badge{margin-left:56px}.independent-list>button>svg{margin-left:auto}.independent-list>button>div{min-width:calc(100% - 70px)}.grade-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-story{padding:29px}.auth-copy h1{font-size:34px;letter-spacing:1px}.auth-copy>p{font-size:14px}.auth-illustration{margin-left:0;height:235px}.paper{padding:20px 17px}.paper-top{font-size:12px}.paper-line{font-size:11px}.floating-tag{padding:12px}.auth-form-area{padding:36px 28px}.auth-form h2{font-size:26px}.settings-layout{grid-template-columns:165px 1fr;gap:20px}}@media(max-width:768px){main{padding:25px 22px 110px}.topbar{padding-inline:22px}.dashboard-grid{grid-template-columns:1fr;gap:25px}.group-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.attention-panel{min-height:0;padding:18px 22px 0}.attention-list{display:grid;grid-template-columns:1fr;gap:0}.note-footer{margin-inline:-22px;justify-content:flex-start;padding-inline:28px}.panel-description{font-size:13px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.stat-card{padding:19px}.stat-card p{font-size:12px}.stat-value{font-size:36px}.stat-icon{width:38px;height:38px}.section-label>.subtle{display:none}.dashboard-footer>span:last-child{display:none}.section-heading{flex-wrap:wrap}.group-card{padding:20px}.student-heading{gap:15px;flex-wrap:wrap}.student-heading>div{min-width:calc(100% - 80px)}.student-heading>.button{margin-left:80px}.student-heading h1{font-size:25px}.student-heading>.avatar{width:60px;height:60px}.page-tabs{gap:10px;justify-content:space-between}.page-tabs button{font-size:13px;padding-inline:5px;gap:6px}.table-head,.student-row{grid-template-columns:minmax(170px,1.4fr) minmax(80px,.8fr) 100px 12px;gap:10px;padding-inline:17px}.person{gap:10px}.person strong small{display:block;margin:3px 0 0}.person div>span{font-size:11px}.progress-cell{max-width:100px}.student-row .badge{font-size:10px}.books-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.grade-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.task-card{padding:20px}.task-bottom{flex-wrap:wrap}.task-bottom .text-button{margin-left:auto}.task-main .button{padding:10px 12px}.history-row{padding:18px;gap:13px;flex-wrap:wrap}.history-row>.date-icon{display:none}.history-row>div:nth-child(2){min-width:180px}.settings-layout{grid-template-columns:1fr;gap:20px}.settings-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.settings-nav button{padding:10px;font-size:13px;border:1px solid var(--border);background:#fff}.settings-nav button>svg{display:none}.auth-shell{grid-template-columns:1fr}.auth-story{display:none}.auth-form-area{min-height:100dvh;padding:48px 28px;background:#fcfdfb}.auth-form{width:390px}.auth-small-logo{display:flex;align-items:center;gap:9px;color:var(--primary);font-size:22px;font-weight:600;margin-bottom:45px}.auth-form h2{font-size:30px}.auth-form>.eyebrow{font-size:9px}.auth-divider span{background:#fcfdfb}.auth-form .button.secondary{background:transparent}.auth-privacy{font-size:11px}.toast{font-size:13px}.homework-pills{grid-template-columns:repeat(2,minmax(0,1fr))}.toolbar>.search-box{min-width:180px}.dashboard-footer{margin-top:26px}.filter-tabs button{padding:7px 12px}.task-main h3{font-size:17px}.independent-list div>span{font-size:12px}.group-card h3{font-size:22px}}@media(max-width:520px){h1{font-size:26px}.topbar{height:61px;padding:0 18px}.breadcrumb{gap:8px;font-size:11px}.mobile-brand{font-size:16px}.topbar-right .save-state{font-size:0;gap:0}.topbar-divider{display:none}.topbar-right{gap:10px}main{padding:24px 17px 106px}.page-heading{gap:15px;align-items:flex-start;flex-wrap:wrap;margin-bottom:23px}.page-heading h1{font-size:27px}.page-heading .eyebrow{font-size:10px;gap:6px;flex-wrap:wrap;margin-bottom:11px}.eyebrow .dot{display:none}.page-heading p{font-size:13px}.page-heading>.button{margin:0;min-height:44px;font-size:13px;padding:10px 14px}.dashboard-tools{gap:8px}.section-label{font-size:13px}.date-input{padding:0 7px;gap:5px}.date-input input{font-size:11px;min-width:105px;width:110px}.date-input .text-button{font-size:11px}.stats-grid{gap:12px;margin-bottom:25px}.stat-card{padding:16px 13px}.stat-top{font-size:12px;gap:3px}.stat-icon{width:31px;height:31px;border-radius:8px}.stat-icon>svg{width:18px;height:18px}.stat-value{font-size:34px;margin:11px 0 5px}.stat-value small{font-size:11px;margin-left:7px}.stat-card p{font-size:11px;line-height:1.65}.group-cards{grid-template-columns:1fr;gap:14px}.group-card{padding:23px}.group-card-top{gap:13px}.group-card h3{font-size:23px}.group-card p{font-size:12px}.group-meta{font-size:12px;gap:20px}.group-counts,.subject-chip{font-size:12px}.subject-chips{margin-top:17px}.segmented-progress{margin-top:23px}.section-heading h2{font-size:17px}.section-heading>.text-button{font-size:12px}.independent-list>button{padding:17px 14px;gap:10px;flex-wrap:wrap}.independent-list strong{font-size:14px}.independent-list strong small{display:block;margin:2px 0 0;font-size:12px}.independent-list .badge{font-size:10px}.independent-list>button>svg{display:none}.bottom-nav{height:calc(70px + env(safe-area-inset-bottom));padding:5px 8px env(safe-area-inset-bottom)}.bottom-nav>button{min-width:60px;min-height:56px;font-size:10px;gap:4px}.bottom-nav>button>svg{width:21px;height:21px}.table-head{display:none}.student-row{display:grid;grid-template-columns:1fr auto;gap:15px;padding:18px}.student-row>.person{grid-column:1}.student-row>.progress-cell{grid-row:2;grid-column:1;max-width:190px;padding-left:53px}.student-row>.badge{grid-row:1;grid-column:2;font-size:10px;justify-self:end}.student-row>svg{grid-row:2;grid-column:2;justify-self:end}.person strong small{display:inline;margin-left:7px}.person strong{font-size:14px}.person div>span{margin-top:3px}.person .avatar{width:40px;height:40px}.filter-tabs{gap:2px;width:100%;justify-content:space-between}.filter-tabs button{font-size:12px;flex:1;padding-inline:7px}.toolbar{gap:10px;margin-bottom:22px}.toolbar>.search-box{max-width:100%;flex-basis:100%;width:100%;min-width:0}.toolbar select{flex:1;font-size:13px;min-width:0}.homework-summary{padding:18px}.homework-summary .section-heading .subtle{font-size:12px}.homework-pills{grid-template-columns:1fr}.homework-pill{padding:12px}.student-heading{gap:13px;margin-bottom:23px}.student-heading h1{font-size:25px}.student-heading h1 span{font-size:15px;margin-left:7px}.student-heading p{font-size:12px}.student-heading>.button{margin-left:73px}.page-tabs{gap:3px;margin-bottom:22px}.page-tabs button{flex-direction:column;gap:5px;flex:1;font-size:12px;padding:10px 4px}.page-tabs button svg{width:18px;height:18px}.task-card{padding:18px 15px}.task-main{gap:10px;flex-wrap:wrap}.task-main>div{min-width:140px}.task-main h3{font-size:17px}.task-main .answer-button{margin-left:auto;font-size:12px;min-height:44px;padding:8px 12px}.task-main .subject-mark{min-width:37px;height:37px;font-size:11px}.task-bottom{gap:8px;margin-top:16px}.status-toggle{width:100%;justify-content:space-between;gap:3px;padding:3px}.status-toggle button{font-size:11px;gap:4px;padding:8px;flex:1;justify-content:center}.status-toggle button svg{width:14px;height:14px}.remark,.task-bottom .text-button{font-size:12px}.student-next{gap:12px;flex-wrap:wrap;font-size:12px}.history-row{font-size:12px;gap:10px}.history-row>div:nth-child(2){flex-basis:100%;min-width:0}.history-row>.badge{margin-left:auto}.history-row>svg{display:none}.grade-grid{grid-template-columns:1fr}.grade-card{padding:22px}.books-grid{gap:17px 13px}.book-cover{min-height:244px;padding:19px 14px 17px 20px}.book-cover-top{font-size:7px;letter-spacing:.8px;margin-bottom:22px}.book-cover h3{font-size:17px}.book-cover>svg{width:30px;height:30px}.book-cover-bottom{font-size:6px;letter-spacing:.5px;padding-top:20px}.book-cover-bottom svg{width:13px}.book-info{gap:0;padding:13px 0;align-items:flex-start}.book-info strong{font-size:12px}.book-info small{font-size:11px}.book-info>.icon-button{min-width:30px;min-height:44px;padding:5px}.settings-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.settings-nav button{font-size:12px;justify-content:center;white-space:nowrap;padding:9px 6px}.panel-header{padding:20px}.panel-header h2{font-size:18px}.panel-header p{font-size:12px}.settings-tools{padding:10px 15px;gap:8px;flex-wrap:wrap}.manage-row{padding:12px 16px}.manage-row strong{font-size:14px}.manage-row small{font-size:12px}.manage-row>div+div{gap:0}.manage-row .icon-button{min-width:40px;padding:8px}.account-details{padding:22px}.settings-content .panel-header.row{align-items:flex-start;gap:9px;flex-wrap:wrap}.settings-content .panel-header .button{font-size:12px;min-height:44px;padding:8px 14px}.panel .empty{padding:35px 20px}.dashboard-footer{font-size:10px}.note-card{padding:18px}.note-card p{font-size:14px}.note-card .icon-button{min-width:40px;padding:8px}.dialog-head{padding:20px}.dialog-head h2{font-size:20px}.dialog-head p{font-size:12px}.dialog-body{padding:20px}.dialog-footer{padding:16px 20px}.dialog-footer .button{font-size:13px;padding-inline:15px}.form-grid{grid-template-columns:1fr;gap:0}.checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field{margin-bottom:19px}.field>span{font-size:14px}.field>small{font-size:12px}.field input,.field select,.field textarea{font-size:16px}.comparison-stats{gap:9px}.comparison-stats>div{padding:12px 10px}.comparison-stats span{font-size:11px}.comparison-stats strong{font-size:23px}th,td{padding:12px 9px;font-size:12px}.comparison-bar b{font-size:11px}.pdf-dialog{max-width:100vw;width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:0;margin:0}.pdf-header{padding:12px 15px}.pdf-header h2{font-size:15px}.pdf-toolbar{padding:6px 10px}.pdf-toolbar>.inline-actions{gap:3px}.pdf-toolbar .icon-button{min-width:39px;padding:8px}.pdf-toolbar form>span{font-size:11px}.pdf-toolbar input{width:47px}.pdf-toolbar>.inline-actions:last-child{font-size:11px}.pdf-pages{padding:17px 8px}.pdf-page{max-width:none}.toast{bottom:87px;padding-left:14px;gap:8px;font-size:12px}.toast>.icon-button{min-width:35px;padding:7px}.auth-form-area{padding:35px 24px}.auth-small-logo{margin-bottom:37px;font-size:22px}.auth-form h2{font-size:28px}.auth-form>p{margin-bottom:27px}.auth-privacy{font-size:10px}.recovery-code{font-size:14px;letter-spacing:.5px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
