*{box-sizing:border-box}body{margin:0;font:15px/1.7 system-ui,sans-serif;background:#f4f6f8;color:#102b40}header{background:#001b44;color:white;padding:18px 5%;display:flex;justify-content:space-between;gap:20px}a{color:inherit;text-underline-offset:4px}main{max-width:1500px;margin:auto;padding:32px 4%}h1{font-size:clamp(38px,6vw,76px);line-height:1.05;letter-spacing:-.03em;margin:24px 0}h2{font-size:27px;line-height:1.3}h3{font-size:17px}section{margin-bottom:38px}.hero{background:#001b44;color:#f3ecdd;border-radius:20px;padding:42px}.eyebrow{font-size:12px;letter-spacing:.15em}.hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:32px}.hero-stats strong{font-size:35px;display:block}.hero-stats span{font-size:13px}.controls{display:flex;align-items:end;flex-wrap:wrap;gap:14px;margin-bottom:15px}label{display:grid;gap:6px;font-weight:600}input,select,button{font:inherit;padding:10px 12px;border:1px solid #bdcbd6;background:white;border-radius:6px;color:#102b40}button{cursor:pointer}button:hover{background:#e3edf5}.note{padding:16px 20px;border-left:4px solid #a4937b;background:#ede9e2;font-size:14px}.weekly>div{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.weekly article{padding:16px;background:white;border-radius:10px;border-top:4px solid #146e9b}.weekly span{font-weight:800;font-size:20px}.weekly p{font-size:13px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:20px}.section-title p{font-size:13px}.legend{display:inline-block;width:25px;height:10px;background:#147ca0}.table-scroll{overflow:auto;border:1px solid #ced8e0;border-radius:10px;background:white}table{border-collapse:collapse;width:100%;min-width:960px;table-layout:fixed}thead th{background:#102b40;color:white;padding:15px 7px;text-align:center}thead th:first-child{width:40%;text-align:left;padding-left:18px}thead th:last-child{width:140px}thead small{display:block;font-size:10px;font-weight:400;white-space:nowrap}tbody th{padding:13px 17px;text-align:left;font-weight:500}td,th{border-bottom:1px solid #e0e6ec}tbody tr:hover{background:#f1f6fa}.group-label{background:#dce8f1!important;padding:13px 18px;font-weight:800;color:#001b44}.task-id{font-size:11px;background:#e7edf1;padding:2px 5px;border-radius:4px}summary{cursor:pointer}details p{font-size:13px;line-height:1.7;font-weight:400}.owner{display:block;color:#526d80;font-size:11px;margin-top:6px}.week-cell{text-align:center;border-left:1px solid #e5ebf0;color:#147ca0}.week-cell.active{background:#d2edf3}.week-cell.active span{background:#147ca0;color:white;display:block;padding:6px 0;font-size:10px}.week-cell+td select{width:128px;font-size:12px;margin:4px}tr[data-state=done] .active span{background:#24835a}tr[data-state=blocked] .active span{background:#bb5c29}.budget-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.budget article,.decisions article{background:white;padding:22px;border:1px solid #d9e1e7;border-radius:10px}.budget strong{font-size:22px;color:#005f86}.budget p{font-size:14px}.decisions{display:grid;gap:15px}footer{display:flex;gap:25px;flex-wrap:wrap;border-top:1px solid #ccd5dc;padding:25px 0;font-size:13px}[hidden]{display:none!important}:focus-visible{outline:3px solid #f2a33a;outline-offset:3px}@media(max-width:800px){main{padding:20px 4%}.hero{padding:25px}.weekly>div{grid-template-columns:repeat(2,1fr)}.budget-grid{grid-template-columns:1fr 1fr}.section-title{display:block}.hero-stats{grid-template-columns:repeat(2,1fr)}.controls label{width:100%}}@media print{@page{size:A3 landscape;margin:10mm}body{font-size:10px;background:white}main{max-width:none;padding:0}header,.controls,footer{display:none}.hero{padding:10px;color:#102b40;background:white}h1{font-size:26px;margin:5px 0}.hero-stats{display:none}section{margin-bottom:15px}.weekly>div{grid-template-columns:repeat(6,1fr)}.weekly article{padding:5px}.table-scroll{overflow:visible}table{min-width:0;font-size:10px}tbody th{padding:5px}thead th{padding:7px}.owner{font-size:9px}.week-cell.active{background:#d2edf3!important;print-color-adjust:exact}.week-cell.active span{print-color-adjust:exact}tbody tr{break-inside:avoid}select{font-size:9px;padding:2px}.budget-grid{grid-template-columns:repeat(4,1fr)}.budget article,.decisions article{padding:9px}.note{padding:6px}h2{font-size:18px}h3{font-size:13px}}
