:root{color:#151c2c;background:#f4f7fa;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--background: #f4f7fa;--surface: #ffffff;--surface-soft: #f8fafc;--surface-tint: #edf7f6;--text: #151c2c;--muted: #6a7688;--border: #dfe6ee;--border-strong: #ccd6e0;--accent: #0f918c;--accent-strong: #087a76;--accent-soft: #d7f7f3;--navy: #13263a;--amber: #b7791f;--amber-soft: #fff5d8;--danger: #d92d20;--danger-soft: #ffe7e4;--green: #087443;--green-soft: #e5f7ed;--shadow: 0 18px 42px rgba(21, 28, 44, .06)}:root[data-theme=dark]{color:#e8edf4;background:#101720;--background: #101720;--surface: #17212b;--surface-soft: #111b24;--surface-tint: #123333;--text: #e8edf4;--muted: #98a7b8;--border: #2a3847;--border-strong: #395066;--accent: #2dd4bf;--accent-strong: #5eead4;--accent-soft: #123d3b;--navy: #f2f7fb;--amber: #fbbf24;--amber-soft: #3a2b11;--danger: #fb7185;--danger-soft: #3d171d;--green: #7dd3a8;--green-soft: #143625;--shadow: 0 18px 42px rgba(0, 0, 0, .28)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--background);color:var(--text)}button,input{font:inherit}button{cursor:pointer}a{color:inherit}.app-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto}.topbar{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:minmax(260px,1fr) auto minmax(360px,1fr);gap:18px;align-items:center;min-height:74px;padding:0 20px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface) 95%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbar-left,.topbar-actions,.topbar-center,.brand,.button,.date-control,.search-field,.switch-control,.view-all-button,.blog-card a{display:flex;align-items:center}.topbar-left{gap:16px}.brand{gap:14px;min-width:0;color:var(--text);text-decoration:none}.brand strong{min-width:0;overflow:hidden;font-size:1.42rem;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.brand-mark{display:grid;width:42px;height:42px;place-items:center;border:3px solid var(--accent);border-radius:7px;color:var(--accent)}.topbar-center{justify-content:center}.topbar-actions{justify-content:flex-end;gap:12px}.button,.icon-button,.date-control,.filter-selects button,.view-all-button,.search-field,.switch-control{min-height:40px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text)}.button{justify-content:center;gap:9px;padding:0 18px;font-size:.88rem;font-weight:800}.icon-button{display:inline-grid;width:40px;place-items:center}.icon-button.subtle{border-color:transparent;background:transparent}.icon-button.secondary{flex:0 0 auto}.date-control{gap:10px;padding:0 12px;color:var(--muted);font-size:.9rem;font-weight:800}.date-control input{width:134px;border:0;outline:0;background:transparent;color:var(--text);font-weight:700}.workspace{display:grid;grid-template-columns:265px minmax(0,1fr) 380px;min-height:0}.timeline-rail{display:grid;grid-template-rows:auto 1fr auto;min-height:calc(100vh - 74px);border-right:1px solid var(--border);background:var(--surface)}.rail-title{display:flex;align-items:center;justify-content:space-between;padding:26px 24px 10px;color:var(--navy);font-weight:850}.rail-title svg{transform:rotate(180deg)}.timeline-list{position:relative;display:grid;align-content:start;padding:10px 0}.timeline-list:before{position:absolute;top:24px;bottom:34px;left:45px;width:1px;background:var(--border-strong);content:""}.timeline-step{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;width:100%;min-height:116px;padding:18px 22px 18px 30px;border:0;border-left:4px solid transparent;background:transparent;color:var(--text);text-align:left}.timeline-step.selected{border-left-color:var(--accent);background:linear-gradient(90deg,var(--surface-tint),transparent)}.timeline-dot{position:relative;z-index:1;display:grid;width:36px;height:36px;place-items:center;margin-top:6px;border:2px solid var(--border-strong);border-radius:999px;background:var(--surface);color:#fff}.timeline-step.selected .timeline-dot,.timeline-step:has(em:not(:empty)) .timeline-dot:has(svg){border-color:var(--accent);background:var(--accent)}.timeline-step strong,.timeline-step small,.timeline-step em{display:block}.timeline-step strong{margin-top:2px;font-size:.98rem;line-height:1.25}.timeline-step small{margin-top:8px;color:var(--muted);font-size:.86rem}.timeline-step em{margin-top:8px;color:var(--accent-strong);font-size:.88rem;font-style:normal;font-weight:850}.view-all-button{justify-content:center;gap:10px;margin:18px 20px 24px;color:var(--navy);font-weight:850}.work-panel{min-width:0;border-right:1px solid var(--border);background:var(--surface-soft)}.overall-progress{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:22px;align-items:center;margin:18px 20px 12px;padding:14px 28px;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.overall-progress span,.summary-card h2,.section-title-row h1{color:var(--navy)}.overall-progress span{display:block;margin-bottom:8px;font-size:.9rem;font-weight:800}.progress-track,.mini-track{height:10px;overflow:hidden;border-radius:999px;background:#e7edf2}:root[data-theme=dark] .progress-track,:root[data-theme=dark] .mini-track{background:#273545}.progress-track div,.mini-track div{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),#1aa6a0)}.overall-progress strong{color:var(--accent);font-size:1.7rem;line-height:1}.overall-progress small{color:var(--muted);font-weight:800}.command-row{display:grid;grid-template-columns:minmax(220px,1fr) auto auto auto;gap:14px;align-items:center;padding:0 20px 18px;border-bottom:1px solid var(--border)}.search-field{gap:10px;padding:0 14px;color:var(--muted)}.search-field input{width:100%;border:0;outline:0;background:transparent;color:var(--text)}.filter-selects{display:flex;gap:8px}.filter-selects button{min-width:104px;padding:0 13px;color:var(--muted);font-size:.87rem;font-weight:800}.filter-selects button.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.switch-control{position:relative;gap:10px;padding:0 12px 0 14px;color:var(--muted);font-size:.86rem;font-weight:800}.switch-control input{position:absolute;opacity:0;pointer-events:none}.switch-control i{position:relative;display:block;width:40px;height:22px;border-radius:999px;background:#b7c0ca}.switch-control i:after{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #151c2c40;content:"";transition:transform .16s ease}.switch-control input:checked+i{background:var(--accent)}.switch-control input:checked+i:after{transform:translate(18px)}.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px 12px}.section-title-row h1{margin:0;font-size:1.45rem;line-height:1.15}.section-title-row p{margin:6px 0 0;color:var(--muted);line-height:1.45}.section-title-row>span,.group-heading em,.card-heading span{display:inline-flex;align-items:center;justify-content:center;min-height:25px;padding:0 9px;border-radius:999px;background:var(--accent);color:#fff;font-style:normal;font-weight:850}.task-groups{display:grid;gap:12px;padding:0 20px 28px}.task-group{overflow:hidden;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.group-heading{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:12px;align-items:center;min-height:54px;padding:0 18px;border-bottom:1px solid var(--border)}.group-heading>span:first-child{color:var(--navy)}.group-heading strong{color:var(--navy);font-size:1.02rem}.group-heading em{background:#edf1f5;color:var(--navy);font-size:.85rem}:root[data-theme=dark] .group-heading em{background:#253342}.task-row{display:grid;grid-template-columns:34px minmax(210px,1fr) 84px 72px 32px;gap:12px;align-items:center;min-height:54px;padding:9px 18px;border-bottom:1px solid var(--border)}.task-row:last-child{border-bottom:0}.check-button{display:grid;width:22px;height:22px;place-items:center;border:1.5px solid var(--border-strong);border-radius:5px;background:var(--surface);color:#fff}.task-row.complete .check-button{border-color:var(--accent);background:var(--accent)}.task-copy{min-width:0}.task-copy strong{display:block;overflow:hidden;color:var(--text);font-size:.94rem;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.task-copy p{display:block;overflow:hidden;margin:3px 0 0;color:var(--muted);font-size:.82rem;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.task-row.complete .task-copy strong{color:var(--muted);text-decoration:line-through}.priority{display:inline-flex;align-items:center;justify-content:center;min-height:26px;width:fit-content;padding:0 10px;border:1px solid var(--green-soft);border-radius:6px;background:var(--green-soft);color:var(--green);font-size:.82rem;font-style:normal;font-weight:800}.priority.important{border-color:#f8df9c;background:var(--amber-soft);color:var(--amber)}.priority.critical{border-color:#ffc7c1;background:var(--danger-soft);color:var(--danger)}.task-row time,.upcoming-list time{color:var(--muted);font-size:.84rem;font-weight:800}.row-action{width:28px;min-height:28px;border-color:transparent;background:transparent;color:var(--muted)}.empty-state{display:grid;justify-items:center;gap:8px;padding:42px 18px;color:var(--muted);text-align:center}.empty-state strong{color:var(--text)}.summary-rail{display:grid;align-content:start;gap:18px;padding:18px;background:var(--surface-soft)}.summary-card{border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.summary-card h2{margin:0;font-size:1.04rem;line-height:1.2}.progress-summary{display:grid;justify-items:center;gap:16px;padding:22px}.progress-summary h2{justify-self:start}.progress-ring{display:grid;width:138px;height:138px;place-items:center;border-radius:50%;background:conic-gradient(var(--accent) calc(var(--progress) * 1%),#e8edf2 0),var(--surface)}:root[data-theme=dark] .progress-ring{background:conic-gradient(var(--accent) calc(var(--progress) * 1%),#2a3847 0),var(--surface)}.progress-ring span{display:grid;width:96px;height:96px;place-items:center;border-radius:50%;background:var(--surface);color:var(--accent);font-size:2rem;font-weight:900}.summary-stats{display:grid;grid-template-columns:repeat(3,1fr);width:100%;border-top:1px solid var(--border)}.stat{display:grid;justify-items:center;gap:6px;padding:16px 8px 0;color:var(--muted);font-size:.8rem;font-weight:700}.stat+.stat{border-left:1px solid var(--border)}.stat strong{color:var(--text);font-size:1.55rem;line-height:1}.stat.good strong{color:var(--green)}.stat.danger strong{color:var(--danger)}.card-heading{display:flex;align-items:center;justify-content:space-between;padding:18px 18px 12px}.card-heading span{min-width:28px;background:#edf1f5;color:var(--muted)}.upcoming-list{display:grid;gap:0;margin:0;padding:0 18px 18px;list-style:none}.upcoming-list li{display:grid;grid-template-columns:minmax(0,1fr) auto 52px;gap:10px;align-items:center;min-height:42px;border-top:1px solid var(--border)}.upcoming-list span{overflow:hidden;font-size:.86rem;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.upcoming-list .priority{min-height:24px;padding:0 8px;font-size:.76rem}.readiness-card,.blog-card{display:grid;gap:16px;padding:18px}.readiness-row{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:12px;align-items:center}.readiness-row>span{color:var(--navy)}.readiness-row strong{display:block;margin-bottom:6px;font-size:.84rem}.readiness-row em{color:var(--muted);font-style:normal;font-weight:850}.mini-track{height:7px}.blog-card a{color:var(--accent-strong);font-weight:850;line-height:1.35;text-decoration:none}.blog-card p,.blog-card span{margin:0;color:var(--muted);line-height:1.45}.app-footer{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;padding:16px;border-top:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:.84rem}.app-footer a{color:var(--accent-strong);font-weight:850}@media(max-width:1180px){.topbar{grid-template-columns:1fr;padding:12px 16px}.topbar-center,.topbar-actions{justify-content:flex-start}.workspace{grid-template-columns:220px minmax(0,1fr)}.summary-rail{grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.topbar{position:static}.topbar-left,.topbar-actions,.topbar-center{width:100%}.topbar-actions{display:grid;grid-template-columns:40px 1fr 1fr 40px}.workspace{grid-template-columns:1fr}.timeline-rail{min-height:auto;border-right:0;border-bottom:1px solid var(--border)}.timeline-list{grid-auto-flow:column;grid-auto-columns:minmax(180px,1fr);overflow-x:auto}.timeline-list:before{display:none}.timeline-step{min-height:92px;padding:14px 18px}.view-all-button{display:none}.work-panel{border-right:0}.overall-progress,.command-row,.section-title-row{margin-inline:12px}.overall-progress{grid-template-columns:1fr}.command-row{grid-template-columns:1fr;padding:0 0 14px}.filter-selects{display:grid;grid-template-columns:repeat(3,1fr)}.filter-selects button{min-width:0}.task-groups{padding:0 12px 18px}.task-row{grid-template-columns:28px minmax(0,1fr);min-height:auto;padding:14px}.task-copy strong,.task-copy p{white-space:normal}.priority,.task-row time{grid-column:2}.row-action{display:none}.summary-rail{grid-template-columns:1fr;padding:12px}}@media print{.topbar,.timeline-rail,.summary-rail,.app-footer,.command-row{display:none}.workspace{display:block}.work-panel,.task-group,.task-row{border-color:#cbd5e1;box-shadow:none}}
