@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--bg:#080a10;--panel:#0e121b;--panel-hi:#121a26;--line:rgba(161,180,210,.13);--line-hi:rgba(161,180,210,.22);--text:#edf2fa;--muted:#8793a8;--quiet:#5c687d;--mint:#9af3d5;--blue:#8ca7ff;--mono:'DM Mono',ui-monospace,SFMono-Regular,monospace;font-family:'Manrope',Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}
*{box-sizing:border-box}
html{min-width:320px;background:var(--bg);scroll-behavior:smooth}
body{position:relative;isolation:isolate;margin:0;min-height:100vh;overflow-x:hidden;background:radial-gradient(ellipse at 76% 0%,rgba(48,74,119,.16),transparent 35%),linear-gradient(180deg,#0b0e16 0%,#080a10 50%,#090c13 100%);color:var(--text)}
button,input{font:inherit}
button{touch-action:manipulation}
a{color:inherit}
.ambient{position:absolute;z-index:-1;pointer-events:none;filter:blur(90px);opacity:.16;border-radius:50%}
.ambient-a{width:340px;height:340px;background:#2b68a0;top:360px;left:-210px}
.ambient-b{width:290px;height:290px;background:#356b70;top:650px;right:-180px}
.app-shell{width:min(1320px,calc(100% - 64px));margin:0 auto}
.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand-symbol{position:relative;width:27px;height:27px;display:flex;align-items:center;justify-content:center;gap:2px;border:1px solid rgba(154,243,213,.45);border-radius:9px;transform:rotate(-7deg);background:linear-gradient(145deg,rgba(154,243,213,.1),rgba(140,167,255,.04));box-shadow:inset 0 0 14px rgba(154,243,213,.06)}
.brand-symbol span{display:block;width:3px;border-radius:3px;background:var(--mint);transform:skew(-20deg)}
.brand-symbol span:nth-child(1){height:9px;opacity:.55}.brand-symbol span:nth-child(2){height:15px}.brand-symbol span:nth-child(3){height:11px;opacity:.75}
.brand-name{font-size:17px;font-weight:800;letter-spacing:-.06em}.brand-name span{color:var(--mint)}
.brand-divider{height:19px;width:1px;background:var(--line-hi);margin:0 2px 0 6px}
.brand-product{font:10px var(--mono);letter-spacing:.2em;color:#8d9ab0}
.topbar-right{display:flex;align-items:center;gap:22px}
.session-label{display:flex;align-items:center;gap:9px;font:10px var(--mono);letter-spacing:.06em;color:#b5c2d5}
.status-dot,.live-tag i,.readout-value i,.footer-stats>span:first-child i{width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:var(--mint);box-shadow:0 0 12px rgba(154,243,213,.6)}
.status-dot{animation:status-pulse 2.2s infinite}
.version-pill{padding:7px 9px;border:1px solid var(--line-hi);border-radius:6px;font:9px var(--mono);letter-spacing:.12em;color:var(--muted)}
.version-pill span{color:var(--mint);margin-left:5px}
.hero{position:relative;display:flex;align-items:center;min-height:276px;padding:45px 0 37px;overflow:hidden}
.hero-copy{position:relative;z-index:1;max-width:570px}
.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 18px;font:10px var(--mono);letter-spacing:.15em;color:var(--mint)}
.eyebrow-line{width:22px;height:1px;background:var(--mint);box-shadow:0 0 8px rgba(154,243,213,.55)}
.hero h1{margin:0;font-size:clamp(43px,5.4vw,70px);font-weight:600;line-height:.99;letter-spacing:-.075em}
.hero h1 span{background:linear-gradient(100deg,#f0f5ff 0%,#9af3d5 60%,#9eafff 110%);background-clip:text;-webkit-background-clip:text;color:transparent}
.hero-copy>p{max-width:470px;margin:18px 0 19px;color:#9aa6ba;font-size:13px;line-height:1.9}
.hero-meta{display:flex;align-items:center;gap:9px;font:9px var(--mono);letter-spacing:.1em;color:#77849a}
.meta-icon{color:var(--mint);font-size:14px}.meta-separator{color:#455269}
.hero-orbit-art{position:absolute;right:5.5%;top:50%;width:340px;height:240px;transform:translateY(-50%);opacity:.84;pointer-events:none}
.orbit{position:absolute;left:50%;top:50%;border:1px solid rgba(141,169,211,.2);border-radius:50%;transform:translate(-50%,-50%) rotate(-27deg)}
.orbit-one{width:290px;height:105px}.orbit-two{width:255px;height:165px;transform:translate(-50%,-50%) rotate(48deg);border-color:rgba(154,243,213,.22)}.orbit-three{width:190px;height:190px;border-style:dashed;border-color:rgba(140,167,255,.2)}
.orbit-core{position:absolute;left:50%;top:50%;width:78px;height:78px;transform:translate(-50%,-50%);border:1px solid rgba(154,243,213,.65);border-radius:27px;background:radial-gradient(circle at 32% 22%,rgba(219,255,244,.35),rgba(88,180,161,.1) 45%,rgba(112,136,255,.14));box-shadow:inset -10px -12px 24px rgba(140,167,255,.12),0 0 55px rgba(100,226,199,.14);rotate:26deg}
.orbit-core:before,.orbit-core:after{content:"";position:absolute;inset:10px;border:1px solid rgba(154,243,213,.55);border-radius:20px;transform:rotate(45deg)}
.orbit-core:after{inset:18px;border-color:rgba(140,167,255,.5);transform:rotate(-22deg)}
.orbit-node{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--mint);box-shadow:0 0 17px rgba(154,243,213,.9)}
.node-one{top:34px;left:82px}.node-two{bottom:27px;right:54px;background:var(--blue);box-shadow:0 0 17px rgba(140,167,255,.9)}
.art-coordinate{position:absolute;font:9px var(--mono);letter-spacing:.05em;color:#71829d}.art-coordinate b{font-weight:400;color:#b7c8de}.coordinate-one{top:19px;right:6px}.coordinate-two{bottom:12px;left:2px}
.studio-heading{display:flex;align-items:center;justify-content:space-between;padding:18px 0 14px;border-top:1px solid var(--line)}
.studio-heading>div:first-child{display:flex;align-items:center;gap:14px}
.section-index{display:grid;place-items:center;width:28px;height:28px;border:1px solid rgba(154,243,213,.28);border-radius:8px;color:var(--mint);font:10px var(--mono);background:rgba(154,243,213,.035)}
.studio-heading h2,.deck-intro h2{margin:0;font-size:14px;font-weight:650;letter-spacing:-.025em}
.studio-heading p{margin:4px 0 0;color:var(--muted);font-size:11px}
.scene-readout{display:grid;gap:5px;text-align:right}
.readout-label{font:8px var(--mono);letter-spacing:.13em;color:var(--quiet)}
.readout-value{display:flex;align-items:center;justify-content:flex-end;gap:8px;font-size:10px;color:#b5c5d6}.readout-value i{width:5px;height:5px}
.view-grid{display:grid;grid-template-columns:minmax(0,1.24fr) minmax(0,1fr);gap:14px}
.view-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:linear-gradient(150deg,rgba(20,28,41,.94),rgba(11,15,23,.97));box-shadow:0 12px 40px rgba(0,0,0,.13);transition:border-color .25s,transform .25s,box-shadow .25s}
.view-card:hover{border-color:rgba(154,243,213,.25);box-shadow:0 15px 48px rgba(0,0,0,.2)}
.view-primary{border-color:rgba(154,243,213,.2);box-shadow:0 12px 44px rgba(0,0,0,.18),inset 0 1px rgba(154,243,213,.04)}
.view-heading{display:flex;align-items:center;justify-content:space-between;min-height:69px;padding:12px 17px;border-bottom:1px solid var(--line)}
.camera-title{display:flex;align-items:center;gap:11px}
.camera-number{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line-hi);border-radius:8px;color:#a8b8ce;font:10px var(--mono);background:rgba(255,255,255,.015)}
.view-primary .camera-number{color:var(--mint);border-color:rgba(154,243,213,.3);background:rgba(154,243,213,.045)}
.camera-title h3{margin:0;font-size:12px;font-weight:650;letter-spacing:-.015em}.camera-title p{margin:3px 0 0;font-size:10px;color:var(--muted)}
.live-tag,.mini-live{display:flex;align-items:center;gap:7px;font:8px var(--mono);letter-spacing:.12em;color:var(--mint)}
.live-tag i{width:5px;height:5px}.mini-live{color:#8494ab}
.secondary-views{display:grid;grid-template-rows:1fr 1fr;gap:14px;min-height:0}
.viewport{position:relative;min-height:180px;height:calc((100% - 14px - 138px)/2);background:radial-gradient(ellipse at 50% 44%,rgba(30,51,74,.62),rgba(11,16,25,.97) 72%);overflow:hidden;isolation:isolate}
.view-primary .viewport{height:100%;min-height:400px;cursor:grab;touch-action:pan-y}
.view-primary .viewport:active{cursor:grabbing}
.viewport:after{content:"";position:absolute;z-index:0;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(7,10,16,.05),transparent 28%,transparent 72%,rgba(7,10,16,.2))}
.viewport canvas{position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;outline:none}
.viewport-overlay{position:absolute;z-index:2;left:14px;right:14px;display:flex;justify-content:space-between;align-items:center;pointer-events:none;font:8px var(--mono);letter-spacing:.12em;color:rgba(162,182,211,.55)}
.overlay-top{top:13px}.overlay-bottom{bottom:13px}
.axis-mark{display:flex;align-items:center;gap:7px}.axis-mark i{display:block;width:5px;height:5px;border-radius:50%;background:var(--mint);box-shadow:0 0 7px var(--mint)}
.crosshair{font-size:17px;color:rgba(154,243,213,.5)}
.view-footer{display:flex;justify-content:space-between;align-items:center;padding:11px 15px;border-top:1px solid var(--line);font:8px var(--mono);letter-spacing:.09em;color:#75839a}
.view-footer>span:first-child{display:flex;align-items:center;gap:7px}
.footer-dot{width:4px;height:4px;border-radius:50%;background:#73849c}
.view-primary .footer-dot{background:var(--mint);box-shadow:0 0 8px rgba(154,243,213,.5)}
.control-deck{display:flex;align-items:center;gap:23px;margin-top:15px;padding:18px 20px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(110deg,rgba(19,27,40,.9),rgba(12,17,26,.96));box-shadow:0 12px 34px rgba(0,0,0,.1)}
.deck-intro{display:flex;align-items:center;gap:11px;flex-shrink:0}
.deck-icon{display:grid;place-items:center;width:35px;height:35px;border:1px solid rgba(154,243,213,.25);border-radius:10px;color:var(--mint);font-size:21px;background:rgba(154,243,213,.045)}
.deck-kicker{display:block;margin-bottom:4px;font:8px var(--mono);letter-spacing:.14em;color:var(--mint)}
.deck-intro h2{font-size:12px;white-space:nowrap}
.deck-divider{align-self:stretch;width:1px;min-height:38px;background:var(--line)}
.speed-control{display:grid;gap:8px;flex:1;min-width:135px}
.speed-label{display:flex;justify-content:space-between;align-items:center;font:8px var(--mono);letter-spacing:.1em;color:#9eacc0}
.speed-label output{font-size:10px;color:var(--mint);letter-spacing:0}
input[type=range]{display:block;width:100%;height:4px;margin:1px 0 0;border-radius:10px;appearance:none;background:linear-gradient(90deg,rgba(154,243,213,.45),rgba(154,243,213,.08));cursor:pointer}
input[type=range]::-webkit-slider-thumb{width:13px;height:13px;appearance:none;border:2px solid #0d151b;border-radius:50%;background:var(--mint);box-shadow:0 0 0 3px rgba(154,243,213,.13),0 0 12px rgba(154,243,213,.25)}
input[type=range]::-moz-range-thumb{width:10px;height:10px;border:2px solid #0d151b;border-radius:50%;background:var(--mint);box-shadow:0 0 0 3px rgba(154,243,213,.13)}
.range-ends{display:flex;justify-content:space-between;font:7px var(--mono);letter-spacing:.12em;color:#5e6c81}
.action-group{display:flex;align-items:center;gap:8px}
.button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:0 13px;border:1px solid var(--line-hi);border-radius:8px;white-space:nowrap;font-size:10px;font-weight:650;cursor:pointer;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s}
.button:active{transform:translateY(1px) scale(.99)}
.button:focus-visible,input:focus-visible{outline:2px solid var(--mint);outline-offset:3px}
.button-primary{color:#07140f;border-color:#9af3d5;background:linear-gradient(135deg,#a8f7dd,#83e6ca);box-shadow:0 4px 18px rgba(116,228,194,.09)}
.button-primary:hover{background:#b7ffe9;box-shadow:0 5px 24px rgba(116,228,194,.18)}
.button-secondary{color:#c1ccdc;background:rgba(255,255,255,.025)}
.button-secondary:hover{border-color:rgba(154,243,213,.4);background:rgba(154,243,213,.045)}
.button-icon{font-size:14px;line-height:1}
.keyboard-hint{display:flex;align-items:center;gap:5px;margin-left:auto;flex-shrink:0}
.keyboard-hint>span{margin-right:4px;font:7px var(--mono);letter-spacing:.1em;color:#5d6a7f}
kbd{display:grid;place-items:center;min-width:23px;height:22px;padding:0 5px;border:1px solid var(--line-hi);border-radius:5px;background:rgba(255,255,255,.025);font:9px var(--mono);color:#8e9db2}
.footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:21px 0 26px;color:#647188}
.footer-brand,.footer-stats,.footer-stats>span{display:flex;align-items:center;gap:8px}
.footer-brand{font-size:10px;color:#8a96a9}
.footer-mark{display:grid;place-items:center;width:21px;height:21px;border:1px solid var(--line-hi);border-radius:6px;color:var(--mint);font:10px var(--mono)}
.footer-stats{gap:17px;font:8px var(--mono);letter-spacing:.08em}
.footer-stats>span:first-child i{width:4px;height:4px}
.footer-stats b{font-weight:400;color:#b6c3d7}
.footer-stats>span:last-child{color:#8491a6}
.footer-note{font:8px var(--mono);letter-spacing:.12em;color:#67748a}.footer-note b{color:var(--mint);font-weight:400}
@keyframes status-pulse{0%,100%{opacity:1}50%{opacity:.45}}
@media(min-width:1200px){.view-primary .viewport{min-height:438px}.viewport:not(.viewport-primary){min-height:186px}}
@media(max-width:1100px){.app-shell{width:calc(100% - 42px)}.hero-orbit-art{right:0;opacity:.52}.control-deck{gap:15px;padding:16px}.keyboard-hint{display:none}.deck-intro h2{white-space:normal}.deck-divider-small{display:none}}
@media(max-width:820px){.app-shell{width:calc(100% - 32px)}.hero{min-height:250px}.hero-orbit-art{right:-75px;opacity:.28}.view-grid{grid-template-columns:1fr}.view-primary .viewport{min-height:360px;height:360px}.secondary-views{grid-template-columns:1fr 1fr;grid-template-rows:auto}.secondary-views .viewport{height:210px;min-height:210px}.control-deck{flex-wrap:wrap;gap:16px}.deck-intro{flex:1}.deck-divider{display:none}.speed-control{flex:1 1 190px;max-width:none}.action-group{flex:1 1 100%;justify-content:flex-end}.footer{flex-wrap:wrap}.footer-stats{order:3;width:100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:14px}}
@media(max-width:560px){.app-shell{width:calc(100% - 24px)}.topbar{height:65px}.brand{gap:9px}.brand-name{font-size:15px}.brand-product{font-size:8px}.topbar-right{gap:9px}.session-label{font-size:8px;letter-spacing:0}.version-pill{font-size:8px;padding:6px}.hero{min-height:0;padding:40px 0 31px}.hero h1{font-size:clamp(45px,13vw,62px)}.hero-copy>p{max-width:340px;font-size:12px;line-height:1.8}.hero-meta{font-size:7px;gap:6px}.hero-orbit-art{right:-155px;top:55%;opacity:.18}.studio-heading{align-items:flex-end;gap:8px}.studio-heading h2{font-size:12px}.studio-heading p{max-width:210px;font-size:10px;line-height:1.5}.section-index{width:25px;height:25px}.readout-label{font-size:7px}.readout-value{font-size:9px}.view-grid{gap:11px}.view-heading{min-height:62px;padding:11px 13px}.view-primary .viewport{min-height:290px;height:290px}.secondary-views{gap:11px}.secondary-views .view-heading{align-items:flex-start;padding:10px}.secondary-views .camera-title{gap:7px}.secondary-views .camera-number{width:25px;height:25px;font-size:9px}.secondary-views .camera-title h3{font-size:11px}.secondary-views .camera-title p{font-size:9px}.secondary-views .mini-live{font-size:7px;padding-top:4px}.secondary-views .viewport{height:170px;min-height:170px}.view-footer{padding:10px;font-size:7px;letter-spacing:.04em}.viewport-overlay{left:10px;right:10px;font-size:7px}.overlay-top{top:10px}.overlay-bottom{bottom:10px}.control-deck{margin-top:11px;padding:15px;gap:15px}.deck-intro{flex:1 1 100%}.deck-intro h2{font-size:12px}.speed-control{flex:1 1 100%}.action-group{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:8px}.button{padding:0 8px;font-size:9px}.footer{padding:17px 0 23px}.footer-brand{font-size:9px}.footer-note{font-size:7px}.footer-stats{gap:8px;font-size:7px;letter-spacing:0}.footer-stats>span{gap:5px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}


/* Sculpture and scene controls */
.shape-control{display:grid;gap:8px;min-width:155px}
.shape-control select{width:100%;min-height:34px;padding:0 28px 0 10px;border:1px solid var(--line-hi);border-radius:7px;color:#c9d7e9;background:#101722;font-size:10px;outline-offset:3px}
.scene-toggles{display:flex;align-items:center;gap:7px}
.scene-toggles .button{min-height:34px;padding:0 10px;font-size:9px}
.scene-toggles .button[aria-pressed="true"]{border-color:rgba(154,243,213,.42);color:var(--mint);background:rgba(154,243,213,.07)}
@media(max-width:1100px){.shape-control{flex:1 1 180px}.scene-toggles{flex:1 1 100%;justify-content:flex-end}}
@media(max-width:560px){.shape-control{flex:1 1 100%}.scene-toggles{justify-content:stretch}.scene-toggles .button{flex:1}}
