.roadmap-open{display:grid;grid-template-columns:1fr auto;gap:6px 20px;width:100%;margin:24px 0;padding:20px 24px;border:2px solid #c41f14;background:#c41f14;color:#fff;text-align:left;cursor:pointer;font:inherit;box-shadow:4px 4px 0 #eedbd3}
.roadmap-open>span{font-size:22px;font-weight:500}.roadmap-open small{grid-column:1/-1;font-size:14px;color:#fff}
.roadmap-open:hover{background:#a91910}.roadmap-open:focus-visible,#roadmap-dialog button:focus-visible{outline:3px solid #111;outline-offset:4px}
body.roadmap-opened{overflow:hidden}
#roadmap-dialog{box-sizing:border-box;position:fixed;inset:0 0 0 auto;width:min(1180px,96vw);height:100dvh;max-height:100dvh;max-width:none;margin:0;padding:0;border:0;border-left:4px solid #c41f14;background:#faf7ee;color:#29251e;overflow:hidden;font-family:inherit}
#roadmap-dialog::backdrop{background:rgb(0 0 0 / .58)}
#roadmap-dialog[open]{display:flex;flex-direction:column;animation:roadmap-enter .22s ease-out}
.roadmap-header{display:flex;align-items:center;justify-content:space-between;gap:20px;flex:none;padding:24px 32px;background:#fffdf7;border-bottom:1px solid #ddd4c4}
.roadmap-eyebrow{margin:0 0 8px;color:#a51b11;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
#roadmap-title{margin:0;font-size:clamp(24px,3vw,36px);line-height:1.2}
#roadmap-dialog :is(h2,h3,h4){font-weight:500}
#roadmap-dialog button{font-family:inherit;cursor:pointer}
.roadmap-close{flex-shrink:0;padding:12px 18px;border:1px solid #a51b11;background:#fffdf7;color:#a51b11;font-size:15px;font-weight:500}
.roadmap-scroll{overflow:auto;overscroll-behavior:contain;min-height:0;padding:28px 32px 40px}
#roadmap-intro{margin:0 0 24px;font-size:17px;line-height:1.6}
.roadmap-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#ddd4c4;border:1px solid #ddd4c4}
.roadmap-summary p{margin:0;padding:18px;background:#fffdf7;font-size:14px;line-height:1.5}.roadmap-summary strong{display:block;color:#a51b11;margin-bottom:6px;font-size:16px}
.roadmap-nav{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}
.roadmap-nav button{flex:1 1 200px;text-align:left;padding:12px;background:#fffdf7;color:#29251e;border:1px solid #c9bdab;font-size:14px;line-height:1.5}
.roadmap-nav button:hover{border-color:#c41f14;background:#f4e7dd}.roadmap-nav span{display:block;color:#a51b11;font-weight:500}
.roadmap-rules{margin:24px 0 32px;line-height:1.65}.roadmap-rules h3{font-size:20px;margin:0 0 12px}.roadmap-rules p{margin:10px 0;font-size:15px}
.roadmap-phase{margin:32px 0}.roadmap-phase h3{display:flex;gap:16px;align-items:baseline;border-bottom:3px solid #c41f14;padding-bottom:14px;margin:0 0 12px;font-size:22px;line-height:1.4;scroll-margin-top:20px}
.roadmap-phase h3 span{font-size:14px;white-space:nowrap;color:#a51b11}.roadmap-phase ol{list-style:none;padding:0;margin:0}
.roadmap-week{display:grid;grid-template-columns:70px minmax(0,1fr);gap:20px;padding:22px 18px;border-bottom:1px solid #ddd4c4;background:#fffdf7}
.roadmap-week:nth-child(even){background:#f4efe3}.roadmap-week-number{color:#a51b11;font-size:12px;text-transform:uppercase;text-align:center}.roadmap-week-number strong{display:block;font-size:32px;font-weight:500;line-height:1.3}
.roadmap-task{font-size:17px;line-height:1.55;margin:0 0 14px}.roadmap-week dl{display:grid;grid-template-columns:minmax(120px,1fr) 2fr;gap:12px 24px;margin:0}
.roadmap-week dt{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:#685d4c;margin-bottom:4px}.roadmap-week dd{margin:0;font-size:14px;line-height:1.5}
.roadmap-week.roadmap-launch{border-left:4px solid #c41f14;background:#fae9df}.roadmap-source{font-size:13px;line-height:1.6;color:#685d4c}
@keyframes roadmap-enter{from{transform:translateX(35px);opacity:0}to{transform:translateX(0);opacity:1}}
@media(max-width:650px){#roadmap-dialog{width:100vw}.roadmap-header{padding:18px 16px;gap:10px}.roadmap-scroll{padding:20px 16px}.roadmap-summary{grid-template-columns:repeat(2,1fr)}.roadmap-week{grid-template-columns:42px minmax(0,1fr);gap:12px;padding:18px 10px}.roadmap-week dl{grid-template-columns:1fr}.roadmap-phase h3{display:block}.roadmap-phase h3 span{display:block;margin-bottom:6px}.roadmap-open{padding:18px}.roadmap-open>span{font-size:19px}}
@media(prefers-reduced-motion:reduce){#roadmap-dialog[open]{animation:none}}
.roadmap-week dl{grid-template-columns:minmax(260px,1fr) 1.4fr;align-items:start}
.roadmap-time{width:100%;border-collapse:collapse;font-size:14px;line-height:1.5}
.roadmap-time caption{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:#685d4c;margin-bottom:6px}
.roadmap-time th,.roadmap-time td{padding:9px 12px;border:1px solid #d5c9b5;text-align:left;background:#fffdf7}
.roadmap-time th{font-weight:500}.roadmap-time td{white-space:nowrap;font-weight:500;color:#a51b11}
.roadmap-time-note{font-size:12px;line-height:1.5;margin:8px 0 0;color:#685d4c}
.roadmap-rule-group{margin:22px 0;max-width:850px}
.roadmap-rule-group h4{margin:0 0 10px;font-size:17px;line-height:1.4;color:#a51b11}
.roadmap-rule-group ul{list-style:disc;margin:0;padding-left:22px}
.roadmap-rule-group li{padding-left:4px;margin:8px 0;font-size:15px;line-height:1.7}
.roadmap-rule-group li::marker{color:#a51b11}
.roadmap-rule-group strong{font-weight:500}
@media(max-width:650px){.roadmap-week dl{grid-template-columns:1fr}.roadmap-time th,.roadmap-time td{padding:8px}}
@media print{.roadmap-open,#roadmap-dialog{display:none!important}}
