:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#e7edf3;background:#101b27;font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,select{border:1px solid #405362;background:#1b2c3b;color:#f1eee4;border-radius:7px;padding:.6rem .8rem}button{cursor:pointer;transition:background .15s,border-color .15s}button:hover{background:#2b4152;border-color:#90b4c8}button:disabled{opacity:.4;cursor:default}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #f6be7d;outline-offset:3px}main{min-height:100dvh;width:100%;padding:28px max(24px,4vw) 35px}header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #304250;padding-bottom:24px}.brand{display:flex;gap:15px;align-items:center}.mark{font-size:44px;color:#f5bc87}.eyebrow{font-size:10px;letter-spacing:.19em;color:#9ab0c0;font-weight:700;margin:0 0 9px}h1{font-size:19px;margin:0;font-weight:650;letter-spacing:-.02em}h2{font-family:Georgia,serif;font-size:clamp(35px,5vw,65px);font-weight:400;margin:0;letter-spacing:-.04em}h3{font-size:22px;font-weight:500;margin:0 0 14px}p{line-height:1.65;color:#a9bbc9;font-size:14px}.intro{display:flex;justify-content:space-between;align-items:center;gap:32px;padding:38px 0 26px}.studies{display:grid;grid-template-columns:1fr 1fr;gap:10px}.studies button{text-align:left;font-size:12px;padding:13px}.stage{background:radial-gradient(ellipse at 25% 50%,#213449 0,transparent 55%),radial-gradient(ellipse at 80% 50%,#173936 0,transparent 60%),#10202b;border:1px solid #3a4d59;border-radius:16px;overflow:hidden}.stageLabels{display:flex;justify-content:space-around;text-align:center;padding:22px 15px 0}.stageLabels p{font-size:11px;margin:10px 0 0}.chip{font-size:10px;letter-spacing:.17em;font-weight:750}.warm{color:#ffbf86}.cool{color:#72dec8}.drawing{position:relative;width:100%;aspect-ratio:1200/520}canvas{width:100%;height:100%;display:block}.link{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.link circle{fill:none;stroke:#ffe6a5;stroke-width:2}.flow path{animation:trace 1.5s linear infinite}.flow circle{animation:pulse 1.5s ease-in-out infinite}@keyframes trace{to{stroke-dashoffset:-60}}@keyframes pulse{50%{opacity:.25}}.stageFoot{display:flex;justify-content:space-between;border-top:1px solid #324958;padding:16px 24px;font-size:12px;color:#a7bcc5}.stageFoot strong{color:#f3d5ac}.controls{display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;padding:22px 0;align-items:center}.controls>div{display:flex;gap:16px}.controls label{display:flex;flex-direction:column;gap:7px;font-size:11px;letter-spacing:.02em;color:#abc1cc}input[type=range]{width:145px;accent-color:#ffbb7d}.status{border-left:3px solid #75d9c2;padding:11px 16px;background:#18312f;color:#d0e6dc;margin:0 0 26px;min-height:48px}.workspace{display:grid;grid-template-columns:1fr 1fr;gap:24px}.panel{border:1px solid #314756;border-radius:12px;padding:25px;background:#132330;min-width:0}.panelTitle{display:flex;align-items:start;justify-content:space-between;gap:12px}.panelTitle button{font-size:12px}.vertexTable{max-height:390px;overflow:auto;margin:20px 0}table{width:100%;border-collapse:collapse;font-size:12px}th{color:#87a6b7;text-align:left;font-weight:500}td,th{padding:6px 3px}td input{width:100%;min-width:46px;background:#101b27;color:#ecf3f5;border:1px solid #405464;padding:9px 5px;border-radius:5px}td button,th button{font-size:11px}details{margin-top:15px}summary{cursor:pointer;color:#d1ddd9;font-size:13px}.faceRow{display:block;margin:7px 0;font-size:11px;text-align:left;width:100%}.jsonLabel{font-size:12px;color:#a9bbc9}textarea{display:block;width:100%;height:260px;resize:vertical;max-height:700px;background:#0c1922;border:1px solid #405464;border-radius:7px;color:#bdd5dc;font-family:ui-monospace,monospace;font-size:11px;line-height:1.5;padding:15px;margin:10px 0 15px}.buttonRow{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.buttonRow button{font-size:11px}.primary{background:#c69060;color:#101b27;border-color:#e6ba94;font-weight:700}.file{display:block;font-size:12px;color:#afc6d2;margin:20px 0}.file input{max-width:100%;display:block;margin-top:9px;font-size:11px}.notice{color:#e9c59b;border:1px solid #735b3e;padding:10px;font-size:12px}.explain{max-width:930px;margin:42px auto}footer{border-top:1px solid #304250;padding-top:24px;display:flex;gap:36px;align-items:start}footer>div:first-child{flex:1}footer p{max-width:900px;font-size:11px}footer button{font-size:11px;margin:0 6px 8px 0}footer small{display:block;font-size:11px;color:#a0b6c2}@media(max-width:850px){main{padding:20px 15px}.intro{align-items:start;flex-direction:column;gap:10px}.studies{width:100%}.workspace{grid-template-columns:1fr}.stageFoot{flex-direction:column;gap:8px}.controls{gap:15px}.controls>div{flex-wrap:wrap}.stageLabels{padding-top:15px}.stageLabels p,.chip{font-size:9px}footer{flex-direction:column;gap:10px}header>button{font-size:10px;padding:8px}h1{font-size:16px}.brand{gap:8px}.mark{font-size:32px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}h2{overflow-wrap:anywhere}.intro>div:first-child{min-width:0}
