:root{--navy:#071723;--navy2:#0d293b;--ink:#142b39;--muted:#647d8c;--paper:#f4f8fb;--line:#cddce6;--aqua:#45d3df;--blue:#5978f1;--green:#2e8b62;--green-soft:#e2f3ea;--amber:#b6701d;--amber-soft:#fff1d8;--red:#b83b39;--red-soft:#fbe8e6;--white:#fff;--shadow:0 18px 50px rgba(7,23,35,.08);font-family:"Noto Sans Thai",NotoThai,Arial,sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:linear-gradient(180deg,#eaf2f7 0,#f7fafc 480px)}button,input,select{font:inherit}button,select{cursor:pointer}a{color:inherit}.app-shell{width:min(1560px,calc(100% - 40px));margin:20px auto 44px}
.page-nav{display:flex;flex-wrap:wrap;gap:5px;width:max-content;max-width:100%;margin-top:18px;padding:4px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:rgba(255,255,255,.06)}.page-nav a{padding:7px 12px;color:#bcd0db;border-radius:7px;font-size:12px;font-weight:800;text-decoration:none}.page-nav a.is-active{color:var(--navy);background:var(--aqua)}
.hero{position:relative;overflow:hidden;display:flex;align-items:flex-end;justify-content:space-between;gap:32px;min-height:340px;padding:45px 48px;color:#f6fbff;border-radius:26px;background:radial-gradient(circle at 82% 14%,rgba(69,211,223,.25),transparent 27%),linear-gradient(140deg,var(--navy),#0b3348);box-shadow:0 28px 70px rgba(7,23,35,.26)}.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(89,120,241,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(89,120,241,.06) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(120deg,#000,transparent 75%)}.hero:after{content:"";position:absolute;width:500px;height:500px;right:-230px;top:-280px;border:1px solid rgba(69,211,223,.2);border-radius:50%;box-shadow:0 0 0 70px rgba(69,211,223,.025),0 0 0 140px rgba(69,211,223,.018)}.hero__copy,.hero__actions{position:relative;z-index:1}.brandline{display:flex;align-items:center;gap:14px;font:700 12px/1 Arial,sans-serif;letter-spacing:.16em}.brandline b{padding-left:14px;color:#9ab6c7;border-left:1px solid rgba(255,255,255,.25);font-weight:400;letter-spacing:.08em}.eyebrow,.section-kicker{margin:28px 0 0;color:var(--aqua);font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.section-kicker{margin:0;color:#168b99}.hero h1{max-width:980px;margin:10px 0 14px;font-size:clamp(36px,5vw,68px);line-height:1.07;letter-spacing:-.045em}.hero__lead{max-width:860px;margin:0;color:#c7d9e4;font-size:16px;line-height:1.7}.hero__meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.hero__meta span{padding:7px 11px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.07);font-size:11px;font-weight:700}.hero__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px;min-width:270px}.button{min-height:45px;padding:0 18px;border:0;border-radius:10px;font-weight:800;transition:.18s ease}.button:hover{transform:translateY(-2px)}.button--primary{color:var(--navy);background:var(--aqua);box-shadow:0 12px 26px rgba(69,211,223,.2)}.button--ghost{color:#fff;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.07)}
main{display:grid;gap:18px;margin-top:18px}.summary{display:grid;grid-template-columns:.7fr .7fr 1.5fr 1fr;gap:14px}.metric,.panel,.source-panel{background:#fff;border:1px solid rgba(205,220,230,.9);border-radius:18px;box-shadow:var(--shadow)}.metric{min-height:132px;padding:22px 24px}.metric>span,.metric>div>span{display:block;margin-bottom:9px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.metric strong{color:var(--navy2);font-size:30px;line-height:1}.metric small{display:block;margin-top:8px;color:var(--muted)}.metric--wide{display:flex;flex-direction:column;justify-content:center}.metric--wide>div:first-child{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.metric--wide>div:first-child strong{font-size:24px}.progress-track{height:9px;margin-top:3px;overflow:hidden;border-radius:999px;background:#e5edf2}.progress-track i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--aqua),var(--green));transition:width .3s ease}
.panel{padding:29px}.purpose{display:grid;grid-template-columns:minmax(280px,.85fr) 1.5fr;align-items:center;gap:38px;background:linear-gradient(120deg,#fff,#f1f8fb)}.panel h2{margin:6px 0 0;color:var(--navy);font-size:25px;letter-spacing:-.025em}.purpose>p{margin:0;color:#496272;font-size:16px;line-height:1.8}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;margin-bottom:22px}.section-heading p:not(.section-kicker){margin:7px 0 0;color:var(--muted);font-size:13px}.readiness-legend,.schedule-legend{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:11px}.readiness-legend span{padding:5px 8px;border-radius:6px;background:#edf4f8}.readiness-legend .legend-done{color:var(--green);background:var(--green-soft)}
.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.product-card{padding:21px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(145deg,#fff,#f5f9fc)}.product-card header{display:flex;justify-content:space-between;gap:16px;margin-bottom:15px}.product-card h3{margin:0;color:var(--navy2);font-size:18px}.product-card header p{margin:4px 0 0;color:var(--muted);font-size:11px}.product-score{display:grid;place-items:center;flex:0 0 54px;height:54px;color:var(--navy);border:1px solid #b6d6df;border-radius:50%;background:#e9f9fa;font-size:12px;font-weight:900}.readiness-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.readiness-chip{min-height:36px;padding:5px 8px;color:#4d6674;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:10px;font-weight:800;text-align:left}.readiness-chip[aria-pressed="true"]{color:#176a4a;border-color:#9ccdb4;background:var(--green-soft)}.readiness-chip[aria-pressed="true"]:before{content:"✓ ";font-weight:900}
.role-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.role-grid article{min-height:148px;padding:20px;border-top:3px solid var(--aqua);background:#f6fafc}.role-grid b{color:#168b99;font:700 10px/1 Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase}.role-grid h3{margin:12px 0 7px;color:var(--navy2);font-size:16px}.role-grid p{margin:0;color:#58707e;font-size:13px;line-height:1.6}
.schedule-panel{padding:0;overflow:hidden}.schedule-heading{padding:29px 29px 0}.schedule-legend span{display:flex;align-items:center;gap:5px}.schedule-legend i{width:9px;height:9px;border-radius:50%;background:var(--blue)}.schedule-legend span:last-child i{background:var(--green)}.toolbar{display:flex;align-items:center;gap:9px;padding:14px 29px;border-top:1px solid var(--line);background:#f7fafc}.toolbar input,.toolbar select{height:40px;color:var(--ink);border:1px solid var(--line);border-radius:9px;background:#fff;outline:0}.toolbar input{width:min(390px,38vw);padding:0 12px}.toolbar select{padding:0 30px 0 10px}.toolbar input:focus,.toolbar select:focus{border-color:#3d9fa8;box-shadow:0 0 0 3px rgba(69,211,223,.15)}#resultCount{margin-left:auto;color:var(--muted);font-size:11px;font-weight:700}.table-wrap{overflow:auto}.schedule-table{width:100%;min-width:1480px;border-collapse:separate;border-spacing:0;font-size:11px}.schedule-table thead{position:sticky;top:0;z-index:2}.schedule-table th{height:52px;padding:9px;color:#fff;border-right:1px solid rgba(255,255,255,.12);background:var(--navy2);text-align:left;white-space:nowrap}.schedule-table th:first-child{padding-left:15px}.schedule-table td{height:58px;padding:8px;border-bottom:1px solid #e7edf1;background:#fff;vertical-align:middle}.schedule-table tbody tr:hover td{background:#f6fbfc}.schedule-table tbody tr.is-complete td{background:#f4fbf7}.schedule-table tbody tr.gate-row td{border-top:2px solid #2b647c}.week-gate{display:block;color:#168b99;font-weight:900}.week-gate small{display:block;margin-top:3px;color:var(--muted);font-weight:600}.owner-tag{display:inline-block;padding:4px 7px;color:#5a4a16;border-radius:6px;background:#f7edc7;font-size:9px;font-weight:800}.activity-title{display:block;color:var(--ink);font-weight:800;line-height:1.35}.activity-deliverable{display:block;margin-top:3px;color:var(--muted);font-size:9px;line-height:1.35}.product-label{color:#2a556b;font-weight:700}.dev-feedback{color:#496573;line-height:1.4}.status-select{width:100%;height:33px;padding:0 7px;border:1px solid var(--line);border-radius:7px;background:#fff;font-size:10px}.status-select[data-status="เสร็จสิ้น"]{color:var(--green);border-color:#a9d1ba;background:var(--green-soft)}.status-select[data-status="กำลังดำเนินการ"]{color:var(--amber);border-color:#e6c797;background:var(--amber-soft)}.status-select[data-status="ติดปัญหา"]{color:var(--red);border-color:#e5b7b4;background:var(--red-soft)}.percent-editor{display:flex;align-items:center;gap:3px}.percent-input{width:52px;height:33px;padding:0 4px;border:1px solid var(--line);border-radius:7px;text-align:right}.percent-editor span{color:var(--muted)}.week-col{width:42px;text-align:center!important}.week-cell{min-width:42px;padding:0!important;border-left:1px solid #edf1f4;background:#f8fafc!important}.week-block{display:block;height:15px;margin:0 5px;border-radius:8px;background:var(--blue)}.is-complete .week-block{background:var(--green)}.empty-row td{padding:35px;text-align:center;color:var(--muted)}
.feedback-panel{background:linear-gradient(145deg,#fff,#f3f9fb)}.feedback-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.feedback-timeline article{padding:18px;border:1px solid var(--line);border-radius:13px;background:#fff}.feedback-timeline span,.marketing-grid span{color:#168b99;font:700 10px/1 Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase}.feedback-timeline h3,.marketing-grid h3{margin:10px 0 7px;color:var(--navy2);font-size:15px}.feedback-timeline p,.marketing-grid p{margin:0;color:#5a7180;font-size:12px;line-height:1.55}.feedback-timeline b{display:block;margin-top:13px;color:#274e63;font-size:10px}.feedback-rule{display:flex;align-items:center;gap:20px;margin-top:13px;padding:14px 17px;color:#dce9f2;border-radius:11px;background:var(--navy2);font-size:11px}.feedback-rule strong{flex:0 0 auto;color:var(--aqua)}
.marketing-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);border-radius:14px;overflow:hidden}.marketing-grid article{min-height:145px;padding:20px;background:#fff}.marketing-grid article+article{border-left:1px solid var(--line)}.marketing-grid article:nth-child(even){background:#f5f9fc}.gate-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;gap:10px;align-items:center}.gate-flow article{min-height:110px;padding:18px;border:1px solid var(--line);border-radius:13px;background:#f4f9fb}.gate-flow article span{color:#168b99;font:700 10px/1 Arial,sans-serif;letter-spacing:.1em}.gate-flow article strong,.gate-flow article small{display:block}.gate-flow article strong{margin-top:10px;color:var(--navy2);font-size:14px}.gate-flow article small{margin-top:4px;color:var(--muted);line-height:1.4}.gate-flow>i{color:#8eabb8;font-style:normal;font-size:18px}.source-panel{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:22px 28px}.source-panel p:not(.section-kicker){margin:5px 0 0;color:var(--muted)}.source-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.source-links a{padding:6px 9px;color:#1a6875;border:1px solid #c3dce1;border-radius:7px;background:#effafb;font-size:10px;font-weight:800;text-decoration:none}footer{display:flex;justify-content:space-between;padding:20px 4px 0;color:var(--muted);font-size:10px}.pdf-only{display:none}.toast{position:fixed;right:22px;bottom:22px;z-index:10;max-width:390px;padding:13px 16px;color:#fff;border-radius:9px;background:var(--navy);box-shadow:0 12px 30px rgba(0,0,0,.24);opacity:0;transform:translateY(12px);pointer-events:none;transition:.2s ease}.toast.is-visible{opacity:1;transform:translateY(0)}

/* Large-format timeline roadmap */
.roadmap-overview{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:8px 29px 28px}.roadmap-overview:before{content:"";position:absolute;left:12%;right:12%;top:33px;height:3px;background:linear-gradient(90deg,var(--aqua),var(--blue));z-index:0}.roadmap-overview article{position:relative;z-index:1;min-height:230px;padding:20px;border:1px solid var(--line);border-radius:16px;background:#fff}.roadmap-marker{display:grid;place-items:center;width:50px;height:50px;margin-bottom:17px;color:var(--navy);border:5px solid #fff;border-radius:50%;background:var(--aqua);box-shadow:0 0 0 1px #8fdde4;font:900 19px/1 Arial,sans-serif}.roadmap-overview article>span{color:#168b99;font-size:13px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.roadmap-overview h3{margin:7px 0 9px;color:var(--navy);font-size:21px}.roadmap-overview p{min-height:55px;margin:0;color:#526b79;font-size:14px;line-height:1.55}.roadmap-overview b,.roadmap-overview small{display:block}.roadmap-overview b{margin-top:15px;color:#284f63;font-size:13px}.roadmap-overview small{margin-top:5px;color:var(--muted);font-size:12px}.roadmap-weeks{display:grid;gap:26px;padding:29px;background:#edf4f8;border-top:1px solid var(--line)}.roadmap-week{overflow:hidden;border:1px solid #bed2df;border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(7,23,35,.07)}.roadmap-week__header{display:grid;grid-template-columns:auto 1fr minmax(230px,.55fr);align-items:center;gap:20px;padding:23px 25px;color:#fff;background:linear-gradient(120deg,var(--navy),var(--navy2))}.week-badge{display:grid;place-items:center;width:76px;height:76px;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(69,211,223,.09)}.week-badge span{font:700 9px/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}.week-badge strong{color:var(--aqua);font:900 31px/1 Arial,sans-serif}.week-title p{margin:0;color:var(--aqua);font-size:12px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.week-title h3{margin:4px 0 5px;font-size:28px;letter-spacing:-.02em}.week-title>span{color:#bad0dc;font-size:14px}.week-feedback{padding:14px 16px;border-left:3px solid var(--aqua);background:rgba(255,255,255,.07)}.week-feedback b,.week-feedback span{display:block}.week-feedback b{margin-bottom:5px;color:var(--aqua);font-size:11px;letter-spacing:.07em;text-transform:uppercase}.week-feedback span{font-size:14px;line-height:1.4}.workstream-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:22px}.workstream-card{align-self:start;border:1px solid var(--line);border-radius:14px;background:#f8fbfd}.workstream-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 17px;border-bottom:1px solid var(--line);background:#eef6f9}.workstream-card h4{margin:0;color:var(--navy2);font-size:18px}.workstream-card>header span{padding:4px 8px;color:#176b77;border-radius:999px;background:#d9f4f5;font-size:11px;font-weight:900}.workstream-tasks{display:grid;gap:12px;padding:14px}.roadmap-task{padding:16px;border:1px solid #dbe6ec;border-radius:12px;background:#fff;box-shadow:0 5px 14px rgba(7,23,35,.04)}.roadmap-task.is-complete{border-color:#9ccbb4;background:#f3fbf6}.task-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.task-number{color:#168b99;font:900 13px/1 Arial,sans-serif;letter-spacing:.08em}.product-pill{padding:4px 8px;color:#335a6d;border-radius:6px;background:#e9f1f6;font-size:11px;font-weight:800}.roadmap-task h5{margin:10px 0 8px;color:var(--ink);font-size:16px;line-height:1.45}.roadmap-task>p{margin:0;color:#566f7e;font-size:14px;line-height:1.55}.roadmap-task>p strong{display:block;margin-bottom:2px;color:#274f63;font-size:11px;letter-spacing:.06em;text-transform:uppercase}.dev-checkpoint{margin-top:12px;padding:10px 12px;color:#415d6c;border-left:3px solid var(--aqua);background:#eff9fa;font-size:13px;line-height:1.45}.dev-checkpoint span{display:block;margin-bottom:3px;color:#168b99;font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.task-controls{display:flex;align-items:center;gap:9px;margin-top:13px;padding-top:12px;border-top:1px solid #e5edf1}.task-controls .status-select{height:38px;font-size:13px}.task-controls .percent-input{width:68px;height:38px;font-size:13px}.empty-roadmap{padding:50px;color:var(--muted);font-size:16px;text-align:center}
@media(max-width:1040px){.app-shell{width:calc(100% - 24px);margin-top:12px}.hero{align-items:flex-start;flex-direction:column;padding:34px 29px}.summary{grid-template-columns:repeat(2,1fr)}.purpose{grid-template-columns:1fr}.role-grid{grid-template-columns:repeat(2,1fr)}.feedback-timeline,.marketing-grid{grid-template-columns:repeat(2,1fr)}.marketing-grid article+article{border-left:0;border-top:1px solid var(--line)}.marketing-grid article:nth-child(2){border-left:1px solid var(--line);border-top:0}.marketing-grid article:nth-child(4){border-left:1px solid var(--line)}.gate-flow{grid-template-columns:1fr}.gate-flow>i{display:none}.roadmap-overview{grid-template-columns:repeat(2,1fr)}.roadmap-overview:before{display:none}.roadmap-week__header{grid-template-columns:auto 1fr}.week-feedback{grid-column:1/-1}.workstream-grid{grid-template-columns:1fr}}
@media(max-width:650px){.hero h1{font-size:34px}.hero__lead{font-size:14px}.summary,.product-grid,.role-grid,.feedback-timeline,.marketing-grid,.roadmap-overview{grid-template-columns:1fr}.readiness-chips{grid-template-columns:repeat(2,1fr)}.toolbar{align-items:stretch;flex-direction:column;padding:14px 20px}.toolbar input,.toolbar select{width:100%}#resultCount{margin-left:0}.section-heading,.source-panel,footer{align-items:flex-start;flex-direction:column}.source-links{justify-content:flex-start}.feedback-rule{align-items:flex-start;flex-direction:column;gap:7px}.marketing-grid article+article,.marketing-grid article:nth-child(2),.marketing-grid article:nth-child(4){border-left:0;border-top:1px solid var(--line)}.roadmap-overview{padding:8px 20px 22px}.roadmap-overview article{min-height:0}.roadmap-week__header{grid-template-columns:1fr;padding:20px}.week-badge{width:62px;height:62px}.week-feedback{grid-column:auto}.workstream-grid{padding:13px}.roadmap-task h5{font-size:17px}}

@media print{
  .schedule-panel{overflow:visible!important}.roadmap-overview{grid-template-columns:repeat(4,1fr);gap:7px;padding:5px 10px 10px}.roadmap-overview:before{display:block;top:20px}.roadmap-overview article{min-height:145px;padding:9px;border-radius:5px}.roadmap-marker{width:30px;height:30px;margin-bottom:8px;border-width:3px;font-size:11px}.roadmap-overview article>span{font-size:7px}.roadmap-overview h3{margin:3px 0 5px;font-size:11px}.roadmap-overview p{min-height:36px;font-size:8px;line-height:1.35}.roadmap-overview b{margin-top:6px;font-size:7px}.roadmap-overview small{margin-top:2px;font-size:7px}.roadmap-weeks{display:block;padding:0;background:#fff;border:0}.roadmap-week{break-before:page;overflow:visible;margin:0;border-radius:0;box-shadow:none}.roadmap-week__header{grid-template-columns:auto 1fr 260px;gap:12px;padding:12px 15px}.week-badge{width:52px;height:52px}.week-badge span{font-size:6px}.week-badge strong{font-size:21px}.week-title p{font-size:7px}.week-title h3{margin:2px 0;font-size:18px}.week-title>span{font-size:9px}.week-feedback{grid-column:auto;padding:8px 10px}.week-feedback b{font-size:6px}.week-feedback span{font-size:9px}.workstream-grid{grid-template-columns:repeat(2,1fr);gap:8px;padding:10px}.workstream-card{break-inside:avoid;border-radius:5px}.workstream-card>header{padding:7px 9px}.workstream-card h4{font-size:11px}.workstream-card>header span{font-size:7px}.workstream-tasks{gap:6px;padding:7px}.roadmap-task{break-inside:avoid;padding:8px;border-radius:5px;box-shadow:none}.task-number{font-size:8px}.product-pill{padding:2px 4px;font-size:7px}.roadmap-task h5{margin:5px 0 4px;font-size:10px;line-height:1.3}.roadmap-task>p{font-size:8px;line-height:1.35}.roadmap-task>p strong,.dev-checkpoint span{font-size:6px}.dev-checkpoint{margin-top:5px;padding:5px 7px;font-size:8px}.task-controls{margin-top:5px;padding-top:5px}.task-controls .status-select,.task-controls .percent-input{height:auto;font-size:8px}.task-controls .percent-input{width:32px}
}
@page{size:A4 landscape;margin:8mm}@media print{:root,body{background:#fff}body{-webkit-print-color-adjust:exact;print-color-adjust:exact}.app-shell{width:100%;margin:0}.no-print,footer,.toast,.purpose,.role-grid,.parallel-plan{display:none!important}.pdf-only{display:grid}.hero{min-height:auto;padding:14px 17px;border-radius:0;box-shadow:none}.brandline{font-size:8px}.eyebrow{margin-top:10px;font-size:8px}.hero h1{margin:4px 0;font-size:24px}.hero__lead{font-size:9px;line-height:1.4}.hero__meta{margin-top:7px}.hero__meta span{padding:3px 6px;font-size:7px}main{gap:7px;margin-top:7px}.summary{grid-template-columns:.7fr .7fr 1.5fr 1fr;gap:6px}.metric{min-height:65px;padding:8px 10px;border-radius:6px;box-shadow:none}.metric>span,.metric>div>span{margin-bottom:4px;font-size:7px}.metric strong{font-size:18px}.metric small{margin-top:3px;font-size:7px}.progress-track{height:5px}.panel,.source-panel{padding:10px;border-radius:6px;box-shadow:none}.section-heading{margin-bottom:8px}.section-kicker{font-size:7px}.panel h2{font-size:15px}.section-heading p:not(.section-kicker),.readiness-legend,.schedule-legend{display:none}.product-grid{grid-template-columns:repeat(2,1fr);gap:6px}.product-card{padding:8px;border-radius:5px}.product-card h3{font-size:10px}.product-card header{margin-bottom:5px}.product-card header p{font-size:6px}.product-score{width:30px;height:30px;flex-basis:30px;font-size:7px}.readiness-chips{grid-template-columns:repeat(3,1fr);gap:3px}.readiness-chip{min-height:18px;padding:2px 3px;border-radius:3px;font-size:6px}.schedule-panel{padding:0;overflow:visible}.schedule-heading{padding:8px 10px 5px}.table-wrap{overflow:visible}.schedule-table{min-width:0;font-size:6px}.schedule-table thead{position:static;display:table-header-group}.schedule-table th{height:23px;padding:3px;font-size:5.5px}.schedule-table th:first-child{padding-left:3px}.schedule-table td{height:24px;padding:2px}.week-gate small,.activity-deliverable{font-size:5px}.owner-tag{padding:1px 2px;font-size:5px}.status-select,.percent-input{height:auto;padding:0;border:0;background:transparent!important;font-size:6px;appearance:none}.percent-input{width:21px}.week-col{width:3%}.week-cell{min-width:0}.week-block{height:6px;margin:0 1px}.feedback-panel{break-before:page}.feedback-timeline{grid-template-columns:repeat(4,1fr);gap:5px}.feedback-timeline article{padding:8px;border-radius:5px}.feedback-timeline span,.marketing-grid span{font-size:6px}.feedback-timeline h3{margin:5px 0 3px;font-size:9px}.feedback-timeline p,.feedback-timeline b{font-size:6px}.feedback-rule{padding:7px;font-size:6px}.gate-flow{grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;gap:4px}.gate-flow>i{display:block;font-size:8px}.gate-flow article{min-height:58px;padding:6px;border-radius:4px}.gate-flow article span{font-size:5px}.gate-flow article strong{margin-top:4px;font-size:8px}.gate-flow article small{font-size:5px}.signature-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}.signature-grid div{text-align:center}.signature-grid span{font-size:8px;font-weight:800}.signature-grid i{display:block;margin:22px 0 4px;border-top:1px solid #607782}.signature-grid small{font-size:6px}.source-panel{margin-top:6px}.source-panel p:not(.section-kicker),.source-links a{font-size:6px}}

/* Balanced readability: compact enough for the roadmap, never tiny on screen. */
body,body *{font-size:14px!important}
:where(body,p,span,small,a,button,label,input,select,textarea,option,td,th,li,b,strong){line-height:1.5}
:where(p,li,button,input,select,textarea,td,th){font-size:15px!important}
:where(button,input,select,textarea){min-height:42px}
h1{font-size:clamp(38px,5vw,64px)!important}
h2{font-size:30px!important;line-height:1.2}
h3{font-size:24px!important;line-height:1.25}
h4{font-size:20px!important;line-height:1.3}
h5{font-size:17px!important;line-height:1.4}
.metric strong,.product-score,.week-badge strong,.calendar-week__number{font-size:28px!important}
.product-label{display:inline-block;padding:6px 9px;border:1px solid transparent;border-radius:8px;font-weight:800;line-height:1.3;white-space:normal}
.product--centralized{color:#1e3a8a;border-color:#93c5fd;background:#dbeafe}
.product--pos{color:#9a3412;border-color:#fdba74;background:#ffedd5}
.product--cpc{color:#5b21b6;border-color:#c4b5fd;background:#ede9fe}
.product--crm{color:#166534;border-color:#86efac;background:#dcfce7}
.product--all{color:#334155;border-color:#cbd5e1;background:#e2e8f0}
.resource-panel{background:linear-gradient(145deg,#fff,#f3f8fb)}
.capacity-badge{padding:7px 10px;color:#9a3412;border:1px solid #fdba74;border-radius:8px;background:#ffedd5;font-weight:900;white-space:nowrap}
.resource-alert{display:flex;align-items:flex-start;gap:18px;margin-bottom:18px;padding:16px 18px;color:#dcecf2;border-left:5px solid var(--aqua);border-radius:10px;background:var(--navy2)}.resource-alert strong{flex:0 0 auto;color:var(--aqua)}
.orchestrator-strip{display:grid;grid-template-columns:minmax(210px,.7fr) 1.5fr auto;align-items:center;gap:18px;margin-bottom:18px;padding:14px 16px;border:1px solid #9bcfd5;border-radius:11px;background:#eafafb}.orchestrator-strip span{color:#137985;font-weight:900}.orchestrator-strip strong{color:var(--navy2)}.orchestrator-strip small{color:var(--muted);font-weight:800}
.resource-table-wrap{border:1px solid var(--line);border-radius:12px;background:#fff}.resource-table{width:100%;min-width:1050px;border-collapse:collapse}.resource-table th{padding:12px;color:#fff;background:#173b50;text-align:left}.resource-table td{padding:12px;border-bottom:1px solid #e2eaf0;vertical-align:middle}.resource-table tr:last-child td{border-bottom:0}.resource-table tbody tr:hover{background:#f5fafc}
.capacity-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px}.capacity-grid article{padding:16px;border:1px solid var(--line);border-radius:12px;background:#fff}.capacity-grid article.is-critical{border-color:#f0bb75;background:#fff8eb}.capacity-grid article.is-orchestrator{border-color:#9bcfd5;background:#effafb}.capacity-grid span,.capacity-grid strong{display:block}.capacity-grid span{color:#168b99;font-weight:900}.capacity-grid strong{margin-top:7px;color:var(--navy2)}.capacity-grid p{margin:7px 0 0;color:var(--muted)}
.product-lead{display:inline-block;margin:5px 0 2px;padding:3px 7px;color:#176b77;border-radius:6px;background:#e1f6f7;font-weight:900}
.resource-preview{display:grid;grid-template-columns:1.4fr auto auto;align-items:center;gap:24px;background:linear-gradient(120deg,#fff,#edf9fa)}.resource-preview h2{margin:5px 0}.resource-preview p:not(.section-kicker){margin:7px 0 0;color:var(--muted)}.resource-preview__stats{display:flex;gap:8px}.resource-preview__stats span{display:grid;place-items:center;min-width:62px;padding:8px;color:#496573;border:1px solid #c5dce3;border-radius:10px;background:#fff;font-weight:800}.resource-preview__stats b{color:#168b99}.button--resource{display:grid;place-items:center;min-height:46px;padding:0 17px;color:#fff;border-radius:10px;background:var(--navy2);font-weight:900;text-decoration:none}
@media(min-width:1041px){.feedback-timeline,.marketing-grid{grid-template-columns:repeat(5,1fr)}.gate-flow{grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr}.schedule-table{min-width:1550px}}
.analytics-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:18px}
.chart-card{min-width:0;padding:24px 26px}
.chart-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}
.chart-heading h2{margin-top:5px}
.chart-heading>span{padding:6px 9px;color:#496573;border-radius:8px;background:#edf4f8;font-weight:800;white-space:nowrap}
.chart-legend{display:flex;gap:12px;color:var(--muted);font-weight:800}
.chart-legend span{display:flex;align-items:center;gap:6px;white-space:nowrap}
.chart-legend i{width:12px;height:12px;border-radius:3px}.legend-plan{background:var(--navy2)}.legend-actual{background:var(--aqua)}
.readiness-chart{display:grid;gap:17px}
.readiness-row{--chart-color:var(--blue);display:grid;grid-template-columns:minmax(170px,.75fr) 1.25fr;align-items:center;gap:18px}
.readiness-row__label{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.readiness-row__label strong{color:var(--navy2)}.readiness-row__label span{color:var(--muted);font-weight:800;white-space:nowrap}
.readiness-bar{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;height:22px;padding:3px;border-radius:8px;background:#e8eef2}
.readiness-segment{border-radius:5px;background:#d2dde4;transition:.2s ease}.readiness-segment.is-ready{background:var(--chart-color)}
.chart--centralized{--chart-color:#3b82f6}.chart--pos{--chart-color:#f59e0b}.chart--cpc{--chart-color:#8b5cf6}.chart--crm{--chart-color:#22a55b}
.weekly-chart{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;height:245px;padding:25px 12px 0;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to top,transparent 0,transparent 49px,#e5edf2 50px)}
.weekly-group{display:grid;grid-template-rows:1fr auto auto;gap:5px;min-width:0;text-align:center}.weekly-bars{display:flex;align-items:flex-end;justify-content:center;gap:8px;min-height:175px}.weekly-bar{position:relative;width:min(38px,42%);height:var(--bar-height);min-height:2px;border-radius:7px 7px 2px 2px;transition:height .25s ease}.weekly-bar span{position:absolute;left:50%;top:-24px;transform:translateX(-50%);font-weight:900}.bar-plan{color:var(--navy2);background:var(--navy2)}.bar-actual{color:#137985;background:linear-gradient(180deg,var(--aqua),#28a8b4)}
.weekly-group>strong{color:var(--navy2)}.weekly-group>small{color:var(--muted);font-weight:700}.chart-note{margin:14px 0 0;color:var(--muted);text-align:center}
@media(max-width:1040px){.analytics-grid{grid-template-columns:1fr}}
@media(max-width:1040px){.capacity-grid{grid-template-columns:repeat(2,1fr)}.orchestrator-strip{grid-template-columns:1fr}}
@media(max-width:1040px){.resource-preview{grid-template-columns:1fr}.resource-preview__stats{flex-wrap:wrap}}
@media(max-width:650px){.chart-card{padding:20px}.chart-heading,.readiness-row{grid-template-columns:1fr;flex-direction:column}.readiness-row{gap:7px}.weekly-chart{gap:8px}.weekly-bars{gap:4px}.resource-alert{flex-direction:column;gap:5px}.capacity-badge{align-self:flex-start}.capacity-grid{grid-template-columns:1fr}.resource-preview__stats{display:grid;grid-template-columns:repeat(2,1fr)}.resource-preview__stats span{min-width:0}}
.roadmap-task,.workstream-card,.roadmap-overview article{overflow-wrap:anywhere}
@media print{
  body,body *{font-size:10.5pt!important}
  :where(body,p,span,small,a,button,label,input,select,textarea,option,td,th,li,b,strong){line-height:1.3}
  :where(p,li,button,input,select,textarea,td,th){font-size:11pt!important}
  h1{font-size:28pt!important}h2{font-size:22pt!important}h3{font-size:18pt!important}h4{font-size:15pt!important}h5{font-size:13pt!important}
  .metric strong,.product-score,.week-badge strong,.calendar-week__number{font-size:18pt!important}
  .analytics-grid{grid-template-columns:1fr 1fr;gap:6px}.chart-card{break-inside:avoid;padding:8px}.chart-heading{margin-bottom:8px}.readiness-chart{gap:6px}.readiness-row{grid-template-columns:1fr;gap:2px}.readiness-bar{height:13px}.weekly-chart{height:155px;padding-top:18px}.weekly-bars{min-height:100px}.chart-note{margin-top:5px}
  .resource-panel{break-before:page}.resource-alert{padding:8px}.resource-table{min-width:0}.resource-table th,.resource-table td{padding:5px}.capacity-grid{grid-template-columns:repeat(4,1fr);gap:5px}.capacity-grid article{padding:7px}
  .feedback-timeline,.marketing-grid{grid-template-columns:repeat(5,1fr)}.gate-flow{grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr}
  .roadmap-week,.roadmap-task,.workstream-card{break-inside:auto}
  .workstream-grid{grid-template-columns:1fr}
}
