/* Entirely local: system font stacks and no network font requests. */
:root{color-scheme:dark;font-family:'DM Sans',Arial,sans-serif;color:#f0f8ff;background:#080e1a;font-synthesis:none}
*{box-sizing:border-box}html,body{margin:0;min-width:320px;min-height:100%;overscroll-behavior:none}button,select,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #75f5dc;outline-offset:2px}
.app{min-height:100dvh;display:grid;grid-template-columns:356px minmax(0,1fr);overflow:hidden}.controls{background:#0b111e;border-right:1px solid #213044;padding:26px 28px 17px;z-index:2;overflow-y:auto;max-height:100dvh;scrollbar-width:thin;scrollbar-color:#2a4756 transparent}.wordmark{display:flex;align-items:center;gap:13px;font-weight:700;font-size:12px;letter-spacing:.18em}.mark{display:grid;place-items:center;border:1px solid #75efd6;color:#76ebd5;width:36px;height:36px;font-size:23px}.wordmark small{display:block;font-size:9px;letter-spacing:.26em;color:#7b8ea3;margin-top:5px}.hairline{height:1px;background:linear-gradient(90deg,#294050,transparent);margin:26px 0}.eyebrow,.section-title,.sidebar-foot{font-size:10px;letter-spacing:.20em;color:#8ca0af;font-weight:700}.eyebrow{display:flex;justify-content:space-between}.on-dot,.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#70efd0;box-shadow:0 0 12px #52f9d5}.controls h1{font-family:'Space Grotesk',Arial,sans-serif;font-weight:600;letter-spacing:-.09em;font-size:61px;line-height:1;margin:14px 0 0}.controls h1 span{color:#7deace}.lead{font-family:'Space Grotesk',sans-serif;color:#dbe6ef;font-size:15px;margin:8px 0 15px}.sublead{font-size:12px;color:#91a3b7;line-height:1.72;margin:0}.meta{display:flex;gap:27px;margin-top:20px;font-size:10px;color:#79919f;letter-spacing:.13em}.meta strong{color:#e1fff7;margin-left:6px}.section-title{display:flex;align-items:center;gap:15px;color:#70e8cd;margin-bottom:18px}.section-title span{color:#c1d5df}.controls label{display:block;color:#c7d4de;font-size:12px;margin-bottom:9px}select{width:100%;height:41px;background:#111c2b;color:#d6e9f0;border:1px solid #284055;border-radius:4px;padding:0 10px;margin-bottom:17px;appearance:auto;font-size:12px}.slider-line{display:flex;justify-content:space-between;align-items:baseline;margin-top:10px}.slider-line label{margin-bottom:7px}.slider-line output{font:600 11px 'Space Grotesk',sans-serif;color:#81f0d2;font-variant-numeric:tabular-nums}input[type=range]{display:block;width:100%;accent-color:#74eed3;margin:0 0 17px;cursor:pointer}.button-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.button-grid button{min-height:40px;border:1px solid #2d4356;background:#121d2c;color:#c5dbe6;border-radius:4px;font-size:11px;letter-spacing:.015em;transition:background .15s}.button-grid button:hover{background:#1a3240}.button-grid .primary{background:#19453e;border-color:#3fa48d;color:#a6ffdf;font-weight:700}.button-grid .accent{color:#83f1d8}.bg-label{margin-top:17px}.sidebar-foot{font-size:8px;color:#5b7789;margin-top:23px;line-height:1.8}
.visual{position:relative;min-width:0;background:radial-gradient(ellipse at 50% 46%,#0b2630 0%,#071421 48%,#050915 100%);height:100dvh;overflow:hidden}.topbar,.footerbar{position:absolute;z-index:1;left:0;right:0;height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;background:#060e1a77;border-bottom:1px solid #33425048;pointer-events:none}.breadcrumb,.version{font-size:10px;color:#8a9eab;letter-spacing:.12em;font-weight:700}.breadcrumb span{padding:0 10px;color:#526c7b}.breadcrumb strong{color:#bcefe7}.version{display:flex;gap:12px;align-items:center}.version .status-dot{width:6px;height:6px}.footerbar{height:47px;top:auto;bottom:0;border-top:1px solid #33425040;border-bottom:none;color:#809aa9;font-size:9px;letter-spacing:.13em;font-weight:700}.footerbar b{font-size:17px;color:#88e9cb;vertical-align:middle;margin-right:6px}.footerbar #message{color:#8deccf}#viewport{position:absolute;inset:0}#viewport canvas{display:block;width:100%;height:100%}.viewport-heading{position:absolute;top:100px;left:36px;pointer-events:none;color:#edfdf9;font-size:clamp(37px,4.1vw,75px);font-family:'Space Grotesk',sans-serif;font-weight:500;line-height:1.04;letter-spacing:-.067em;text-shadow:0 5px 30px #021018}.viewport-heading em{font-style:normal;color:#88f8d8}.viewport-kicker{font:700 9px 'DM Sans',sans-serif;letter-spacing:.19em;color:#9bd2c8;margin-bottom:16px}.viewport-kicker span{color:#7894a2;margin-left:10px}.hint{position:absolute;bottom:82px;left:36px;color:#8ba5ae;letter-spacing:.16em;font-size:10px;pointer-events:none}.crosshair{font-size:17px;color:#99fae2;margin-right:8px}.hint .divider{padding:0 10px}.stats{position:absolute;right:30px;bottom:85px;display:flex;gap:24px;pointer-events:none;text-align:right}.stats span{display:block;color:#668596;font-size:9px;letter-spacing:.12em}.stats strong{display:block;font-family:'Space Grotesk',sans-serif;font-size:18px;font-weight:500;color:#d9fcf2;margin-top:4px}#error{position:absolute;top:60px;left:0;right:0;background:#4d1919;color:#fff;padding:16px;font-size:13px;z-index:10}
@media(max-width:950px){.app{grid-template-columns:280px minmax(0,1fr)}.controls{padding:18px}.viewport-heading{left:20px}.topbar,.footerbar{padding:0 18px}.stats{right:16px;gap:10px}.controls h1{font-size:52px}}
@media(max-width:650px){html,body{overscroll-behavior:auto}.app{display:flex;flex-direction:column}.visual{height:65dvh;min-height:420px;order:1}.controls{order:2;max-height:none;overflow:visible;border-right:0;border-top:1px solid #2c4050}.controls h1{font-size:49px}.topbar{height:49px}.breadcrumb{font-size:7px}.version{font-size:8px}.viewport-heading{top:76px;font-size:46px}.hint{bottom:70px;left:18px;font-size:8px}.stats{bottom:68px;right:12px;gap:8px}.stats strong{font-size:14px}.footerbar{height:36px;font-size:7px}.footerbar>span:last-child{display:none}}
