/* Shared portal design: content first, progressive controls, touch-sized actions. */
body{background:var(--paper);color:var(--text);padding:24px;line-height:1.5}
.wrap{max-width:1120px}.top{margin-bottom:4px;min-height:48px}.brand{color:var(--petrol);font-size:1.25rem}.top .pill{display:none}
a{color:var(--petrol)}button{color:inherit}button,input,select,textarea,summary{touch-action:manipulation}
button,input,select,textarea{font-size:1rem}button:disabled{cursor:not-allowed;opacity:1}
:where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--petrol)!important;outline-offset:4px!important;box-shadow:0 0 0 2px var(--paper)}
:where(input,select,textarea){min-height:44px;color:var(--text)!important;background:#fffefa!important;border:1px solid #9aadaa!important;border-radius:10px!important;padding:10px 12px}
:where(input,textarea)::placeholder{color:#68777b;opacity:1}input[type=checkbox],input[type=radio]{min-height:20px;width:20px;height:20px;accent-color:var(--petrol);flex:none}
label{color:var(--text)!important;line-height:1.5}label:has(input[type=checkbox]),label:has(input[type=radio]){min-height:44px;align-items:center;gap:10px}
select{max-width:100%;text-overflow:ellipsis}textarea{resize:vertical;line-height:1.6}fieldset{min-width:0}form{max-width:100%}
.btn,.record-edit,.quick-nav button,.view-toggle button,.class-tab{min-height:44px;border-radius:10px;padding:10px 16px;font-weight:700;line-height:1.35;border:1px solid transparent;box-shadow:none;text-decoration:none;background:var(--gold);color:var(--text)}
.btn:hover{background:#e7ab3c;transform:none}.btn.secondary,.btn.ghost,.record-edit{background:transparent;border-color:var(--line);color:var(--petrol)}
.btn.secondary:hover,.record-edit:hover{background:var(--mist)}.btn.danger,[data-study-action*="delete"]{color:var(--red);background:transparent;border-color:var(--line)}
.hero,.card,.error,.quick-nav{background:transparent;backdrop-filter:none;box-shadow:none;border:0;border-radius:16px}
.card{padding:24px 0}.card h2,.card h3{font-size:1.25rem}.hero{padding:24px}.hero h1{font-size:2rem;line-height:1.2;letter-spacing:-.04em}
.workspace-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:12px 0 20px}.workspace-header h1{font-size:1rem;font-weight:650;letter-spacing:0}.workspace-header h1 span{display:block;font-size:.8rem;color:var(--muted);font-weight:400}.workspace-header>div{display:flex;gap:8px}
.account-toolbar{position:absolute;top:24px;right:max(24px,calc((100vw - 1120px)/2));margin:0;z-index:20}.account-toolbar details{position:relative}.account-toolbar summary{list-style:none;border:1px solid var(--line);padding:10px 16px;border-radius:10px;min-height:44px;background:var(--paper)}.account-toolbar summary::after{content:' ▾'}
.account-menu-actions{position:absolute;right:0;top:100%;min-width:200px;padding:12px;background:#fffefa;border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px #11161a18;display:grid;gap:8px}
.quick-nav{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;background:var(--paper);border-bottom:1px solid var(--line);border-radius:0;position:sticky;top:0;overflow:visible;margin:0 0 28px;padding:8px 0;z-index:10}
.quick-nav button{background:transparent;color:var(--muted);border-radius:8px;padding:12px 6px}.quick-nav button.active,.quick-nav button:hover{background:var(--mist);color:var(--petrol)}.quick-nav button.active{box-shadow:inset 0 -3px var(--petrol)}
.portal-section{margin-top:24px;scroll-margin-top:76px}.section-head{align-items:flex-start;margin:0 0 24px;gap:16px}.section-head h2,.portal-section>h2{font-size:2rem;letter-spacing:-.04em;line-height:1.2}.section-head p{text-align:left;max-width:32rem;font-size:.95rem}.section-kicker{color:var(--petrol);letter-spacing:.08em;font-size:.72rem}.section-head .section-kicker{display:none}
.portal-guide{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 16px;background:var(--mist);margin:0 0 24px}.portal-guide>p{flex:1;min-width:200px}.portal-guide h2{margin:0}.portal-guide .guide-actions{display:flex;gap:8px}.portal-guide .btn{font-size:.85rem}
.study-workspace{padding:0}.study-context{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:16px 0 24px}.study-context label{min-width:0}.study-context select{width:100%}.study-context-note{padding:12px 16px;border-left:3px solid var(--petrol);background:var(--mist)}
.study-recommendation{background:var(--petrol);color:#fffefa;border:0;border-radius:20px;padding:28px;margin:24px 0}.study-recommendation h3,.study-recommendation h4{font-size:1.6rem;line-height:1.3;letter-spacing:-.02em;margin:8px 0}.study-recommendation .section-kicker{color:#cce6e1}.study-recommendation p{color:#e3efec}.study-recommendation .btn{margin:16px 0 8px}.study-recommendation small{display:block;color:#d7e7e3}.study-recommendation .btn.secondary{color:#fffefa;border-color:#7caaaa;background:transparent}.study-quick-methods{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.study-quick-methods .btn{font-size:.85rem;margin:0;padding:8px 12px}
.study-mode-section{margin:32px 0}.study-mode-section h3{margin:0 0 16px}.study-mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.study-mode-card{display:flex;flex-direction:column;gap:8px;padding:22px;background:#fffefa;border:1px solid var(--line);border-radius:16px;min-width:0}.study-mode-card h4{font-size:1.1rem}.study-mode-card p{color:var(--muted);line-height:1.5}.study-mode-card small{font-size:.8rem;color:var(--muted)}.study-mode-card button{margin-top:auto;align-self:flex-start;background:transparent;border:1px solid var(--line);color:var(--petrol)}.study-mode-icon{font-size:1.5rem;color:var(--petrol);background:var(--mist);border-radius:10px;width:44px;height:44px;display:grid;place-items:center}
.study-learning-system{border-top:1px solid var(--line);padding-top:24px;margin:32px 0}.study-system-links{display:grid;grid-template-columns:1fr 1fr;gap:16px}.study-system-links button{background:transparent;color:var(--text);text-align:left;min-height:80px;padding:16px;border:0;border-bottom:1px solid var(--line);border-radius:0}.study-system-links button span{display:block;color:var(--muted)}
.study-resume,.study-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:20px 0}.study-first-steps{display:flex;flex-wrap:wrap;gap:24px;padding:16px 24px;color:var(--muted);font-size:.9rem;background:var(--mist);border-radius:12px}
.study-launch{max-width:720px;margin:24px auto;padding:24px;background:#fffefa;border-radius:20px}.study-launch h3{font-size:1.8rem}.study-launch>.btn{margin:16px 0}.study-launch>p{margin:12px 0}
summary{cursor:pointer;min-height:44px;padding:12px 0;font-weight:650;color:var(--text);list-style-position:inside}details{min-width:0}details>summary:hover{color:var(--petrol)}details[open]>summary{margin-bottom:12px}.form-panel,.portfolio-section,.study-gallery-disclosure,.class-options,.study-context-options{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;padding:12px 0;margin:20px 0}.form-panel summary::after{color:var(--petrol)}
.portal-form{gap:16px;max-width:760px}.portal-form .form-actions{margin-top:8px}.portal-form label{font-weight:550}.form-help,.muted,.detail-value{color:var(--muted)}.detail-label{color:var(--muted)}.form-actions{display:flex;flex-wrap:wrap;gap:8px}.edit-panel{display:none}.editor-dialog .edit-panel{display:block}.study-dialog,.editor-dialog{color:var(--text);background:#fffefa;border:1px solid var(--line);border-radius:16px;max-height:calc(100dvh - 40px);max-width:min(680px,calc(100vw - 24px));overflow:auto;padding:24px}.study-dialog::backdrop,.editor-dialog::backdrop{background:#11161a66}
.class-switcher{display:flex;align-items:flex-start;gap:20px;margin:24px 0}.class-switcher>label{display:grid;gap:8px;flex:1;max-width:500px}.class-switcher>.class-add-panel{margin:0;border:0;flex:1;max-width:500px}.class-workspace-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin:24px 0}.class-workspace-head h3{font-size:1.35rem}.view-toggle{display:flex;gap:4px;padding:4px;background:var(--mist);border-radius:12px}.view-toggle button{color:var(--muted);background:transparent}.view-toggle button.active{background:#fffefa;color:var(--petrol)}.class-options .intervals{display:none}.class-card{background:transparent;border:0;padding:8px 0}.class-options .class-grid{display:block}.class-panel>h3{margin-bottom:16px}
.study-item-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:16px 0}.study-item{background:#fffefa;border:1px solid var(--line);border-radius:16px;padding:20px;min-width:0;display:flex;flex-direction:column;gap:8px}.study-item h4{font-size:1.12rem;overflow-wrap:anywhere}.study-item p{font-size:.88rem;line-height:1.45}.study-item-preview{color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.study-item-unit{color:var(--muted);font-size:.78rem!important}.study-item-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:12px;align-items:flex-start}.study-item-actions .btn{background:var(--mist);color:var(--petrol)}.study-item-more{margin-left:auto}.study-item-more summary{min-height:44px;padding:10px;font-size:.85rem}.study-item-more>div{display:grid;gap:8px}.study-item-more .btn{font-size:.82rem;background:transparent}.study-toolbar{gap:16px}.study-bulk-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:var(--mist);padding:12px;border-radius:12px;margin:16px 0}.study-select{display:flex;align-items:center}
.study-strength{font-size:.78rem;font-weight:650;background:var(--mist);color:#075b60;border:0;border-radius:6px;padding:4px 8px}.study-strength.strength-1{color:#923525;background:#fae5dc}.study-strength.strength-2{color:#755100;background:#f9eccb}.study-strength.strength-3{color:#075b60;background:#e1eddf}.study-strength.strength-4,.study-strength.strength-5{color:#075b60;background:#cee5df}
.study-boxes{gap:12px}.study-box{border:1px solid var(--line);border-radius:12px;background:#edf3f1;padding:12px;min-width:0}.study-box h4,.study-box p{color:var(--text)}.box-concept{background:#fffefa;border:1px solid var(--line);padding:12px;border-radius:10px}.box-concept .btn{padding:10px 8px;font-size:.8rem;width:100%}.box-stage{font-size:.8rem;color:var(--muted)}
.study-focus{max-width:800px;margin:0 auto;padding:16px 0}.study-focus>h3{font-size:.95rem;color:var(--muted);margin-bottom:16px}.study-session h4{font-size:1.5rem}.flashcard{background:#fffefa;color:var(--text);border:2px solid var(--petrol);border-radius:24px;box-shadow:0 8px 0 var(--mist);min-height:280px;padding:28px;margin:20px 0}.flashcard.is-flipped{background:var(--mist);color:var(--text)}.flashcard-face strong{font-size:clamp(1.5rem,4vw,2.2rem);line-height:1.35}.flashcard-face small{color:var(--muted)}.study-effect{background:#e4eee5;color:var(--text);border:1px solid #adc5af;border-radius:12px;padding:16px;margin:16px 0}.study-effect p{color:var(--text)}.study-grade{gap:12px}.study-feedback{background:#fffefa;border-radius:16px;padding:20px}
.teaching-steps{display:flex;gap:8px;list-style:none;padding:0;margin:16px 0;font-size:.8rem}.teaching-steps li{color:var(--muted);background:var(--mist);padding:8px;border-radius:8px}.teaching-steps [aria-current=step]{background:var(--petrol);color:white}.teaching-classroom{background:#e8ede2;border:0;border-radius:20px;padding:20px;margin:20px 0}.classroom-board{background:var(--petrol);color:white;border:4px solid #c7b28c;border-radius:8px;padding:20px}.classroom-board span{color:#d4e6df}.classroom-student{background:transparent;border:0;color:var(--text)}.classroom-student:disabled{opacity:1}.classroom-student.selected{background:#fffefa}.dictation-fallback{color:var(--muted);background:var(--mist);border:0;border-radius:10px;padding:12px}.study-reflection{white-space:pre-wrap;overflow-wrap:anywhere}
.item{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:20px 0}.item .record-head{margin-bottom:12px}.assessment-item{padding:24px;background:#fffefa;border:1px solid var(--line);border-radius:16px;margin:16px 0}.assessment-item>.btn{margin-top:16px}.assessment-more{margin-top:16px}.assessment-item .date-chip{background:var(--mist);color:var(--petrol)}.assessment-item .record-actions .status{display:none}.assessment-item .record-actions{align-self:flex-start}.assessment-item .detail-row{grid-template-columns:80px 1fr}.bar{background:var(--mist)}.bar div{background:var(--petrol)}.countdown{color:var(--petrol);font-size:1.2rem}.today-other{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}.today-other>.card{padding:16px 0}.today-other .prep-line,.today-other .bar{display:none}.status,.score-chip{background:var(--mist);color:var(--petrol)}.status.problem{background:#f9dfd8;color:var(--red)}
.study-results{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;background:transparent;padding:0;margin:20px 0}.study-results>div{background:transparent;border:0;border-left:3px solid var(--mist);padding:0 0 0 16px;border-radius:0}.study-results dt{color:var(--muted);font-size:.85rem}.study-results dd{font-size:2rem;color:var(--text)}.progress-attention .study-item{display:flex;flex-direction:row;align-items:center;justify-content:space-between;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:16px 0}.recent-study article{padding:16px 0;border-bottom:1px solid var(--line)}
.file-drop{border:2px dashed #8eaeaa;background:#eaf1ec;border-radius:16px;padding:28px;text-align:center;margin:20px 0}.file-drop.drag-over{border-color:var(--petrol);background:#d5e9df}.file-drop strong{display:block;font-size:1.1rem;margin-bottom:8px}.file-drop p{font-size:.85rem;color:var(--muted);margin-top:12px}.file-drop input[type=file]{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);padding:0;border:0!important;min-height:0}.file-drop label.btn{display:inline-flex;align-items:center;cursor:pointer}.file-drop label:focus-within{outline:3px solid var(--petrol);outline-offset:4px}.file-job{display:grid;gap:8px;background:var(--mist);border-radius:12px;padding:16px;margin:12px 0}.file-job progress{width:100%;accent-color:var(--petrol);height:8px}.file-job p{font-size:.9rem}.file-list .item{display:flex;gap:16px;align-items:center;justify-content:space-between}.file-list .item strong{overflow-wrap:anywhere}.file-list details{position:relative}.file-list details>div{display:grid;gap:8px}.file-job .btn{justify-self:start}.file-type{font-size:.75rem;color:var(--muted)}
.model-steps{display:flex;gap:12px;list-style:none;padding:0;margin:20px 0;color:var(--muted);font-size:.85rem}.model-steps [aria-current=step]{color:var(--petrol);font-weight:750}.model-editor{max-width:none!important}.model-canvas{position:relative;display:block;width:100%;line-height:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fffefa;cursor:crosshair}.model-canvas img{width:100%;display:block;user-select:none;pointer-events:none}.model-hotspot{position:absolute;transform:translate(-50%,-50%);border:2px solid white;border-radius:50%;width:44px;height:44px;min-height:44px;color:#fff;background:var(--petrol);font-weight:750;line-height:1;touch-action:none;padding:0;cursor:grab}.model-hotspot[aria-pressed=true]{background:var(--gold);color:var(--text);box-shadow:0 0 0 3px var(--petrol)}.model-label-editor{display:grid;gap:12px;background:var(--mist);padding:16px;border-radius:12px;margin:16px 0}.model-label-list{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.model-label-list button{background:#fffefa;border:1px solid var(--line);color:var(--petrol)}.model-preview-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0;list-style:none}.model-editor-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(240px,1fr);gap:24px;align-items:start}.model-editor .study-actions{margin:20px 0}.study-diagram-image{background:#fff;border:1px solid var(--line)}.diagram-marker,.diagram-target{background:var(--petrol);color:white;border-color:#fff}.diagram-target.current{background:var(--gold);color:var(--text)}
.empty,.welcome-empty,.study-empty{background:var(--mist);color:var(--muted);border:0;border-radius:16px;padding:24px}.study-empty h3,.welcome-empty h3{color:var(--text);margin-bottom:12px}.empty .btn{margin-top:12px}.info-box,.rubric,.meeting-help,.portal-note,.locked-note{background:var(--mist);border:0;color:var(--text);border-radius:12px}.error,.help{color:var(--red)}.num{color:var(--petrol);background:none;-webkit-text-fill-color:var(--petrol)}
.save-status{background:var(--text);color:white}.save-status.ok{color:#e3f1e8;border-color:var(--petrol)}.save-status.bad{color:#ffe7db}footer{margin-top:40px;color:var(--muted)}
@media(max-width:800px){.study-mode-grid,.study-item-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.model-editor-layout{grid-template-columns:1fr}.study-context{gap:12px}.section-head{display:block}.section-head p{margin-top:10px}.study-boxes{grid-template-columns:repeat(2,minmax(0,1fr))}.class-workspace-head{display:block}.view-toggle{margin-top:16px;justify-content:stretch}.view-toggle button{flex:1;padding:10px 8px}}
@media(max-width:600px){body{padding:16px 16px 136px}.top{margin-bottom:0}.brand{font-size:1.1rem}.account-toolbar{top:16px;right:16px}.workspace-header{margin:12px 0 24px}.workspace-header h1{font-size:.9rem;max-width:52%}.workspace-header .btn{padding:10px;font-size:.8rem}.workspace-header>div{gap:4px}.quick-nav{position:fixed;top:auto;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:8px 4px max(8px,env(safe-area-inset-bottom));background:#fffefa;border-top:1px solid var(--line);border-bottom:0;border-radius:0;box-shadow:0 -4px 24px #11161a0a}.quick-nav button{font-size:.7rem;min-height:48px;padding:10px 2px;white-space:normal}.portal-section{margin-top:16px;scroll-margin-top:16px}.section-head h2,.portal-section>h2{font-size:1.7rem}.study-context{grid-template-columns:1fr 1fr;margin:16px 0}.study-context>label:first-child:has([data-study-hub-class]){grid-column:1/-1}.study-context small{font-size:.7rem}.study-context select{font-size:.9rem;padding:10px 8px}.study-recommendation{padding:22px;margin:20px 0;border-radius:16px}.study-recommendation h3,.study-recommendation h4{font-size:1.35rem}.study-recommendation>.btn{width:100%}.study-quick-methods{display:none}.study-mode-grid{grid-template-columns:1fr 1fr;gap:10px}.study-mode-card{padding:16px 12px;gap:8px}.study-mode-card p{font-size:.85rem}.study-mode-card small{font-size:.72rem}.study-mode-card h4{font-size:1rem}.study-mode-card button{width:100%;font-size:.8rem;padding:10px 6px}.study-mode-icon{width:36px;height:36px;font-size:1.2rem}.study-system-links{gap:8px}.study-system-links button{padding:12px 8px}.study-first-steps{display:none}.study-item-gallery{grid-template-columns:1fr}.study-item{padding:18px}.study-item-more>div{min-width:150px}.study-launch{padding:20px 16px}.class-switcher{display:grid;grid-template-columns:1fr;gap:8px}.class-switcher .class-add-panel{margin:0;padding:0}.class-switcher>label{max-width:none}.view-toggle button{font-size:.8rem}.study-results{grid-template-columns:1fr 1fr;gap:16px}.study-results dd{font-size:1.7rem}.card{padding:20px 0}.study-boxes{grid-template-columns:1fr}.study-box h4{font-size:1.1rem}.box-concept{padding:16px}.file-drop{padding:24px 16px}.file-drop label.btn{min-width:180px;justify-content:center}.file-list .item{align-items:flex-start;flex-wrap:wrap}.file-list .record-actions{justify-content:flex-start}.flashcard{min-height:240px;padding:24px 16px}.study-session .study-actions{gap:8px}.teaching-classroom{padding:12px}.classroom-students{gap:0}.classroom-student{min-width:44px;flex:1;padding:8px 2px}.classroom-student>span:last-child{font-size:.65rem}.teaching-steps{gap:4px;font-size:.7rem}.teaching-steps li{padding:8px 5px}.model-steps{gap:8px;font-size:.78rem}.model-preview-list{grid-template-columns:1fr}.assessment-item{padding:20px 16px}.save-status{bottom:128px;right:12px}.portal-guide{padding:12px}.portal-guide>p{font-size:.85rem}.form-grid{grid-template-columns:1fr}.record-head{flex-wrap:wrap}.detail-row{grid-template-columns:1fr;gap:2px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.content-toolbar{display:flex;align-items:flex-end;gap:16px;margin:20px 0}.content-toolbar label{display:grid;gap:8px;flex:1;max-width:500px}.content-toolbar select{width:100%}.study-toolbar label:has([data-study-search]){flex:1}.progress-reviews{background:var(--mist);padding:20px;border-radius:16px}.study-mode-card .mode-icon{color:var(--petrol)}.model-target{background:var(--petrol);color:#fff;border:2px solid #fff;min-width:44px;min-height:44px}.model-target.selected{background:var(--gold);color:var(--text)}.model-label-bank .selected{background:var(--petrol);color:#fff}.study-focus .study-actions strong{font-size:.9rem}
@media(max-width:600px){.content-toolbar{gap:8px}.content-toolbar>.btn{padding:10px;font-size:.85rem}.study-toolbar{display:flex;flex-wrap:wrap}.study-toolbar label{flex:1;min-width:120px}.study-toolbar label:has([data-study-search]){flex-basis:100%}.study-toolbar input{width:100%}.study-quick-methods{display:flex}.study-recommendation+.study-resume{margin-top:12px}.today-other h3{font-size:1.1rem}}

.model-label-bank [draggable=true]{touch-action:none;user-select:none;cursor:grab;position:relative;z-index:2}.model-label-bank .is-dragging{cursor:grabbing;box-shadow:0 6px 20px #11161a40}.model-target.drop-ready{outline:4px solid var(--petrol);outline-offset:4px}.first-unit-form{max-width:480px}.study-session{border-color:var(--line);background:#fffefa}

.study-mode-card .study-best,.flashcard-side,.flashcard-hint{color:var(--muted)}.study-mode-card .study-best{font-size:.8rem}.study-system-links span{color:var(--muted)}

.editor-dialog{padding:0}.editor-head{background:#fffefa;color:var(--text)}.editor-close{background:var(--mist);color:var(--text)}.study-toolbar.study-context{display:grid}

/* Readability is a shared contract, including forms inherited from the original portal. */
.form-panel summary,.portfolio-section>summary,.class-options>summary,.study-context-options>summary,.study-gallery-disclosure>summary{color:var(--text);font-size:1rem;font-weight:650}
.form-panel>summary:hover,.form-panel>summary:focus-visible{color:var(--petrol)}
.portal-form label,.calendar-form label{font-size:1rem;font-weight:600;gap:8px}
.portal-form input,.portal-form select,.portal-form textarea{font-size:1rem;font-weight:400;line-height:1.5;color-scheme:light}
.portal-form input[type=date],.portal-form input[type=time]{color-scheme:light}
input::placeholder,textarea::placeholder{color:#526267!important;opacity:1}
.form-help,.detail-label,.detail-value,.study-item-unit,.study-strength,.study-best,.study-mode-card small,.study-results dt,.file-type,.review-meta,.flashcard-hint,.flashcard-side,.teaching-steps,.model-steps,.workspace-header h1 span{font-size:.875rem!important;line-height:1.5}
.study-context label>span,.study-context small{font-size:.875rem}.study-context select{font-size:1rem}
.study-item p,.study-mode-card p{font-size:1rem}.study-item-unit{font-size:.875rem!important}
.study-mode-card button,.study-item-more .btn,.box-concept .btn,.view-toggle button,.workspace-header .btn,.portal-guide .btn,.study-quick-methods .btn{font-size:.875rem}
.classroom-student>span:last-child{font-size:.875rem}.teaching-steps{flex-wrap:wrap}
.study-mode-card .study-best{color:var(--muted)}.study-question{color:var(--text);background:var(--mist);border-left-color:var(--petrol)}
.study-first-steps,.setup-step{color:var(--text)}.editor-close,.move-row button{color:var(--petrol);background:var(--mist)}
.study-model-canvas .model-target{color:#fffefa;background:var(--petrol);border-color:#fffefa}.study-model-canvas .model-target.selected{color:var(--text);background:var(--gold);box-shadow:0 0 0 3px var(--petrol)}.study-model-canvas .model-target.answered{color:var(--muted);background:var(--mist);opacity:1}
.btn:disabled,.record-edit:disabled,.study-workspace button:disabled{opacity:1;color:#526267;background:#e3e9e6;border-color:#9aadaa}
.classroom-student:disabled{background:transparent;color:var(--text)}.drop-ready{outline-color:var(--petrol)!important;background:var(--mist)!important}
.study-coverage-group{margin:24px 0}.study-coverage-item{padding:16px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}.study-coverage-item p{margin:4px 0}.study-coverage-item details{max-width:220px}.study-coverage-item summary{padding:8px 0}.study-coverage-item select{width:100%;font-size:1rem}.coverage-evidence{font-size:.875rem;color:var(--muted)}.study-coverage-save{position:sticky;bottom:12px;padding:16px;background:var(--paper);border-top:1px solid var(--line);margin-top:24px}.study-coverage-save .btn{width:100%}
@media(max-width:600px){.quick-nav button{font-size:.8125rem;font-weight:650;letter-spacing:-.02em}.study-context{grid-template-columns:1fr}.study-mode-card small{font-size:.875rem}.study-mode-card button{font-size:.875rem}.study-coverage-item{grid-template-columns:1fr}.study-coverage-item details{max-width:none}.study-coverage-save{bottom:120px}.study-system-links{grid-template-columns:1fr}.study-system-links button{min-height:64px}}
.study-mode-card h4{color:var(--text)}
.quick-nav button,.view-toggle button,.section-kicker,.study-recommendation small{font-size:.875rem}
.study-session h5,.study-debrief h5{font-size:1rem;line-height:1.5;color:var(--text)}

@media(max-width:600px){.quick-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.quick-nav button{font-size:.875rem;padding-inline:1px}}
.record-edit,.date-chip,.study-item-more summary,.content-toolbar>.btn,.box-stage,.study-box h4 span,.box-concept p{font-size:.875rem}

.projects-workspace>.form-panel{margin:16px 0 24px}.projects-workspace>.form-panel>summary{color:var(--petrol)}

/* Weekly project loop: next action first; history and details on demand. */
.project-card h3{margin:0}.project-next{background:var(--mist,#DCE7E5);border-radius:14px;padding:16px;margin:16px 0}.project-next p{margin:6px 0 12px}.project-next .portal-form{margin:0}.project-next .form-actions{margin:0}.project-milestones h4{margin:20px 0 8px}.project-milestone{border-bottom:1px solid #bccfcd;padding:8px 0}.project-timeline{padding-left:24px}.project-timeline li{padding:8px 0}.project-timeline p{margin:4px 0}.project-timeline time{color:#4b5c60;font-size:14px}.project-card .record-head{align-items:flex-start}.project-card h3,.project-card p{overflow-wrap:anywhere}

.source-dialog{box-sizing:border-box;margin:auto;max-width:calc(100vw - 24px);width:min(820px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;background:#fffefa;color:#11161a;border:1px solid #a8c0be;border-radius:18px;padding:24px}.source-dialog::backdrop{background:#11161a88}.source-dialog h2{font-size:24px;overflow-wrap:anywhere;margin:0}.source-dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.6}.source-proposals{display:grid;gap:16px}.source-proposal{border-bottom:1px solid #b9cdca;padding:16px 0}.source-select{display:flex!important;align-items:center;gap:8px;min-height:44px}.source-select input{width:22px!important;min-height:22px!important}.source-dialog button,.source-dialog summary{min-height:44px}.source-dialog [role=status]{color:#315f62}.source-dialog label{font-size:16px}.source-dialog .record-head{align-items:flex-start}.source-dialog .study-actions{flex-wrap:wrap}@media(max-width:600px){.source-dialog{padding:16px}.source-dialog .record-head h2{font-size:20px}.source-dialog .study-actions>*{flex:1 1 auto}}
