:root{color:#18231f;background:#f3f6f3;font-family:Microsoft YaHei,PingFang SC,Noto Sans CJK SC,system-ui,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}h1,h2,p{margin:0}h1{font-size:38px;line-height:1.12;letter-spacing:0}h2{font-size:18px;letter-spacing:0}label{display:grid;gap:7px;margin-bottom:12px;color:#52605a;font-size:13px;font-weight:800}input,textarea{width:100%;border:1px solid rgba(24,35,31,.14);border-radius:8px;outline:none;background:#fffefa;color:#18231f}input{height:42px;padding:0 12px}textarea{min-height:132px;resize:vertical;padding:12px;line-height:1.6}.app-shell{display:grid;grid-template-columns:300px minmax(0,1fr);min-height:100vh;background:linear-gradient(135deg,#faf7eff0,#ecf5f1eb 46%,#f5f8faf5),#f3f6f3}.login-shell{display:grid;min-height:100vh;place-items:center;padding:24px;background:linear-gradient(135deg,#f8f4eb,#edf5f2,#f6f8fb)}.login-card{width:min(520px,100%);border:1px solid rgba(24,35,31,.12);border-radius:8px;padding:22px;background:#fffefaf5;box-shadow:0 18px 44px #18231f1c}.compact-login{display:grid;justify-items:start;gap:12px;width:min(360px,100%)}.login-brand{margin-bottom:18px}.login-brand p,.brand-block span,.identity-panel p,.panel-title p,.muted-text{color:#6b7770}.brand-block{display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:12px}.brand-mark{display:grid;width:44px;height:44px;place-items:center;border:2px solid #18231f;border-radius:8px;background:#f7d45b;box-shadow:3px 3px #18231f;font-size:24px;font-weight:900}.side-rail{position:sticky;top:0;display:grid;align-content:start;gap:14px;height:100vh;overflow:auto;border-right:1px solid rgba(24,35,31,.11);padding:18px;background:#ffffffb8;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.workspace{width:min(1440px,100%);margin:0 auto;padding:28px}.identity-panel,.metric,.panel,.toolbar-band{border:1px solid rgba(24,35,31,.12);border-radius:8px;background:#fffefaeb;box-shadow:0 14px 34px #18231f12}.identity-panel,.panel{min-width:0;padding:16px}.identity-panel h2{margin-top:8px;font-size:24px}.role-pill,.status-pill,.count-tag,.risk,.status-tag{display:inline-flex;align-items:center;min-height:24px;max-width:100%;border-radius:999px;padding:0 10px;overflow-wrap:anywhere;font-size:12px;font-weight:800}.role-pill{background:#dff1ff;color:#155b83}.status-pill{width:fit-content;background:#f7d45b}.status-final{background:#dff6ea;color:#08734c}.count-tag{background:#e9efeb}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.eyebrow{margin-bottom:4px;color:#6b7770;font-size:13px;font-weight:800}.nav-list{display:grid;gap:8px}.nav-list button,.quiet-button,.secondary-button,.primary-button,.record-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;gap:8px;border-radius:8px;border:1px solid rgba(24,35,31,.14);padding:0 15px;color:#18231f;background:#fffefa;white-space:nowrap}.nav-list button{justify-content:flex-start;width:100%;font-weight:800}.nav-list button.active{border-color:#18231f;background:#18231f;color:#fff}.full-button{width:100%}.primary-button{border-color:#18231f;background:#18231f;color:#fff;font-weight:800}.secondary-button{border-color:#18231f;background:#76c8ff;font-weight:800}.record-button{border-color:#18231f;background:#ff9f7a;font-weight:800}.notice-line{width:100%;min-height:42px;margin-bottom:16px;border:1px solid rgba(8,115,76,.18);border-radius:8px;background:#e2f7ea;color:#08734c;text-align:left;padding:10px 12px}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:14px;margin-bottom:18px}.metric{display:grid;grid-template-columns:44px 1fr;align-items:center;gap:4px 12px;padding:16px}.metric-icon{display:grid;width:42px;height:42px;grid-row:span 2;place-items:center;border-radius:8px;background:#dff6ea;color:#08734c}.metric span,.blocker-item span,.project-row span,.update-head span,.table-row small{color:#6b7770;font-size:12px}.metric strong{font-size:26px}.work-grid{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);gap:18px;margin-bottom:18px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.project-create{margin-bottom:18px}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.button-cluster{display:flex;flex-wrap:wrap;gap:8px}.action-row{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:10px;margin:12px 0 16px}.parsed-preview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.parsed-preview>div,.risk-box{min-height:92px;border:1px dashed rgba(24,35,31,.18);border-radius:8px;padding:12px;background:#ffffff8f}.parsed-preview span,.risk-box span{display:block;margin-bottom:8px;color:#6b7770;font-size:12px;font-weight:900}.parsed-preview p{margin-bottom:6px;overflow-wrap:anywhere;font-size:13px;line-height:1.45}.feed-panel{min-height:520px}.update-list,.blocker-list,.project-bars{display:grid;gap:12px}.update-item{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;border:1px solid rgba(24,35,31,.1);border-radius:8px;padding:14px;background:#fff}.avatar{display:grid;width:42px;height:42px;place-items:center;border-radius:8px;background:#a7e8c9;font-weight:900}.update-head{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:6px}.update-item p{overflow-wrap:anywhere;color:#29352f;line-height:1.55}.chip-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.chip{display:inline-flex;max-width:100%;border-radius:999px;padding:5px 9px;overflow-wrap:anywhere;font-size:12px;font-weight:700}.chip.done{background:#e2f7ea;color:#08734c}.chip.blocker{background:#ffe9df;color:#9a3217}.risk-low,.status-tag.final{background:#dff6ea;color:#08734c}.risk-medium,.status-tag.draft{background:#fff0bd;color:#806000}.risk-high,.status-tag.missing{background:#ffe0d7;color:#9a3217}.blocker-item{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;align-items:start;border-radius:8px;padding:12px;background:#fff5ef}.blocker-item strong,.project-row strong{overflow-wrap:anywhere}.project-row{display:grid;grid-template-columns:180px minmax(0,1fr);gap:14px;align-items:center}.bar-track{height:12px;overflow:hidden;border-radius:999px;background:#e8eeeb}.bar-track div{height:100%;border-radius:inherit;background:linear-gradient(90deg,#2abf88,#76c8ff)}.project-create-row{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(120px,.9fr) 142px 142px 104px;gap:10px;align-items:end}.project-create-row label{margin-bottom:0}.toolbar-band{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:18px;padding:12px}.segmented{display:inline-grid;grid-auto-flow:column;gap:5px;border:1px solid rgba(24,35,31,.12);border-radius:8px;padding:4px;background:#fffefa}.segmented button{min-width:72px;height:34px;border:0;border-radius:6px;color:#52605a;background:transparent;font-weight:800}.segmented button.active{background:#18231f;color:#fff}.period-input{width:128px}.report-title-input{height:auto;margin-top:10px;border:0;background:transparent;padding:0;color:#18231f;font-size:28px;font-weight:900}.report-section-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.report-section{margin-bottom:0}.report-section span{color:#18231f;font-size:15px}.report-section textarea{min-height:220px;background:#fff}.progress-table{overflow-x:auto}.table-head,.table-row{display:grid;grid-template-columns:minmax(160px,1.3fr) 90px 100px 100px minmax(120px,.8fr);gap:12px;align-items:center;min-width:720px;padding:12px}.table-head{color:#6b7770;font-size:12px;font-weight:900}.table-row{border-top:1px solid rgba(24,35,31,.08);background:#fff}.table-row strong{display:grid;gap:3px}.group-rate-panel{margin-top:18px}.group-rate-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.group-rate{display:grid;gap:8px;border:1px solid rgba(24,35,31,.1);border-radius:8px;padding:14px;background:#fff}.demo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.demo-account{display:grid;gap:5px;min-height:96px;border:1px solid rgba(24,35,31,.12);border-radius:8px;padding:12px;text-align:left;background:#fff}.demo-account strong{font-size:15px}.demo-account span,.demo-account em{color:#6b7770;font-size:12px;font-style:normal}.error-line{border-radius:8px;margin-bottom:12px;padding:10px 12px;background:#ffe0d7;color:#8a2b13;font-size:13px}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1180px){.app-shell{grid-template-columns:260px minmax(0,1fr)}.metrics-grid,.project-grid,.report-section-grid,.group-rate-grid{grid-template-columns:1fr 1fr}.work-grid{grid-template-columns:1fr}.project-create-row{grid-template-columns:1fr 1fr}}@media(max-width:820px){.app-shell{grid-template-columns:1fr}.side-rail{position:static;height:auto;border-right:0;border-bottom:1px solid rgba(24,35,31,.11)}.workspace{padding:18px}h1{font-size:32px}.topbar,.metrics-grid,.project-grid,.parsed-preview,.action-row,.report-section-grid,.project-create-row,.demo-grid,.group-rate-grid{grid-template-columns:1fr}.topbar{display:grid}.button-cluster,.toolbar-band{align-items:stretch}.toolbar-band>*,.button-cluster>*{width:100%}.segmented{width:100%}.project-row{grid-template-columns:1fr}}
