/* NERDIT Web Experience V2: paper within a full-browser cream workspace. */
.workspace-active .frame{display:block;padding:0;min-height:100dvh}.workspace-active .pitch{display:none}.workspace-active .app{width:100%;max-width:none;height:auto;min-height:100dvh;border:0;border-radius:0;box-shadow:none;overflow:visible;background:var(--cream,var(--paper))}
.ws-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100dvh;font-size:calc(1rem * var(--ws-scale,1));background:var(--cream,var(--paper))}.ws-side{position:sticky;top:0;align-self:start;height:100dvh;padding:28px 20px 20px;border-right:1px solid var(--line);background:var(--cream,var(--paper));display:flex;flex-direction:column;gap:36px;overflow-y:auto;z-index:30}.ws-brand-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:40px}.ws-logo{font:800 37px/1 var(--f-display);letter-spacing:-2.5px;color:var(--red,var(--violet));text-decoration:none}.ws-logo b{font:inherit}.ws-logo span{color:var(--ink)}
.ws-navigation-groups{display:grid;gap:22px}.ws-side nav{display:grid;gap:4px}.ws-nav{display:flex;align-items:center;gap:13px;text-decoration:none;padding:11px 12px;border:1px solid transparent;border-radius:5px;color:var(--ink-muted,var(--ink-2));font-weight:550;min-width:0;line-height:1.3;transition:background .16s,color .16s}.ws-nav svg{width:21px;height:21px;flex:none}.ws-nav span{min-width:0}.ws-nav:hover{color:var(--ink);background:var(--cream-deep,var(--surface-2))}.ws-nav[aria-current=page]{background:var(--red-soft,var(--violet-soft));color:var(--red-dark,var(--violet));font-weight:700}.ws-nav-count{margin-left:auto;font:500 .72em var(--f-mono);border:1px solid currentColor;border-radius:3px;padding:2px 5px}.ws-secondary-nav{padding-top:20px;border-top:1px solid var(--line)}.ws-secondary-nav .ws-nav{font-size:.88em;padding-block:9px}
.ws-foot{margin-top:auto;padding-top:26px;display:grid;gap:14px;min-width:0}.ws-credit-indicator{padding:0 12px;font:500 .73em/1.5 var(--f-mono);color:var(--ink-muted,var(--ink-2));overflow-wrap:anywhere}.ws-credit-indicator a{color:var(--red-dark,var(--violet));text-underline-offset:4px}.ws-account{background:none;border:0;border-top:1px solid var(--line);padding:18px 0 0;color:var(--ink);display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer;min-width:0;font:inherit}.ws-account>span:nth-child(2){flex:1;min-width:0}.ws-account strong{display:block;font-size:.8em;font-weight:650}.ws-account small{display:block;margin-top:3px;color:var(--ink-muted,var(--ink-2));font-size:.68em;line-height:1.4}.ws-account-avatar{display:grid;place-items:center;width:36px;height:36px;flex:none;border:1px solid var(--line);background:var(--paper);font:700 22px var(--f-display);color:var(--red-dark,var(--violet));letter-spacing:-1.5px;border-radius:50%}
.ws-main{display:flex;flex-direction:column;min-width:0;min-height:100dvh;outline:none}.ws-top{position:sticky;top:0;z-index:20;padding:13px 40px;border-bottom:1px solid var(--line);background:var(--cream,var(--paper));display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:70px}.ws-top-start{display:flex;gap:16px;align-items:center;min-width:0}.ws-collapse{background:none;border:1px solid var(--line);width:31px;height:31px;border-radius:4px;color:var(--ink-muted,var(--ink-2));cursor:pointer;flex:none;font-size:17px}.ws-top .ws-status{font:500 .69em/1.5 var(--f-mono);max-width:38vw;overflow-wrap:anywhere}.ws-search-link{display:flex;gap:10px;align-items:center;text-decoration:none;color:var(--ink-muted,var(--ink-2));font-size:.8em;flex:none;padding:8px 0}.ws-search-link svg{width:17px;height:17px}.ws-search-link kbd{margin-left:20px}.ws-shell kbd{font:500 .74em var(--f-mono);border:1px solid currentColor;padding:2px 5px;border-radius:3px;opacity:.7}.ws-mobile-menu,.ws-mobile-brand,.ws-side-close{display:none!important}.ws-menu-backdrop{display:none}
.ws-content{min-width:0;padding:40px;flex:1}.ws-content:focus{outline:none}.ws-page{max-width:1480px;margin:auto;min-width:0}.ws-heading{display:flex;align-items:start;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:28px}.ws-heading h1{font:650 clamp(28px,3vw,42px)/1.15 var(--f-display);letter-spacing:-1.3px;overflow-wrap:anywhere}.ws-eyebrow{font:500 .7em/1.5 var(--f-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--red-dark,var(--violet));margin-bottom:10px}.ws-heading .ws-muted{margin-top:10px;max-width:760px}.ws-muted{color:var(--ink-muted,var(--ink-2));font-size:.86em;line-height:1.65}.ws-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px}.ws-card{background:var(--paper);border:1px solid var(--line);border-radius:7px;padding:24px;min-width:0;overflow-wrap:anywhere}.ws-card h2{font-size:1.18em;line-height:1.35;margin-bottom:12px;letter-spacing:-.02em}.ws-card h3{font-size:1.02em;line-height:1.45}.ws-card p{margin:8px 0}.ws-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px}.ws-actions .btn{min-height:40px}.ws-actions label,.ws-actions select,.ws-actions input{min-width:0;max-width:100%}.ws-metric{font:500 36px var(--f-mono);margin:14px 0 2px}.ws-chip{font:500 .68em/1.4 var(--f-mono);padding:4px 7px;background:var(--cream-deep,var(--surface-2));border-radius:3px;color:var(--ink-muted,var(--ink-2));display:inline-block}
.ws-tabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:22px;padding-bottom:9px}.ws-tabs a{padding:8px 12px;border-radius:4px;text-decoration:none;color:var(--ink-muted,var(--ink-2));font-size:.87em}.ws-tabs a[aria-current=page]{background:var(--red-soft,var(--violet-soft));color:var(--red-dark,var(--violet));font-weight:650}.ws-list{display:grid;gap:10px}.ws-row{display:flex;gap:12px;align-items:center;min-width:0;flex-wrap:wrap}.ws-row>.grow{min-width:0;flex:1 1 130px}.ws-row a{color:var(--ink);text-decoration:none}.ws-row a:hover{text-decoration:underline}.ws-row input[type=checkbox]{width:18px;height:18px;flex:none}.ws-table{width:100%;border-collapse:collapse}.ws-table td,.ws-table th{text-align:left;padding:12px 8px;border-bottom:1px solid var(--line)}
.ws-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}.ws-split>*{min-width:0}.ws-context-layout{grid-template-columns:minmax(0,1fr) minmax(260px,340px);gap:30px}.ws-original{position:sticky;top:90px}.ws-viewer{position:relative;max-height:65vh;overflow:auto;background:var(--cream-deep,var(--surface-2));border:1px solid var(--line);border-radius:5px;min-height:100px}.ws-viewer img{width:100%;display:block}.ws-viewer iframe{width:100%;height:60vh;border:0;background:white}.ws-viewer pre{white-space:pre-wrap;padding:16px;overflow-wrap:anywhere}.ws-viewer video,.ws-viewer audio{max-width:100%}.ws-canvas{position:relative}.ws-canvas svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.ws-canvas.drawing{touch-action:none;cursor:crosshair}.ws-canvas.drawing svg{pointer-events:auto}.ws-extract{padding:16px;border:1px solid var(--line);border-radius:5px;background:var(--paper);margin:10px 0;white-space:pre-wrap;overflow-wrap:anywhere;max-height:45vh;overflow:auto}.ws-extract mark{background:var(--red-soft,var(--violet-soft));color:var(--ink)}
.ws-note{width:100%;min-height:260px;resize:vertical;font:inherit;line-height:1.7;border:1px solid var(--line);border-radius:5px;padding:16px;background:var(--paper);color:var(--ink)}.ws-status{font-size:.8em;color:var(--ink-muted,var(--ink-2));min-height:22px}.ws-status.error{color:var(--bad)}.ws-banner{border:1px solid var(--line);background:var(--cream-deep,var(--surface-2));border-radius:5px;padding:16px;margin-bottom:20px;overflow-wrap:anywhere}.ws-banner.error{background:var(--bad-soft);color:var(--bad)}.ws-banner button{margin-top:8px}.ws-form{display:grid;gap:15px}.ws-form label{display:grid;gap:6px;font-size:.9em}.ws-form .field{width:100%;min-width:0}.ws-form .ws-inline{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.ws-modal{border:1px solid var(--line);border-radius:8px;padding:26px;background:var(--paper);color:var(--ink);width:min(660px,calc(100% - 24px));max-height:90dvh;overflow:auto}.ws-modal::backdrop{background:rgba(29,26,24,.48)}.ws-modal h2{margin-bottom:18px}.ws-modal .ws-actions{margin-top:20px}.ws-breadcrumb{display:flex;gap:8px;flex-wrap:wrap;font-size:.78em;margin-bottom:12px}.ws-breadcrumb a{color:var(--red-dark,var(--violet))}.ws-gap{margin-top:24px}.ws-summary{white-space:pre-wrap;line-height:1.75;overflow-wrap:anywhere}.ws-empty{text-align:center;padding:42px 24px}.ws-empty h2{margin-bottom:10px}.ws-key{font:500 .69em/1.5 var(--f-mono);letter-spacing:.035em}
.ws-option{display:block;width:100%;text-align:left;margin:8px 0;padding:16px;border:1px solid var(--line);border-radius:5px;background:var(--paper);color:var(--ink);cursor:pointer}.ws-option[aria-pressed=true]{border-color:var(--red-dark,var(--violet));background:var(--red-soft,var(--violet-soft))}.ws-thread{display:grid;gap:15px;margin-bottom:20px}.ws-message{white-space:pre-wrap;background:var(--paper);padding:20px;border:1px solid var(--line);border-radius:6px;overflow-wrap:anywhere}.ws-message.user{background:var(--cream-deep,var(--surface-2))}.ws-scope{border-left:3px solid var(--red-dark,var(--violet));padding:14px 18px;background:var(--cream-deep,var(--surface-2));margin-bottom:18px;overflow-wrap:anywhere}.ws-scope ul{margin:8px 0;padding-left:18px}.ws-scope li{overflow-wrap:anywhere}.ws-loading{padding:40px;text-align:center}.ws-selectbar{padding:14px 0;border-bottom:1px solid var(--line);margin:16px 0;font-size:.82em}
.ws-legacy{min-width:0;display:flex;flex:1;flex-direction:column;overflow:visible}.ws-legacy>.tabs{display:none}.ws-legacy>.scroll,.ws-legacy>div>.scroll{width:100%;max-width:1480px;margin-inline:auto;overflow:visible;padding:40px;flex:1}.ws-context{min-width:0;position:sticky;top:96px;border-left:1px solid var(--line);padding:0 0 0 24px;background:transparent}.ws-context summary{cursor:pointer;font-weight:650;font-size:.85em;line-height:1.55;overflow-wrap:anywhere}.ws-context .ws-viewer{max-height:60vh}.ws-skip{position:fixed;top:-80px;left:12px;z-index:100;background:var(--paper);padding:12px;color:var(--ink)}.ws-skip:focus{top:8px}.ws-hide{display:none!important}.ws-shell :focus-visible,.ws-modal :focus-visible{outline:3px solid var(--red-dark,var(--violet));outline-offset:3px}.ws-shell fieldset{min-width:0;border:1px solid var(--line);border-radius:5px;padding:14px}.ws-shell button{white-space:normal}.ws-shell .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* Today: real schedules and saved activity. */
.ws-today-heading{align-items:end;margin-bottom:34px}.ws-today-heading h1{font:500 clamp(36px,4.5vw,60px)/1.07 var(--f-editorial,'Fraunces',Georgia,serif);letter-spacing:-2px}.ws-today-heading h1 em{font-weight:450}.ws-date{font:500 .68em/1.6 var(--f-mono);color:var(--ink-muted,var(--ink-2));flex:none}.ws-today-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(250px,1fr);gap:40px;align-items:stretch}.ws-review{padding:28px 32px 22px;background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--red,var(--violet));min-width:0}.ws-review h2{display:flex;flex-wrap:wrap;align-items:baseline;gap:16px;font:500 28px var(--f-editorial,'Fraunces',Georgia,serif);letter-spacing:-.8px;margin:12px 0}.ws-due-number{font:500 clamp(68px,7vw,100px)/1 var(--f-editorial,'Fraunces',Georgia,serif);letter-spacing:-5px}.ws-review>p{max-width:360px;line-height:1.65;font-size:.9em;color:var(--ink-muted,var(--ink-2));margin:18px 0 24px}.ws-review .ws-primary{gap:28px;padding:13px 20px}.ws-primary{background:var(--red-dark,var(--violet))!important;color:var(--paper)!important;border-color:var(--red-dark,var(--violet))!important;box-shadow:none!important}.ws-primary:hover{background:var(--ink)!important;border-color:var(--ink)!important}.ws-review-foot{display:flex;gap:12px;flex-wrap:wrap;justify-content:space-between;border-top:1px solid var(--line);margin-top:28px;padding-top:14px;color:var(--ink-muted,var(--ink-2));font-size:.73em}.ws-due-detail{margin-top:16px;font-size:.8em}.ws-due-detail summary{cursor:pointer;margin-bottom:10px}.ws-due-detail .btn{min-height:36px}
.ws-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:18px}.ws-section-heading h2{font-size:1.05em;font-weight:650;letter-spacing:-.02em}.ws-section-heading a{font-size:.75em;text-decoration:none;color:var(--ink-muted,var(--ink-2))}.ws-section-heading a:hover{color:var(--red-dark,var(--violet));text-decoration:underline}.ws-continue{padding-top:12px;min-width:0}.ws-continue-item{display:flex;align-items:center;gap:16px;color:var(--ink);text-decoration:none;padding:20px 0;border-top:1px solid var(--line);min-width:0}.ws-continue-item .grow{min-width:0;flex:1}.ws-continue-item strong{display:block;font-size:1em;line-height:1.4;margin-top:6px;overflow-wrap:anywhere}.ws-continue-item:hover strong{text-decoration:underline;text-underline-offset:4px}.ws-continue-item .ws-key{text-transform:uppercase;color:var(--ink-muted,var(--ink-2))}.ws-item-number{font:500 .8em var(--f-mono);color:var(--red-dark,var(--violet));align-self:start;padding-top:3px}.ws-daily-preference{margin-top:18px;padding-top:12px;border-top:1px solid var(--line);font-size:.75em}.ws-continue-empty{border-top:1px solid var(--line);padding:24px 0}.ws-continue-empty>a{font-size:.85em;color:var(--red-dark,var(--violet));display:inline-block;margin-top:20px}
.ws-new-material{margin:38px 0}.ws-source-shortcuts{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border:1px solid var(--line);background:var(--paper)}.ws-source-shortcuts button{border:0;border-right:1px solid var(--line);background:none;display:grid;grid-template-columns:1fr auto;gap:20px 8px;text-align:left;padding:17px 18px;color:var(--ink);font:600 .88em var(--f-display);min-width:0;cursor:pointer;transition:background .16s}.ws-source-shortcuts button:last-child{border-right:0}.ws-source-shortcuts button .ws-key{grid-column:1/-1;color:var(--ink-muted,var(--ink-2))}.ws-source-shortcuts button:hover{background:var(--red-soft,var(--violet-soft))}
.ws-today-bottom{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(250px,1fr);gap:40px;min-width:0}.ws-recent-item{display:flex;align-items:center;gap:14px;border-top:1px solid var(--line);padding:17px 0;min-width:0}.ws-recent-item .grow{min-width:0;flex:1}.ws-recent-item h3{font-size:.89em;font-weight:600;line-height:1.4}.ws-recent-item h3 a{color:var(--ink);text-decoration:none;overflow-wrap:anywhere}.ws-recent-item h3 a:hover{text-decoration:underline}.ws-recent-item p{font-size:.73em;margin-top:4px;overflow-wrap:anywhere}.ws-material-symbol{width:34px;height:39px;border:1px solid var(--line);display:grid;place-items:center;background:var(--paper);font-size:22px;color:var(--red-dark,var(--violet));flex:none}.ws-today-notes{border-left:1px solid var(--line);padding-left:28px;min-width:0}.ws-exam{display:grid;gap:6px;margin:16px 0}.ws-exam a{color:var(--ink);font-size:.9em}.ws-exam .ws-key{color:var(--ink-muted,var(--ink-2))}.ws-onboarding,.ws-attention{margin-top:22px;border-top:1px solid var(--line);padding-top:22px}.ws-onboarding b,.ws-attention h3{font-size:.85em}.ws-onboarding p{margin:8px 0 12px}.ws-attention p{font-size:.8em;line-height:1.6;margin:10px 0;overflow-wrap:anywhere}.ws-attention a{color:var(--red-dark,var(--violet))}
/* Desktop index becomes stacked rows at mobile widths. Technical tables scroll internally. */
.ws-library-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:20px}.ws-library-toolbar .ws-tabs{border:0;margin:0;padding:0}.ws-library-search{display:flex;gap:8px;min-width:0;width:min(380px,100%)}.ws-library-search input{width:100%;min-width:0}.ws-library-search button{flex:none}.ws-library-filters{align-items:end;gap:12px 16px}.ws-library-filters>label{display:grid;gap:7px;font-size:.7em;color:var(--ink-muted,var(--ink-2));flex:1 1 120px}.ws-library-filters .field{width:100%;font-size:1.17em;min-height:40px;background:var(--paper)}.ws-library-filters .ws-favorite-filter{display:flex;align-items:center;gap:8px;flex:0 1 auto;margin-bottom:11px;font-size:.8em;color:var(--ink)}
.ws-library-scroll{max-width:100%;overflow:auto}.ws-library-table{width:100%;border-collapse:collapse;table-layout:fixed;min-width:780px;font-size:.78em}.ws-library-table th{padding:12px 10px;text-align:left;font:500 .78em/1.5 var(--f-mono);text-transform:uppercase;color:var(--ink-muted,var(--ink-2));border-bottom:1px solid var(--line);letter-spacing:.035em}.ws-library-table td{padding:20px 10px;border-bottom:1px solid var(--line);vertical-align:middle;overflow-wrap:anywhere;line-height:1.5}.ws-library-table th:first-child{width:30px;padding-left:0}.ws-library-table th:nth-child(2){width:26%}.ws-library-table th:nth-child(3){width:13%}.ws-library-table th:nth-child(4){width:17%}.ws-library-table th:nth-child(5){width:13%}.ws-library-table th:nth-child(6){width:11%}.ws-library-table th:nth-child(7){width:10%}.ws-library-table th:last-child{width:64px;padding-right:0}.ws-library-table tr:hover td{background:color-mix(in srgb,var(--paper) 55%,transparent)}.ws-library-select{padding-left:0!important}.ws-library-select input{width:17px;height:17px;accent-color:var(--red-dark,var(--violet))}.ws-library-title h3{font-size:1.15em;margin-top:5px;line-height:1.4}.ws-library-title h3 a{color:var(--ink);text-decoration:none}.ws-library-title h3 a:hover{text-decoration:underline}.ws-library-title .ws-key{text-transform:uppercase;color:var(--ink-muted,var(--ink-2))}.ws-library-title p{margin-top:5px;font-size:.88em}.ws-library-source{color:var(--ink-muted,var(--ink-2));font-size:.9em}.ws-library-counts span{display:inline-flex;flex-direction:column;font:500 1em var(--f-mono);margin-right:14px}.ws-library-counts small{font:400 .69em var(--f-display);color:var(--ink-muted,var(--ink-2));margin-top:4px}.ws-library-activity{font-family:var(--f-mono);font-size:.82em;color:var(--ink-muted,var(--ink-2))}.ws-due-now{color:var(--red-dark,var(--violet));font-weight:650}.ws-library-edit{padding-right:0!important}.ws-library-edit .btn{min-height:34px;padding:6px 10px;font-size:.8em}.ws-table-link{color:var(--ink-muted,var(--ink-2));font-size:.8em;white-space:nowrap;text-decoration:none}
/* Grades remain semantic, while source context can sit beside the study canvas. */
.ws-study-canvas{max-width:960px;margin:24px auto 0;min-width:0}.ws-study-progress{display:flex;align-items:center;gap:18px;margin:0 0 18px;color:var(--ink-muted,var(--ink-2))}.ws-study-progress progress{flex:1;min-width:0;width:100%;height:3px;border:0;background:var(--cream-deep,var(--surface-2));appearance:none}.ws-study-progress progress::-webkit-progress-bar{background:var(--cream-deep,var(--surface-2))}.ws-study-progress progress::-webkit-progress-value{background:var(--red-dark,var(--violet))}.ws-study-progress progress::-moz-progress-bar{background:var(--red-dark,var(--violet))}.ws-study{width:100%;max-width:none;margin:auto;padding:36px 40px;min-height:380px;border-radius:4px;box-shadow:0 8px 24px rgba(29,26,24,.025)}.ws-study>.ws-status{font:500 .67em var(--f-mono);border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:24px}.ws-study-question{font:500 clamp(23px,2.5vw,34px)/1.55 var(--f-display);margin:28px 0;letter-spacing:-.035em;overflow-wrap:anywhere}.ws-answer{white-space:pre-wrap;padding:22px;background:var(--cream,var(--surface-2));border-left:3px solid var(--success,#24765D);border-radius:0;margin:24px 0;line-height:1.75}.ws-study-controls{border-top:1px solid var(--line);padding-top:22px;margin-top:22px}.ws-reveal{display:flex;align-items:center;justify-content:center;gap:25px;width:100%;margin-top:22px;min-height:50px}.ws-study-grades{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:22px 0}.ws-grade{background:var(--paper)!important;padding:14px 8px!important;border:1px solid currentColor!important;display:flex!important;align-items:center;justify-content:space-between;gap:8px;font-size:.84em!important;border-radius:5px!important;box-shadow:none!important}.ws-grade[data-grade=again]{color:var(--bad,#B93F38)}.ws-grade[data-grade=hard]{color:var(--warning,#A86F20)}.ws-grade[data-grade=good]{color:var(--success,#24765D)}.ws-grade[data-grade=easy]{color:#356DA0}.ws-grade:hover{background:var(--cream,var(--surface-2))!important}.ws-grade kbd{font-size:.75em}.ws-keyboard-help{text-align:center;color:var(--ink-muted,var(--ink-2));margin:20px 0}.ws-study-evidence{border-top:1px solid var(--line);padding-top:18px;margin-top:24px;font-size:.8em}.ws-study-evidence summary{cursor:pointer;font-weight:600}.ws-study-evidence a{color:var(--red-dark,var(--violet))}
.ws-study .fc-render{font-size:clamp(20px,2vw,29px);line-height:1.65}.ws-study .fc-render .fc-explanation{font-size:.58em}.ws-study .fc-recall{margin-top:26px;border-top:1px solid var(--line);padding-top:20px}.ws-study .fc-recall label{font-size:.86em}.ws-study .fc-recall textarea{width:100%;margin-top:10px}.ws-study .fc-recall p,.ws-study>p:not(.ws-status){font-size:.8em;color:var(--ink-muted,var(--ink-2));line-height:1.6}.ws-study .fc-actions{border-top:1px solid var(--line);padding-top:20px;margin-top:26px}.ws-study .fc-actions .btn{font-size:.72em;padding:8px 11px}.ws-study>details{font-size:.8em;line-height:1.6;margin-top:18px}.ws-study>details a{color:var(--red-dark,var(--violet))}
@media(min-width:1100px){.source-dialog{width:min(1400px,95vw)!important;max-width:95vw!important}.source-body{max-width:none}.source-columns{grid-template-columns:1fr 1fr}.ws-nav-collapsed .ws-shell{grid-template-columns:88px minmax(0,1fr)}.ws-nav-collapsed .ws-side{padding-inline:13px}.ws-nav-collapsed .ws-nav span,.ws-nav-collapsed .ws-nav-count,.ws-nav-collapsed .ws-logo span,.ws-nav-collapsed .ws-account>span:not(:first-child){display:none}.ws-nav-collapsed .ws-nav{justify-content:center;padding:12px}.ws-nav-collapsed .ws-brand-row{justify-content:center}.ws-nav-collapsed .ws-logo{font-size:40px}.ws-nav-collapsed .ws-account{justify-content:center}.ws-nav-collapsed .ws-credit-indicator{font-size:.61em;padding-inline:0;text-align:center}}
@media(min-width:769px) and (max-width:1099px){.ws-shell{grid-template-columns:88px minmax(0,1fr)}.ws-side{padding:24px 13px 18px;gap:26px}.ws-nav span,.ws-nav-count,.ws-logo span,.ws-account>span:not(:first-child){display:none}.ws-nav{justify-content:center;padding:12px}.ws-brand-row,.ws-account{justify-content:center}.ws-logo{font-size:40px}.ws-secondary-nav .ws-nav{padding:10px}.ws-credit-indicator{font-size:.61em;padding-inline:0;text-align:center}.ws-collapse{display:none}}
@media(max-width:1279px){.ws-content,.ws-legacy>.scroll,.ws-legacy>div>.scroll{padding:30px}.ws-top{padding-inline:30px}.ws-today-layout,.ws-today-bottom{gap:28px}.ws-source-shortcuts button{padding:16px 13px}.ws-context-layout{grid-template-columns:minmax(0,1fr) minmax(230px,290px);gap:22px}.ws-context{padding-left:18px}.ws-study{padding:30px}.ws-study-grades{gap:6px}}
@media(max-width:1099px){.ws-split,.ws-context-layout{grid-template-columns:1fr}.ws-original,.ws-context{position:static}.ws-context{border-left:0;border-top:1px solid var(--line);padding:24px 0 0}.ws-context .ws-viewer{max-height:48vh}.ws-viewer{max-height:50vh}.ws-source-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr))}.ws-source-shortcuts button:nth-child(3){border-right:0}.ws-source-shortcuts button:nth-child(-n+3){border-bottom:1px solid var(--line)}.ws-today-layout,.ws-today-bottom{grid-template-columns:minmax(0,1.3fr) minmax(230px,1fr)}.ws-review{padding:26px}.ws-today-heading h1{font-size:48px}.ws-today-heading .ws-date{width:100%}.ws-today-notes{padding-left:22px}}
@media(max-width:768px){.ws-shell,.ws-nav-collapsed .ws-shell{display:block;min-height:100dvh}.ws-main{width:100%}.ws-top{min-height:64px;padding:11px 20px;gap:10px}.ws-top-start{gap:12px}.ws-mobile-menu{display:flex!important;gap:7px;align-items:center;min-height:38px;padding:8px 10px!important;font-size:.75em!important}.ws-mobile-brand{display:inline!important;font:800 26px var(--f-display);letter-spacing:-1.8px;text-decoration:none;color:var(--red-dark,var(--violet))}.ws-collapse,.ws-top .ws-status{display:none}.ws-search-link{padding:9px;border:1px solid var(--line);border-radius:4px}.ws-search-link span,.ws-search-link kbd{display:none}.ws-search-link svg{width:18px;height:18px}.ws-content,.ws-legacy>.scroll,.ws-legacy>div>.scroll{padding:26px 20px}.ws-heading{gap:14px}.ws-heading h1{font-size:32px}.ws-heading .ws-actions{width:100%}.ws-side{position:fixed;left:0;top:0;bottom:0;width:min(320px,calc(100% - 42px));height:100dvh;padding:22px 20px max(20px,env(safe-area-inset-bottom));gap:26px;border-right:1px solid var(--line);transform:translateX(-100%);visibility:hidden;transition:transform .2s,visibility .2s;z-index:70;overflow:auto}.ws-menu-open .ws-side{transform:translateX(0);visibility:visible}.ws-menu-open{overflow:hidden}.ws-menu-open .ws-menu-backdrop{display:block;position:fixed;inset:0;z-index:60;background:rgba(29,26,24,.35);border:0;margin:0;cursor:pointer}.ws-side-close{display:block!important;font-size:24px!important;padding:4px 10px!important;min-height:36px!important}.ws-side .ws-logo{font-size:34px}.ws-side .ws-logo span,.ws-side .ws-nav span,.ws-side .ws-account>span{display:initial}.ws-side .ws-nav{flex-direction:row;justify-content:flex-start;padding:11px 12px;font-size:.93em}.ws-side .ws-nav svg{width:21px;height:21px}.ws-side .ws-nav-count{display:block}.ws-side .ws-foot{display:grid;padding-top:12px}.ws-side .ws-account{justify-content:flex-start}.ws-side .ws-credit-indicator{padding-inline:12px;font-size:.73em;text-align:left}.ws-side .ws-account-avatar{display:grid}.ws-today-heading{margin-bottom:28px}.ws-today-heading h1{font-size:45px;letter-spacing:-1.8px}.ws-today-layout,.ws-today-bottom{grid-template-columns:1fr;gap:28px}.ws-review h2{font-size:25px}.ws-due-number{font-size:80px}.ws-review{padding:24px}.ws-continue{padding-top:0}.ws-continue-item{padding:16px 0}.ws-new-material{margin:30px 0}.ws-source-shortcuts button{padding:16px;gap:17px 8px}.ws-today-notes{border-left:0;border-top:1px solid var(--line);padding:24px 0 0}.ws-onboarding{margin-top:20px}.ws-card{padding:20px}.ws-viewer iframe{height:40vh}.ws-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}.ws-modal{padding:20px 16px}.ws-study{padding:25px;min-height:340px}.ws-study-canvas{margin-top:12px}.ws-study-grades{gap:7px}.ws-grade{display:grid!important;justify-content:center;text-align:center;padding:12px 5px!important}.ws-grade kbd{width:max-content;margin:auto}.ws-study-progress{gap:12px}.ws-study .fc-render{font-size:23px}.ws-study .fc-render .fc-explanation{font-size:.65em}.ws-keyboard-help{font-size:.65em}.ws-library-toolbar{display:block}.ws-library-search{width:100%;margin-top:16px}.ws-library-filters{gap:12px}.ws-library-filters>label{flex-basis:calc(50% - 6px)}.ws-library-filters .ws-favorite-filter{flex-basis:100%;margin:2px 0}.ws-selectbar .ws-row{justify-content:space-between;font-size:.94em}.ws-library-scroll{overflow:visible}.ws-library-table{display:block;min-width:0;font-size:.85em}.ws-library-table thead{display:none}.ws-library-table tbody{display:grid;gap:14px}.ws-library-table tr{display:grid;grid-template-columns:24px minmax(0,1fr) minmax(0,1fr);gap:10px 12px;padding:18px;background:var(--paper);border:1px solid var(--line);min-width:0}.ws-library-table td{display:block;padding:0;border:0;min-width:0;font-size:.86em}.ws-library-select{grid-column:1;grid-row:1}.ws-library-title{grid-column:2/-1;padding-bottom:8px!important}.ws-library-title h3{font-size:1.18em}.ws-library-table td[data-label]{grid-column:2}.ws-library-table td[data-label]:before{content:attr(data-label);display:block;font:500 .65em/1.5 var(--f-mono);text-transform:uppercase;letter-spacing:.03em;color:var(--ink-muted,var(--ink-2));margin-bottom:3px}.ws-library-table td.ws-library-source{grid-column:3;grid-row:2/4}.ws-library-table td.ws-library-counts{grid-column:2;grid-row:3}.ws-library-table td[data-label="Next due"]{grid-column:3;grid-row:4}.ws-library-table td.ws-library-activity{grid-column:2;grid-row:4}.ws-library-edit{grid-column:2/-1;padding-top:8px!important}.ws-library-counts span{font-size:1.1em;margin-right:12px}.ws-library-counts small{display:none}.ws-library-counts span+span:before{content:'/';position:absolute;margin-left:-9px;opacity:.5}.ws-library-table tr:hover td{background:none}.ws-library-counts{display:block!important}}
@media(max-width:430px){.ws-content,.ws-legacy>.scroll,.ws-legacy>div>.scroll{padding:24px 16px}.ws-top{padding-inline:16px}.ws-heading h1{font-size:29px}.ws-today-heading h1{font-size:40px}.ws-review{padding:22px}.ws-review h2{gap:12px}.ws-due-number{font-size:72px}.ws-source-shortcuts button{padding:14px 12px;font-size:.8em}.ws-source-shortcuts button .ws-key{font-size:.7em}.ws-section-heading{gap:10px}.ws-section-heading .ws-key{font-size:.55em}.ws-study{padding:22px 18px}.ws-study .fc-render{font-size:21px}.ws-study-question{font-size:24px}.ws-grade{font-size:.78em!important}.ws-study .fc-actions .btn{flex:1 1 120px}.ws-study-progress .ws-key{font-size:.6em}.ws-library-table tr{padding:16px 12px;gap:10px}.ws-card{padding:18px}.ws-library-toolbar .ws-tabs{gap:2px}.ws-library-toolbar .ws-tabs a{padding:8px}.ws-library-toolbar .ws-tabs .btn{padding:8px;font-size:.72em}.ws-recent-item .ws-date{font-size:.58em}.ws-recent-item{gap:10px}.ws-material-symbol{width:28px;height:35px;font-size:18px}}
@media(max-width:359px){.ws-today-heading h1{font-size:36px}.ws-content,.ws-legacy>.scroll,.ws-legacy>div>.scroll{padding-inline:14px}.ws-mobile-brand{font-size:24px}.ws-top{padding-inline:14px}.ws-review{padding:20px}.ws-source-shortcuts button{padding:13px 10px}.ws-study{padding:20px 14px}.ws-study-grades{gap:5px}.ws-grade{font-size:.72em!important}.ws-top-start{gap:10px}.ws-library-table tr{grid-template-columns:20px minmax(0,1fr) minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.ws-shell *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
