/* Muted stone and sage surfaces for long study sessions. */
html[data-theme="light"]{color-scheme:light;--bg:#dce0d4;--surface:#eae9e1;--surface-2:#e0e4d8;--text:#303b33;--muted:#586652;--line:#c7cebd;--primary:#3c5e45;--primary-contrast:#f1f1e7;--subject:#426249;--app-bg:#dce0d4;--app-surface:#eae9e1;--app-surface-2:#e0e4d8;--app-surface-3:#d4dcca;--app-text:#303b33;--app-muted:#586652;--app-faint:#5b6955;--app-line:#c7cebd;--app-red:#3c5e45;--app-red-dark:#304d38;--app-green:#3e6547;--accent:#3c5e45;--accent-soft:#d5dfce;--app-shadow:none;--app-shadow-lg:0 18px 55px #2e422d26}
body:is(.staff-focus,.app-active,.staff-active){background:var(--bg);color:var(--text);font-family:"Segoe UI",Arial,sans-serif}body:is(.staff-focus,.app-active,.staff-active) ::selection{background:#b9ccb0;color:#253e29}body:is(.staff-focus,.app-active,.staff-active) :is(input,textarea,select){caret-color:#426249}body:is(.staff-focus,.app-active,.staff-active) :is(input,textarea)::placeholder{color:#586652}body.staff-focus :is(.sidebar,.results-panel,.directory-panel,.detail-dialog,.dialog-heading){background:var(--surface)}body.staff-focus :is(.workspace-header,.workspace){background:var(--bg)}body.staff-focus .results-table th{background:#e0e4d8}body.staff-focus .results-table tr:hover{background:#e2e6da}body.staff-focus :is(.search-field,.filter-field select,.button-secondary,.form-field input,.form-field select){background:#efeee5;border-color:#bfc8b6}body.staff-focus :is(.person b,.work-title,.workspace-header b){color:#354334}body.staff-focus :is(.person small,.subject-text,.score-note,.table-small,.result-count,.workspace-header,.results-help,.workspace-footer,.results-summary,.pagination,.filter-field,.sidebar-return,.sidebar-subjects>span){color:#586652}body.staff-focus .status-finished{background:#d8e5d1;color:#395b3e}body.staff-focus :is(.status-pending,.status-progress){background:#e8ddc4;color:#73571e}body.staff-focus .status-overdue{background:#ecd8ca;color:#853e30}body.staff-focus :is(.status-waiting,.format-badge,.panel-tab span,.teacher-subjects>span){background:#dce1d3;color:#53634c}body.staff-focus :is(.nav-link.is-active,.panel-tab.is-active span){background:#d1ddc8;color:#36573c}body.staff-focus .panel-tab.is-active{color:#36573c}body.staff-focus :is(.nav-link:hover,.answer-pair>div,.member-option:hover,.status-filter select){background:#e0e5d7}body.staff-focus :is(.avatar,.group-symbol){background:#d8e0d0;color:#4c6645}body.staff-focus .dialog-body .student-learning{border-color:var(--line)}body.staff-focus :is(.results-table th,.results-table td,.panel-tabs,.group-row,.teacher-row,.dialog-heading){border-color:#cbd2c2}body.staff-focus .button-secondary:hover{background:#dce5d4}body.staff-focus .tools-menu a{font-size:12px}body.staff-focus .sidebar-bottom{padding-top:20px}body.staff-focus .account-entry{display:flex;align-items:center;gap:10px;border:0;background:transparent;color:#52634a;padding:10px 0;font:12px "Segoe UI",Arial,sans-serif;width:100%;text-align:left;cursor:pointer}body.staff-focus .account-entry svg{width:16px;height:16px}body.staff-focus .page-heading-actions{display:flex;gap:10px;align-items:center}body.staff-focus .works-tabs{display:flex;gap:10px;align-items:center;margin-bottom:20px}body.staff-focus .works-tabs select{margin-left:auto;background:#efeee5;border:1px solid #bfc8b6;border-radius:8px;padding:10px;font-size:12px;color:#3d5036;max-width:220px}.share-action{background:transparent;border:0;color:#426249;font:12px "Segoe UI",Arial,sans-serif;cursor:pointer;min-height:40px;padding:8px}.work-link-row{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #cbd2c2}.work-link-row:last-child{border:0}.work-link-row h3{font-size:14px;font-weight:600;margin:0 0 5px}.work-link-row p{font-size:12px;color:#586652;margin:0}.work-link-row small{display:block;color:#775b25;font-size:11px}.works-back{display:inline-flex;gap:7px;align-items:center;margin-bottom:16px}.work-summary .share-action{margin-left:auto}
/* Student workspace: four primary tasks, no decorative dashboard. */
body.app-active .app-frame{grid-template-columns:236px minmax(0,1fr)}body.app-active :is(.app-sidebar,.app-topbar){background:var(--surface);backdrop-filter:none}body.app-active .app-topbar{height:72px;padding-inline:36px}body.app-active .app-topbar h1{font-size:14px;font-weight:500;color:#56654f}body.app-active .app-main{max-width:1200px;padding:32px 36px 60px}body.app-active .app-nav{gap:6px}body.app-active .app-nav-item{font-size:13px;min-height:44px;font-weight:500}body.app-active .app-nav-item.active{background:#d1ddc8;color:#36573c}body.app-active .app-nav-item:hover{background:#dce3d3}body.app-active .app-profile{background:var(--surface);border-color:var(--line)}body.app-active .app-profile small{font-size:11px;color:#586652}body.app-active .app-profile b{font-size:12px}.student-wordmark{display:flex!important;align-items:center!important;gap:12px!important;color:#3c5e45!important;text-align:left;padding:0!important;min-height:44px!important}.student-wordmark svg{width:28px;height:28px}.student-wordmark>span{font:600 18px/1.25 "Segoe UI",Arial,sans-serif;letter-spacing:-.02em}.student-wordmark small{display:block;color:#586652;font-size:11px;font-weight:400;letter-spacing:0;margin-top:4px}.student-additional{margin-top:22px;padding-top:16px;border-top:1px solid #c7cebd}.student-additional summary{font-size:12px;color:#586652;padding:10px 14px;cursor:pointer}.student-additional .app-nav-item{font-size:12px}.student-heading{margin-bottom:26px}.student-heading h2{margin:0 0 9px;font-size:28px;line-height:1.25;letter-spacing:-.025em;font-weight:600;color:#303b33}.student-heading p{margin:0;color:#586652;font-size:14px;max-width:65ch;line-height:1.65}.student-next{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:28px 30px;background:#d0ddc4;border-radius:14px;margin-bottom:32px}.student-next h3{font-size:21px;font-weight:600;letter-spacing:-.02em;line-height:1.4;margin:0 0 8px;color:#34482d}.student-next p{font-size:13px;line-height:1.6;color:#536949;margin:0}.student-next .student-next-meta{margin-bottom:8px;font-size:12px}.student-next .app-primary{white-space:nowrap;min-height:44px;background:#426249;box-shadow:none;font-size:13px}.student-section{margin-top:28px}.student-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}.student-section-heading h3{font-size:16px;font-weight:600;margin:0}.student-section-heading .text-action{display:flex;align-items:center;gap:6px;font-size:12px;min-height:40px;color:#3e5e42}.student-work-list{border-block:1px solid #c7cebd}.student-list-panel{background:var(--surface);border:1px solid #c7cebd;border-radius:12px;overflow:hidden}.student-work-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0;border-bottom:1px solid #c7cebd}.student-list-panel .student-work-row{padding:22px 24px}.student-work-row:last-child{border-bottom:0}.student-work-row>div:first-child{min-width:0}.student-work-row b,.student-work-row h3{font-size:14px;line-height:1.5;font-weight:600;margin:0 0 5px}.student-work-row small{display:block;font-size:12px;color:#586652;margin:0 0 4px}.student-work-row p{font-size:12px;color:#586652;line-height:1.65;margin:4px 0 0}.student-work-row strong{font-size:18px;color:#3e6245;font-weight:600}.student-work-action{display:flex;align-items:center;gap:16px;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end}.student-work-row .app-secondary{font-size:12px;min-height:40px;padding:9px 14px;white-space:nowrap;border-color:#b7c3ad;background:#e6e9de;box-shadow:none}.student-quiet-message{padding:18px 0;color:#586652;font-size:13px;margin:0}.student-subject-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid #c7cebd}.student-subject{position:relative;border:0;background:transparent;color:#364a30;text-align:left;padding:21px 12px 21px 0;cursor:pointer;min-width:0}.student-subject>span{display:block;font-size:15px;font-weight:600;margin-bottom:6px}.student-subject small{display:block;color:#586652;font-size:12px;line-height:1.5;padding-right:18px}.student-subject svg{position:absolute;right:10px;top:50%;width:15px;height:15px;transform:translateY(-50%);color:#5c7352}.student-subject:hover{background:#d3ddca}.student-subject+.student-subject{padding-left:20px;border-left:1px solid #c7cebd}.student-subject-wide{display:block;width:100%;padding:24px}.student-subject-wide+.student-subject-wide{border-left:0;border-top:1px solid #c7cebd;padding-left:24px}.student-subject-wide svg{right:24px}.student-history{margin-top:28px;font-size:13px;color:#586652}.student-history summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:10px;border-bottom:1px solid #c7cebd}.student-history summary:after{content:'+';margin-left:auto}.student-history[open] summary:after{content:'−'}.student-history .student-work-row{padding:16px 0}.student-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.student-tabs{display:flex;gap:4px}.student-tabs button{min-height:42px;padding:9px 14px;background:transparent;border:0;border-radius:7px;color:#586652;font-size:13px;cursor:pointer}.student-tabs [aria-pressed=true]{color:#36573c;background:#cddac3;font-weight:600}.student-subject-filter select{min-height:42px;border:1px solid #bfc8b6;background:#eae9e1;color:#465b3d;border-radius:8px;padding:8px 12px;font-size:12px;max-width:230px}.student-menu-button{display:none!important}body.app-active :is(button,a,input,select,summary):focus-visible{outline:3px solid #829a76;outline-offset:3px}body.app-active :is(.app-primary,.app-secondary){box-shadow:none}body.app-active :is(.exam-intro-card,.panel,.app-empty){background:var(--surface);border-color:var(--line)}body.app-active .app-empty{font-size:13px;color:#586652}body.app-active .app-primary:hover{background:#304d38}
@media(max-width:1100px){body.app-active .app-main{padding:28px}.student-work-action{max-width:180px}.student-work-row{gap:18px}.student-next{padding:24px;gap:20px}.student-next h3{font-size:20px}body.staff-focus .page-heading-actions{gap:6px}}
@media(max-width:820px){body.app-active .app-frame{display:block;grid-template-columns:1fr}body.app-active .app-topbar{height:64px;padding-inline:20px}.student-menu-button{display:inline-grid!important}.student-desktop-logout{display:none!important}body.app-active .app-main{padding:26px 20px 110px}body.app-active .app-bottom-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--surface);border-color:var(--line)}body.app-active .app-bottom-nav .app-nav-item{font-size:11px;padding-inline:4px;gap:5px}.student-heading h2{font-size:25px}.student-heading p{font-size:13px}.student-next{align-items:flex-start;flex-direction:column;padding:22px;gap:20px;margin-bottom:26px}.student-next h3{font-size:20px}.student-next .app-primary{width:100%}.student-subject-list{grid-template-columns:1fr}.student-subject,.student-subject+.student-subject{padding:17px 0;border-left:0}.student-subject+.student-subject{border-top:1px solid #c7cebd}.student-subject>span{font-size:14px;margin-bottom:4px}.student-subject-wide,.student-subject-wide+.student-subject-wide{padding:20px}.student-work-row{gap:14px;align-items:flex-start}.student-list-panel .student-work-row{padding:20px}.student-work-action{max-width:150px;gap:10px;justify-content:flex-end}.student-work-row .app-secondary{font-size:11px}.student-work-row p{font-size:12px}.student-list-toolbar{gap:12px;flex-wrap:wrap}.student-subject-filter{width:100%}.student-subject-filter select{width:100%;max-width:none}.student-section-heading{gap:10px}.student-section-heading h3{font-size:15px}.student-section-heading .text-action{font-size:11px}body.staff-focus .page-heading-actions .button{font-size:11px;min-width:auto;width:auto;padding:9px 11px}.page-heading-actions #export{font-size:0!important;width:40px!important;min-width:40px!important}.work-link-row{padding:18px;align-items:flex-start;gap:14px}.work-link-row .button{font-size:11px;white-space:normal;max-width:145px}.works-tabs{flex-wrap:wrap}.works-tabs select{flex-basis:100%;max-width:none!important}.works-back{font-size:12px}}
@media(max-width:430px){.student-work-row{flex-wrap:wrap}.student-work-action{max-width:none;width:100%;justify-content:flex-start}.student-work-action .app-secondary{min-height:42px}.student-next h3{font-size:19px}.student-tabs button{font-size:12px;padding-inline:12px}.student-heading{margin-bottom:22px}body.staff-focus .page-heading{flex-wrap:wrap}.page-heading-actions{width:100%;justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){.student-subject,.student-tabs button{transition:none}}
.auth-modal-backdrop .landing-auth-card{background:#eae9e1;color:#303b33;border:1px solid #bec8b4;box-shadow:0 20px 70px #25372940}.auth-modal-backdrop .landing-auth-card h1{color:#303b33;font-size:26px}.auth-modal-backdrop .landing-auth-card :is(p,label,.muted){color:#586652}.auth-modal-backdrop .landing-auth-card .input{background:#efeee5;color:#303b33;border-color:#bfc8b6}.auth-modal-backdrop .auth-tabs{background:#d9dfcf}.auth-modal-backdrop .auth-tab{color:#586652}.auth-modal-backdrop .auth-tab.active{background:#eae9e1;color:#36573c;box-shadow:none}.auth-modal-backdrop .auth-submit{background:#3c5e45;color:#f1f1e7}.auth-modal-backdrop .auth-brand{color:#3c5e45}.auth-modal-backdrop .auth-close{color:#586652}
/* Completion stays in reach on every question, including narrow screens. */
body.staff-focus .reset-exam-button{color:#873f33;border-color:#c6a69b;background:#e9dfd3;min-height:42px}
body.staff-focus .reset-exam-button:hover{background:#e1d2c4}
body.staff-focus #examResetError:empty{display:none}
body.app-active .has-submit-bar .exam-run-header{grid-template-columns:42px minmax(0,1fr) auto}
.has-submit-bar .focus-answer.manual{flex-direction:column;align-items:flex-start}
.has-submit-bar .work-submit-bar{position:fixed;inset:auto 0 0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px clamp(18px,4vw,48px) calc(16px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--app-line);background:var(--app-surface);color:var(--app-text)}
.work-submit-bar>div{min-width:0;max-width:70ch}
.work-submit-bar strong{display:block;font-size:14px;font-weight:600;line-height:1.5}
.work-submit-bar small{display:block;margin-top:3px;font-size:12px;line-height:1.5;color:var(--app-muted);overflow-wrap:anywhere}
.work-submit-bar>.app-primary{flex-shrink:0;min-height:46px;font-size:14px;white-space:nowrap}
body.app-active .has-submit-bar :is(.exam-run-layout,.sequential-stage){padding-bottom:calc(160px + env(safe-area-inset-bottom,0px))!important}
.has-submit-bar button:disabled{cursor:wait}
@media(max-width:540px){
  .has-submit-bar .work-submit-bar{gap:12px;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));align-items:center}
  .work-submit-bar strong{font-size:13px}
  .work-submit-bar small{font-size:11px}
  .work-submit-bar>.app-primary{font-size:12px;min-height:46px;padding-inline:14px}
}
@media(max-width:350px){
  .has-submit-bar .work-submit-bar{gap:10px;flex-wrap:wrap}
  .work-submit-bar>div,.work-submit-bar>.app-primary{width:100%}
  body.app-active .has-submit-bar :is(.exam-run-layout,.sequential-stage){padding-bottom:200px!important}
}
