.roadmap-workspace { --roadmap-gap:16px; }
.roadmap-card-schedule { margin-top:12px; padding-top:10px; border-top:1px solid var(--border); }
.roadmap-card-schedule>strong { font-size:16px; color:var(--cyan); }
.roadmap-staffing { border:1px solid var(--border); background:var(--surface); padding:22px; }
.roadmap-staffing>header { display:flex; gap:18px; justify-content:space-between; align-items:center; margin-bottom:20px; }
.roadmap-staffing h4 { font:600 25px/1.2 Rajdhani,sans-serif; margin:4px 0; }
.roadmap-staffing header small { color:var(--amber); }
.roadmap-staffing p { font:400 16px/1.45 Rajdhani,sans-serif; letter-spacing:0; }
.roadmap-staffing header p { margin:0; color:var(--quiet); }
.roadmap-staffing-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:28px; }
.roadmap-crew { border:0; padding:0; margin:0; min-width:0; }
.roadmap-crew legend,.roadmap-delivery h5 { font:600 20px/1.2 Rajdhani,sans-serif; margin:0 0 16px; padding:0; }
.roadmap-team-mode { display:grid; grid-template-columns:100px minmax(0,1fr); gap:10px; align-items:center; font:500 16px Rajdhani,sans-serif; }
.roadmap-team-mode select { width:100%; min-width:0; border:1px solid var(--border); background:var(--surface-alt); color:var(--copy); font:500 16px Rajdhani,sans-serif; padding:10px; }
.roadmap-crew-count { margin:12px 0 7px; color:var(--quiet); }
.roadmap-people { max-height:215px; overflow:auto; border:1px solid var(--border); }
.roadmap-people[hidden] { display:none; }
.roadmap-people label,.roadmap-priority { display:flex; gap:12px; align-items:center; padding:12px; cursor:pointer; font:500 16px Rajdhani,sans-serif; }
.roadmap-people label+label { border-top:1px solid var(--border); }
.roadmap-people label:has(input:checked) { background:color-mix(in srgb,var(--cyan) 8%,var(--surface)); }
.roadmap-people input,.roadmap-priority input { width:18px; height:18px; flex:0 0 18px; accent-color:var(--amber); }
.roadmap-people span,.roadmap-priority span { min-width:0; }
.roadmap-people strong,.roadmap-people small,.roadmap-priority strong,.roadmap-priority small { display:block; overflow-wrap:anywhere; }
.roadmap-people small,.roadmap-priority small { color:var(--quiet); font-size:14px; }
.roadmap-priority { border:1px solid var(--border); margin-top:16px; background:var(--surface-alt); }
.roadmap-priority:has(input:checked) { border-color:var(--amber); }
.roadmap-plan-status { display:block; color:var(--quiet); margin-top:9px; font:400 14px Rajdhani,sans-serif; }
.roadmap-delivery { min-width:0; border-left:1px solid var(--border); padding-left:28px; }
.roadmap-delivery>p { margin-top:-7px; color:var(--quiet); }
.roadmap-date-card { border:1px solid var(--border); padding:14px; margin:0 0 10px; background:var(--surface-alt); }
.roadmap-date-card.priority { border-left:3px solid var(--amber); }
.roadmap-date-card>div:first-child { display:flex; align-items:center; justify-content:space-between; gap:10px; font:600 18px Rajdhani,sans-serif; }
.roadmap-date-card>div:first-child>small { color:var(--quiet); font:500 11px Rajdhani,sans-serif; }
.roadmap-date-card.priority>div:first-child>small { color:var(--amber); }
.roadmap-date-change { display:flex; gap:10px; align-items:center; flex-wrap:wrap; font:500 17px Rajdhani,sans-serif; margin:10px 0 4px; }
.roadmap-date-change span,.roadmap-date-change b { color:var(--quiet); }
.roadmap-date-change strong { color:var(--cyan); }
.roadmap-date-card>small { color:var(--quiet); font:400 14px Rajdhani,sans-serif; }
.roadmap-date-card p { margin:8px 0 0; font-size:14px; color:var(--quiet); }
.roadmap-date-card .late,.roadmap-card-schedule>.late,.roadmap-date-card .roadmap-risk { color:var(--bad); }
.roadmap-schedule-actions { display:flex; align-items:center; gap:14px; border-top:1px solid var(--border); padding-top:17px; margin-top:20px; }
.roadmap-schedule-actions span,.roadmap-schedule-actions p { color:var(--quiet); font:400 15px Rajdhani,sans-serif; }
.roadmap-agreement { margin-top:18px; padding-top:16px; border-top:1px solid var(--border); }
.roadmap-agreement summary { cursor:pointer; font:500 16px Rajdhani,sans-serif; color:var(--quiet); }
@media(max-width:900px){.roadmap-staffing-grid{grid-template-columns:1fr;gap:22px}.roadmap-delivery{padding:20px 0 0;border-left:0;border-top:1px solid var(--border)}.roadmap-staffing>header{align-items:flex-start}.roadmap-schedule-actions{flex-wrap:wrap}}
@media(max-width:480px){.roadmap-staffing{padding:16px}.roadmap-staffing>header{display:block}.roadmap-team-mode{grid-template-columns:1fr}.roadmap-date-change{font-size:16px}}
.roadmap-release { padding:22px; border:1px solid var(--border); background:var(--surface); }
.roadmap-release header { display:flex; gap:20px; justify-content:space-between; align-items:center; }
.roadmap-release header small { color:var(--cyan); font:600 14px Rajdhani,sans-serif; }
.roadmap-release h4 { margin:4px 0; font:600 26px/1.2 Rajdhani,sans-serif; }
.roadmap-release header p { margin:0; color:var(--quiet); }
.roadmap-release p { font:400 16px/1.5 Rajdhani,sans-serif; letter-spacing:0; }
.roadmap-release-report { border-top:1px solid var(--border); padding-top:18px; margin-top:20px; }
.roadmap-release-report>strong { color:var(--cyan); font:600 17px Rajdhani,sans-serif; }
.roadmap-release-report>small { color:var(--quiet); font:400 14px/1.5 Rajdhani,sans-serif; }
.roadmap-release>details { margin-top:20px; padding-top:15px; border-top:1px solid var(--border); }
.roadmap-release summary { cursor:pointer; color:var(--quiet); font:500 16px Rajdhani,sans-serif; }
.roadmap-focus .product-identity { min-height:86px; gap:16px; }
.roadmap-focus .product-identity-art { width:110px; min-width:110px; height:86px; }
.roadmap-focus .product-identity-art .product-illustration { width:110px; height:110px; }
.roadmap-focus .product-identity-copy { padding:9px 0; }
.roadmap-focus .product-identity h3 { font-size:25px; margin:4px 0 1px; }
.roadmap-focus .product-identity-metric>strong { font-size:23px; }
.roadmap-focus .product-focus-toolbar { margin-bottom:10px; }
.roadmap-focus .studio-view-tabs { margin-bottom:16px; }
.customer-roadmap-link { display:flex; gap:15px; align-items:center; justify-content:space-between; width:100%; padding:12px 16px; margin:14px 0; border:1px solid var(--border); background:var(--surface-alt); color:var(--copy); font:500 16px Rajdhani,sans-serif; cursor:pointer; text-align:left; }
.customer-roadmap-link strong { color:var(--amber); font-weight:600; }
.roadmap-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:0 0 20px; }
.roadmap-heading h3 { margin:0 0 3px; font:600 28px/1.15 Rajdhani,sans-serif; }
.roadmap-heading p { margin:0; color:var(--quiet); font:400 16px/1.4 Rajdhani,sans-serif; letter-spacing:0; }
.roadmap-team-summary { display:flex; gap:20px; align-items:center; font:500 17px Rajdhani,sans-serif; }
.roadmap-team-summary strong { font-weight:500; color:var(--cyan); }
.roadmap-board { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--roadmap-gap); margin-bottom:20px; }
.roadmap-lane { background:color-mix(in srgb,var(--surface) 55%,transparent); border:1px solid var(--border); padding:12px; min-width:0; }
.roadmap-lane h4 { margin:0 0 12px; display:flex; align-items:center; gap:9px; font:600 18px Rajdhani,sans-serif; }
.roadmap-lane h4 small { margin-left:auto; color:var(--quiet); font:500 14px Rajdhani,sans-serif; }
.roadmap-lane-dot { width:7px; height:7px; background:var(--quiet); }
.roadmap-lane-dot.working { background:var(--cyan); }
.roadmap-cards { display:grid; gap:10px; }
.roadmap-lane-empty { margin:15px 5px 24px; color:var(--quiet); font:15px/1.45 Rajdhani,sans-serif; min-height:62px; }
.roadmap-card { display:block; text-align:left; width:100%; border:1px solid var(--border); border-left:3px solid var(--cyan); background:var(--surface); padding:15px; color:var(--copy); cursor:pointer; font:500 16px/1.35 Rajdhani,sans-serif; transition:border-color .18s,background .18s; }
.roadmap-card:hover,.roadmap-card.selected { border-color:var(--amber); background:color-mix(in srgb,var(--amber) 4%,var(--surface)); }
.roadmap-card:focus-visible,.roadmap-archive-row:focus-visible { outline:2px solid var(--amber); outline-offset:3px; }
.roadmap-card-top { display:flex; gap:12px; align-items:center; }
.roadmap-initials { flex:0 0 36px; height:36px; display:grid; place-items:center; border-radius:50%; background:var(--surface-alt); color:var(--cyan); font:600 15px Rajdhani,sans-serif; border:1px solid var(--border); }
.roadmap-card-top>div { min-width:0; }
.roadmap-card strong,.roadmap-card small { display:block; overflow-wrap:anywhere; }
.roadmap-card strong { font:600 19px/1.15 Rajdhani,sans-serif; margin-top:3px; }
.roadmap-card small { color:var(--quiet); font-size:14px; }
.roadmap-card p { margin:12px 0 0; font-size:14px; color:var(--quiet); }
.roadmap-card-action { display:block; margin-top:13px; font:600 14px/1.3 Rajdhani,sans-serif; color:var(--amber); }
.roadmap-card-action.late,.roadmap-risk { color:var(--bad); }
.roadmap-progress { height:6px; background:var(--surface-alt); overflow:hidden; margin-top:13px; }
.roadmap-progress>span { height:100%; display:block; background:var(--cyan); transition:width .6s ease; }
.roadmap-discussion { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); padding:22px; gap:24px; border:1px solid var(--border); background:var(--surface); animation:product-reveal .25s ease both; }
.roadmap-discussion h4 { font:600 25px/1.15 Rajdhani,sans-serif; margin:0 0 16px; }
.roadmap-discussion header>small { color:var(--amber); font:500 13px Rajdhani,sans-serif; }
.roadmap-voice { padding:0 0 15px; }
.roadmap-voice strong,.roadmap-voice small { display:block; }
.roadmap-voice strong { font:600 17px Rajdhani,sans-serif; }
.roadmap-voice small { color:var(--quiet); font-size:13px; }
.roadmap-voice p { font:400 17px/1.45 Rajdhani,sans-serif; margin:10px 0 0; }
.roadmap-team-voice { padding:15px 0 0; border-top:1px solid var(--border); }
.roadmap-team-voice strong { color:var(--cyan); }
.roadmap-team-voice .text-button { padding-left:0; margin-top:6px; }
.roadmap-proposal { border-left:1px solid var(--border); padding-left:24px; min-width:0; }
.roadmap-proposal fieldset { padding:0; border:0; min-width:0; }
.roadmap-proposal legend { font:600 18px Rajdhani,sans-serif; margin-bottom:14px; padding:0; }
.roadmap-proposal label { display:grid; grid-template-columns:135px minmax(0,1fr); align-items:center; gap:10px; margin-bottom:10px; font:500 16px Rajdhani,sans-serif; }
.roadmap-proposal select { width:100%; min-width:0; border:1px solid var(--border); border-radius:3px; color:var(--copy); background:var(--surface-alt); padding:8px 10px; min-height:40px; font:500 16px Rajdhani,sans-serif; }
.roadmap-scope-help { color:var(--quiet); font:400 14px/1.4 Rajdhani,sans-serif; margin:12px 0; }
.roadmap-quote { padding:12px 0; margin:12px 0; border-top:1px solid var(--border); }
.roadmap-quote strong,.roadmap-quote small { display:block; margin:0 0 4px; }
.roadmap-quote strong { font:600 18px Rajdhani,sans-serif; }
.roadmap-quote small { font:400 14px/1.4 Rajdhani,sans-serif; color:var(--quiet); }
.roadmap-risk { font:500 14px/1.4 Rajdhani,sans-serif; margin:8px 0 0; }
.roadmap-proposal .action { margin-right:10px; }
.roadmap-commitment>.data-row { padding:10px 0; }
.roadmap-commitment .action { margin-top:14px; }
.roadmap-cancel { margin-top:20px; font:400 14px/1.5 Rajdhani,sans-serif; }
.roadmap-cancel summary { color:var(--quiet); cursor:pointer; }
.roadmap-outcome { grid-column:1/-1; border-top:1px solid var(--border); padding-top:14px; }
.roadmap-outcome summary { cursor:pointer; color:var(--cyan); font:600 16px Rajdhani,sans-serif; }
.roadmap-outcome p { font:400 16px/1.5 Rajdhani,sans-serif; }
.roadmap-outcome small { color:var(--quiet); }
.roadmap-archive { margin-top:18px; border:1px solid var(--border); background:var(--surface); padding:15px 20px; }
.roadmap-archive>summary { cursor:pointer; font:600 17px Rajdhani,sans-serif; }
.roadmap-archive-row { width:100%; display:grid; grid-template-columns:1fr 1fr 90px; gap:15px; align-items:center; border:0; border-top:1px solid var(--border); background:transparent; color:var(--copy); cursor:pointer; padding:12px 0; text-align:left; font:500 16px Rajdhani,sans-serif; }
.roadmap-archive-row:first-child { margin-top:15px; }
.roadmap-archive-row small { text-align:right; color:var(--quiet); }
.roadmap-empty { padding:20px 24px; border:1px dashed var(--border); margin-bottom:20px; }
.roadmap-empty>strong { font:600 22px Rajdhani,sans-serif; }
.roadmap-empty p { max-width:740px; color:var(--quiet); font:400 16px/1.45 Rajdhani,sans-serif; }
.game.no-motion .roadmap-discussion { animation:none; }
.game.no-motion .roadmap-progress>span,.game.no-motion .roadmap-card { transition:none; }
@media(prefers-reduced-motion:reduce){.roadmap-discussion{animation:none}.roadmap-progress>span,.roadmap-card{transition:none}}
@media(max-width:1180px){.roadmap-proposal label{grid-template-columns:1fr;gap:4px}.roadmap-team-summary{display:block}.roadmap-team-summary strong{display:block}}
@media(max-width:780px){.roadmap-board{grid-template-columns:1fr}.roadmap-discussion{grid-template-columns:1fr;padding:18px;gap:18px}.roadmap-proposal{border-left:0;border-top:1px solid var(--border);padding:18px 0 0}.roadmap-heading{align-items:flex-start}.roadmap-heading h3{font-size:25px}.roadmap-team-summary{text-align:right;font-size:15px;max-width:145px}.roadmap-lane-empty{min-height:0;margin:8px 0}.roadmap-archive-row{grid-template-columns:1fr 85px}.roadmap-archive-row span{grid-column:1;grid-row:2;font-size:14px;color:var(--quiet)}.roadmap-archive-row small{grid-column:2;grid-row:1/3}}
