:root{color:#111827;background:#f6f8fb;font-family:Inter,Noto Sans TC,Microsoft JhengHei,system-ui,sans-serif;font-synthesis:none;line-height:1.5}*{box-sizing:border-box}body{margin:0;min-width:320px;background:#f6f8fb}button,input,textarea{font:inherit}button{min-height:44px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#0f172a;cursor:pointer;font-weight:650;padding:0 14px}button:focus-visible,input:focus-visible{outline:3px solid #2dd4bf;outline-offset:2px}button.is-selected{border-color:#0f766e;background:#ccfbf1;color:#134e4a}.login-shell,.dashboard-shell{min-height:100vh}.login-shell{display:grid;place-items:center;padding:24px}.login-panel{width:min(100%,380px);border:1px solid #dbe3ee;border-radius:8px;background:#fff;box-shadow:0 20px 45px #0f172a14;display:grid;gap:18px;padding:28px}.login-panel h1,.login-panel p{margin:0}.login-panel label,.search-field{display:grid;gap:6px;font-weight:650}.login-panel input,.search-field input{min-height:44px;border:1px solid #cbd5e1;border-radius:8px;padding:0 12px}.form-error,.danger{color:#b91c1c}.dashboard-shell{padding:16px}.topbar{align-items:center;background:#fbfffe;border:1px solid #cfe7e3;border-left:4px solid #0f766e;border-radius:8px;display:flex;gap:16px;justify-content:space-between;margin:0 auto 16px;max-width:1180px;padding:12px 14px}.topbar span{color:#64748b;display:block;font-size:.88rem}.topbar nav{display:flex;flex-wrap:wrap;gap:8px}.decision-notification{position:relative}.notification-button{align-items:center;display:inline-flex;font-size:1.15rem;justify-content:center;min-width:44px;padding:0;position:relative}.notification-badge{align-items:center;background:#dc2626;border:2px solid #ffffff;border-radius:999px;color:#fff;display:flex;font-size:.7rem;font-weight:700;height:19px;justify-content:center;min-width:19px;position:absolute;right:-5px;top:-5px}.decision-popover{background:#fff;border:1px solid #bfdbfe;border-top:3px solid #2563eb;border-radius:8px;box-shadow:0 16px 32px #0f172a29;display:grid;min-width:min(340px,calc(100vw - 32px));padding:12px 14px;position:absolute;right:0;top:calc(100% + 8px);z-index:10}.decision-popover-header{align-items:baseline;display:flex;justify-content:space-between}.decision-popover-header h2,.decision-popover-header span,.decision-more{margin:0}.decision-popover-header h2{font-size:1rem}.decision-popover-header span,.decision-more{color:#475569;font-size:.82rem}.decision-more{padding-top:10px}.notice{border-radius:8px;margin:0 auto 12px;max-width:1180px;padding:10px 12px}.warning{background:#fffbeb;color:#92400e}.danger{background:#fef2f2}.dashboard-grid{display:grid;gap:14px;grid-template-columns:minmax(0,1fr);margin:0 auto;max-width:1180px}.projects-panel,.project-detail{margin:0 auto 14px;max-width:1180px}.project-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.panel{background:#fff;border:1px solid #dbe3ee;border-radius:8px;padding:14px}.intake-panel{display:grid;gap:12px;margin:0 auto 14px;max-width:1180px}.intake-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.intake-header h2{font-size:1.05rem;margin:0}.intake-types,.intake-form{display:flex;gap:8px}.intake-types button{min-height:38px}.intake-form{align-items:stretch}.intake-form label{flex:1}.intake-form textarea{border:1px solid #cbd5e1;border-radius:8px;min-height:72px;padding:10px 12px;resize:vertical;width:100%}.intake-result{color:#0f766e;font-size:.88rem;font-weight:650;margin:0}.feedback-history{display:grid;gap:8px}.feedback-history article{border-left:3px solid #60a5fa;padding-left:10px}.feedback-history p{margin:0}.feedback-history p+p{color:#0f766e;font-size:.88rem}.sr-only{height:1px;margin:-1px;overflow:hidden;position:absolute;width:1px}.task-queue{border-top:3px solid #f59e0b}.projects-panel{background:#f8fffe;border-top:3px solid #0f766e}.section-header{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:12px}.section-header h2{font-size:1.05rem;line-height:1.2;margin:0}.empty-state{color:#64748b;margin:0}.summary-card{border-top:1px solid #e2e8f0;display:grid;gap:12px;padding:12px 0}.summary-card:first-of-type{border-top:0}.summary-card h3,.summary-card p,.summary-card dl,.task-row p{margin:0}.summary-card strong,.task-row strong{color:#0f766e}.summary-card dl{display:grid;gap:8px}.compact-card{gap:4px}.compact-card h3{font-size:1rem}.compact-card p,.task-row p{color:#475569}.decision-context,.task-project,.task-reviewer,.project-card p{color:#64748b;font-size:.82rem}.task-reviewer{color:#92400e!important;font-size:.8rem;font-weight:650}.project-card{border:1px solid #cbd5e1;border-left:4px solid #14b8a6;border-radius:8px;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto;padding:14px;transition:border-color .18s ease-out,box-shadow .18s ease-out,transform .18s ease-out}.project-card:first-of-type{border-top:1px solid #cbd5e1}.project-card:hover{border-color:#0f766e;box-shadow:0 8px 20px #0f766e1a;transform:translateY(-1px)}.project-card h3,.project-card p{margin:0}.project-card strong{color:#0f766e;font-size:.92rem}.project-progress{display:grid;gap:7px;grid-column:1 / -1}.project-completion-badge{align-items:baseline;background:#ccfbf1;border:1px solid #99f6e4;border-radius:8px;color:#115e59;display:flex;gap:2px;min-width:62px;padding:8px 10px}.project-completion-badge strong{font-size:1.35rem;line-height:1}.project-completion-badge span{font-size:.8rem;font-weight:700}.project-progress-label,.project-detail-counts{align-items:baseline;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}.project-progress-label span,.project-detail-counts span{color:#475569;font-size:.85rem}.project-progress-track{background:#e2e8f0;border-radius:999px;height:10px;overflow:hidden}.project-progress-track span{background:#14b8a6;display:block;height:100%;transition:width .18s ease-out}.project-open-button{justify-self:start;min-height:38px;padding:0 12px}.project-detail{background:#fff;border:1px solid #0f766e;border-radius:8px;box-shadow:0 16px 32px #0f172a1f;display:grid;gap:18px;padding:18px}.project-detail-header{align-items:start;display:flex;gap:12px;justify-content:space-between}.project-detail-header h2,.project-detail-header p,.project-task-list h3,.project-task-list p{margin:0}.project-detail-header p{color:#0f766e;font-size:.84rem;font-weight:650}.project-detail-overview{display:grid;gap:10px}.project-detail-overview>strong{color:#0f766e;font-size:1.8rem;line-height:1}.project-task-list{border-top:1px solid #e2e8f0;display:grid;gap:10px;padding-top:14px}.project-task-list article{border-left:3px solid #60a5fa;display:grid;gap:3px;padding-left:10px}.project-task-list-completed article{border-left-color:#14b8a6}.project-task-list-completed strong{color:#0f766e}.project-task-list p{color:#475569}.summary-card dt{color:#64748b;font-size:.82rem}.summary-card dd{margin:0}.task-list{display:grid}.status-overview{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:18px}.status-summary{align-items:baseline;border-left:4px solid;display:grid;gap:2px;grid-template-columns:1fr auto auto;min-height:58px;padding:8px 10px}.status-summary span,.status-summary small{font-size:.8rem}.status-summary strong{font-size:1.45rem;line-height:1}.status-summary-progress,.task-group-progress{border-color:#14b8a6}.status-summary-progress{background:#f0fdfa;color:#115e59}.status-summary-todo,.task-group-todo{border-color:#60a5fa}.status-summary-todo{background:#eff6ff;color:#1e3a8a}.status-summary-attention,.task-group-attention{border-color:#f59e0b}.status-summary-attention{background:#fffbeb;color:#92400e}.task-group{border-left-style:solid;border-left-width:3px;padding-left:10px}.task-group+.task-group{border-top:1px solid #e2e8f0;margin-top:14px;padding-top:14px}.task-group h3{font-size:.88rem;margin:0 0 4px}.task-row{align-items:center;border-top:1px solid #e2e8f0;display:grid;gap:8px;min-height:52px;padding:10px 0}.task-row strong{color:#0f172a}.task-row:first-child{border-top:0}.task-row-actions{align-items:center;display:flex;gap:8px;justify-self:end}.task-feedback-button{align-items:center;display:inline-flex;font-size:.95rem;gap:3px;justify-content:center;min-height:34px;min-width:34px;padding:0 7px}.task-feedback-button span+span{color:#2563eb;font-size:.72rem;font-weight:700}.status{border-radius:999px;justify-self:start;padding:3px 8px;white-space:nowrap}.status-blocked{background:#fee2e2;color:#991b1b}.status-awaiting-approval,.status-review{background:#fef3c7;color:#92400e}.status-in-progress{background:#ccfbf1;color:#134e4a}.status-inbox,.status-ready,.status-dispatched,.status-done,.status-archived{background:#e2e8f0;color:#334155}@media(min-width:768px){.dashboard-shell{padding:24px}.summary-card{grid-template-columns:1fr}.task-row{grid-template-columns:minmax(0,1fr) auto}}@media(max-width:560px){.intake-form{flex-direction:column}.intake-form button{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important}}
