:root{font-family:system-ui,"Microsoft YaHei",sans-serif;color:#263b32;background:#f7f9f4;line-height:1.6;font-size:16px}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}button{padding:11px 19px;border:1px solid #d5dfcf;border-radius:10px;background:#fff;color:#2e5747;cursor:pointer}button:hover{background:#edf3e7}button:disabled{opacity:.5;cursor:default}.primary{background:#245747;color:white;border-color:#245747}.primary:hover{background:#1e493d}a{color:#245747;text-decoration:none}input,select,textarea{padding:13px 15px;background:white;border:1px solid #d5dfcf;border-radius:10px;color:#263b32;max-width:100%}textarea{width:100%;resize:vertical;line-height:1.8}label{display:grid;gap:8px;margin:18px 0}h1{font-weight:550;font-size:36px;line-height:1.3;margin:16px 0}h2{font-weight:600;font-size:22px}p{margin:10px 0;color:#637368}small{color:#6f7c72}.top{height:88px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #e0e7db}.brand{display:flex;align-items:center;gap:12px;font-size:24px;font-weight:700}.brand img{width:40px;height:40px}.brand span{font-size:16px;font-weight:400}.top nav,.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}main{max-width:1180px;margin:auto;padding:44px 28px 80px}.login{max-width:460px;margin:6vh auto}.card{background:white;border:1px solid #dce4d5;border-radius:16px;padding:26px;margin:20px 0}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:20px}.twin-card{text-align:left;padding:26px;border-radius:16px;min-height:210px;display:flex;flex-direction:column;gap:12px}.twin-card h2{margin:0}.twin-card p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.twin-card span{margin-top:auto}.eyebrow{font-size:13px;letter-spacing:2px;color:#798676}.muted{color:#778376}.chat-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.messages{padding:20px 0}.question{padding:18px 24px;border-radius:14px;background:#eaf0e3;max-width:85%;margin:24px 0 16px auto;white-space:pre-wrap;overflow-wrap:anywhere}.answer{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9}.answer-card{padding:28px;background:white;border:1px solid #dce4d5;border-radius:16px;margin-bottom:24px}.sources summary{cursor:pointer;color:#285948;margin:18px 0}.source{background:#f7f9f4;border-left:3px solid #a1b795;padding:14px;margin:14px 0}.source p{white-space:pre-wrap}.composer{position:relative;background:#fff;border:1px solid #cfddc5;border-radius:16px;padding:20px;box-shadow:0 8px 25px #30442810}.composer textarea{border:0;padding:4px;min-height:90px;outline:none}.composer .row{justify-content:space-between;margin-top:12px}.feedback{border-top:1px solid #e4e9df;margin-top:24px;padding-top:16px}label.check{display:flex;align-items:center;gap:10px}label.check input{width:18px;height:18px;flex:none;padding:0;margin:0}.check input{accent-color:#245747}.task-info{font-size:13px;color:#71806e}.empty{padding:60px 20px;text-align:center}.error{color:#9a473b}#notice{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);max-width:90vw;padding:14px 24px;background:#263e34;color:white;border-radius:12px;box-shadow:0 5px 25px #0002;z-index:30}.admin-grid{display:grid;grid-template-columns:minmax(300px,1fr) minmax(300px,1fr);gap:24px}.admin-list{display:grid;gap:16px}.admin-list article{border:1px solid #dce4d5;padding:18px;border-radius:12px}.admin-grid .card{margin:0}pre{white-space:pre-wrap;overflow-wrap:anywhere}.badge{font-size:12px;padding:3px 8px;background:#eaf0e3;border-radius:6px;margin-left:8px}.split{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:700px){.top{height:72px;padding:0 18px}.brand{font-size:21px}.brand span{display:none}main{padding:26px 16px 60px}h1{font-size:28px}.chat-head{align-items:flex-start}.question{max-width:94%}.answer-card{padding:20px}.admin-grid,.split{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.top nav{font-size:14px}}

.sources small{display:block;margin-top:.3rem}.material-row{padding:.7rem 0;border-bottom:1px solid var(--line,#dce4d8)}.material-row small{display:block;margin:.3rem 0}.material-row button{margin:.3rem .5rem .3rem 0}

.workspace-nav{display:flex;gap:6px;border-bottom:1px solid #dce4d5;margin-bottom:24px;padding-bottom:12px}.workspace-nav button{border:0;background:none}.workspace-nav .selected{background:#245747;color:#fff}.assistant-bar{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:12px 18px;background:#edf3e8;border-radius:12px;margin-bottom:30px}.assistant-bar label{display:flex;align-items:center;gap:12px;margin:0;font-size:14px}.assistant-bar select{padding:8px 12px}.home-question{display:flex;align-items:flex-end;gap:14px;padding:14px;background:#fff;border:1px solid #d7e1d0;border-radius:14px;margin:24px 0}.home-question textarea{border:0;min-height:80px}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:28px 0}.work-entry{text-align:left;padding:20px;display:flex;flex-direction:column;min-height:175px}.work-entry h2{font-size:20px;margin:0}.work-entry p{font-size:14px;flex:1}.work-entry small{color:#416c55}.work-heading{margin:22px 0}.work-heading h1{font-size:28px;margin-bottom:8px}.work-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px;align-items:start}.work-paper{background:#fff;border:1px solid #dce4d5;border-radius:14px;padding:26px;min-height:65vh;min-width:0}.work-controls{position:sticky;top:18px;background:#eef3e8;border-radius:14px;padding:18px;max-height:calc(100vh - 36px);overflow:auto}.work-controls h2{font-size:19px;margin:0 0 16px}.work-controls textarea{font-size:15px;padding:12px}.work-controls form>details{margin:15px 0}.work-controls form>button{margin:8px 8px 0 0}.work-controls summary{cursor:pointer;font-size:14px}.work-controls label{font-size:14px;margin:12px 0}.work-controls input[type=file]{font-size:13px;width:100%;margin:12px 0;padding:8px}.work-controls small{font-size:12px}.work-controls .materials-panel>button{font-size:13px;padding:8px 12px}.work-status{font-size:13px;color:#245747}.version-bar{display:flex;gap:8px;align-items:center;margin-bottom:24px}.version-bar button{padding:8px 12px}.version-bar select{min-width:160px;padding:8px 12px}.artifact-body{overflow-wrap:anywhere}.artifact-body .answer{font-size:16px}.artifact-actions{display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid #dce4d5;margin-top:24px;padding-top:18px}.artifact-actions button{font-size:14px;padding:9px 13px}.export-panel{background:#f2f6ec;border-radius:12px;padding:18px;margin-top:18px}.export-panel button{margin:5px;font-size:14px}.export-panel input{width:100%;margin:8px 0}.table-scroll{overflow-x:auto;margin:18px 0}.answer table{border-collapse:collapse;width:100%;font-size:14px;min-width:300px}.answer td{border:1px solid #dce4d5;padding:10px;vertical-align:top}.slide-preview{position:relative;aspect-ratio:16/9;padding:5%;margin:16px 0;background:#f6f8ef;border:1px solid #dce4d5;display:flex;flex-direction:column;justify-content:center}.slide-preview .answer{font-size:15px}.slide-preview h3{margin:0 0 .8rem}.slide-preview p,.slide-preview li{margin:.35rem 0}.slide-preview>small{align-self:flex-end}.slide-preview.white{background:#fff}.slide-preview.dark{background:#182722;color:#f4f5ea}.slide-preview.dark p,.slide-preview.dark small{color:#edf3e8}.result-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 20px;text-align:left;margin:12px 0;padding:18px}.result-row strong{overflow-wrap:anywhere}.result-row span{font-size:14px}.result-row small{grid-column:1/-1}.resource-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:start;margin:24px 0}.resource-filters>input{flex:1;min-width:210px}.resource-filters>details{width:100%;font-size:14px}.resource-filters details input,.resource-filters details select{margin:8px 10px 0 0;max-width:240px}.resource-card{background:#fff;border:1px solid #dce4d5;border-radius:12px;padding:22px;margin:14px 0}.resource-card h2{font-size:19px;margin:0 0 8px}.resource-card p{font-size:14px;white-space:pre-wrap}.resource-reader:not(:empty){background:#fff;border:1px solid #dce4d5;border-radius:14px;padding:24px;margin-top:24px}.resource-reader>.row{position:sticky;top:0;background:#fff;padding:10px 0}.inline-picker{background:#fff;padding:14px;border:1px solid #dce4d5;border-radius:10px;margin:12px 0}.inline-picker>div{max-height:240px;overflow:auto}.inline-picker button{font-size:12px;padding:6px 9px}.legacy-history{margin:30px 0}.legacy-history button{display:block;margin:8px 0}.print-frame{position:fixed;right:0;bottom:0;width:1px;height:1px;border:0}.selected-sources button{font-size:12px;padding:4px 8px}
@media(min-width:1280px){main{max-width:1400px}.work-layout{grid-template-columns:minmax(0,1fr) 350px}.work-paper{padding:34px}}
@media(max-width:850px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-layout{grid-template-columns:1fr}.work-controls{position:static;max-height:none}.assistant-bar{align-items:flex-start;flex-direction:column;gap:8px}.assistant-bar label{flex-wrap:wrap}.work-paper{padding:20px;min-height:200px}.result-row{grid-template-columns:1fr}.home-question{align-items:stretch;flex-direction:column}.home-question button{align-self:flex-end}}
@media(max-width:450px){.work-grid{grid-template-columns:1fr;gap:10px}.work-entry{min-height:0}.work-entry h2{font-size:18px}.work-entry p{margin:6px 0}.workspace-nav{gap:0}.workspace-nav button{padding:10px 14px}.slide-preview{aspect-ratio:auto;min-height:200px}}

.task-starters{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.task-starters button{background:#edf3e8;color:#245747;border:1px solid #d9e3d4}.answer p{margin:0 0 16px;white-space:pre-wrap}.answer h3{font-size:1.1em;margin:24px 0 12px}.answer ul{padding-left:24px}.answer li{margin:8px 0}.answer-card .row{flex-wrap:wrap;gap:10px}
.home-question>button{flex:0 0 auto;min-width:84px;white-space:nowrap}
.resource-card,.resource-reader,.source,.answer{min-width:0;overflow-wrap:anywhere}.resource-card p{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.resource-reader img{max-width:100%;height:auto}

/* Teacher workspace: persistent navigation, full-width working area. */
:root{--sidebar-width:232px;--ink:#23382f;--muted:#758179;--line:#e4e9e3;--accent:#245747;background:#fafbf9;color:var(--ink);font-size:15px;line-height:1.65}
body{min-height:100vh}
button{padding:9px 16px;border-color:#dce3dc;border-radius:8px;font-size:14px;transition:background .15s,border-color .15s}
button:hover{background:#f1f5ef;border-color:#bccdbf}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #628b73;outline-offset:3px}
button:disabled{opacity:.45}
input,select,textarea{border-color:#dce3dc;border-radius:8px;padding:10px 12px;font-size:14px}
input:focus,select:focus,textarea:focus{outline:2px solid #d4e2d5;outline-offset:1px}
h1{font-size:29px;font-weight:650;letter-spacing:-.5px;margin:20px 0 10px}
h2{font-size:20px;font-weight:600}
p{color:#69776e}
.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);background:#f1f4ee;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:0 14px;z-index:40}
.sidebar-brand{height:94px;display:flex;align-items:center;gap:10px;flex:none;padding:0 8px}
.brand{gap:10px;min-width:0;flex:1}
.brand img{width:36px;height:36px;flex:none}
.sidebar .brand-copy{display:flex;flex-direction:column;line-height:1.4;white-space:nowrap}
.brand-copy strong{font-size:23px;letter-spacing:1px}
.brand-copy small{font-size:11px;color:#6b7c6e;font-weight:400;letter-spacing:.5px}
.icon-button{width:28px;height:30px;padding:0;display:grid;place-items:center;background:transparent;border:0;font-size:27px;line-height:1;color:#6d8073;flex:none}
#workspace-menu{overflow:auto;flex:1;min-height:0;padding:0 0 20px;scrollbar-width:thin}
.menu-heading{color:#97a195;font-size:11px;letter-spacing:.8px;padding:16px 14px 7px}
.menu-heading:first-child{padding-top:6px}
.menu-item{width:100%;display:flex;align-items:center;gap:12px;text-align:left;border:0;background:transparent;border-radius:8px;margin:3px 0;padding:11px 14px;min-height:43px;color:#5b6c60}
.menu-item svg{width:20px;height:20px;flex:none}
.menu-item:hover{background:#e7eee2}
.menu-item.selected{background:#e1ebda;color:#285641;font-weight:600}
.menu-item.selected svg{stroke-width:1.9}
.sidebar-account{flex:none;border-top:1px solid #dfe6db;padding:14px 4px 16px}
.user-menu{position:relative}
.user-row{display:flex;align-items:center;gap:10px;cursor:pointer;padding:6px 5px;list-style:none;border-radius:8px;min-width:0}
.user-row::-webkit-details-marker{display:none}
.user-row:hover{background:#e8eee4}
.user-avatar{display:grid;place-items:center;flex:none;width:34px;height:34px;background:#dde7d6;color:#496d52;border-radius:50%;font-size:14px;font-weight:600}
.user-copy{display:flex;flex-direction:column;min-width:0;flex:1;line-height:1.55}
.user-copy strong{font-size:13px;font-weight:600;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.user-copy small{font-size:11px;color:#7c8c7b;white-space:nowrap}
.user-copy small::before{content:'';display:inline-block;width:5px;height:5px;background:#769568;border-radius:50%;margin-right:5px;vertical-align:2px}
.sidebar-account[data-authenticated=false] .user-copy small::before{background:#a5aea1}
.user-chevron{font-size:16px;color:#92a08e}
.account-actions{position:absolute;bottom:calc(100% + 12px);left:0;right:0;display:grid;gap:3px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:7px;box-shadow:0 8px 24px #23382f12}
.account-actions button,.account-actions a{text-align:left;border:0;background:transparent;padding:10px 12px;border-radius:6px;font-size:13px}
.account-actions button:hover,.account-actions a:hover{background:#f1f5ef}
.main-column{margin-left:var(--sidebar-width);min-width:0}
main{max-width:none;margin:0;padding:24px 42px 48px;min-width:0}
.mobile-top,.sidebar-shade{display:none}
.assistant-bar{background:transparent;border-radius:0;border-bottom:1px solid var(--line);padding:0 0 18px;margin:0 0 24px;min-height:48px;gap:14px}
.assistant-bar label{font-size:12px;color:#8a958a;gap:10px;min-width:0}
.assistant-bar select{font-size:13px;max-width:360px;border-color:transparent;background:transparent;color:#4a6554;padding:6px 26px 6px 8px;text-overflow:ellipsis}
.assistant-bar select:hover{border-color:#d5dfd1;background:#fff}
.assistant-bar small{font-size:11px;color:#97a094}
.home-question{margin:24px 0 28px;padding:18px 20px;min-height:128px;border-radius:12px;border-color:#d8e2d3;box-shadow:0 3px 14px #23382f03}
.home-question textarea{min-height:80px;font-size:16px;resize:none}
.home-question textarea:focus{outline:none}
.home-question button{padding:10px 20px}
.work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0 34px}
.work-entry{position:relative;background:#fff;border-color:var(--line);padding:21px 22px;min-height:163px;border-radius:11px;gap:0}
.work-entry>svg{width:23px;height:23px;margin-bottom:14px;color:#73906d;stroke-width:1.5}
.work-entry h2{font-size:17px;margin:0 0 7px;font-weight:600;color:#334b3b}
.work-entry p{font-size:13px;line-height:1.7;margin:0;color:#899284}
.work-entry small{font-size:0;position:absolute;top:21px;right:21px}
.work-entry small::after{content:'↗';font-size:18px;color:#a3b09b}
.work-entry:disabled small::after{content:'未开放';font-size:11px}
.work-entry:hover{background:#f5f8f1;border-color:#c8d7bf}
.result-row{margin:8px 0;border-color:var(--line);background:#fff;border-radius:8px;padding:14px 18px;gap:3px 18px}
.result-row strong{font-size:14px;font-weight:500}
.result-row span,.result-row small{font-size:12px;color:#8a9487}
.work-heading{margin:0 0 22px}
.work-heading h1{font-size:25px;margin:0 0 6px}
.work-heading small{font-size:12px;color:#929c8e}
.work-layout{grid-template-columns:minmax(0,1fr) 336px;gap:24px}
.work-paper{border-color:var(--line);border-radius:11px;padding:30px;min-height:calc(100vh - 204px)}
.work-controls{background:#f1f5ee;border:1px solid #e3e9df;border-radius:11px;padding:20px;top:20px}
.work-controls h2{font-size:17px}
.work-controls summary{color:#67815f}
.work-controls textarea{font-size:14px;line-height:1.8}
.work-controls .primary{width:100%;margin:12px 0 0}
.work-paper .empty{padding:48px 16px;max-width:460px;margin:auto;color:#91a087}
.version-bar{margin-bottom:22px;flex-wrap:wrap}
.artifact-body .answer{font-size:15px}
.artifact-actions{border-color:var(--line);gap:8px}
.resource-filters{background:#f1f5ee;padding:16px;border:1px solid #e4ebdf;border-radius:10px;margin:20px 0}
.resource-filters>input{min-width:180px}
.resource-card{padding:20px 24px;border-color:var(--line);border-radius:10px;margin:12px 0}
.resource-card h2{font-size:17px;color:#3b543f}
.resource-card button{padding:7px 12px;font-size:12px;margin-top:7px}
.resource-reader{border-color:var(--line)}
.login{margin:10vh auto;background:white;padding:30px;border:1px solid var(--line);border-radius:12px}
.login h1{font-size:26px}
.login button.primary{width:100%;margin:10px 0 20px}
.menu-collapsed{--sidebar-width:76px}
.menu-collapsed .sidebar{padding:0 10px}
.menu-collapsed .sidebar-brand{height:94px;padding:0;justify-content:center;flex-direction:column;gap:4px}
.menu-collapsed .brand{flex:none}
.menu-collapsed .brand-copy,.menu-collapsed .menu-label,.menu-collapsed .menu-heading,.menu-collapsed .user-copy,.menu-collapsed .user-chevron{display:none}
.menu-collapsed .menu-item{justify-content:center;padding:12px 0}
.menu-collapsed .menu-item:nth-of-type(2),.menu-collapsed .menu-item:nth-last-of-type(2){margin-top:14px}
.menu-collapsed .sidebar-account{padding:12px 0}
.menu-collapsed .user-row{justify-content:center;padding:6px 0}
.menu-collapsed .account-actions{right:auto;width:170px;left:0}
@media(min-width:1600px){main{padding:24px 52px 48px}.work-layout{grid-template-columns:minmax(0,1fr) 370px}.work-grid{gap:20px}.work-entry{min-height:175px}}
@media(min-width:761px) and (max-width:1100px){main{padding:22px 26px 40px}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-layout{grid-template-columns:minmax(0,1fr)}.work-controls{position:static;max-height:none}.assistant-bar small{display:none}}
@media(max-width:760px){
 :root,.menu-collapsed{--sidebar-width:232px}
 .sidebar{transform:translateX(-100%);transition:transform .18s ease;box-shadow:10px 0 32px #23382f15}
 .menu-open .sidebar{transform:translateX(0)}
 .sidebar-shade:not([hidden]){display:block;position:fixed;inset:0;border:0;border-radius:0;background:#23382f40;z-index:35}
 .main-column{margin-left:0}
 .mobile-top{display:flex;align-items:center;gap:12px;height:60px;border-bottom:1px solid var(--line);padding:0 18px;background:#fafbf9}
 .mobile-top a{font-size:14px;font-weight:600}.mobile-top .icon-button{font-size:20px}
 main{padding:18px 18px 36px}.assistant-bar{margin-bottom:20px;padding-bottom:14px;flex-direction:row;align-items:center}.assistant-bar small{display:none}.assistant-bar select{max-width:calc(100vw - 120px)}
 h1{font-size:24px;margin:18px 0 8px}.home-question{padding:15px;min-height:144px;flex-direction:column;gap:8px}.home-question textarea{font-size:15px;min-height:65px}.home-question button{align-self:flex-end}
 .work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0 28px}.work-entry{padding:17px 15px;min-height:168px}.work-entry h2{font-size:16px}.work-entry p{font-size:12px}.work-entry small{top:15px;right:14px}
 .work-layout{grid-template-columns:minmax(0,1fr);gap:16px}.work-paper{min-height:200px;padding:20px}.work-controls{position:static;max-height:none;padding:18px}.work-heading h1{font-size:23px}.result-row{grid-template-columns:1fr}
 .resource-filters{padding:12px;gap:8px}.resource-filters>input{min-width:100%;width:100%}.resource-filters>select{flex:1}.resource-card{padding:18px}.resource-card h2{font-size:16px}.resource-filters details input,.resource-filters details select{max-width:100%}
 .login{margin:24px auto;padding:23px}.login h1{font-size:23px}.slide-preview{aspect-ratio:auto;min-height:200px}
 .menu-collapsed .sidebar{padding:0 14px}.menu-collapsed .sidebar-brand{height:94px;flex-direction:row;padding:0 8px;gap:10px}.menu-collapsed .brand{flex:1}.menu-collapsed .brand-copy,.menu-collapsed .user-copy{display:flex}.menu-collapsed .menu-label,.menu-collapsed .menu-heading,.menu-collapsed .user-chevron{display:block}.menu-collapsed .menu-item{justify-content:flex-start;padding:11px 14px;margin:3px 0}.menu-collapsed .sidebar-account{padding:14px 4px 16px}.menu-collapsed .user-row{justify-content:flex-start;padding:6px 5px}.menu-collapsed .account-actions{width:auto;left:0;right:0}
}
@media(prefers-reduced-motion:reduce){button,.sidebar{transition:none}}

/* Read above, write below: one central workspace and a bottom composer. */
.home-composer{max-width:1000px;margin:28px auto 0;position:sticky;bottom:20px;box-shadow:0 4px 20px #23382f08;z-index:5}
.work-layout{display:flex;flex-direction:column;align-items:stretch;gap:16px;max-width:1000px;margin:0 auto;height:calc(100dvh - 220px);min-height:460px}
.work-paper{flex:1;min-height:0;overflow:auto;padding:24px 28px;border-color:transparent;background:transparent;scrollbar-width:thin}
.work-controls{flex:none;position:static;width:100%;max-height:48dvh;overflow:auto;padding:16px 20px;background:#fff;border:1px solid #d8e2d3;border-radius:12px;box-shadow:0 4px 20px #23382f08}
.work-controls form>textarea{display:block;width:100%;min-height:72px;border:0;padding:4px 0;resize:vertical;font-size:15px;line-height:1.75}
.work-controls form>textarea:focus{outline:none}
.composer-options{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px 22px;margin:8px 0 10px}
.composer-options>details{font-size:12px;min-width:0}
.composer-options>details>summary{font-size:12px;cursor:pointer;color:#7b8c73}
.composer-options>details[open]{flex-basis:100%;padding:10px 14px;border:1px solid #e4ebdf;background:#f7f9f4;border-radius:8px}
.composer-options>details>label{display:inline-flex;flex-direction:column;min-width:120px;margin:10px 14px 0 0;gap:6px;vertical-align:top}
.composer-options .materials-panel>textarea{margin-top:8px;min-height:100px}
.composer-footer{display:flex;align-items:center;gap:12px;padding-top:4px}
.composer-footer>label.check{flex:1;margin:0;min-width:0;font-size:12px;line-height:1.5}
.composer-footer>label.check input{width:15px;height:15px}
.composer-footer>.primary{width:auto;min-width:108px;margin:0;padding:9px 18px;white-space:nowrap}
.composer-footer>button{flex:none}
.work-controls .work-status{margin:5px 0 8px;font-size:12px}
.work-controls .work-status:empty{display:none}
.work-paper .artifact-actions{margin-top:24px;padding-bottom:12px}
@media(max-width:760px){.work-layout{height:auto;min-height:calc(100dvh - 230px);gap:12px}.work-paper{flex:1;min-height:200px;max-height:55dvh;padding:12px 4px}.work-controls{max-height:55dvh;padding:14px}.work-controls form>textarea{font-size:15px;min-height:66px}.composer-options{gap:8px 14px}.composer-footer{gap:8px}.composer-footer>.primary{min-width:92px;padding:9px 12px}.composer-footer>label.check{font-size:11px}.composer-options>details[open]{padding:10px}.version-bar select{min-width:100px;max-width:180px}}

/* Teaching requirements stay beside the central composer, never in a right panel. */
.task-settings{display:flex;flex-wrap:wrap;gap:10px 14px;margin:8px 0}
.task-settings label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#758570;flex:1;min-width:100px;max-width:160px}
.task-settings input,.task-settings select{width:100%;min-width:0;padding:7px 9px}
.work-controls form>label{display:block;font-size:12px;color:#758570}
.work-controls form>label textarea{width:100%;min-height:70px;max-height:180px;margin:5px 0;resize:vertical}
.quantity-check{padding:9px 12px;background:#edf4e7;border-radius:7px;font-size:13px;color:#4c6942}
.quantity-check.warning{background:#fff5e8;color:#80582d}
@media(max-width:760px){.task-settings{gap:8px}.task-settings label{min-width:110px;max-width:none}.work-controls form>label textarea{max-height:130px}}
