:root{color-scheme:light;--paper:#faf9f6;--ink:#252628;--muted:#7b7e84;--line:#c4c9d2;--accent:#2563eb;--blue:#eff5ff;--radius:12px;font-family:"Segoe UI","Microsoft YaHei",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);overflow:hidden}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.42}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button{border:0;background:none;color:inherit}button,select,input{min-height:34px}button{white-space:nowrap}[hidden]{display:none!important}
.workspace{height:100svh;height:100dvh;max-width:1440px;margin:0 auto;padding:0 36px 20px;display:flex;flex-direction:column}.topbar{height:66px;flex-shrink:0;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:16px;font:italic 27px/1 Georgia,serif;letter-spacing:-1px}.brand span{font:300 18px/1 sans-serif;color:#c2c4c8}.brand strong{font:500 15px/1 "Segoe UI","Microsoft YaHei",sans-serif;letter-spacing:1px}.top-actions{display:flex;gap:12px}.quiet{padding:5px 10px;color:var(--muted);font-size:12px}.quiet:hover{color:var(--accent)}main{flex:1;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:16px;padding-top:18px}.composer{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.preset-bar{height:49px;display:flex;align-items:center;gap:6px;padding:0 18px;border-bottom:1px solid var(--line)}.preset-bar>[role=tab]{font-size:13px;padding:6px 18px;border-radius:7px;color:var(--muted)}.preset-bar>[aria-selected=true]{color:var(--accent);background:var(--blue);font-weight:600}.compact-tabs{display:none;margin-left:auto}
#task-form{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);grid-template-rows:auto auto;column-gap:24px;padding:16px 20px 12px}fieldset{border:0;margin:0;padding:0;min-width:0}.fields{display:flex;flex-direction:column;gap:12px}.field-row{display:flex;gap:12px;min-width:0}.field-row label{display:flex;flex-direction:column;gap:5px;min-width:0;font-size:11px;color:#73767d;flex:1}.field-row .grow{flex:2}.field-row input,.field-row select,.field-row textarea,#answer-text,#access-code{width:100%;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);font-size:12px;padding:7px 9px;resize:none}.field-row input:hover,.field-row select:hover,.field-row textarea:hover{border-color:#bfc6d0}.field-row select{padding-right:18px}.mode-fields{display:flex;flex-direction:column;gap:10px}.topic-row textarea{height:36px}.field-row.bottom-fields{align-items:flex-end;margin-top:auto}.bottom-fields .check{flex:0 0 auto;flex-direction:row;align-items:center;min-height:34px;gap:5px;white-space:nowrap;font-size:11px}.check input{width:13px;min-height:13px;margin:0;accent-color:var(--accent)}.source{display:flex;flex-direction:column;min-height:0;gap:8px;padding-left:24px;border-left:1px solid var(--line)}.source-head{display:flex;align-items:center;justify-content:space-between;height:20px;font-size:12px}.source-head button{min-height:24px;padding:0 7px}.drop-zone{position:relative;flex:1;min-height:100px;border:1px dashed #9daabd;border-radius:7px;display:flex;flex-direction:column;background:#fcfdff;transition:border-color .15s,background .15s}.drop-zone.dragging{border-color:var(--accent);background:var(--blue)}.source-foot{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:10px;min-height:22px}.pager{display:flex;align-items:center;gap:9px;font-size:11px;color:var(--muted)}.pager button{min-height:24px;min-width:24px;font-size:20px;padding:0 5px;border:1px solid var(--line);border-radius:4px;background:white}.pager output{min-width:36px;text-align:center;font-variant-numeric:tabular-nums}.icon-button{font-size:21px;padding:0 6px;color:var(--muted);min-width:30px}.submit-row{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;min-height:48px;padding-top:10px;gap:12px}.submit-actions{display:flex;align-items:center;gap:12px;flex-shrink:0;margin-left:auto}.primary{color:white;background:var(--accent);border-radius:6px;padding:9px 18px;font-size:12px;min-height:36px}.primary:hover:not(:disabled){background:#1d4ed8}.primary span{margin-left:18px}#form-error{font-size:11px;color:#c2413b;line-height:1.4}.danger:hover{color:#b43e39}
.return-panel{display:flex;flex-direction:column;min-height:0;background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.return-head{height:45px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid var(--line);gap:12px}.return-title{display:flex;align-items:center;gap:14px}.return-title h1{font-size:12px;font-weight:500;margin:0;white-space:nowrap}#status{font-size:10px;border:1px solid var(--line);border-radius:12px;color:var(--muted);padding:3px 9px;white-space:nowrap}#status[data-state=waiting]{color:#a26716;background:#fff9ed;border-color:#f4e6c9}#status[data-state=completed]{color:#337a58;background:#effaf4;border-color:#d8eadf}.result-controls{display:flex;align-items:center;gap:7px;font-size:11px}.result-controls .icon-button{min-height:24px}.result-controls output{min-width:38px;text-align:center}.return-body{position:relative;flex:1;min-height:0;display:flex}.center-view{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;color:#a5acb6}.center-view svg{width:48px;height:48px;opacity:.6}.center-view p{font-size:12px;margin:0;max-width:85%;text-align:center;line-height:1.6}.answer-view{margin:auto;width:min(760px,100%);padding:12px 24px;display:flex;flex-direction:column;gap:9px;max-height:100%;min-height:0}.question-top{display:flex;align-items:center;justify-content:space-between}.question-label{font-size:11px;color:var(--accent)}#question-text{font-size:13px;line-height:1.7;margin:0;white-space:pre-wrap;overflow-wrap:anywhere;max-height:4.5em;overflow:auto}#question-options{display:flex;gap:6px;flex-wrap:wrap}#question-options button{font-size:11px;padding:5px 10px;border:1px solid var(--line);border-radius:5px;min-height:28px}#question-options button.selected{border-color:#a8c3f5;color:var(--accent);background:var(--blue)}.reply-row{display:flex;gap:10px;align-items:flex-end}.reply-row textarea{height:50px;min-height:34px}.reply-row button{flex-shrink:0;min-width:72px}.pdf-view{width:100%;height:100%;min-height:0;display:flex;align-items:center;justify-content:center;background:#f0f1f3;padding:9px;overflow:hidden}.pdf-view canvas{display:block;max-width:100%;max-height:100%;box-shadow:0 2px 10px #1b243014}
dialog{border:1px solid var(--line);border-radius:12px;padding:22px;width:360px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);box-shadow:0 20px 70px #252d4820}dialog::backdrop{background:#20283733;backdrop-filter:blur(3px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;gap:12px}.dialog-head h2{font-size:14px;font-weight:500;margin:0}#login-form{display:flex;flex-direction:column}#login-error{font-size:12px;color:#b43e39;min-height:16px}#history-dialog{width:500px}#history-list{display:flex;flex-direction:column;gap:8px}#history-list button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;border:1px solid var(--line);padding:12px;border-radius:6px;font-size:12px}#history-list button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#history-list small{color:var(--muted);white-space:nowrap}.history-pager{margin-top:16px;justify-content:flex-end}#pdf-dialog{width:calc(100vw - 40px);height:calc(100dvh - 40px);max-width:1400px;padding:14px;overflow:hidden}#pdf-dialog .dialog-head{height:32px;margin-bottom:10px}#large-pdf-view{height:calc(100% - 42px)}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes travel{0%{transform:translateX(-100%)}100%{transform:translateX(600%)}}
@media(max-height:760px) and (min-width:761px){.workspace{padding-bottom:12px}.topbar{height:52px}main{padding-top:12px;gap:12px}.preset-bar{height:42px}#task-form{padding-top:12px;column-gap:18px}.fields{gap:8px}.field-row{gap:9px}.mode-fields{gap:8px}.source{padding-left:18px}.submit-row{min-height:42px;padding-top:7px}.return-head{height:39px}.answer-view{gap:6px;padding:8px 20px}}
@media(max-width:1000px){.workspace{padding-left:20px;padding-right:20px}#task-form{grid-template-columns:minmax(0,1.55fr) minmax(230px,1fr);column-gap:16px;padding-left:16px;padding-right:16px}.source{padding-left:16px}.field-row{gap:8px}.bottom-fields .check{font-size:10px}.brand{font-size:25px}}
@media(max-width:760px){.workspace{padding:0 12px 10px}.topbar{height:48px}.brand{font-size:23px;gap:10px}.brand strong{font-size:13px}.top-actions{gap:0}.quiet{font-size:11px;padding:5px 7px}main{padding-top:10px;gap:10px}.preset-bar{height:42px;padding:0 8px;gap:2px}.preset-bar>[role=tab]{padding:5px 9px;font-size:11px}.compact-tabs{display:flex;gap:0}.compact-tabs button{font-size:10px;padding:3px 5px;color:var(--muted)}.compact-tabs button[aria-pressed=true]{color:var(--accent)}#task-form{display:flex;flex-direction:column;padding:12px 12px 8px;gap:0}.fields{height:224px;gap:10px}.field-row.common{flex-wrap:wrap;gap:7px}.field-row label{font-size:10px;gap:3px}.field-row input,.field-row select,.field-row textarea{font-size:12px;padding:5px 7px;min-height:31px}.field-row.bottom-fields{gap:8px}.bottom-fields .grow{flex:1}.bottom-fields .check{font-size:10px}.source{display:none;height:224px;padding:0;border:0}#task-form.show-source .fields{display:none}#task-form.show-source .source{display:flex}.submit-row{padding-top:9px;min-height:43px}.submit-actions{gap:6px}.primary{font-size:12px;padding:8px 13px;min-height:33px}.primary span{margin-left:12px}.return-head{height:40px;padding:0 12px}.return-title{gap:8px}#status{font-size:9px;padding:2px 6px}.result-controls{gap:2px}.result-controls .quiet{padding:4px;font-size:10px}.result-controls .icon-button{min-width:24px}.answer-view{padding:8px 12px;gap:6px}#question-text{font-size:12px;line-height:1.5;max-height:3em}.question-top .pager button{min-height:21px}.reply-row{gap:8px}.reply-row textarea{height:39px}.reply-row button{min-width:55px}.source-foot{font-size:10px}.topic-row textarea{height:32px}.mode-fields{gap:8px}.pdf-view{padding:6px}}
@media(max-height:640px){.topbar{height:40px}main{gap:7px;padding-top:7px}.preset-bar{height:36px}.fields{gap:6px}.field-row label{gap:2px}#task-form{padding-top:8px;padding-bottom:5px}.field-row input,.field-row select{min-height:28px;height:28px}.mode-fields{gap:5px}.submit-row{min-height:37px;padding-top:5px}.primary{min-height:30px;padding-top:6px;padding-bottom:6px}.return-head{height:34px}.answer-view{padding-top:5px;padding-bottom:5px}.question-top{min-height:22px}.reply-row textarea{height:32px}#question-options button{min-height:24px;padding-top:3px;padding-bottom:3px}#question-text{max-height:3em}.center-view svg{width:32px;height:32px}}
@media(max-height:640px) and (max-width:760px){.fields,.source{height:201px}.field-row.common{gap:5px}.fields{gap:6px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* Calendar progress styling from duo-space/app/room-calendar.css. */
.progress{--star-start:#e8ddff;--star-middle:#d2b4f5;--star-end:#dcc5f1;--star-spark:#b18ad4;--star-track:#f1edf3;--star-outline:#dbd2e1;position:relative;display:flex;flex-direction:column;gap:10px;flex-shrink:0;width:min(490px,calc(100% - 40px));margin:3px auto 0;padding:0 0 8px;border:0;border-radius:0}
.progress output{font-size:12px;line-height:1.5;color:#945277;text-align:center;font-variant-numeric:tabular-nums}
.progress-track{position:relative;height:25px;flex-shrink:0;border:0;border-radius:0;background:var(--star-track);box-shadow:inset 0 0 0 1px var(--star-outline);overflow:hidden}
#progress-fill{position:relative;display:block;height:100%;width:0;overflow:hidden;border-radius:0;background:linear-gradient(90deg,var(--star-start) 0%,var(--star-middle) max(0%,calc(100% - 36px)),var(--star-end) 100%);transition:width .35s ease}
.progress-glitter{display:block;position:absolute;inset:0;overflow:hidden;pointer-events:none}
.progress-glitter-grain{position:absolute;left:var(--glitter-x);top:var(--glitter-y);width:var(--glitter-size);height:var(--glitter-size);background:linear-gradient(125deg,#fffdf6 0%,#e8a7d4 24%,#b3a1ec 45%,#8ad5d2 67%,#f2d28d 84%,#fffdf6 100%);background-size:300% 300%;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);animation:progress-glitter-shift var(--glitter-duration) ease-in-out var(--glitter-delay) infinite}
.progress-glitter-grain.is-star{clip-path:polygon(50% 0%,61% 36%,100% 50%,61% 64%,50% 100%,39% 64%,0% 50%,39% 36%)}
@keyframes progress-glitter-shift{
0%,100%{opacity:.16;background-position:0% 15%;transform:translate(-50%,-50%) scale(.65) rotate(0deg);filter:brightness(1)}
28%{opacity:.4}
46%{opacity:1;background-position:100% 85%;transform:translate(calc(-50% + var(--glitter-drift)),calc(-50% - 2px)) scale(1.15) rotate(65deg);filter:brightness(1.22) saturate(1.2) drop-shadow(0 0 1px #fff8f3)}
64%{opacity:.28}
78%{opacity:.8;background-position:40% 100%}
}
#progress-trail{display:none;position:absolute;left:var(--progress-position,0%);top:0;height:100%;width:min(65px,calc(100% - var(--progress-position,0%)));overflow:hidden;pointer-events:none;mask-image:linear-gradient(90deg,#000 78%,transparent);transition:left .35s ease}
.has-dust #progress-trail{display:block}
.progress-dust{position:absolute;left:0;top:50%;width:var(--dust-size);height:var(--dust-size);opacity:0;background:linear-gradient(135deg,#fffafd 0%,#ffe3f5 32%,var(--star-spark) 100%);clip-path:polygon(50% 0%,61% 36%,100% 50%,61% 64%,50% 100%,39% 64%,0% 50%,39% 36%);filter:drop-shadow(0 0 1px var(--star-spark));animation:progress-dust-flight var(--dust-duration) cubic-bezier(.2,.72,.3,1) var(--dust-delay) infinite}
@keyframes progress-dust-flight{
0%{left:0;opacity:0;transform:translateY(-50%) scale(.45) rotate(0deg)}
18%,54%{opacity:.9}36%,72%{opacity:.3}
100%{left:var(--dust-distance);opacity:0;transform:translateY(calc(-50% + var(--dust-rise))) scale(.85) rotate(190deg)}
}
.answer-view{gap:8px;padding:12px 20px}.question-label{font-size:12px}#question-text{font-size:14px;line-height:1.5;max-height:3em;min-height:3em;overflow:hidden}#answer-text{height:64px;min-height:48px;min-width:0;font-size:14px;line-height:1.5;padding:9px 11px}.reply-row button{font-size:13px}#question-options button{font-size:13px;min-height:30px;padding:5px 10px}
@media(max-width:760px){.answer-view{padding:8px 12px;gap:6px}#question-text{font-size:13px}#answer-text{height:56px}.reply-row button{font-size:12px}}
@media(max-height:700px){.answer-view{padding:6px 12px;gap:4px}#answer-text{height:48px;min-height:44px}}
@media(prefers-reduced-motion:reduce){.progress-glitter-grain{animation:none;opacity:.65;background-position:65% 50%;transform:translate(-50%,-50%)}.progress-dust{animation:none;left:var(--dust-distance);opacity:.6;transform:translateY(calc(-50% + var(--dust-rise))) scale(.85)}}
.login-page{min-height:100svh;display:grid;place-items:center;padding:24px}.password-card{width:min(360px,100%);display:flex;flex-direction:column;padding:30px;background:white;border:1px solid var(--line);border-radius:var(--radius);gap:12px}.password-card .brand{margin-bottom:24px}.password-card label{font-size:12px;color:var(--muted)}.password-card input{width:100%;border:1px solid var(--line);border-radius:6px;padding:9px 11px;background:white;color:var(--ink)}#password-error{min-height:18px;margin:0;font-size:12px;color:#b94a46}

.range-field{display:flex;flex-direction:column;gap:5px;min-width:0}.range-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:15px}.range-head>label{flex:0 0 auto}.range-head .check{flex-direction:row;align-items:center;gap:5px;color:var(--ink)}.range-field input[readonly]{background:#f3f5f8;color:#5c6675}.source-head>div{display:flex;align-items:center;gap:10px}.source-head>div>span{font-size:11px;color:var(--muted)}#upload-button{color:var(--accent);border:1px solid #b6c5df;border-radius:5px;padding:2px 9px;min-height:26px}.source-head{height:26px}.source-foot{min-height:14px}.drop-zone{min-height:90px}
.results-row{display:grid;grid-template-columns:minmax(0,1fr);min-height:0}
.drop-zone{overflow:hidden}
#file-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:32px;align-content:start;list-style:none;padding:6px;margin:0;gap:5px;min-height:0;flex:1;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
#file-list li{display:flex;align-items:center;gap:5px;padding:2px 6px;border:1px solid var(--line);border-radius:5px;min-width:0;min-height:0;background:#fff}
#file-list::-webkit-scrollbar{width:7px}#file-list::-webkit-scrollbar-track{background:#edf1f6;border-radius:4px}#file-list::-webkit-scrollbar-thumb{background:#a4b0c2;border-radius:4px}
.attachment-info{min-width:0;flex:1;display:flex;flex-direction:column;gap:0}.attachment-info span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:14px}.attachment-info small{font-size:9px;line-height:12px;color:var(--muted)}#file-list .icon-button{flex-shrink:0;min-height:24px;min-width:22px;padding:0 3px}
@media(max-width:1000px){.source-head>div{gap:5px}.source-head>div>span{font-size:10px}}
@media(max-width:760px){.range-field{gap:3px}#file-list{gap:4px;padding:5px}.attachment-info span{font-size:10px}.fields{height:190px}.source{height:190px}.bottom-fields .check{font-size:9px}.source-head>div>span{font-size:11px}.range-head{min-height:14px}}
.result-controls select{width:min(230px,22vw);min-width:75px;height:28px;padding:2px 20px 2px 7px;font-size:11px;text-overflow:ellipsis}.result-controls{min-width:0}@media(max-width:620px){.result-controls select{width:88px;font-size:10px}.return-head{gap:5px}.return-title{gap:4px}}
.grouping-row{align-items:flex-end}.field-row .combine-choice{flex:0 0 auto;flex-direction:row;align-items:center;gap:5px;min-height:34px;white-space:nowrap}.delivery-options{display:flex;flex-direction:column;gap:5px;flex-shrink:0;font-size:11px;color:#73767d}.delivery-options>div{display:flex;gap:10px}.large-pdf-area{position:relative;height:calc(100% - 42px);padding:0 62px;background:#f0f1f3;border-radius:7px}#large-pdf-view{height:100%}.large-page-button{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:70px;border:1px solid #aeb9cd;border-radius:9px;background:#fff;color:#3457a0;font-size:44px;line-height:1;box-shadow:0 3px 14px #26385518;z-index:1}.large-page-button:hover:not(:disabled){background:#eaf1ff;border-color:#6e8cc4}.large-page-button:disabled{opacity:.25}#large-prev{left:9px}#large-next{right:9px}#large-page{font-size:13px;font-variant-numeric:tabular-nums;color:#525b69}
.similar-combine,.mode-fields>.combine-choice{display:flex;align-items:center;gap:5px;color:#73767d;font-size:11px;min-height:16px}
/* All presets use the parallel-paper panel dimensions. */
.composer{--composer-height:377px;--tabs-height:49px;--submit-height:48px;height:var(--composer-height)}
.preset-bar{height:var(--tabs-height)}
#task-form{height:calc(100% - var(--tabs-height));grid-template-rows:minmax(0,1fr) var(--submit-height)}
.fields,.source{height:100%;min-height:0}.fields{gap:8px}.mode-fields{gap:6px}
.field-row label{gap:3px}.field-row input,.field-row select,.field-row textarea{min-height:31px;height:31px;padding-top:5px;padding-bottom:5px}
.field-row.quotas{gap:8px}
.topic-row .grow{flex:2}.topic-row>label:not(.grow){flex:1}.submit-row{min-height:0}
[data-panel=watermark] textarea{height:90px}
#result-note{flex-shrink:0;margin:8px 20px;font-size:12px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-height:760px) and (min-width:761px){.composer{--composer-height:351px;--tabs-height:42px;--submit-height:43px}}
@media(max-width:760px){.composer{--composer-height:367px;--tabs-height:66px;--submit-height:43px}.preset-bar{flex-wrap:wrap;align-content:center;row-gap:0}.preset-bar>[role=tab]{padding:4px 7px}.compact-tabs{height:31px;flex-basis:100%;gap:3px;padding:2px;border:1px solid #aeb9ca;border-radius:6px;background:#edf1f7}.compact-tabs button{flex:1;min-height:25px;padding:2px 8px;border:1px solid transparent;border-radius:4px;font-size:11px;color:#5e6879}.compact-tabs button[aria-selected=true]{color:var(--accent);background:#fff;border-color:#a6bce7;font-weight:600;box-shadow:0 1px 3px #25375815}#task-form{display:grid;grid-template-columns:minmax(0,1fr)}.fields,.source{height:100%}.similar-combine,.mode-fields>.combine-choice{font-size:10px}.delivery-options{font-size:10px;gap:3px}.delivery-options>div{gap:6px}.delivery-options .check{font-size:9px}.field-row.quotas{gap:5px;flex:2}.topic-row{gap:6px}.topic-row .grow{flex:1.3}.topic-row>label:not(.grow){flex:1}.field-row input,.field-row select,.field-row textarea{padding-left:5px;padding-right:5px}.large-pdf-area{padding:0 39px}.large-page-button{width:32px;height:56px;font-size:34px}#large-prev{left:3px}#large-next{right:3px}#pdf-dialog{padding:8px;width:calc(100vw - 16px);height:calc(100dvh - 16px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}#result-note{font-size:11px;margin:6px 12px}}
@media(max-height:640px){.fields{gap:6px}.mode-fields{gap:5px}.field-row input,.field-row select,.field-row textarea{height:28px;min-height:28px}}
@media(max-height:640px) and (max-width:760px){.composer{--composer-height:337px;--submit-height:37px}}
.check input[type=checkbox]{width:13px;height:13px;min-height:13px;padding:0;flex-shrink:0}
.bottom-fields .check{min-height:31px}
[data-panel=answer_card] textarea{height:95px}
[data-panel=answer_card] .delivery-options{margin-top:5px}
[data-panel=answer_card] .check{display:flex;align-items:center;gap:5px}
#document-view{color:#64748b}#document-view svg{color:#4664b6;opacity:1}#document-name{color:var(--ink)}
.bottom-fields .grow{min-width:75px}.delivery-options>div{gap:9px}
@media(max-width:760px){.preset-bar>[role=tab]{font-size:10px;padding-left:6px;padding-right:6px}.delivery-options>div{gap:5px}.bottom-fields .grow{min-width:60px}.delivery-options .check{font-size:9px}}
@media(max-height:760px){.fields{gap:6px}.mode-fields{gap:5px}}
@media(max-height:640px){.bottom-fields .check{min-height:28px}}

/* Keep every preset panel fixed while giving requirements multiple lines. */
.fields>.common,.mode-fields{flex-shrink:0}.fields{gap:6px}.mode-fields{gap:4px}
.field-row input:not([type=checkbox]),.field-row select,.topic-row textarea{height:28px;min-height:28px}
.field-row.bottom-fields{flex:1;min-height:0;align-items:stretch}.bottom-fields>.grow{min-height:0}
.bottom-fields textarea{flex:1;min-height:52px;height:100%;line-height:1.5;resize:none}
.bottom-fields .delivery-options{justify-content:flex-start;gap:3px}
.bottom-fields .question-delivery>div{display:grid;grid-template-columns:repeat(2,max-content);align-content:start;gap:3px 10px}
.bottom-fields .question-delivery .check{min-height:20px;justify-content:flex-start}
[data-panel=answer_card],[data-panel=watermark]{flex:1;min-height:0}
[data-panel=answer_card]>.field-row,[data-panel=watermark]>.field-row{flex:1;min-height:0}
[data-panel=answer_card] textarea,[data-panel=watermark] textarea{flex:1;height:100%;min-height:120px;line-height:1.6;resize:none}
@media(max-height:760px){.fields{gap:5px}.mode-fields{gap:4px}.bottom-fields textarea{min-height:45px}}
@media(max-width:760px){.bottom-fields{gap:9px}.bottom-fields .delivery-options>div{display:grid;grid-template-columns:repeat(2,auto);gap:0 6px}.bottom-fields .check{min-height:20px}.bottom-fields textarea{min-height:46px}}
@media(max-height:640px){.fields{gap:4px}.mode-fields{gap:3px}.field-row label{gap:2px}.bottom-fields textarea{min-height:38px}}

/* Preview and revision share one return panel. */
.return-columns{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,3fr);flex:1;min-height:0}
.preview-pane{display:flex;flex-direction:column;min-height:0;min-width:0;overflow:hidden}
.revision-pane{border-left:1px dashed #a9b2c0;padding:14px;min-height:0;min-width:0}
#revision-form{height:100%;display:flex;flex-direction:column;gap:10px;min-height:0}
#revision-text{flex:1;min-height:0;width:100%;border:1px solid var(--line);border-radius:6px;resize:none;padding:10px;font-size:12px;line-height:1.6;color:var(--ink);background:#fff}
#revision-text::placeholder{color:#9298a1}
#revision-submit{align-self:flex-end;min-width:76px}
#revision-error{margin:0;font-size:11px;color:#c2413b;line-height:1.4}
#result-version{width:100%;min-height:28px;border:1px solid var(--line);border-radius:5px;font-size:11px;color:var(--ink);background:white}
.preview-pane>.result-controls{padding:7px 12px;border-bottom:1px solid var(--line);min-width:0;flex-shrink:0}
.result-controls #result-file{flex:1;min-width:0;max-width:none;min-height:30px;border:1px solid var(--line);border-radius:5px;background:white;color:var(--ink)}
.result-controls .download-all{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:6px 12px;white-space:nowrap;margin-left:auto}
@media(max-width:620px){.return-columns{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.revision-pane{padding:8px}#revision-form{gap:7px}#revision-text{padding:7px;font-size:11px}#revision-submit{min-width:0;min-height:28px;padding:5px 12px}.preview-pane>.result-controls{gap:3px;padding:5px;flex-wrap:wrap}.result-controls #result-file{flex-basis:100%;max-width:100%;height:26px;min-height:26px}.result-controls .download-all{font-size:10px;padding:4px 7px;min-height:28px}.result-controls .quiet{padding:3px}.result-controls output{min-width:28px}.result-controls .icon-button{min-width:22px;padding:0 3px}}

/* Keep the submitted form readable while its controls are locked. */
.composer button:disabled{opacity:1}
.composer input:disabled,.composer select:disabled,.composer textarea:disabled{opacity:1;-webkit-text-fill-color:currentColor}
.composer input[type=checkbox]{appearance:none;color:var(--ink);display:inline-grid;place-content:center;width:13px;height:13px;min-height:13px;border:1px solid #8a8e94;border-radius:2px;background:white;padding:0;flex-shrink:0}
.composer input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}
.composer input[type=checkbox]:checked::after{content:"";width:8px;height:5px;border:2px solid white;border-top:0;border-right:0;transform:translateY(-1px) rotate(-45deg)}

#create-task-button{border:1px solid var(--line);border-radius:5px;color:var(--muted);background:white}
.common .title-field{flex:3}
@media(max-width:760px){.common .title-field{flex:1.6}}
#history-list{font-size:12px;color:var(--muted)}
#history-list button{flex-direction:column;align-items:flex-start;gap:6px}
#history-list button>span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal;overflow-wrap:anywhere}
@media(max-width:760px){.topbar{height:76px;flex-wrap:wrap;align-content:center;gap:6px}.top-actions{width:100%;justify-content:flex-end;gap:6px}.top-actions .quiet{white-space:nowrap}.brand{line-height:1}.top-actions #create-task-button{margin-right:auto}}

/* Geometric arrows stay centered independently of the active font. */
.page-button{display:inline-flex;align-items:center;justify-content:center;line-height:1;padding:0}
.page-button svg{display:block;width:16px;height:16px;flex-shrink:0}
.large-page-button svg{width:28px;height:28px}
#pdf-view{gap:18px;padding:12px;flex-wrap:nowrap}
.pdf-thumbnail{display:flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:0;padding:0;cursor:zoom-in}
.pdf-thumbnail canvas{max-width:none;max-height:none}
@media(max-width:760px){#pdf-view{gap:12px;padding:8px}}

/* Keep the grouping selector and its free-text field adjacent at every size. */
.topic-grouping-fields{display:flex;flex-direction:column;flex:3;min-width:0;gap:3px}
.topic-grouping-fields>label{display:block;flex:none}
.topic-grouping-controls{display:grid;grid-template-columns:minmax(72px,1fr) minmax(0,2fr);gap:8px;min-width:0}
.topic-grouping-controls>select,#custom-grouping-field{min-width:0}
#custom-grouping-field{display:flex;position:relative}
#custom-grouping-field:has(input[required])::after{content:"*";position:absolute;right:8px;top:50%;transform:translateY(-50%);color:#c53636;font-size:12px;font-weight:600;pointer-events:none}
.field-row #custom-grouping-field input[required]{padding-right:22px}
.field-label{display:inline;white-space:nowrap}
.field-row label:has(> [required])>.field-label::after,
.topic-grouping-fields:has([required])>.field-label::after,
.range-field:has(> input[required])>.range-head>label:first-child::after,
.delivery-options[data-required=true]>.field-label::after,
.required-label::after{content:" *";color:#c53636;font-weight:600}
@media(max-width:760px){
 .topic-row{gap:6px}
 .topic-row>.grow{flex:1}
 .topic-row>label:not(.grow){flex:0 0 78px}
 .topic-row select{font-size:11px}
 .topic-grouping-fields{flex:2.3}
 .topic-grouping-controls{gap:6px}
}
@media(max-height:640px){.topic-grouping-fields{gap:2px}}

#result-tabs{display:none}
@media(max-width:760px){#result-tabs{display:flex;gap:2px;padding:2px;border:1px solid #aeb9ca;border-radius:6px;background:#edf1f7}#result-tabs button{min-height:27px;padding:3px 10px;border:1px solid transparent;border-radius:4px;font-size:11px;color:#5e6879}#result-tabs [aria-selected=true]{background:white;border-color:#a6bce7;color:var(--accent);font-weight:600}.return-columns{grid-template-columns:minmax(0,1fr)}.revision-pane{display:none;border:0;padding:10px}.return-panel[data-mobile-pane=revision] .preview-pane{display:none}.return-panel[data-mobile-pane=revision] .revision-pane{display:block}#revision-text{padding:10px;font-size:14px;line-height:1.7}#revision-submit{min-height:34px;font-size:13px;padding:7px 16px}#revision-form{gap:10px}#result-note{max-height:3em;overflow:auto}}

#create-task-button[aria-current=page],.top-actions [aria-current=page]{color:var(--accent)}

#pdf-view{position:relative}.pdf-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;background:#f0f1f3;color:#536179}.pdf-loading-spinner{width:24px;height:24px;border:3px solid #d1d9e8;border-top-color:var(--accent);border-radius:50%;animation:pdf-loading-spin 1s linear infinite}.pdf-loading progress{width:140px;height:5px;accent-color:var(--accent)}.pdf-loading output{font-size:12px;font-variant-numeric:tabular-nums}@keyframes pdf-loading-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.pdf-loading-spinner{animation:none}}

#create-task-button,#create-task-button[aria-current=page]{color:white;background:#22b85b;border:1px solid #22b85b;transition:background-color .16s,border-color .16s,box-shadow .16s}
#create-task-button:hover,#create-task-button[aria-current=page]:hover{color:white;background:#1da650;border-color:#1da650;box-shadow:0 2px 7px #15803d26}
@media(prefers-reduced-motion:reduce){#create-task-button{transition:none}}

.result-controls .email-action{min-height:30px;padding:6px 12px;white-space:nowrap;border:1px solid var(--accent);border-radius:5px;color:var(--accent);background:white}
#email-dialog{width:min(440px,calc(100vw - 32px))}
#email-form{display:flex;flex-direction:column;gap:10px}
#email-address{width:100%;min-height:42px;padding:8px 10px;border:1px solid var(--line);border-radius:5px;font-size:16px}
#email-submit{align-self:flex-end;min-width:80px}
#platform-account-dialog{width:min(440px,calc(100vw - 32px));padding:22px}
#platform-account-title{font-size:17px;line-height:1.5}
#platform-account-options{display:grid;gap:12px;margin-top:18px}
.platform-account-option{display:flex;align-items:center;gap:10px;padding:13px 15px;border:1px solid var(--line);border-radius:7px;font-size:17px;background:#fff;color:var(--ink);cursor:pointer}
.platform-account-option input{margin:0;width:16px;height:16px;accent-color:var(--accent)}
.platform-account-option small{margin-left:auto;font-size:12px;color:var(--muted);white-space:nowrap}
.platform-account-option:hover,.platform-account-option:has(input:checked){border-color:var(--accent);background:var(--blue)}
.platform-account-actions{display:flex;justify-content:flex-end;margin-top:18px}
.platform-account-warning{margin:16px 0 0;color:#c2413b;font-size:12px;line-height:1.6}
#email-notice,#email-status{margin:0;line-height:1.5;font-size:14px;overflow-wrap:anywhere}
#email-notice,#email-status[data-error="true"]{color:#b43832}
#email-status:empty{display:none}
@media(max-width:620px){.result-controls .email-action{font-size:10px;padding:4px 7px;min-height:28px}}
#task-error[data-failed=true]{color:#c23d35;font-size:12px}.retry-actions{display:flex;align-items:center;gap:12px}#status[data-state=failed]{color:#a52b25;background:#fff3f1;border-color:#dc8d86}
#queue-waiting{max-width:85%;margin:4px 0 0;font-size:12px;line-height:1.7;overflow-wrap:anywhere;color:var(--muted)}
#history-dialog[data-scope=current]{width:min(980px,calc(100vw - 32px));padding:22px}
.queue-actions{display:flex;align-items:center;gap:12px;margin-right:auto;font-size:12px}.queue-actions button{color:var(--accent);white-space:nowrap}
#queue-error{font-size:12px;color:#c23d35;margin:0 0 12px}#queue-error:empty{display:none}
.queue-columns{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,1fr);gap:16px;overflow-x:auto;padding-bottom:6px;overscroll-behavior-x:contain}
.queue-pool{min-width:0;border:1px solid var(--line);border-radius:9px;background:#fafbfe;overflow:hidden}
.queue-heading{font-size:14px;font-weight:500;margin:0;padding:14px 16px;border-bottom:1px solid var(--line);color:var(--ink)}
.queue-items{display:flex;flex-direction:column;gap:8px;padding:12px;min-height:210px;max-height:60dvh;overflow-y:auto;overscroll-behavior:contain}
.queue-items:empty::before{content:'无进行中任务';margin:auto;font-size:12px;color:var(--muted)}
.queue-card{display:flex;align-items:center;border:1px solid var(--line);border-radius:6px;background:#fff;min-width:0;color:var(--ink);flex-shrink:0}
.queue-open{display:flex;flex-direction:column;gap:7px;align-items:flex-start;text-align:left;flex:1;min-width:0;padding:12px;font-size:13px;line-height:1.5;color:inherit}
.queue-open:disabled{opacity:1;color:inherit;cursor:default}.queue-name{overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.queue-date{font-size:11px;color:var(--muted)}.queue-status{font-size:11px;color:var(--accent)}
.queue-card[data-locked=true]{border-color:#b6c5ec;background:#f5f8ff}.queue-handle{display:flex;align-items:center;justify-content:center;width:34px;flex-shrink:0;align-self:stretch;padding:5px;color:#7c8eae;touch-action:none;cursor:grab}
.queue-handle svg{width:20px;height:20px}.queue-handle:disabled{opacity:1;cursor:default;color:#8795ad}
.queue-card.dragging{opacity:.4;border-style:dashed}.queue-ghost{position:fixed;z-index:2147483647;pointer-events:none;box-shadow:0 6px 24px #243b6040;opacity:.94}
.queue-documents{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px}.queue-documents .queue-heading{grid-column:1/-1;border:0;padding:0 0 6px}
@media(max-width:620px){#history-dialog[data-scope=current]{padding:16px}.queue-columns{grid-auto-columns:minmax(245px,85%);gap:12px}.queue-actions{gap:8px;font-size:11px}.queue-heading{font-size:13px;padding:12px}.queue-items{max-height:55dvh}.queue-open{font-size:12px}}
/* Unread task results and questions share the same visual treatment. */
.top-actions #current-button,.top-actions #history-button{position:relative}
.task-unread-badge{position:absolute;top:-5px;right:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:10px;background:#d84444;color:#fff;font-size:11px;font-weight:600;line-height:18px;text-align:center;box-sizing:border-box}
.task-unread-dot{display:inline-block;width:8px;height:8px;margin-left:7px;vertical-align:middle;border-radius:50%;background:rgba(216,68,68,.68);flex:none}
.task-unread-badge[hidden],.task-unread-dot[hidden]{display:none}
