:root{color-scheme:light;--bg: #f8fafc;--surface: #ffffff;--surface-soft: #f1f5fd;--surface-tint: #eef6ff;--line: #dbe6f6;--line-strong: #c8d6ee;--text: #0f172a;--text-soft: #475569;--muted: #64748b;--primary: #2563eb;--primary-strong: #1d4ed8;--primary-soft: #dbeafe;--accent: #059669;--accent-soft: #d1fae5;--warning: #b45309;--warning-soft: #fef3c7;--danger: #dc2626;--danger-soft: #fee2e2;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .06);--shadow-md: 0 16px 42px rgba(30, 64, 175, .08);--radius-lg: 18px;--radius-md: 12px;--radius-sm: 8px;font-family:Fira Sans,PingFang SC,Hiragino Sans GB,Microsoft YaHei,system-ui,sans-serif}*{box-sizing:border-box}html{min-width:0}body{margin:0;min-width:320px;background:linear-gradient(135deg,rgba(37,99,235,.07),transparent 30%),linear-gradient(180deg,#fbfdff 0%,var(--bg) 52%,#eef3fb 100%);color:var(--text)}button,input,textarea{font:inherit}button{cursor:pointer;touch-action:manipulation}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid rgba(37,99,235,.28);outline-offset:2px}.app-shell{width:min(100%,1560px);margin:0 auto;padding:28px}.topbar{display:grid;grid-template-columns:minmax(360px,1.15fr) minmax(420px,.95fr);grid-template-areas:"copy metrics" "copy actions";gap:18px 24px;align-items:end;margin-bottom:20px}.hero-copy{grid-area:copy}.brand-row{display:flex;gap:16px;align-items:center}.brand-mark{width:56px;height:56px;display:inline-grid;place-items:center;border-radius:16px;background:var(--primary);color:#fff;font-weight:800;box-shadow:0 16px 28px #2563eb2e}.eyebrow,.control-label,.label,.item-type{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}h1,h2,h3,p{margin:0}h1{font-size:clamp(30px,3vw,46px);line-height:1.05;letter-spacing:0}h2{font-size:clamp(22px,2vw,30px);line-height:1.2;letter-spacing:0}h3{font-size:18px;margin-bottom:8px}p{line-height:1.6}.hero-copy>p{max-width:760px;margin-top:16px;color:var(--text-soft);font-size:17px}.executive-metrics{grid-area:metrics;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.metric-tile,.panel,.control-strip,.insight{border:1px solid var(--line);background:#ffffffe0;box-shadow:var(--shadow-sm)}.metric-tile{min-height:86px;padding:14px;border-radius:var(--radius-md)}.metric-tile span{color:var(--muted);display:block;font-size:12px;margin-bottom:8px}.metric-tile strong{font-size:24px;line-height:1}.primary-tile{background:var(--primary);border-color:var(--primary);color:#fff}.primary-tile span{color:#ffffffc7}.danger-tile{background:var(--warning-soft);border-color:#fde68a}.topbar-actions{grid-area:actions;display:flex;justify-content:flex-end;align-items:center;gap:12px;flex-wrap:wrap}.pill,.ghost,.tab,.identity,.chip,.status,.primary,.secondary{min-height:44px;border:1px solid var(--line);border-radius:var(--radius-sm);display:inline-flex;align-items:center;gap:8px;transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}.pill{padding:10px 14px;background:var(--surface-soft);color:var(--primary-strong);font-weight:700}.ghost,.tab,.identity,.secondary{background:var(--surface);color:var(--text)}.ghost{padding:10px 14px}.ghost:hover,.tab:hover,.identity:hover,.secondary:hover,.item:hover{transform:translateY(-1px);border-color:var(--line-strong);box-shadow:var(--shadow-sm)}.control-strip{display:grid;grid-template-columns:minmax(300px,.7fr) minmax(520px,1fr);gap:18px;align-items:end;margin-bottom:18px;padding:14px;border-radius:var(--radius-lg)}.control-group{display:grid;gap:8px}.align-end{justify-items:end}.tabs,.identity-switch,.chips,.action-row,.summary-strip,.detail-grid,.two-col,.footer-insights{display:grid;gap:12px}.tabs,.identity-switch{grid-auto-flow:column;justify-content:start}.tab{padding:10px 16px;font-weight:700}.identity{min-width:82px;padding:9px 12px;flex-direction:column;align-items:flex-start;gap:2px}.identity small{color:var(--muted);font-size:11px}.active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-strong);box-shadow:inset 0 0 0 1px #2563eb1f}.workspace{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(520px,1.4fr) minmax(320px,.95fr);gap:18px;align-items:start}.panel{border-radius:var(--radius-lg);padding:18px;box-shadow:var(--shadow-md)}.panel-title{display:inline-flex;align-items:center;gap:8px;color:var(--text);font-weight:800;margin-bottom:14px}.panel-title.small{margin-bottom:8px}.item-list{display:grid;gap:12px}.item{width:100%;padding:16px;text-align:left;display:grid;gap:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.item strong{font-size:16px;line-height:1.35}.item p,.footer-insights p,.field-hint,.mini-panel li,.locked-state p,.blinded-note,.story-block p{color:var(--text-soft)}.item-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.status,.chip,.tag-row span{min-height:28px;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:700}.chip,.status{width:88px;justify-content:center;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.status.blind{background:var(--primary-soft);color:var(--primary-strong)}.status.scored{background:#ede9fe;color:#5b21b6}.status.baseline{background:var(--accent-soft);color:#047857}.tag-row{display:flex;flex-wrap:wrap;gap:6px}.tag-row span{background:var(--surface-soft);color:var(--muted)}.detail-panel{display:grid;gap:18px}.detail-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.chips{grid-auto-flow:column;justify-content:end}.chip{background:var(--surface-soft);color:var(--text-soft);border:1px solid var(--line)}.chip.type-idea{background:#fae8ff;color:#86198f;border-color:#f0abfc}.chip.type-prd{background:#cffafe;color:#0e7490;border-color:#a5f3fc}.chip.type-task{background:#d1fae5;color:#047857;border-color:#a7f3d0}.item-type.type-idea{color:#a21caf}.item-type.type-prd{color:#0e7490}.item-type.type-task{color:#047857}.chip.priority-high{background:#fee2e2;color:#b91c1c;border-color:#fecaca}.chip.priority-medium{background:#fef3c7;color:#b45309;border-color:#fde68a}.chip.priority-low{background:#e2e8f0;color:#475569;border-color:#cbd5e1}.chip.priority-pending{background:var(--surface-soft);color:var(--muted);border-color:var(--line);font-style:italic}.chip.status.blind{border-color:#2563eb47}.chip.status.scored{border-color:#c4b5fd}.chip.status.baseline{border-color:#6ee7b7}.flow-chart{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:12px 56px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-md);background:linear-gradient(180deg,var(--surface-tint),#ffffff 70%)}.flow-svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;z-index:0}.flow-link{fill:none;stroke:var(--line-strong);stroke-width:1.5;color:var(--line-strong);opacity:.8}.flow-link.active{stroke:var(--primary);stroke-width:2.5;color:var(--primary);opacity:1}.flow-column{position:relative;z-index:1;display:grid;grid-template-rows:auto 1fr;gap:10px;min-width:0}.flow-column-header{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:var(--surface);border:1px solid var(--line);color:var(--text);font-weight:800;font-size:13px;justify-self:start}.flow-count{margin-left:2px;padding:1px 8px;border-radius:999px;background:var(--surface-soft);color:var(--primary-strong);font-size:12px;font-weight:800;font-variant-numeric:tabular-nums}.flow-column-cards{display:grid;gap:10px;align-content:start}.flow-card{position:relative;z-index:1;text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius-md);padding:12px 14px;display:grid;gap:6px;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.flow-card:hover{transform:translateY(-1px);border-color:var(--line-strong);box-shadow:var(--shadow-sm)}.flow-card strong{font-size:14px;line-height:1.4}.flow-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.flow-card-meta{color:var(--muted);font-size:12px;line-height:1.45}.flow-child-count{font-size:11px;font-weight:800;color:var(--primary-strong);background:var(--surface-soft);border-radius:999px;padding:2px 8px}.flow-card.ancestor{border-color:var(--primary-soft);background:var(--surface-tint)}.flow-card.active{border-color:var(--primary);background:var(--primary-soft);box-shadow:inset 0 0 0 1px #2563eb2e,var(--shadow-sm)}.flow-card.active strong{color:var(--primary-strong)}.flow-empty{padding:14px;border:1px dashed var(--line-strong);border-radius:var(--radius-md);background:#fff9;color:var(--text-soft);font-size:13px;line-height:1.5}.flow-arrow{display:none}@media(max-width:980px){.flow-chart{grid-template-columns:1fr;gap:12px}.flow-svg{display:none}}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-card,.summary-card,.story-block,.mini-panel{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius-md)}.detail-card{padding:14px}.value{font-weight:800;color:var(--text);line-height:1.45}.story-block,.mini-panel{padding:16px}.two-col{grid-template-columns:1fr 1fr}.mini-title{font-weight:800;margin-bottom:10px}.mini-panel ul{padding-left:18px;margin:0;display:grid;gap:8px}.summary-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.summary-card{min-height:120px;padding:16px;display:grid;align-content:space-between}.summary-card svg{color:var(--primary)}.summary-card strong{display:block;font-size:30px;line-height:1;font-variant-numeric:tabular-nums}.alert{padding:14px 16px;border-radius:var(--radius-md);display:flex;align-items:center;gap:10px;font-weight:800}.alert.warn{background:var(--warning-soft);color:var(--warning);border:1px solid #fde68a}.alert.ok{background:var(--accent-soft);color:#047857;border:1px solid #a7f3d0}.alert.pending{background:var(--surface-soft);color:var(--muted);border:1px dashed var(--line-strong);flex-wrap:wrap}.alert.pending .alert-detail{width:100%;margin-left:26px;font-weight:600;color:var(--text-soft)}.blinded-note.waiting{background:var(--surface-soft);color:var(--muted);border:1px dashed var(--line-strong)}.score-panel{display:grid;gap:14px}.score-heading{display:flex;justify-content:space-between;gap:10px;align-items:center}.score-heading .panel-title{margin-bottom:0}.reviewer-badge{min-height:32px;display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:var(--surface-soft);color:var(--primary-strong);font-weight:800}.locked-state{min-height:430px;display:grid;place-items:center;text-align:center;gap:10px;padding:28px;border-radius:var(--radius-md);background:linear-gradient(180deg,#fee2e299,#ffffffe6),var(--surface);border:1px dashed #fca5a5}.locked-state svg{color:var(--danger)}.blinded-note{min-height:44px;display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--surface-soft);font-weight:700}.field-list{display:grid;gap:14px}.field-list.locked .field,.estimate-box.locked{background:var(--surface-soft);opacity:.8}.field-list.locked input[type=range]::-webkit-slider-thumb,.field-list.locked input[type=range]::-moz-range-thumb{cursor:not-allowed}.blinded-note.submitted{background:var(--accent-soft);color:#047857;border:1px solid #a7f3d0}.field{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.field-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.field-label{font-weight:800}.field-value,.field-average{color:var(--primary-strong);font-weight:800;white-space:nowrap;font-variant-numeric:tabular-nums}input[type=range]{width:100%;accent-color:var(--primary)}.comment-box textarea{width:100%;min-height:104px;resize:vertical;padding:12px;border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface);color:var(--text);line-height:1.5}.action-row{grid-template-columns:1fr 1fr}.primary,.secondary{justify-content:center;padding:12px 16px;font-weight:800}.primary{background:var(--primary);color:#fff;border-color:var(--primary)}.primary:hover{background:var(--primary-strong);border-color:var(--primary-strong)}.secondary{background:var(--surface-soft)}.footer-insights{grid-template-columns:1fr 1fr;margin-top:18px}.insight{padding:16px 18px;border-radius:var(--radius-lg)}button:disabled{opacity:.45;cursor:not-allowed;transform:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:10px}.list-header .panel-title{margin-bottom:0}.new-btn{min-height:32px;padding:6px 12px;border-radius:var(--radius-sm);border:1px solid var(--primary);background:var(--surface);color:var(--primary-strong);font-weight:700;display:inline-flex;align-items:center;gap:6px;transition:background-color .18s ease,transform .18s ease}.new-btn:hover{background:var(--primary-soft);transform:translateY(-1px)}.empty-state{padding:22px;border:1px dashed var(--line-strong);border-radius:var(--radius-md);background:var(--surface-soft);color:var(--text-soft);text-align:center}.link-btn{border:none;background:transparent;color:var(--primary-strong);font-weight:800;padding:0;display:inline-flex;align-items:center;gap:4px;cursor:pointer;text-align:left}.link-btn:hover{text-decoration:underline}.descriptions-block{display:grid;gap:14px}.descriptions-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}.descriptions-head h3{margin-bottom:0}.description-list{display:grid;gap:12px}.description-card{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius-md);padding:14px 16px;display:grid;gap:10px;border-left:3px solid var(--primary)}.description-head{display:grid;gap:2px}.description-label{font-weight:800;font-size:15px;color:var(--text)}.description-hint{color:var(--muted);font-size:12px}.description-body{color:var(--text);line-height:1.7;white-space:pre-wrap;margin:0}.description-bullets{margin:0;padding:0;list-style:none;display:grid;gap:8px}.description-bullets li{position:relative;padding-left:18px;color:var(--text);line-height:1.6}.description-bullets li:before{content:"";position:absolute;left:4px;top:.6em;width:6px;height:6px;border-radius:999px;background:var(--primary)}.description-empty{color:var(--muted);font-style:italic;margin:0}.form-section-label{margin-top:4px;font-weight:800;color:var(--text);font-size:13px;border-top:1px solid var(--line);padding-top:12px}.inline-hint{display:block;margin-top:2px;font-weight:500}.field-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.task-summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.estimate-box{display:grid;gap:8px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.estimate-box input[type=number]{width:100%;min-height:40px;padding:8px 12px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface)}.role-locked{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:var(--radius-sm);background:var(--warning-soft);color:var(--warning);font-weight:700;font-size:13px}.submit-hint{padding:8px 12px;border-radius:var(--radius-sm);background:var(--warning-soft);color:var(--warning)}.form-field{display:grid;gap:6px;font-size:13px;color:var(--text-soft)}.form-field>span{font-weight:700;color:var(--text)}.form-field input,.form-field select,.form-field textarea{width:100%;min-height:40px;padding:8px 12px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);color:var(--text);font:inherit}.form-field textarea{min-height:72px;resize:vertical;line-height:1.5}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-hint{font-size:12px;color:var(--muted)}.form-hint.warn{color:var(--warning);font-weight:700}.modal-overlay{position:fixed;inset:0;background:#0f172a6b;display:grid;place-items:center;padding:24px;z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal{width:min(100%,640px);max-height:calc(100vh - 48px);overflow:auto;background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--line);box-shadow:var(--shadow-md);padding:24px;display:grid;gap:16px}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.modal-header h3{margin-top:4px;margin-bottom:0}.icon-btn{width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);display:inline-grid;place-items:center}.icon-btn:hover{background:var(--surface-soft)}.modal-form{display:grid;gap:14px}.modal-footer{display:flex;justify-content:flex-end;align-items:center;gap:10px;flex-wrap:wrap}.modal-footer .form-hint{margin-right:auto}@media(max-width:1180px){.app-shell{padding:22px}.topbar,.control-strip,.workspace,.footer-insights{grid-template-columns:1fr;grid-template-areas:none}.hero-copy,.executive-metrics,.topbar-actions{grid-area:auto}.topbar-actions,.align-end{justify-content:start;justify-items:start}.identity-switch,.tabs{grid-auto-flow:row;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));width:100%}}@media(max-width:760px){.app-shell{padding:14px}.brand-row,.detail-header,.score-heading{align-items:flex-start;flex-direction:column}.brand-mark{width:48px;height:48px;border-radius:12px}.executive-metrics,.detail-grid,.two-col,.summary-strip,.task-summary-strip,.action-row,.footer-insights,.form-row{grid-template-columns:1fr}.chips{grid-auto-flow:row;justify-content:start}.panel,.control-strip{border-radius:14px;padding:14px}}
