:root{
  --bg:#12052a;--bg2:#1c0a3d;--panel:rgba(26,10,58,.82);--line:rgba(196,79,255,.35);
  --cyan:#3ee8f0;--pink:#e05fd6;--gold:#ffc83d;--amber:#ffab3d;--violet:#a874ff;--green:#3ef09a;--red:#ff5d73;
  --txt:#f1eaff;--mut:#b6a8d6;--card:rgba(255,255,255,.04)
}
*{box-sizing:border-box;margin:0;padding:0}
html{background:var(--bg);-webkit-text-size-adjust:100%}
body{font-family:'Poppins',system-ui,sans-serif;color:var(--txt);min-height:100vh;
  background:
   radial-gradient(1200px 600px at 50% -10%,rgba(224,95,214,.18),transparent 60%),
   radial-gradient(900px 500px at 100% 40%,rgba(62,232,240,.10),transparent 60%),
   url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240' viewBox='0 0 240 240'%3E%3Cg fill='none' stroke='%237a2bd6' stroke-opacity='.28' stroke-width='2'%3E%3Cpath d='M0 40h60l20 20h60M240 90h-50l-20-20h-40M30 240v-60l20-20v-50M200 0v50l-20 20v40M90 240v-40h50l20-20h80'/%3E%3C/g%3E%3Cg fill='%23c44fff' fill-opacity='.35'%3E%3Ccircle cx='140' cy='60' r='4'/%3E%3Ccircle cx='130' cy='70' r='4'/%3E%3Ccircle cx='50' cy='110' r='4'/%3E%3Ccircle cx='180' cy='110' r='4'/%3E%3Ccircle cx='160' cy='180' r='4'/%3E%3C/g%3E%3C/svg%3E"),var(--bg)}
a{color:var(--cyan)}
.wrap{max-width:1180px;margin:0 auto;padding:0 18px}
h1,h2,h3,.orb{font-family:'Orbitron',sans-serif;letter-spacing:.04em}
.top{padding:26px 0 8px;text-align:center}
.top h1{font-size:clamp(26px,5vw,46px);background:linear-gradient(90deg,var(--cyan),var(--pink));-webkit-background-clip:text;background-clip:text;color:transparent}
.top p{color:var(--mut);margin-top:6px;font-size:15px}
.banner{margin:16px auto 0;max-width:900px;border:1px solid rgba(255,171,61,.6);background:rgba(255,171,61,.10);color:#ffe3b8;border-radius:12px;padding:10px 14px;font-size:13.5px;text-align:center}
.tabs{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:22px 0 4px}
.tabs button{font:600 13px 'Orbitron',sans-serif;letter-spacing:.06em;color:var(--txt);background:var(--card);border:1px solid var(--line);border-radius:999px;padding:10px 16px;cursor:pointer}
.tabs button[aria-selected=true]{background:linear-gradient(90deg,rgba(62,232,240,.25),rgba(224,95,214,.25));border-color:var(--cyan)}
.tabs button:focus-visible,input:focus-visible,select:focus-visible,.btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
section.pane{display:none;padding:18px 0 40px}section.pane.on{display:block}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 0 28px rgba(196,79,255,.12),inset 0 0 0 1px rgba(255,255,255,.02)}
.panel+.panel{margin-top:16px}
.panel h2{font-size:17px;color:var(--cyan);margin-bottom:12px;display:flex;align-items:center;gap:10px}
.panel h2 .n{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;border:2px solid var(--pink);color:var(--pink);font-size:13px}
.inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
label{display:block;font-size:12px;color:var(--mut);margin-bottom:5px;font-weight:600;letter-spacing:.03em}
input,select{width:100%;font:500 15px 'Poppins',sans-serif;color:var(--txt);background:rgba(10,3,24,.7);border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.btn{font:700 14px 'Orbitron',sans-serif;letter-spacing:.06em;color:#12052a;background:linear-gradient(90deg,var(--cyan),var(--pink));border:0;border-radius:12px;padding:12px 20px;cursor:pointer}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:16px}
.card{border-radius:14px;padding:14px;border:1px solid var(--line);background:var(--card)}
.card .k{font-size:12px;color:var(--mut);font-weight:600}
.card .v{font:800 26px 'Orbitron',sans-serif;margin-top:6px;font-variant-numeric:tabular-nums}
.card .s{font-size:12px;color:var(--mut);margin-top:4px}
.c-cyan{border-color:rgba(62,232,240,.55)}.c-cyan .v{color:var(--cyan)}
.c-gold{border-color:rgba(255,200,61,.55)}.c-gold .v{color:var(--gold)}
.c-amber{border-color:rgba(255,171,61,.55)}.c-amber .v{color:var(--amber)}
.c-green{border-color:rgba(62,240,154,.55)}.c-green .v{color:var(--green)}
.c-violet{border-color:rgba(168,116,255,.6)}.c-violet .v{color:var(--violet)}
.msg{margin-top:12px;border-radius:12px;padding:10px 14px;font-size:14px}
.msg.ok{background:rgba(62,232,240,.10);border:1px solid rgba(62,232,240,.45)}
.msg.bad{background:rgba(255,93,115,.12);border:1px solid rgba(255,93,115,.55);color:#ffd2d9}
.msg.warn{background:rgba(255,171,61,.10);border:1px solid rgba(255,171,61,.5);color:#ffe3b8}
.tablewrap{overflow-x:auto;margin-top:12px;border-radius:12px;border:1px solid var(--line)}
table{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}
th,td{padding:10px 12px;text-align:left;border-bottom:1px solid rgba(196,79,255,.18);white-space:nowrap}
th{font:700 11.5px 'Orbitron',sans-serif;letter-spacing:.06em;color:var(--pink);background:rgba(196,79,255,.10)}
td.num,th.num{text-align:right}
tr:last-child td{border-bottom:0}
.pill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11.5px;font-weight:700;margin:1px 2px}
.p7{background:rgba(255,200,61,.18);color:var(--gold)}.pX{background:rgba(62,232,240,.15);color:var(--cyan)}
.gantt{margin-top:12px;display:grid;gap:8px}
.grow{display:grid;grid-template-columns:70px 1fr;gap:8px;align-items:center;font-size:12px;color:var(--mut)}
.gbar{position:relative;height:26px;border-radius:8px;background:rgba(255,255,255,.04);overflow:hidden}
.gbar span{position:absolute;top:0;bottom:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#12052a}
.gclick{background:var(--cyan)}.ghold{background:var(--amber)}.grel{background:transparent;border:2px solid var(--green);color:var(--green)!important;border-radius:8px}
.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--mut);margin-top:8px}
.legend i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:5px;vertical-align:-2px}
.note{font-size:12.5px;color:var(--mut);margin-top:10px;line-height:1.6}
.tests li{list-style:none;padding:6px 0;border-bottom:1px solid rgba(196,79,255,.15);font-size:13.5px}
.tests li b{display:inline-block;width:52px}
.ok-t{color:var(--green)}.no-t{color:var(--red)}
.maps{display:grid;gap:22px}
.mapfig{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:12px}
.mapfig figcaption{font-size:13px;color:var(--mut);padding:6px 4px 10px}
.mapfig .tag{font:700 11px 'Orbitron',sans-serif;color:var(--amber);border:1px solid rgba(255,171,61,.6);border-radius:999px;padding:3px 9px;margin-right:6px}
footer{padding:30px 0 50px;text-align:center;color:var(--mut);font-size:12.5px;line-height:1.7}
@media(max-width:600px){#f-team thead{display:none}#f-team tr{display:block;padding:6px 0;border-bottom:1px solid rgba(196,79,255,.25)}#f-team td{display:flex;justify-content:space-between;align-items:center;border:0;padding:5px 12px}#f-team td::before{content:attr(data-l);color:var(--pink);font:700 11px Orbitron,sans-serif}#c-table thead{display:none}#c-table tr{display:block;border-bottom:1px solid rgba(196,79,255,.25);padding:6px 0}#c-table td{display:flex;justify-content:space-between;gap:10px;border:0;padding:5px 12px;white-space:normal}#c-table td::before{content:attr(data-l);color:var(--pink);font:700 11px 'Orbitron',sans-serif;letter-spacing:.05em}#c-table td.num{text-align:right}.tablewrap{overflow:visible}.panel{padding:14px}.card .v{font-size:22px}th,td{padding:8px 9px;font-size:13px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
@media print{body{background:#fff;color:#000}.tabs,.btn,.top p{display:none}section.pane{display:block}.panel{box-shadow:none;border-color:#999;background:#fff;break-inside:avoid}}
.mc-status{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:12.5px;color:var(--mut)}
.mc-status b{color:var(--txt)}
.mc-list{display:grid;gap:10px}
.mc-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media(max-width:820px){.mc-cols{grid-template-columns:1fr}}
.mc-col{border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--card)}
.mc-col h3{font-size:12.5px;color:var(--pink);margin-bottom:8px}
.task{border:1px solid var(--line);border-left:4px solid var(--cyan);border-radius:12px;padding:11px 13px;background:rgba(10,3,24,.55)}
.task.DUE{border-left-color:var(--gold)}.task.RISK{border-left-color:var(--red)}.task.PREPARE{border-left-color:var(--violet)}.task.DECISION{border-left-color:var(--green)}.task.OPTIONAL{border-left-color:var(--mut)}
.task .tt{font-weight:700;font-size:14.5px}.task .tx{font-size:13px;color:var(--mut);margin-top:3px;line-height:1.5}
.task .badge{font:700 10px 'Orbitron',sans-serif;letter-spacing:.06em;padding:2px 7px;border-radius:999px;border:1px solid currentColor;margin-right:6px;vertical-align:1px}
.task .acts{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}
.task .acts button{font:600 12.5px 'Poppins',sans-serif;color:var(--txt);background:rgba(62,232,240,.12);border:1px solid rgba(62,232,240,.5);border-radius:9px;padding:7px 11px;cursor:pointer}
.hist{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:13px;border-bottom:1px solid rgba(196,79,255,.15);padding:6px 0}
.hist.void{opacity:.45;text-decoration:line-through}
.hist button{font-size:11.5px;background:none;border:1px solid var(--line);color:var(--mut);border-radius:8px;padding:4px 8px;cursor:pointer}
/* ===== single-page roadmap (v6) ===== */
.sec{padding:22px 0 8px}
.sech{font-size:clamp(18px,3vw,24px);color:var(--cyan);margin:0 0 14px;text-align:center}
.mapgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:760px){.mapgrid{grid-template-columns:1fr}}
.mapcard{margin:0;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:12px;display:flex;flex-direction:column;gap:10px}
.mapbtn{display:block;padding:0;border:0;background:none;cursor:zoom-in;border-radius:12px;overflow:hidden;max-height:560px}
.mapbtn img{width:100%;height:auto;display:block}
.mapcard figcaption{display:flex;flex-direction:column;gap:4px;font-size:14px;padding:0 2px}
.tag6{font-size:12px;color:var(--amber)}
.mapacts{display:flex;gap:8px}
.btn.sm{padding:9px 16px;font-size:12px}
.btn.ghost{background:transparent;color:var(--cyan);border:1px solid var(--cyan);text-decoration:none;display:inline-flex;align-items:center}
.btn.big{width:100%;padding:18px;font-size:clamp(15px,2.4vw,19px);margin-top:6px;box-shadow:0 0 30px rgba(62,232,240,.35)}
.startform{max-width:640px;margin:0 auto;display:grid;gap:16px}
.q label,.ql{display:block;font-size:15px;font-weight:600;color:var(--txt);margin-bottom:8px;letter-spacing:0}
.ql small{color:var(--mut);font-weight:400}
.seg,.chips{display:flex;gap:8px;flex-wrap:wrap}
.seg label,.chips label{margin:0;cursor:pointer}
.seg input,.chips input{position:absolute;opacity:0;width:1px;height:1px}
.seg span,.chips span{display:inline-block;padding:11px 16px;border-radius:12px;border:1px solid var(--line);background:rgba(10,3,24,.6);font-size:14px;font-weight:600;color:var(--txt)}
.chips span{padding:9px 14px;font-family:'Orbitron',sans-serif;font-size:13px}
.seg input:checked+span,.chips input:checked+span{border-color:var(--cyan);background:rgba(62,232,240,.16);box-shadow:0 0 12px rgba(62,232,240,.25)}
.seg input:focus-visible+span,.chips input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px}
.fine{font-size:12.5px;color:var(--mut);line-height:1.6}.center{text-align:center}
.linkbtn{background:none;border:0;color:var(--mut);text-decoration:underline;cursor:pointer;font:inherit}
.summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.summary .k{font-size:12px;color:var(--mut);font-weight:600}.summary .v{font:800 20px 'Orbitron',sans-serif;margin-top:4px}
.road{list-style:none;margin:18px 0;padding:0 0 0 34px;position:relative}
.road::before{content:"";position:absolute;left:13px;top:6px;bottom:6px;width:4px;border-radius:4px;background:linear-gradient(var(--green),var(--cyan) 30%,var(--violet) 65%,var(--pink))}
.step{position:relative;margin:0 0 14px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:13px 15px}
.step::before{content:"";position:absolute;left:-30px;top:16px;width:20px;height:20px;border-radius:50%;background:var(--bg);border:3px solid var(--violet)}
.step.done{border-color:rgba(62,240,154,.55);background:rgba(62,240,154,.07)}
.step.done::before{background:var(--green);border-color:var(--green);content:"✓";color:#12052a;font:900 12px/14px system-ui;text-align:center}
.step.now{border:2px solid var(--gold);box-shadow:0 0 26px rgba(255,200,61,.22)}
.step.now::before{border-color:var(--gold);background:var(--gold);box-shadow:0 0 14px var(--gold)}
.step.flag::before{content:"";width:22px;height:22px;border-radius:5px;background:conic-gradient(#fff 0 25%,#12052a 0 50%,#fff 0 75%,#12052a 0) 0 0/11px 11px;border:2px solid var(--gold)}
.step.late{border-color:var(--red)}.step.late::before{border-color:var(--red);background:var(--red)}
.step.future{opacity:.92}
.step .when{font:700 11px 'Orbitron',sans-serif;letter-spacing:.07em;color:var(--pink)}
.step .ttl{font-weight:700;font-size:16px;margin-top:3px}
.step .txt{font-size:13.5px;color:var(--mut);margin-top:4px;line-height:1.55}
.step .acts{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.step .acts button{font:600 13px 'Poppins',sans-serif;color:var(--txt);background:rgba(62,232,240,.12);border:1px solid rgba(62,232,240,.55);border-radius:10px;padding:9px 13px;cursor:pointer}
.step .acts button.pri{background:linear-gradient(90deg,var(--cyan),var(--pink));color:#12052a;border:0}
.pill.proj{background:rgba(168,116,255,.18);color:var(--violet)}.pill.real{background:rgba(62,240,154,.16);color:var(--green)}.pill.warn{background:rgba(255,171,61,.18);color:var(--amber)}
.dots{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}.dots i{width:18px;height:18px;border-radius:5px;border:1px solid var(--line);background:rgba(255,255,255,.04)}
.dots i.ok{background:var(--green);border-color:var(--green)}.dots i.miss{background:var(--red);border-color:var(--red)}.dots i.cur{border:2px solid var(--gold)}
.fork{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:10px}
@media(max-width:760px){.fork{grid-template-columns:1fr}}
.fork button{text-align:left;cursor:pointer;border:1px solid var(--line);background:rgba(10,3,24,.6);border-radius:12px;padding:12px;color:var(--txt);font:inherit}
.fork button[aria-pressed=true]{border:2px solid var(--cyan);box-shadow:0 0 16px rgba(62,232,240,.3)}
.fork b{display:block;font-family:'Orbitron',sans-serif;font-size:13px;color:var(--cyan);margin-bottom:4px}
.fork span{font-size:13px;color:var(--mut);line-height:1.5}
.adv{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:14px 16px}
.adv summary{cursor:pointer;font:700 15px 'Orbitron',sans-serif;color:var(--cyan)}
.adv summary small{display:block;font:400 12px 'Poppins',sans-serif;color:var(--mut);margin-top:4px}
.lightbox{position:fixed;inset:0;z-index:50;background:rgba(8,2,20,.94);display:flex;flex-direction:column}
.lightbox[hidden]{display:none}
.lbwrap{flex:1;overflow:hidden;touch-action:none;cursor:grab;display:flex;align-items:center;justify-content:center}
.lbwrap img{max-width:100%;max-height:100%;transform-origin:0 0;user-select:none;-webkit-user-drag:none}
.lbx{position:absolute;top:12px;right:14px;z-index:2;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:var(--panel);color:var(--txt);font-size:26px;cursor:pointer}
.lbhint{text-align:center;color:var(--mut);font-size:12px;padding:8px}
.mapbtn{position:relative}
.mapbtn::after{content:"Tap to see the whole map";position:absolute;left:0;right:0;bottom:0;padding:70px 0 14px;background:linear-gradient(transparent,rgba(18,5,42,.96));color:var(--cyan);font:700 12px 'Orbitron',sans-serif;letter-spacing:.06em;text-align:center}
@media(max-width:760px){.mapbtn{max-height:440px}}
@media(max-width:600px){.summary{grid-template-columns:1fr 1fr}.summary .v{font-size:16px}}
