
:root{color-scheme:light;--bg:#f7f9fc;--paper:#fff;--ink:#232f41;--muted:#6a7587;--line:#e5e5ea;--green:#3478f6;--wash:#eef3fb;--tint:#eef3fb}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.7 'Microsoft YaHei UI','Microsoft YaHei',-apple-system,system-ui,sans-serif;overflow-wrap:break-word}button,input,textarea,select{font:inherit}button{cursor:pointer;background:var(--paper);border:1px solid var(--line);border-radius:8px;color:var(--ink);padding:8px 14px;min-height:40px;transition:background .15s,border-color .15s}button:hover{border-color:var(--green);background:var(--wash)}button.primary{background:var(--green);border-color:var(--green);color:white}button.primary:hover{background:#1f5fd6}button:disabled{opacity:.55;cursor:wait}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--green);outline-offset:3px}[hidden]{display:none!important}
header{background:var(--paper);border-bottom:1px solid var(--line)}.top{max-width:1360px;padding:18px 40px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--wash);color:var(--green);font:700 23px/1 system-ui}.brand strong{display:block;font:700 23px/1.15 system-ui;letter-spacing:-.8px}.brand small{display:block;font-size:10px;color:var(--muted);letter-spacing:2px;margin-top:5px}.who{display:flex;align-items:center;gap:13px;color:var(--muted);font-size:12px}#logout{background:transparent;border-color:transparent;min-height:34px;font-size:12px;padding:5px 9px}
main{max-width:1360px;margin:0 auto;padding:26px 40px 12px}.hero{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:4px 0 24px}.hero h1{font-size:32px;line-height:1.35;font-weight:700;letter-spacing:-1px;margin:8px 0}.hero .subtitle{margin:0;font-size:14px}.eyebrow{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--green);font-weight:600}.subtitle{color:var(--muted);font-size:13px;margin:5px 0 0}.release{text-align:right;flex:none}.release h2{font-size:17px;margin:3px 0 0;font-weight:650}.release .eyebrow{color:var(--ink);font-size:11px;letter-spacing:0}.release p{font-size:11px;color:var(--muted);margin:0}.release .actions{justify-content:flex-end;margin-top:9px;gap:7px}.release button{padding:5px 11px;min-height:32px;font-size:11px}.workspace-tabs{display:flex;width:fit-content;max-width:100%;background:#ededf1;border-radius:100px;padding:5px;gap:1px;margin:0 0 24px}.workspace-tabs button{border:0;border-radius:100px;background:transparent;color:var(--muted);padding:8px 22px;min-height:42px;font-size:14px;white-space:nowrap}.workspace-tabs button[aria-selected=true]{background:var(--paper);color:var(--green);font-weight:650;box-shadow:0 1px 5px #2827430d}.tab-count{font-size:11px;opacity:.8;margin-left:5px;font-weight:500}
h2{font-size:18px;line-height:1.4;margin:0}h3{font-size:16px;line-height:1.5}p{margin:6px 0}.list-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.proposal-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:16px}.proposal-tools .filters{margin-right:auto}.proposal-tools>button{font-size:11px;min-height:32px;padding:5px 10px}.filters{display:flex;gap:4px;flex-wrap:wrap}.filters button{padding:6px 11px;font-size:12px;min-height:34px;border:0;background:transparent;color:var(--muted)}.filters button.active{background:var(--wash);color:var(--green);font-weight:600}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.hint{font-size:11px;color:var(--muted);margin:12px 0 0}.notice{margin:0 0 14px;padding:9px 13px;background:var(--wash);border:1px solid var(--line);border-radius:8px;color:var(--green);font-size:12px;overflow-wrap:anywhere}.notice:empty{display:none}.notice.error{color:#a03c2e;background:#fff2ee}footer{max-width:1360px;padding:18px 40px 26px;margin:auto;color:var(--muted);font-size:11px}
.task-workspace{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,1fr);gap:22px;align-items:start}.task-register{background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden}.task-columns,.task-row{display:grid;grid-template-columns:minmax(0,1fr) 88px 75px;gap:14px;align-items:center}.task-columns{font-size:11px;color:var(--muted);background:#f5f7fa;padding:11px 19px;border-bottom:1px solid var(--line)}.task-row{padding:18px 19px;border-bottom:1px solid var(--line)}.task-row:last-child{border-bottom:0}.task-row.selected{background:var(--wash)}.task-row.ongoing-row{border-left:3px solid var(--green);padding-left:16px}.task-row-note{font-size:11px;color:var(--muted);margin:7px 0 0;line-height:1.6}.task-row-owner{font-size:11px;color:var(--muted);overflow-wrap:anywhere}.proposal-open{padding:0;border:0;min-height:0;text-align:left;background:transparent;font-size:14px;font-weight:650;overflow-wrap:anywhere}.proposal-open:hover{background:transparent;color:var(--green)}.status{font-size:11px;display:inline-block;width:fit-content;white-space:nowrap;background:#edf6f0;color:#216650;border-radius:5px;padding:3px 7px}.status.wait{background:#ecf1fa;color:#4b6999}.status.change{background:#fbf0e5;color:#865623}.status.done{background:#edf6f0;color:#216650}.task-preview{border:1px solid var(--line);border-radius:12px;background:var(--paper);padding:20px 22px;max-height:calc(100dvh - 350px);min-height:330px;overflow-y:auto}.task-preview h3{font-size:19px;margin:8px 0 12px}.task-preview>.eyebrow{margin-top:0}.task-preview .proposal-copy{margin:16px 0}.task-preview .proposal-copy h3{font-size:11px;margin:0 0 5px;color:var(--muted);font-weight:500}.task-preview .markdown-text{font-size:13px;line-height:1.8}.task-preview .actions{padding-top:8px;background:var(--paper);position:sticky;bottom:0}.task-preview .actions button{font-size:12px}.task-preview .hint{font-size:10px}
.proposal-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.proposal-card{padding:23px;background:var(--paper);border:1px solid var(--line);border-radius:12px;min-width:0}.proposal-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.proposal-card-head .proposal-open{font-size:16px}.proposal-excerpt{color:var(--ink);font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere;margin:14px 0}.proposal-note{font-size:11px;color:var(--muted)}.proposal-card .eyebrow{font-size:10px;letter-spacing:0;color:var(--muted);margin-top:15px}.empty{padding:28px 22px;color:var(--muted);text-align:center;font-size:12px}.sheet{background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden}.columns,.pr summary{display:grid;grid-template-columns:minmax(0,1fr) 100px 132px 65px 14px;align-items:center;gap:16px;padding:15px 20px}.columns{font-size:11px;background:#f5f7fa;color:var(--muted)}.pr{border-top:1px solid var(--line)}.pr summary{list-style:none;cursor:pointer}.pr summary::-webkit-details-marker{display:none}.pr-title{display:flex;align-items:baseline;gap:10px;min-width:0}.number{font-size:11px;color:var(--muted);flex:none}.title{font-weight:650;font-size:14px;overflow-wrap:anywhere}.person,.date{font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis}.arrow{color:var(--muted);font-size:19px}.pr[open] .arrow{transform:rotate(90deg)}.detail{padding:0 23px 22px 56px}.detail p{font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}.label{display:block;font-size:11px;color:var(--muted);margin:13px 0 4px}.detail .actions{margin-top:17px}.note{border-top:1px solid var(--line);padding-top:15px;margin-top:24px;color:var(--muted);font-size:12px}.note summary{cursor:pointer;width:fit-content}.note p{margin:12px 0}.note button{margin-top:9px;font-size:12px}
.guide-flow{margin:0 0 22px;padding:14px;background:var(--paper);border:1px solid var(--line);border-radius:12px}.guide-flow img{display:block;width:100%;height:auto;border-radius:8px}.guide-flow figcaption{margin-top:10px;font-size:13px;color:var(--muted)}
.guide-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.guide-steps article,.guide-entry{padding:25px;background:var(--paper);border:1px solid var(--line);border-radius:12px}.guide-number{font:600 27px/1.4 system-ui;color:var(--green)}.guide-steps h3{font-size:16px;margin:12px 0 9px}.guide-steps p,.guide-entry p{font-size:13px;color:var(--muted)}.guide-entry{margin-top:20px}.guide-entry h3{margin:0 0 8px}.guide-entry .actions{margin-top:17px}
#login{max-width:440px;margin:42px auto 70px;padding:30px;background:var(--paper);border:1px solid var(--line);border-radius:16px}#login h1{font-size:26px;margin:10px 0}#loginForm{margin-top:24px}#loginForm button{width:100%;margin-top:7px}label{font-size:12px;color:var(--muted)}input,textarea,select{display:block;width:100%;margin:7px 0 15px;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--ink);font:inherit}textarea{resize:vertical;line-height:1.8}input[type=file]{padding:8px}.file-label{font-size:12px}.dialog-head{display:flex;gap:16px;justify-content:space-between;align-items:flex-start}.dialog-head h2{margin:0;font-size:20px;overflow-wrap:anywhere}.dialog-head button{margin:0;flex:none}dialog{border:1px solid var(--line);border-radius:14px;width:min(470px,calc(100vw - 28px));max-height:88dvh;overflow-y:auto;color:var(--ink);background:var(--paper);padding:26px}dialog::backdrop{background:#25283f50}#taskCompose,#taskDetail,#proposalDialog,#proposalDetail{width:min(820px,calc(100vw - 28px))}#taskForm label,#proposalForm>label{display:block;margin-top:16px}.proposal-copy{margin:20px 0}.proposal-copy h3,.proposal-actions h3{font-size:14px;margin:0 0 7px}.markdown-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9}.proposal-history{margin:16px 0}.proposal-history .markdown-text{padding:14px}.proposal-history .proposal-copy{padding:0 14px}.proposal-history details{margin:8px;border-top:1px solid var(--line)}.proposal-history summary{padding:10px 12px;cursor:pointer}.proposal-actions{border-top:1px solid var(--line);padding-top:18px;margin-top:20px}.proposal-actions .hint{margin-bottom:10px}#proposalFormNotice,#proposalDetailNotice,#taskFormNotice,#taskDetailNotice{color:#a03c2e;white-space:pre-wrap;overflow-wrap:anywhere}.task-section{margin:0}#joinDialog h2{margin-bottom:14px}.task-register #tasks{max-height:calc(100dvh - 395px);overflow-y:auto}
@media(max-width:1100px){.top,main,footer{padding-left:26px;padding-right:26px}.hero h1{font-size:28px}.task-workspace{grid-template-columns:minmax(0,1.2fr) minmax(290px,1fr)}.task-row,.task-columns{grid-template-columns:minmax(0,1fr) 84px;gap:9px}.task-row-owner,.task-columns span:last-child{display:none}.task-row-note{font-size:10px}.columns,.pr summary{grid-template-columns:minmax(0,1fr) 85px 120px 50px 12px;gap:10px}.task-preview{padding:19px}}
@media(max-width:850px){.task-workspace{display:block}.task-preview{display:none!important}.task-register #tasks{max-height:none}.task-row{padding:18px}.proposal-card{padding:20px}.hero{align-items:flex-start;gap:18px}.hero .subtitle{font-size:13px}.release .actions{flex-wrap:nowrap}.release h2{font-size:14px}}
@media(max-width:650px){.top{padding:15px 16px}.brand strong{font-size:20px}.brand small{font-size:9px}.brand-mark{width:31px;height:31px;font-size:20px}.who{gap:5px;font-size:11px}main{padding:20px 16px 5px}footer{padding:18px 16px;font-size:10px}.hero{display:block;margin:0 0 19px}.hero h1{font-size:25px;letter-spacing:-.6px;margin-top:8px}.hero .subtitle{font-size:12px;line-height:1.8}.release{text-align:left;display:flex;align-items:center;justify-content:space-between;gap:9px;flex-wrap:wrap;margin-top:17px;border-top:1px solid var(--line);padding-top:12px}.release>.eyebrow,.release>.hint{display:none}.release h2{font-size:12px;margin:0}.release #projectUpdated{display:none}.release .actions{margin:0;gap:5px}.release button{font-size:10px;padding:5px 8px;min-height:31px}.workspace-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;border-radius:100px;padding:4px;margin-bottom:21px}.workspace-tabs button{padding:8px 3px;font-size:12px;min-height:39px}.tab-count{display:none}.list-head{gap:10px;align-items:flex-start}.list-head h2{font-size:16px}.list-head .subtitle{font-size:11px}.list-head>.primary{white-space:nowrap;font-size:12px;min-height:37px;padding:7px 11px}.proposal-tools{gap:6px;margin-bottom:13px}.proposal-tools .filters{width:100%;margin-right:0}.filters{gap:2px}.filters button{padding:6px 9px;font-size:11px}.proposal-tools>button{font-size:10px;min-height:30px}.task-row,.task-columns{padding:15px 13px;grid-template-columns:minmax(0,1fr) 70px;gap:7px}.task-row.ongoing-row{padding-left:10px}.task-row-title .proposal-open{font-size:13px;line-height:1.7}.task-row-note{font-size:10px}.status{font-size:10px;padding:3px 5px}.proposal-list{grid-template-columns:1fr;gap:13px;margin-top:14px}.proposal-card{padding:18px}.proposal-card-head{display:block}.proposal-card-head .status{margin-top:8px}.proposal-card-head .proposal-open{font-size:15px}.proposal-excerpt{font-size:12px}.columns,.pr summary{grid-template-columns:minmax(0,1fr) 49px 100px 9px;gap:6px;padding:13px 11px}.columns .date,.pr .date{display:none}.pr-title{display:block}.number{display:block}.title{display:block;font-size:12px}.person{font-size:10px}.detail{padding:0 14px 17px}.detail p{font-size:12px}.detail button{font-size:12px}.guide-steps{grid-template-columns:1fr;gap:12px}.guide-steps article,.guide-entry{padding:21px}.guide-steps h3{font-size:15px}.guide-steps p,.guide-entry p{font-size:12px}.guide-number{font-size:24px}.guide-entry button{font-size:11px;padding:7px 10px}.workspace-panel>.list-head:has([data-filter]){display:block}.workspace-panel>.list-head .filters{margin-top:12px}#login{padding:24px;margin:25px auto 50px}#login h1{font-size:24px}dialog{padding:20px}.dialog-head h2{font-size:18px}.dialog-head button{font-size:12px;padding:6px 10px}.markdown-text{font-size:13px}}
@media(min-width:851px){.task-preview{height:calc(100dvh - 540px);max-height:none;min-height:250px;display:flex;flex-direction:column;overflow:hidden}.task-preview-copy{flex:1;min-height:0;overflow-y:auto;margin-top:12px;padding-right:5px}.task-preview-copy .proposal-copy{margin:0 0 16px}.task-preview .actions{position:static;flex-shrink:0;padding-top:12px;margin-top:0;border-top:1px solid var(--line)}.task-preview>.hint{flex-shrink:0;margin-top:8px}.task-register #tasks{max-height:calc(100dvh - 585px)}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
:root{--reading-border:#e7e7ed;--reading-accent:#3478f6}
.who{flex-wrap:wrap;justify-content:flex-end}.member-avatar{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;min-width:30px;border-radius:10px;background:#ecf1fa;color:#3478f6;font-weight:700;overflow:hidden}.member-avatar img{width:100%;height:100%;object-fit:cover}.member-person{display:inline-flex;gap:7px;align-items:center;vertical-align:middle;font-size:13px;color:#383e49}.member-role{color:#818792;font-size:11px}.login-avatar{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.login-avatar button{display:flex;align-items:center;gap:10px}.login-avatar .member-avatar{width:46px;height:46px}
.proposal-workspace{display:grid;grid-template-columns:minmax(260px,350px) minmax(0,1fr);gap:18px;align-items:start;margin-top:16px}.proposal-rail{min-width:0;max-height:calc(100vh - 170px);overflow:auto;padding:2px}.proposal-list{display:flex!important;flex-direction:column;gap:12px}.proposal-card{background:#fff;border:1px solid var(--reading-border);border-radius:14px;padding:16px;box-shadow:none;min-width:0}.proposal-card.selected{border-color:#749dde;box-shadow:0 0 0 2px #ebf2fd}.proposal-open{display:block;text-align:left;font-size:15px;line-height:1.55;width:100%;white-space:normal;overflow-wrap:anywhere}.reading-meta{display:flex;gap:12px;flex-wrap:wrap;align-items:center;color:#9297a0;font-size:11px;margin:10px 0 14px}.proposal-excerpt{font-size:13px;line-height:1.7;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;color:#6b717c}.reading-card-stages{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:10px;margin:12px 0}.reading-pill{display:inline-block;border-radius:7px;padding:4px 9px;font-size:11px;color:#5478b3;background:#edf3fc;font-weight:600}.reading-pill.green{background:#eaf6ef;color:#257f54}.reading-pill.amber{background:#fbf3e5;color:#946828}.proposal-card .actions{border-top:1px solid #f2f2f5;padding-top:10px;margin:12px 0 0;gap:8px}.proposal-card .actions button{font-size:12px;padding:6px 13px}.proposal-reader{min-width:0;border:1px solid var(--reading-border);border-radius:16px;background:#fff;overflow:hidden}.reader-head{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 20px;border-bottom:1px solid #edf1f6}.reader-head h2{font-size:19px;line-height:1.5;margin:0;overflow-wrap:anywhere}.reader-head button{flex-shrink:0;font-size:12px}#proposalDetailContent{padding:0 20px 18px}.reading-tabs{display:flex;gap:5px;border-bottom:1px solid #ecf0f6;margin-bottom:14px;flex-wrap:wrap}.reading-tabs button{border:0;border-radius:0;background:transparent;padding:10px 9px;color:#767d88;font-size:12px}.reading-tabs button.active{border-bottom:2px solid #5382cd;color:#4472bc;background:#f7faff}.reading-scroll{max-height:60vh;min-height:260px;overflow:auto;padding-right:8px;overflow-wrap:anywhere}.reading-md{font-size:14px;line-height:1.9;color:#404753;overflow-wrap:anywhere}.reading-md h1{font-size:23px}.reading-md h2{font-size:18px;line-height:1.6;margin:22px 0 10px}.reading-md h3{font-size:15px}.reading-md p{margin:10px 0}.reading-md ul,.reading-md ol{padding-left:24px}.reading-md blockquote{margin:14px 0;padding:8px 16px;border-left:3px solid #91b1e4;background:#f5f7fb;color:#636b78}.reading-md pre{background:#f5f7fa;padding:14px;border-radius:8px;overflow:auto;max-width:100%;font-size:12px;line-height:1.65}.reading-md code{font-family:Consolas,monospace;background:#f3f5f9;border-radius:4px;padding:1px 4px;font-size:12px}.reading-md pre code{padding:0}.reading-table{max-width:100%;overflow:auto}.reading-md table{border-collapse:collapse;min-width:100%;font-size:12px}.reading-md td,.reading-md th{padding:8px 11px;border:1px solid #e7e7ec;text-align:left;white-space:normal}.reading-md th{background:#f2f6fb}.reading-headline{background:#eef3fc;border-left:3px solid #608fda;border-radius:8px;padding:14px 15px;line-height:1.7}.reading-phases{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-top:1px solid #edf1f6;padding-top:14px;margin-top:16px}.reading-phase{border-radius:11px;padding:12px;background:#fafbfd;min-width:0}.reading-phase h3{font-size:12px;color:#697485;margin:0 0 9px}.reading-phase .member-person{margin:8px 0;font-size:11px;display:flex}.reading-phase .actions{gap:7px;margin:10px 0}.reading-phase button{font-size:12px;padding:7px 12px}.reading-phase .hint{font-size:11px;line-height:1.7;margin:8px 0}.reading-result{border:1px solid #d7e9dc;background:#f8fcf9;border-radius:12px;padding:14px;margin:12px 0}.reading-result h3{font-size:13px;color:#318359;margin-top:0}.reading-comment{margin:18px 0}.reading-code summary{padding:8px;font-size:12px;color:#657ca1;cursor:pointer}#proposalDetailNotice{padding:0 20px;color:#aa5b3d}.soft{background:#f1f6fd;border-color:#e1e9f8;color:#4f76b4}
#avatarDialog{width:min(760px,95vw);max-height:90vh}#avatarContent{max-height:65vh;overflow:auto}.avatar-tabs{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0 18px;position:sticky;top:0;background:#fff;padding:8px 0;z-index:1}.avatar-tabs button{padding:7px 12px;font-size:12px}.avatar-tabs button.active{background:#4f7dc6;color:#fff}.avatar-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.avatar-option{min-width:0;display:flex;flex-direction:column;gap:5px;align-items:center;padding:8px!important;border-radius:13px}.avatar-option img{width:100%;aspect-ratio:1;border-radius:10px;object-fit:cover}.avatar-option>span{font-size:12px}.avatar-option .avatar-occupation{font-size:10px;white-space:normal}.avatar-option[aria-pressed=true]{border-color:#5e8bd4;box-shadow:0 0 0 2px #eaf0fb;background:#f7faff}.avatar-option:disabled{opacity:.45}.members-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.member-card{padding:12px;border:1px solid #edf1f6;border-radius:10px;min-width:0}.member-card .hint{font-size:10px;overflow-wrap:anywhere}#memberDialog{width:min(710px,95vw)}#memberContent>label{margin-top:20px}#readingDocument,#readingHandoff{width:min(800px,95vw)}#handoffText{width:100%;font-size:13px;line-height:1.8}#readingDocumentContent{overflow-wrap:anywhere}.reading-phase p{overflow-wrap:anywhere}
@media(max-width:850px){.proposal-workspace{grid-template-columns:1fr}.proposal-rail{max-height:230px}.proposal-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))}.reading-scroll{max-height:60vh}.reader-head{padding:15px}.reading-phases{grid-template-columns:1fr 1fr}.members-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.who{gap:6px}.who>button{padding:6px 9px;font-size:11px}.reading-phases{grid-template-columns:1fr}.proposal-list{grid-template-columns:1fr!important}.proposal-rail{max-height:220px}.avatar-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.reading-tabs{gap:0}.reading-tabs button{font-size:11px;padding:10px 6px}#proposalDetailContent{padding:0 13px 13px}.reader-head h2{font-size:17px}.login-avatar .hint{font-size:11px}.member-role{display:none}}

#proposalDetail.proposal-reader{width:100%}

/* Compact work area; personal reading and Beijing timestamps. */
.compact-hero{margin:0 0 14px;justify-content:flex-end}.compact-hero .release{display:flex;align-items:center;gap:12px;flex-wrap:wrap;text-align:left;width:100%}.compact-hero .release h2{margin:0}.compact-hero .release .actions{margin:0 0 0 auto}.compact-hero .release #projectUpdated{font-size:11px}.workspace-tabs{margin-bottom:18px}.reading-sort{font-size:11px;color:var(--muted)}.reading-time{font-size:10px;color:#868f9d;white-space:nowrap}.reading-dates{display:flex;gap:12px;flex-wrap:wrap;margin:8px 0}.reading-card-stages{display:grid;grid-template-columns:1fr 1fr;gap:8px}.reading-stage-time{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.reading-stage-time time{width:100%;padding-left:1px}.reading-unread{font-size:10px;font-weight:600;white-space:nowrap;color:#4d7ecc;background:#ecf3ff;padding:3px 7px;border-radius:7px;margin-top:6px}.reading-read{margin-left:auto}.reading-read.unread{color:#4f76b4;background:#f1f6fd}.reading-timeline{font-size:11px;margin:0 0 12px;color:#697486}.reading-timeline summary{cursor:pointer}.reading-timeline-row{display:flex;gap:12px;align-items:center;padding:8px 0;border-top:1px solid #f0f0f4;flex-wrap:wrap}.reading-phase>time{display:block;margin:6px 0}.proposal-card .reading-meta{margin:8px 0}.proposal-card .proposal-excerpt{margin:9px 0}.proposal-card .actions button{padding:5px 9px;min-height:30px}.proposal-card-head .proposal-open{flex:1}.reading-meta .reading-read{font-size:11px;min-height:30px;padding:5px 10px}
@media(max-width:650px){.compact-hero .release{margin:0;padding:0;border:0;gap:8px}.compact-hero .release>.eyebrow{display:inline}.compact-hero .release .actions{margin-left:auto}.compact-hero .release #projectUpdated{display:none}.proposal-card-head{display:flex}.reading-timeline-row{gap:7px}.reading-sort{font-size:10px}}

.task-dates{gap:8px;margin-bottom:0}.task-dates .reading-time{font-size:9px}
@media(max-width:850px){.proposal-rail{max-height:min(46vh,420px)}}

.guide-modes{display:flex;gap:5px;margin-bottom:22px;padding:4px;background:#efeff2;border-radius:9px;width:max-content}
.guide-modes button{border:0;background:transparent;min-height:36px;padding:7px 17px;font-size:13px;color:var(--muted)}
.guide-modes button[aria-pressed="true"]{background:white;color:var(--ink);box-shadow:0 1px 5px #172a4412}
.install-steps article{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:24px}
.install-steps .guide-number{font-size:13px;letter-spacing:1.3px}
.install-steps h3{font-size:20px;margin:19px 0 9px}
.install-steps p{margin:0 0 23px;line-height:1.85;flex:1}
.install-steps button{min-height:42px;padding:9px 16px}
.step-note{display:block;margin-top:12px;font-size:11px;color:var(--muted);line-height:1.7}
.install-ready{display:flex;align-items:center;gap:8px;min-height:42px;font-size:13px;color:var(--green)}
.install-ready>span:first-child{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e4f1ea;font-weight:700}
.install-prompt{border:1px solid var(--line);border-radius:10px;background:var(--paper);padding:15px 20px}
.install-prompt summary{cursor:pointer;font-size:13px;font-weight:600}.install-prompt label{display:block;margin-top:16px;font-size:12px;color:var(--muted)}
.install-prompt textarea{width:100%;box-sizing:border-box;margin-top:9px;line-height:1.8;font-size:12px;resize:vertical}
.install-boundary{font-size:11px;color:var(--muted);line-height:1.8;margin:15px 0 0}
#installNotice:empty{display:none}#installNotice{font-size:13px;margin:16px 0}
@media(max-width:650px){.guide-modes{margin-bottom:18px}.install-steps article{padding:19px}.install-steps h3{font-size:17px;margin:10px 0 7px}.install-steps p{margin-bottom:14px}.install-steps button{min-height:40px;font-size:12px}.install-ready{font-size:12px}.install-prompt{padding:13px 15px}}

.reading-card-stages{grid-template-columns:1fr}.reading-phases.human-only{grid-template-columns:1fr}.human-only .reading-phase{padding:13px 15px}.human-only .reading-phase .actions{margin-bottom:0}
.execution-subtabs{display:flex;gap:7px;border-bottom:1px solid var(--line);flex:1;min-width:0}.execution-subtabs button{border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;padding:9px 18px;color:var(--muted);white-space:nowrap}.execution-subtabs button[aria-selected=true]{border-bottom-color:var(--green);color:var(--green);font-weight:650}.execution-subtabs button span{font-size:11px;margin-left:5px;background:var(--wash);padding:2px 7px;border-radius:20px}.execution-search{width:220px;flex:none}.execution-search input{margin:0;font-size:12px;min-height:38px}.execution-sort{font-size:11px;color:var(--muted);margin:-6px 0 15px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.execution-summary{font-size:12px;line-height:1.8;color:var(--muted);margin:11px 0}.execution-card-foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:7px;border-top:1px solid var(--line);padding-top:11px;margin-top:13px}.execution-delivery-badge{font-size:10px;color:var(--muted);background:#f3f3f6;padding:3px 7px;border-radius:6px;white-space:nowrap}.execution-delivery-badge.merged{color:#26704a;background:#edf7f0}.execution-delivery-badge.review,.execution-delivery-badge.closed,.execution-delivery-badge.unknown{color:#8f651e;background:#fff4dd}.execution-context>summary{font-size:12px;color:var(--muted);cursor:pointer}.execution-result-dates{display:grid;grid-template-columns:1fr 1fr;gap:14px 22px;margin:19px 0}.execution-result-dates small{display:block;font-size:10px;color:var(--muted);margin-bottom:3px}.execution-result-dates time{font-size:11px}.execution-workspace .reading-result{margin:18px 0;background:#fafcff}.execution-workspace .reading-result h3{font-size:12px;color:var(--muted)}.execution-workspace .reading-result .reading-md{font-size:14px}.execution-workspace .reading-result .reading-md>p:first-child{font-size:18px;line-height:1.65}.execution-timeline{border-top:1px solid var(--line);padding-top:15px;margin-top:19px}.execution-timeline>summary{font-size:12px;color:var(--muted)}
.execution-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:17px}
.execution-workspace{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.45fr);gap:20px;align-items:start}
.execution-rail{min-width:0;max-height:72vh;overflow:auto}.execution-card{background:white;border:1px solid var(--line);border-radius:12px;padding:19px;margin-bottom:12px}.execution-card.selected{border-color:#a4c0ed;background:#fbfdff}
.execution-card-head{display:flex;align-items:flex-start;gap:9px}.execution-title{border:0;padding:0;background:none;color:var(--ink);font-size:15px;line-height:1.6;text-align:left;font-weight:650;flex:1;min-width:0;overflow-wrap:anywhere}.execution-card>.primary{margin-top:15px;font-size:12px;padding:8px 13px}.execution-card .reading-meta{margin:11px 0 8px;flex-wrap:wrap}.execution-card .hint{font-size:12px;margin-bottom:0}
.execution-card>.reading-time{display:block}.execution-workspace:has(#executionDetail[hidden]){grid-template-columns:1fr}
#executionDetailContent{padding:20px;overflow-wrap:anywhere;max-height:72vh;overflow:auto}#executionDetailContent:empty{padding:0}.execution-result-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:15px}.execution-result-head .member-person{font-size:12px}
.execution-context h3,.execution-evidence summary{font-size:13px}.execution-context{margin-top:21px}.execution-context .reading-md{font-size:14px}.execution-delivery{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:9px;padding:12px 14px;margin:18px 0;font-size:12px;color:var(--muted);line-height:1.8}.execution-evidence{border-top:1px solid var(--line);padding-top:15px;margin-top:19px}.execution-evidence summary{cursor:pointer;color:var(--muted)}.execution-evidence .reading-md{font-size:12px}.execution-evidence .reading-md pre{white-space:pre-wrap}
.code-records{margin-top:22px;padding:16px 19px;border:1px solid var(--line);border-radius:12px;background:white}.code-records>summary{cursor:pointer;font-size:13px;font-weight:600}.code-records>summary span{margin-left:8px;font-size:11px;font-weight:400;color:var(--muted)}#codeApprovalCount:not(:empty){color:#996219;background:#fff2d8;border-radius:5px;padding:3px 7px}.code-records>.list-head{margin-top:23px}.code-records .sheet{border:0}.code-records .list-head h2{font-size:16px}#executionNotice:empty{display:none}
@media(max-width:850px){.execution-workspace{grid-template-columns:1fr}.execution-rail{max-height:42vh}.execution-tools{gap:7px}.execution-tools button{font-size:11px;padding:6px 9px}.execution-card{padding:15px}.execution-title{font-size:14px}#executionDetailContent{padding:15px;max-height:65vh}.code-records{padding:14px 12px}.code-records>.list-head{display:block}.code-records .filters{margin-top:12px}}
@media(max-width:650px){.execution-tools{flex-wrap:wrap;align-items:center}.execution-subtabs{flex:1;min-width:180px}.execution-search{order:3;width:100%}.execution-subtabs button{padding:8px 12px}.execution-result-dates{gap:10px 12px}.execution-delivery{align-items:flex-start}.execution-workspace .reading-result .reading-md>p:first-child{font-size:16px}#executorOnboarding{white-space:nowrap;flex:none}}
.execution-card .execution-card-dates{margin:7px 0 0;gap:9px}.execution-card-dates .reading-time{font-size:9px}
.acceptance-report{margin:18px 0;min-width:0}
.acceptance-tabs{display:flex;flex-wrap:wrap;gap:16px;border-bottom:1px solid var(--line,#e4e7ed);margin-bottom:14px}
.acceptance-tabs button{border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;padding:10px 0}
.acceptance-tabs button[aria-selected="true"]{color:#3478f6;border-bottom-color:#3478f6}
.acceptance-actions{margin:20px 0;padding:18px;border:1px solid #dce4f2;border-radius:12px;background:#f8fafd}
.acceptance-actions h3{margin-top:0}.acceptance-actions .actions{margin-top:12px;flex-wrap:wrap}

/* Keep handoff ownership explicit on narrow screens. */
.execution-workspace .member-role{display:inline}

.workflow-guide{font-size:13px;line-height:1.85;color:#535b67;margin:12px 0;overflow-wrap:anywhere}
.notification-count{display:inline-block;min-width:18px;padding:1px 5px;border-radius:10px;background:var(--accent,#3478f6);color:white;font-size:11px;line-height:1.5}
#notificationButton{white-space:nowrap}#notificationDialog{width:min(550px,calc(100vw - 24px));max-height:85dvh;padding:24px}
.notification-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.notification-toolbar .filters{margin-right:auto}.notification-toolbar [aria-pressed=true]{background:#ecf1fa;color:#3478f6}
.notification-item{padding:17px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.notification-title{display:block;border:0;padding:0;background:transparent;text-align:left;font-size:14px;font-weight:600;line-height:1.6;color:#242b37}
.notification-item.unread .notification-title::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#4c7dcd;margin:0 8px 2px 0}
.notification-subject{font-size:13px;margin:5px 0;color:#545b66}.notification-suggestion{font-size:12px;line-height:1.8;color:#6f7681;margin:5px 0 10px}.notification-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;color:#7f858e}.notification-meta button{font-size:11px;padding:4px 8px}
#notificationNotice{color:#986125;font-size:12px}#notificationDialog .hint{font-size:12px;line-height:1.7}
@media(max-width:520px){#notificationDialog{padding:18px}header .top{gap:10px}.who{max-width:240px}.notification-toolbar button{font-size:12px;padding:6px 9px}.workflow-guide{font-size:13px}}

/* ===== v2.0 工作台骨架（tiange-ui：冷灰侧栏 + 单一蓝色强调）===== */
:root{--side:#ededf1;--main:#f8f8fa;--acc:#3478f6;--acc-bg:#eaf1fe;--acc-ink:#1f5fd6;--ok:#15803d;--ok-bg:#effaf3;--warn:#b45309;--warn-bg:#fdf3e7;--bad:#c2362b;--bad-bg:#fdecea;--hover:#e3e3e8;--faint:#9a9aa0;--line2:#efeff3;--green:#3478f6;--wash:#eaf1fe;--tint:#eaf1fe;--bg:#f8f8fa;--ink:#1c1c1e;--muted:#6c6c72;--line:#e4e4ea;--reading-accent:#3478f6;--reading-border:#e4e4ea;--shadow:0 1px 2px rgba(0,0,0,.04),0 0 0 1px rgba(0,0,0,.035);--num:"Segoe UI","Microsoft YaHei UI","Microsoft YaHei",sans-serif}
body{background:var(--main);font-family:"Microsoft YaHei UI","Microsoft YaHei","PingFang SC",system-ui,sans-serif;font-size:14px;color:var(--ink)}
button:hover{border-color:#cfcfd8;background:var(--paper)}button.primary{background:var(--acc);border-color:var(--acc)}button.primary:hover{background:var(--acc-ink);border-color:var(--acc-ink)}
button.link{border:0;background:transparent;color:var(--acc-ink);padding:2px 4px;min-height:0;font-size:12.5px}button.link:hover{text-decoration:underline;background:transparent}
#login{max-width:none;margin:0;padding:0;background:var(--main);border:0;border-radius:0;min-height:100vh;display:flex;align-items:center;justify-content:center}
.login-card{width:min(440px,calc(100vw - 32px));background:var(--paper);border-radius:14px;box-shadow:var(--shadow);padding:30px 32px}.login-card h1{font-size:24px;margin:18px 0 6px}.login-card .brand{padding:0}
.app{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100vh}
.side{background:var(--side);padding:18px 12px;position:sticky;top:0;height:100vh;overflow-y:auto;display:flex;flex-direction:column}
.brand{display:flex;align-items:center;gap:9px;padding:2px 10px 16px;font-weight:700;color:var(--ink);font-size:14.5px}
.brand i{width:26px;height:26px;border-radius:7px;background:var(--acc);color:#fff;font-style:normal;font-size:13px;display:flex;align-items:center;justify-content:center;flex:none;font-family:"Segoe UI",sans-serif}
.brand small{display:block;font-weight:400;font-size:11.5px;color:var(--faint);line-height:1.4}
.sec{font-size:11.5px;color:var(--faint);padding:14px 10px 5px}
.side .nav{width:100%;display:flex;align-items:center;gap:9px;padding:7px 10px;border-radius:8px;text-align:left;color:var(--ink);margin-bottom:2px;border:0;background:transparent;min-height:0;font-size:14px}
.side .nav:hover{background:var(--hover)}.side .nav svg{flex:none;color:var(--muted)}
.side .nav .c{margin-left:auto;font-size:11.5px;color:var(--faint)}.side .nav .c.warn{color:var(--warn);font-weight:600}
.side .nav[aria-selected=true]{background:var(--acc);color:#fff;font-weight:600}.side .nav[aria-selected=true] svg,.side .nav[aria-selected=true] .c{color:#fff}
.side-note{margin-top:auto;padding:12px 10px 0;font-size:11px;color:var(--faint)}
.main{min-width:0;display:flex;flex-direction:column}
.bar{min-height:52px;display:flex;align-items:center;gap:8px;padding:8px 40px;color:var(--muted);flex-wrap:wrap}.bar b{color:var(--ink);font-weight:600}
.bar .r{margin-left:auto;display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.bar .r>button{min-height:30px;padding:4px 11px;font-size:12.5px}
.chip{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:999px;padding:1px 10px;font-size:12px;color:var(--muted);background:var(--paper);white-space:nowrap}.warn-chip{color:var(--warn);border-color:#f2d6b3}
.tag{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:1px 9px;font-size:12px;font-weight:600;white-space:nowrap}.tag.acc{background:var(--acc-bg);color:var(--acc-ink)}.tag.ok{background:var(--ok-bg);color:var(--ok)}.tag.warn{background:var(--warn-bg);color:var(--warn)}.tag.bad{background:var(--bad-bg);color:var(--bad)}.tag.mute{background:#efeff3;color:var(--muted)}
.desk-notice{margin:0 40px 12px}.pending-bar{margin:0 40px 12px}
.page{width:100%;max-width:1340px;padding:6px 40px 40px}.workspace-panel.page{margin:0}
.page h1{font-size:24px;line-height:1.35;color:var(--ink);font-weight:700;margin:0;letter-spacing:-.01em}
.lead{color:var(--muted);margin:4px 0 20px;font-size:13.5px}.list-head .lead{margin-bottom:0}
.block{background:var(--paper);border-radius:14px;box-shadow:var(--shadow);padding:18px 20px;min-width:0;margin-bottom:16px}.block>h2{font-size:15px;margin:0 0 12px;display:flex;align-items:baseline;gap:8px}.block>h2 .c{color:var(--faint);font-weight:400;font-size:12.5px}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:16px}.stats .block{margin:0}
.stat .l{font-size:12.5px;color:var(--muted)}.stat .v{font-family:var(--num);font-size:26px;font-weight:700;color:var(--ink);line-height:1.25;margin-top:6px;font-variant-numeric:tabular-nums}.stat .v.acc{color:var(--acc)}.stat .n{font-size:12px;color:var(--faint);margin-top:3px}
footer{max-width:none;margin:auto 0 0;padding:16px 40px 22px;color:var(--faint);font-size:11px}
.proposal-card.selected{border-color:#a9c6f8;box-shadow:0 0 0 2px var(--acc-bg)}.reading-tabs button.active{border-bottom-color:var(--acc);color:var(--acc-ink);background:#f6f9fe}
.reading-headline{background:var(--acc-bg);border-left-color:var(--acc)}
/* 下一步卡：谁 → 做什么 → 一键复制 */
.next-step{border:1px solid #d3e2fc;background:#f5f9ff;border-radius:12px;padding:12px 14px;margin:12px 0}
.next-step-head{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--acc-ink);flex-wrap:wrap}.next-step-who{font-weight:600;color:var(--ink)}
.next-step p{margin:7px 0 10px;font-size:13px;color:var(--ink);line-height:1.75}.next-step .actions{gap:8px}.next-step .actions button{font-size:12.5px;min-height:32px;padding:5px 12px}.next-step .actions button.link{min-height:0;padding:2px 4px}
.warn-text{color:var(--warn)}
/* 我的待办 */
.home-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.home-block{margin:0}.home-block:first-child{grid-column:1/-1}.home-block .lead{margin:0 0 12px}.home-block select{display:inline-block;width:auto;margin:0;min-height:34px;padding:5px 10px}
.todo-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:10px 0;border-top:1px solid var(--line2)}.home-block h2+.todo-row{border-top:0}
.todo-text{min-width:0;display:flex;flex-direction:column;gap:2px}.todo-title{border:0;background:transparent;padding:0;min-height:0;text-align:left;font-weight:600;color:var(--ink);font-size:14px;overflow-wrap:anywhere}.todo-title:hover{color:var(--acc-ink);background:transparent}
.todo-why{font-size:12.5px;color:var(--muted)}.todo-text .member-person{font-size:12px}.todo-row .actions button{font-size:12.5px;min-height:32px;padding:5px 12px}
/* 对齐清单 */
.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 14px}
.seg{display:inline-flex;background:#ececf1;border-radius:8px;padding:3px;gap:2px;flex-wrap:wrap}.seg button{padding:5px 12px;border-radius:6px;font-size:13px;color:var(--muted);border:0;background:transparent;min-height:0}.seg button[aria-pressed=true]{background:var(--paper);color:var(--ink);font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.08)}
.ld{display:grid;grid-template-columns:minmax(300px,400px) minmax(0,1fr);gap:16px;align-items:start}.ld .block{margin:0}
.list{padding:6px 10px}.grp{display:flex;align-items:center;gap:8px;padding:12px 6px 6px;font-size:12px;color:var(--muted);font-weight:600}.grp .c{color:var(--faint);font-weight:400}
.item{width:100%;display:grid;grid-template-columns:14px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 10px;border-radius:10px;text-align:left;border:0;background:transparent;min-height:0}.item:hover{background:#f3f3f6}.item[aria-current=true]{background:var(--acc-bg)}
.item .t{color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item .s{font-size:12px;color:var(--faint);white-space:nowrap}
.ring{width:12px;height:12px;border-radius:50%;border:1.5px solid;display:inline-block;flex:none}.ring.need{border-color:#d97706;background:radial-gradient(#d97706 0 3px,transparent 3.5px)}.ring.run{border-color:var(--acc);background:radial-gradient(var(--acc) 0 3px,transparent 3.5px)}.ring.ok{border-color:#4f9a5f;background:#4f9a5f}.ring.off{border-color:#c4c4ca}
#alignmentDetail{position:sticky;top:16px}#alignmentDetail h2{font-size:17px;line-height:1.45;margin:0 0 12px}#alignmentDetail h3{font-size:13.5px;margin:14px 0 6px}
.kv{display:grid;grid-template-columns:64px minmax(0,1fr);gap:7px 12px;font-size:13px;align-items:center}.kv>span{color:var(--faint)}
.alignment-detail{border-top:1px solid var(--line2);margin-top:12px;padding-top:4px}.mini{display:grid;gap:2px;margin-top:8px}.mini button{display:flex;gap:10px;align-items:center;width:100%;text-align:left;padding:8px 6px;border-radius:8px;border:0;background:transparent;min-height:0}.mini button:hover{background:#f3f3f6}.mini .s{margin-left:auto;font-size:12px;color:var(--faint);white-space:nowrap}
.alignment-edit{border-top:1px solid var(--line2);margin-top:12px;padding-top:4px}.alignment-edit select,.alignment-edit textarea,.alignment-edit input{margin:6px 0 8px}
/* 成员统计 */
.flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.flow-step{border-radius:10px;background:#f6f7f9;padding:10px 12px;display:flex;flex-direction:column;gap:2px}.flow-step .l{font-size:12px;color:var(--muted)}.flow-step b{font-family:var(--num);font-size:19px;color:var(--ink)}.flow-step .n{font-size:11.5px;color:var(--faint)}
.flow-buckets{grid-column:1/-1;display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.tbl-wrap{overflow-x:auto}.tbl{border-collapse:collapse;width:100%;font-size:13px}.tbl th{font-size:12px;color:var(--faint);font-weight:500;text-align:right;padding:6px 8px;border-bottom:1px solid var(--line);white-space:nowrap}.tbl td{text-align:right;padding:8px;border-bottom:1px solid var(--line2);font-family:var(--num);font-variant-numeric:tabular-nums;white-space:nowrap;vertical-align:top}
.tbl th:first-child,.tbl td:first-child,.tbl th:nth-child(2),.tbl td:nth-child(2){text-align:left}.tbl td:first-child,.tbl td:nth-child(2){font-family:inherit}.tbl tr:last-child td{border-bottom:0}
.th-sort{border:0;background:transparent;padding:0;min-height:0;font-size:12px;color:var(--faint)}.th-sort:hover{color:var(--ink);background:transparent}
.tbl details summary{cursor:pointer;color:var(--acc-ink)}.tbl .todo-line{display:block;text-align:left;white-space:normal;max-width:320px}.tbl td .link{margin-left:6px}
@media (max-width:860px){.app{grid-template-columns:minmax(0,1fr);align-content:start}.side{position:sticky;top:0;z-index:20;height:auto;flex-direction:row;gap:4px;overflow-x:auto;padding:8px 10px;align-items:center;border-bottom:1px solid var(--line)}.side .brand,.side .sec,.side-note{display:none}.side .nav{width:auto;white-space:nowrap;margin:0}.bar{padding:8px 16px}.page{padding:6px 14px 40px}.desk-notice,.pending-bar{margin:0 14px 12px}.home-sections,.ld,.flow{grid-template-columns:minmax(0,1fr)}#alignmentDetail{position:static}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

.app{background:linear-gradient(to right,var(--side) 232px,var(--main) 232px)}.brand small{letter-spacing:0;margin-top:2px}
.list-head>.actions{flex:none;flex-wrap:nowrap}.list-head{align-items:flex-start}
@media(min-width:861px){.task-preview{height:auto;max-height:calc(100vh - 300px);min-height:0}.task-register #tasks{max-height:calc(100vh - 340px)}.proposal-rail{max-height:calc(100vh - 220px)}}
.task-preview .actions select{display:inline-block;width:auto;margin:0;min-height:34px;padding:5px 10px}
.reading-sort{display:inline-block;margin-right:6px}
@media (max-width:860px){.app{background:var(--main)}}
@media (max-width:860px){.list-head{flex-direction:column;align-items:stretch}.list-head>.actions{flex-wrap:wrap}.bar>span,.bar>b,.bar .chip{display:none}.bar{min-height:0;padding:6px 14px}.bar .r{margin-left:0;justify-content:flex-start;gap:4px}.bar .r>button{min-height:28px;padding:3px 8px;font-size:12px}}
/* ---- v2.1 提案流程页：一步 = 一次交接 ---- */
.flow-page .toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:0 0 14px}
.flow-page .seg button .n{color:var(--faint);font-weight:400;margin-left:2px}
.flow-search{margin-left:auto}.flow-search input{height:34px;border:1px solid var(--line);border-radius:8px;padding:0 10px;width:260px;background:var(--paper)}
.flow-rows{padding:6px 10px}
.flow-row{display:grid;grid-template-columns:minmax(0,1fr) 170px 280px;gap:18px;align-items:center;width:100%;text-align:left;padding:12px 10px;border:0;border-top:1px solid var(--line2);border-radius:8px;background:transparent;min-height:0}
.flow-row:first-child{border-top:0}.flow-row:hover{background:#f6f6f9;border-color:var(--line2)}
.flow-title{font-weight:600;color:var(--ink);display:flex;gap:8px;align-items:center}
.flow-unread{font-size:11.5px;color:var(--acc-ink);background:var(--acc-bg);border-radius:999px;padding:0 7px;font-weight:600}
.flow-meta{display:flex;gap:10px;flex-wrap:wrap;align-items:center;font-size:12px;color:var(--faint);margin-top:3px}
.bar4{display:grid;grid-template-columns:repeat(4,1fr);gap:3px}.bar4 i{height:5px;border-radius:3px;background:#e3e3e8}.bar4 i.d{background:#8fb3f5}.bar4 i.n{background:var(--acc)}
.flow-bar small{display:block;font-size:12px;color:var(--muted);margin-top:4px}
.flow-next{font-size:12.5px;color:var(--muted);line-height:1.6}.flow-next b{color:var(--ink);font-weight:600}.flow-next.mine,.flow-next.mine b{color:var(--acc-ink)}
.back{border:0;background:transparent;color:var(--muted);padding:2px 0;min-height:0;font-size:13px}.back:hover{background:transparent;color:var(--acc-ink)}
.flow-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-top:6px}.flow-head h1{margin:0}
.flow-tools{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end;flex:none}
.flow-meta-line{margin:6px 0 0}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0 14px}
.task-steps{grid-template-columns:repeat(2,minmax(0,1fr));max-width:560px;margin:10px 0}
.step{display:grid;gap:2px;text-align:left;padding:10px 14px;border-radius:10px;background:var(--paper);box-shadow:var(--shadow);border:0;min-height:0;color:var(--ink)}
.step .no{font-size:12px;color:var(--faint)}.step .nm{font-weight:700;font-size:14.5px}.step .wh{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.step.done .no{color:var(--ok)}.step.now{box-shadow:0 0 0 1.5px var(--acc)}.step.now .no{color:var(--acc-ink);font-weight:600}
.step.later .nm,.step.later .wh{color:var(--faint)}
button.step:hover{background:#f3f3f6}.step[aria-selected=true],.step[aria-selected=true]:hover{background:var(--acc-bg)}
.flow-step h2{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.flow-step h2 .c{color:var(--faint);font-weight:400;font-size:12.5px}
.flow-later{color:var(--faint);margin:6px 0 0}
.flow-sub{display:grid;gap:8px;margin:6px 0 4px}.flow-subrow{display:flex;gap:10px;align-items:center;font-size:13.5px}.flow-subrow .s{margin-left:auto;font-size:12px;color:var(--faint);text-align:right;max-width:55%}
.flow-record{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:13px;color:var(--muted);background:#f6f6f9;border-radius:8px;padding:9px 12px;margin-top:12px}
.flow-do{border-top:1px solid var(--line2);margin-top:14px;padding-top:14px}.flow-do p{margin:0 0 10px}
.flow-agent{margin-top:10px}.flow-agent>summary{cursor:pointer;color:var(--muted);font-size:13px}
.flow-report{margin-top:16px}.flow-report h3{margin:0 0 8px}.flow-report .seg{margin-bottom:10px}
.flow-summary{background:#f6f6f9;border-radius:8px;padding:9px 12px;font-size:13px;margin:10px 0 0}
.flow-talk{margin-top:16px}.flow-talk>summary{cursor:pointer;font-weight:600;color:var(--ink)}
.flow-comment{border-top:1px solid var(--line2);padding:10px 0}.flow-timeline{margin-top:14px}.flow-timeline h3{margin:0 0 6px;font-size:13.5px}
.flow-lead{margin-top:12px}
.callout{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:12px 16px;border-radius:10px;background:var(--acc-bg);color:var(--acc-ink);margin:10px 0}
.callout.ok{background:var(--ok-bg);color:var(--ok)}.callout.warn{background:var(--warn-bg);color:var(--warn)}.callout b{white-space:nowrap}
.home-kit button{margin-left:auto}
.kit-chip{min-height:30px;padding:3px 12px;font-size:12.5px;border-radius:999px}
.home-wide{grid-column:1/-1}
.passcode-box{border-top:1px solid var(--line2);margin-top:14px;padding-top:12px}.passcode-box h3{margin:0 0 4px}.passcode-box input{height:36px;border:1px solid var(--line);border-radius:8px;padding:0 10px;min-width:220px}
.red-human{margin:0 0 12px}
@media (max-width:860px){.flow-row{grid-template-columns:minmax(0,1fr);gap:8px}.flow-search{margin-left:0;width:100%}.flow-search input{width:100%}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
.flow-undo{margin-top:8px}.flow-undo button.undo{color:var(--muted)}.flow-undo button.undo:hover{color:var(--bad)}
.source-tag{color:var(--muted);font-size:12.5px}

/* v2.7.2 三行短通知、验收页 E 审批视图、Agent 执行子状态 */
.notification-short{margin:8px 0 10px;padding:10px 12px;background:#f6f8fb;border-radius:8px}.notification-line{margin:3px 0;font-size:12.5px;line-height:1.7;color:#3d4450}.notification-line b{display:inline-block;min-width:5.5em;color:#242b37;font-weight:600}.notification-go{margin-top:6px}
.accept-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px;align-items:start}.accept-side{position:sticky;top:12px;border:1px solid var(--line);border-radius:10px;padding:14px;background:#fff}.accept-side h3{margin:0 0 10px;font-size:14px}
.judge-item{padding:10px 0;border-top:1px solid var(--line)}.judge-item:first-of-type{border-top:0}.judge-item p{margin:2px 0;font-size:13px;line-height:1.7}.judge-item .rec{color:#3478f6}.judge-item .actions{margin-top:6px}.judge-item textarea{width:100%;margin-top:6px}.judge-item.done{opacity:.75}.judge-count{font-size:12px;color:#7f858e;font-weight:400;margin-left:6px}
.airview-tag{display:inline-block;font-size:12px;padding:1px 8px;border-radius:10px;background:#eef3fd;color:#2c5fc4}.airview-tag.missing{background:#fff4e5;color:#9a5b00}
@media (max-width:1100px){.accept-grid{grid-template-columns:1fr}.accept-side{position:static}}
