:root{color-scheme:dark;font-family:"Segoe UI",Arial,sans-serif;color:#c5d7cc;background:#030908}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{height:100dvh;display:grid;grid-template-rows:68px minmax(0,1fr) 64px;background:radial-gradient(ellipse at 50% 62%,#0a1c16,transparent 62%),#030908}header,footer{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:0 4.5vw;gap:18px}header{border-bottom:1px solid #8dcda709}footer{border-top:1px solid #8dcda70b}.brand{display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:3px;font-weight:500;color:#dce9df}.brand svg{width:28px;height:28px}.connection{display:flex;align-items:center;gap:9px;font:7px Consolas,monospace;letter-spacing:1.8px;color:#8ba99b}.connection i{width:4px;height:4px;border-radius:50%;background:#90e5a3;box-shadow:0 0 9px #78ff9d80}main{position:relative;min-height:0;isolation:isolate}canvas{display:block;width:100%;height:100%}.coming-soon{position:absolute;top:29%;left:50%;width:max-content;max-width:calc(100% - 32px);text-align:center;translate:-50% -50%;opacity:var(--reveal,0);transform:scale(var(--reveal-scale,.88));filter:blur(var(--reveal-blur,12px));pointer-events:none;will-change:opacity,transform,filter}.reveal-kicker{font:8px Consolas,monospace;color:#8fb09c;letter-spacing:3.3px}h1{font-size:clamp(32px,5.3vw,86px);font-weight:300;letter-spacing:.17em;line-height:1.25;margin:15px -.17em 17px 0;color:#e7f9e8;text-shadow:0 0 30px #a7ffad35,0 1px 1px #fff3}.reveal-rule{height:1px;width:68%;margin:auto;background:linear-gradient(90deg,transparent,#b4f4ba80,transparent)}.edge-label{position:absolute;top:58%;display:grid;gap:10px;font:6px Consolas,monospace;letter-spacing:1.5px;color:#668a77;opacity:.7}.edge-label b{font-size:9px;letter-spacing:1px;font-weight:400;color:#a2c0ac}.edge-label i{height:1px;width:55px;background:linear-gradient(90deg,#94ce9c55,transparent)}.edge-label.left{left:5%}.edge-label.right{right:5%;text-align:right}.edge-label.right i{justify-self:end;rotate:180deg}.phase{display:flex;align-items:center;gap:12px;font:7px Consolas,monospace;letter-spacing:1.2px;color:#8aa896;min-width:220px}.phase-number{display:grid;place-items:center;width:23px;height:23px;border:1px solid #7ea28c30;border-radius:50%;font-size:8px;color:#badac3}.controls{display:flex;align-items:center;gap:24px}.controls button{font:11px "Segoe UI",Arial,sans-serif;color:#a7c4b1;display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 0;border:0;background:none;cursor:pointer}.controls button:hover{color:#effff2}.controls button:focus-visible{outline:1px solid #bcfbc9;outline-offset:5px;border-radius:3px}.controls button span{font-size:16px;color:#9fc6ad}.preview-label{min-width:220px;text-align:right;font:6px Consolas,monospace;letter-spacing:1.8px;color:#6e8b7a}.sr-only{position:absolute;overflow:hidden;clip:rect(0,0,0,0);width:1px;height:1px;white-space:nowrap}@media(max-width:900px){.phase,.preview-label{min-width:0}.edge-label{font-size:5px;top:68%}.edge-label b{font-size:7px}.edge-label.left{left:4%}.edge-label.right{right:4%}}@media(max-width:600px){body{grid-template-rows:62px minmax(0,1fr) 90px}header{padding:0 22px}.brand{font-size:8px;letter-spacing:2px;gap:8px}.brand svg{width:23px;height:23px}.connection{font-size:5px;letter-spacing:1px;gap:6px}.coming-soon{top:30%}h1{font-size:clamp(26px,8.4vw,46px);letter-spacing:.11em;margin-right:-.11em}.reveal-kicker{font-size:5px;letter-spacing:1.8px}.edge-label{top:76%;font-size:5px;gap:8px}.edge-label b{font-size:8px}.edge-label.left{left:24px}.edge-label.right{right:24px}footer{padding:5px 22px 10px;flex-wrap:wrap;justify-content:center;gap:0 16px}.controls{order:-1;justify-content:center;width:100%;gap:27px}.controls button{font-size:11px}.phase{font-size:5px;letter-spacing:.7px;gap:7px}.phase-number{width:17px;height:17px;font-size:6px}.preview-label{font-size:5px;letter-spacing:1px}}@media(max-height:500px){body{grid-template-rows:48px minmax(0,1fr) 48px}.brand svg{width:22px;height:22px}.edge-label{display:none}.reveal-kicker{font-size:5px}.coming-soon{top:25%}h1{font-size:clamp(24px,5vw,44px);margin-top:7px;margin-bottom:8px}.phase,.preview-label{font-size:5px}.controls button{font-size:10px}}
