:root{
  --ink:#101314;
  --paper:#f3f1e9;
  --line:rgba(243,241,233,.18);
  --muted:#9da29f;
  --orange:#ff6038;
  --acid:#d9ff35;
  --blue:#8da8ff;
  --rail:clamp(208px,18vw,292px);
  --mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  --sans:"Helvetica Neue",Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html{background:var(--ink);scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);overflow:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit}
.grain{position:fixed;inset:0;z-index:100;pointer-events:none;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitchTiles'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}
.project-rail{position:fixed;z-index:80;inset:0 auto 0 0;width:var(--rail);display:flex;flex-direction:column;background:#0d1112;border-right:1px solid var(--line);padding:22px 17px 16px}
.rail-home{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.rail-home b{font-size:36px;line-height:.9;letter-spacing:-.08em}
.rail-home span{max-width:72px;font:8px/1.25 var(--mono);letter-spacing:.09em;text-align:right;color:var(--muted)}
.rail-nav{display:flex;flex-direction:column;margin-top:18px;border-top:1px solid var(--line)}
.rail-nav a{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:baseline;padding:12px 0;border-bottom:1px solid var(--line);font-size:clamp(18px,1.6vw,27px);line-height:.95;letter-spacing:-.045em;transition:color .18s,transform .18s}
.rail-nav a i{font:8px var(--mono);font-style:normal;letter-spacing:0;color:#666d6a}
.rail-nav a:hover,.rail-nav a.is-current{color:var(--orange);transform:translateX(4px)}
.rail-nav a.is-current i{color:inherit}
.july-stop-sensors{margin:12px 0 0;padding:10px 11px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.045);color:#d7ddd8;font:8px/1.2 var(--mono);letter-spacing:.075em;text-align:left;text-transform:uppercase;cursor:pointer;transition:.18s ease}
.july-stop-sensors:hover{border-color:var(--orange);background:var(--orange);color:#111}
.july-stop-sensors[hidden]{display:none}
.rail-story{margin-top:auto;min-height:188px;padding:14px 0 4px;border-top:1px solid var(--line);opacity:0;transform:translateX(20px);pointer-events:none;transition:opacity .55s ease,transform .68s cubic-bezier(.2,.7,.2,1)}
.rail-story.is-visible{opacity:1;transform:none}
.rail-story-meta{display:flex;justify-content:space-between;gap:8px;margin-bottom:11px;color:#777e7a;font:7px/1.2 var(--mono);letter-spacing:.075em;text-transform:uppercase}
.rail-story>strong{display:block;margin-bottom:10px;color:var(--orange);font-size:15px;line-height:1;letter-spacing:-.035em;font-weight:500}
.rail-story p{min-height:88px;margin:0;color:#c9cdca;font:10px/1.48 var(--mono);letter-spacing:.005em;white-space:pre-line;opacity:1;transform:none;transition:opacity .34s ease,transform .34s ease}
.rail-story.is-swapping p{opacity:0;transform:translateY(7px)}

.rail-foot{margin-top:12px;display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:10px;font:8px/1.3 var(--mono);letter-spacing:.05em;color:#747a77}
.stage-scroll{position:fixed;left:var(--rail);right:0;top:0;bottom:0;overflow-y:auto;overflow-x:hidden;scroll-snap-type:y mandatory;scroll-behavior:smooth;overscroll-behavior-y:contain;background:#111;scrollbar-width:none}
.stage-scroll::-webkit-scrollbar{display:none}
.stage{position:relative;width:100%;height:100dvh;min-height:620px;overflow:hidden;scroll-snap-align:start;scroll-snap-stop:always}
.splash{background:#f1efe7;color:#111;display:flex;flex-direction:column;padding:24px clamp(22px,3.2vw,54px) 28px}
.splash-grid{position:absolute;inset:0;opacity:.24;background:linear-gradient(#111 1px,transparent 1px),linear-gradient(90deg,#111 1px,transparent 1px);background-size:7.5vw 7.5vw;mask-image:linear-gradient(to bottom,#000,transparent 68%)}
.splash:after{content:"";position:absolute;width:38vw;aspect-ratio:1;border-radius:50%;right:-8vw;bottom:-18vw;background:var(--orange);filter:saturate(1.05)}
.splash-meta{position:relative;z-index:2;display:flex;justify-content:space-between;border-bottom:1px solid #111;padding-bottom:9px;font:9px var(--mono);letter-spacing:.07em}
.splash-title{position:relative;z-index:2;display:flex;flex-direction:column;margin:auto 0;font-size:clamp(66px,11.2vw,180px);font-weight:600;line-height:.69;letter-spacing:-.085em}
.splash-title em{font-style:normal;color:var(--orange)}
.splash-bottom{position:relative;z-index:2;width:min(760px,67%);margin-left:auto;display:grid;grid-template-columns:1.6fr 1fr;gap:44px;align-items:end}
.splash-bottom p{margin:0;font-size:clamp(15px,1.35vw,22px);line-height:1.08;letter-spacing:-.025em}
.splash-bottom p:last-child{font:9px/1.45 var(--mono);letter-spacing:.02em;text-transform:uppercase}
.scroll-cue{position:absolute;z-index:3;left:clamp(22px,3.2vw,54px);bottom:28px;font:9px var(--mono);letter-spacing:.06em}
.scroll-cue b{display:inline-block;margin-left:8px;font-size:14px;animation:bob 1.6s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(5px)}}
.project-stage{background:#111}
.stage-surface,.live-host{position:absolute;inset:0;width:100%;height:100%}
.live-host{overflow:hidden;background:#0d0f10}
.live-frame{position:absolute;left:0;top:0;width:1440px;height:900px;max-width:none;border:0;background:#101213;transform-origin:0 0;pointer-events:none}.live-stage.is-interacting .live-frame{pointer-events:auto}
.stage-overlay{position:absolute;z-index:12;left:clamp(20px,3vw,48px);bottom:clamp(22px,4vw,58px);width:min(590px,62%);padding:20px 22px 22px;background:rgba(12,15,16,.88);color:#f5f2eb;border:1px solid rgba(255,255,255,.24);backdrop-filter:blur(16px);box-shadow:0 24px 70px rgba(0,0,0,.27);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.stage-overlay.is-faded{opacity:0;transform:translateY(16px);pointer-events:none}.stage-overlay.is-docking{opacity:0;transform:translateX(-110px) scale(.985);pointer-events:none;transition-duration:.68s}
.overlay-index{display:block;margin-bottom:28px;color:#aab0ac;font:9px var(--mono);letter-spacing:.09em}
.stage-overlay h2{margin:0;font-size:clamp(48px,7vw,102px);line-height:.73;letter-spacing:-.075em;font-weight:500}
.stage-overlay p{max-width:43ch;margin:24px 0 0;font-size:clamp(14px,1.15vw,18px);line-height:1.25;letter-spacing:-.01em;color:#d1d3cf}
.overlay-actions{display:flex;align-items:center;gap:15px;margin-top:22px;flex-wrap:wrap}
.stage-link{display:inline-flex;margin-top:22px;border:1px solid rgba(255,255,255,.4);padding:9px 11px;font:9px var(--mono);letter-spacing:.06em;text-transform:uppercase;transition:.18s}
.overlay-actions .stage-link{margin-top:0}
.stage-link:hover{background:var(--orange);border-color:var(--orange);color:#111}
.availability{font:8px var(--mono);letter-spacing:.07em;color:#9fa5a1;text-transform:uppercase}
.availability.is-live{color:var(--acid)}
.is-hidden{display:none!important}
.info-toggle{position:absolute;z-index:14;top:16px;right:16px;border:1px solid rgba(255,255,255,.42);background:rgba(10,12,13,.76);color:#fff;padding:8px 10px;font:8px var(--mono);letter-spacing:.08em;cursor:pointer;backdrop-filter:blur(12px)}
.info-toggle:hover{background:#fff;color:#111}
.vintage-surface{background:#e6e2d7;color:#111}
.vintage-shot{position:absolute;inset:5%;overflow:hidden;border:1px solid #111;background:#f4f1e8;box-shadow:0 30px 80px rgba(0,0,0,.2);padding:clamp(22px,3vw,48px);opacity:0;transform:translateY(5%) scale(.985);animation:vintage-cycle 15s infinite}
.vintage-shot:nth-child(2){animation-delay:5s}
.vintage-shot:nth-child(3){animation-delay:10s}
@keyframes vintage-cycle{0%{opacity:0;transform:translateY(5%) scale(.985)}5%,29%{opacity:1;transform:none}34%,100%{opacity:0;transform:translateY(-3%) scale(1.008)}}
.shot-top{display:flex;justify-content:space-between;border-bottom:2px solid #111;padding-bottom:9px;font:9px var(--mono);letter-spacing:.08em}
.vintage-shot>strong{position:absolute;left:clamp(22px,3vw,48px);bottom:clamp(22px,3vw,48px);font-size:clamp(40px,6.4vw,104px);line-height:.77;letter-spacing:-.07em}
.shot-metrics{display:grid;grid-template-columns:repeat(3,1fr);margin-top:30px;border:1px solid #111}
.shot-metrics span{display:grid;gap:7px;padding:15px;border-right:1px solid #111}
.shot-metrics span:last-child{border:0}
.shot-metrics small{font:8px var(--mono)}
.shot-metrics b{font-size:clamp(26px,3.7vw,56px);letter-spacing:-.06em}
.shot-table{width:55%;margin-top:22px;border-top:1px solid #111}
.shot-table i{display:block;height:25px;border-bottom:1px solid rgba(17,17,17,.3);background:linear-gradient(90deg,#111 0 13%,transparent 13% 18%,#aaa 18% 38%,transparent 38% 44%,#bbb 44% 67%,transparent 67%)}
.traffic-chart{height:36%;margin-top:34px;display:flex;align-items:end;gap:8px;border-bottom:1px solid #111}
.traffic-chart i{flex:1;background:#111;height:var(--h,40%)}
.traffic-chart i:nth-child(1){height:25%}.traffic-chart i:nth-child(2){height:44%}.traffic-chart i:nth-child(3){height:39%}.traffic-chart i:nth-child(4){height:68%}.traffic-chart i:nth-child(5){height:77%}.traffic-chart i:nth-child(6){height:48%}.traffic-chart i:nth-child(7){height:91%}.traffic-chart i:nth-child(8){height:63%}.traffic-chart i:nth-child(9){height:72%}.traffic-chart i:nth-child(10){height:54%}.traffic-chart i:nth-child(11){height:83%}.traffic-chart i:nth-child(12){height:96%;background:var(--orange)}
.traffic-notes{display:flex;gap:6px;margin-top:8px;font:8px var(--mono)}
.traffic-notes span{border:1px solid #111;padding:6px}
.agent-dialog{width:min(650px,68%);margin:5vh 0 0 auto;border:1px solid #111;background:#fff;padding:18px}
.agent-dialog p{margin:0;padding:15px 0;border-bottom:1px solid #ccc;font-size:clamp(14px,1.3vw,19px)}
.agent-dialog small{display:block;margin-bottom:7px;font:8px var(--mono);color:#777}
.agent-dialog .agent-action{display:flex;justify-content:space-between;border:0;background:#111;color:white;padding:13px;font:9px var(--mono);letter-spacing:.06em}
.agent-action b{color:var(--acid)}
.vintage-progress{position:absolute;right:3%;bottom:2%;display:flex;gap:5px}
.vintage-progress i{width:35px;height:3px;background:rgba(0,0,0,.2);overflow:hidden}
.vintage-progress i:after{content:"";display:block;width:100%;height:100%;background:#111;transform-origin:left;animation:progress 15s linear infinite}
.vintage-progress i:nth-child(2):after{animation-delay:5s}.vintage-progress i:nth-child(3):after{animation-delay:10s}
@keyframes progress{0%{transform:scaleX(0)}33%{transform:scaleX(1)}34%,100%{transform:scaleX(0)}}
.ouro-surface{background:#171717;color:#e8e8e8;padding:0;font:12px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace}
.ouro-sim{--ob-bg:#171717;--ob-panel:#1b1b1b;--ob-ink:#e8e8e8;--ob-muted:#8e8e8e;--ob-line:#3a3a3a;--ob-accent:#a6d94f;--ob-danger:#e06969}
.ob-channel-bar{height:38px;display:flex;align-items:center;gap:5px;padding:5px 8px;border-bottom:1px solid var(--ob-line);background:#151515;overflow:hidden}
.ob-channel{height:27px;border:1px solid #343434;border-radius:2px;background:#1e1e1e;color:#a9a9a9;padding:0 9px;font:9px ui-monospace,monospace;cursor:pointer}
.ob-channel.active{border-color:#5b7634;background:#22281d;color:var(--ob-accent)}
.ob-channel-note{margin-left:auto;white-space:nowrap;color:#666;font-size:8px;letter-spacing:.045em}
.ob-workspace{position:absolute;inset:38px 0 0;display:grid;grid-template-rows:39px 1fr;min-height:0}
.ob-panel-menu{display:flex;align-items:center;gap:4px;min-width:0;padding:5px 7px;border-bottom:1px solid var(--ob-line);background:#191919;overflow:hidden}
.ob-panel-menu button,.ob-panel-menu input,.ob-panel-menu output,.ob-compose button,.ob-compose input,.ob-compose select,.ob-action{border:1px solid var(--ob-line);border-radius:2px;background:#151515;color:var(--ob-ink);padding:5px 7px;font:9px ui-monospace,monospace}.ob-panel-menu button{white-space:nowrap;padding:5px 6px}.ob-panel-menu button span{font-weight:700;margin-right:2px}.ob-panel-menu button.is-closed{color:#868686}
.ob-panel-menu button,.ob-compose button,.ob-action{cursor:pointer}
.ob-panel-menu button.active{color:var(--ob-accent);border-color:#5d7438}
.ob-grip{color:#666;padding:0 4px}
.ob-grid{display:grid;grid-template-columns:minmax(245px,.78fr) minmax(360px,1.18fr) minmax(255px,.62fr);gap:8px;padding:8px;min-height:0;height:100%}
.ob-console{border:1px solid var(--ob-line);border-radius:3px;background:var(--ob-panel);min-width:0;min-height:0;overflow:hidden}
.ob-heading{height:34px;display:flex;align-items:center;gap:10px;padding:0 9px;border-bottom:1px solid var(--ob-line)}
.ob-heading h3{margin:0;font-size:10px;font-weight:500}.ob-heading span{color:var(--ob-accent);font-size:8px}.ob-heading b{margin-left:auto;color:#686868;font-size:7px;font-weight:400}
.ob-terminal-console{display:grid;grid-template-rows:34px minmax(0,1fr) 28px;background:#161616}
.ob-terminal-stream{min-height:0;overflow:hidden;padding:6px 8px;background:#141414;color:#b8b8b8;font:8px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}
.ob-terminal-line{display:grid;grid-template-columns:52px 66px minmax(0,1fr);gap:5px;padding:3px 0;border-bottom:1px dotted #242424;animation:ob-terminal-in .22s ease}
.ob-terminal-line time{color:#555}.ob-terminal-line b{color:var(--ob-accent);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ob-terminal-line code{font:inherit;color:#c8c8c8;white-space:normal;overflow-wrap:anywhere}
.ob-terminal-line.result code{color:#8d9789}.ob-terminal-line.warn code{color:#d59a68}.ob-terminal-line.auth code{color:#b4c7e7}
.ob-terminal-line .ob-exit{color:#666;margin-left:5px}
.ob-terminal-prompt{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:7px;padding:0 8px;border-top:1px solid #292929;color:#777;font:8px ui-monospace,monospace}
.ob-terminal-prompt span{color:var(--ob-accent)}.ob-terminal-prompt i{height:1px;background:#2e2e2e}.ob-terminal-prompt b{font-weight:400;color:#555}
@keyframes ob-terminal-in{from{opacity:0;transform:translateY(3px)}}
.ob-chat-console{display:grid;grid-template-rows:34px auto minmax(0,1fr) 37px 25px}
.ob-review-context{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 10px;padding:8px 10px;border-bottom:1px solid #303030;background:#181a17}
.ob-review-context span{grid-row:1/3;color:var(--ob-accent);border:1px solid #526a31;padding:5px 7px;font-size:7px;letter-spacing:.05em}
.ob-review-context strong{font-size:10px;font-weight:500}.ob-review-context small{color:var(--ob-muted);font-size:7px}
.ob-thread{min-height:0;overflow:hidden;padding:3px 9px;background:#191919}
.ob-message{display:grid;grid-template-columns:minmax(128px,.34fr) minmax(0,1fr);gap:10px;padding:10px 2px;border-bottom:1px dotted #303030;animation:ob-msg-in .28s ease}
.ob-message-head{min-width:0}.ob-message-head>div{display:flex;align-items:baseline;gap:7px}.ob-message time{color:#666;font-size:8px}.ob-message b{color:var(--ob-accent);font-size:9px;font-weight:500}.ob-message p{margin:0;color:#d0d0d0;font-size:9px;line-height:1.48}.ob-message-meta{display:block;margin-top:5px;color:#696969;font-size:7px;line-height:1.35;overflow-wrap:anywhere}.ob-message p small{display:block;margin-top:6px;color:#515151;font-size:7px}
@keyframes ob-msg-in{from{opacity:0;transform:translateY(4px)}}
.ob-compose{display:grid;grid-template-columns:auto 76px auto minmax(0,1fr) auto auto;align-items:center;gap:5px;padding:5px 8px;border-top:1px solid var(--ob-line)}
.ob-compose label{color:#777;font-size:8px}.ob-compose input{min-width:0}
.ob-footer-line{display:flex;align-items:center;justify-content:space-between;padding:0 9px;border-top:1px solid #292929;color:#666;font-size:7px}
.ob-right-stack{display:grid;grid-template-rows:82px minmax(100px,.7fr) 82px minmax(168px,1.35fr) 100px;gap:8px;min-height:0}
.ob-authority{padding-bottom:7px}.ob-authority-row{display:grid;grid-template-columns:62px 1fr auto;gap:7px;padding:5px 8px;border-bottom:1px dotted #303030;font-size:8px}.ob-authority-row b{color:var(--ob-accent);font-weight:500}.ob-authority-row em{color:#666;font-style:normal}.ob-authority .ob-action{margin:6px 8px 0;color:#777}
.ob-muted{margin:6px 8px;color:var(--ob-muted);font-size:8px}
.ob-agent-list{display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:4px 7px 7px}
.ob-agent-list button{display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:5px;border:1px solid #303030;background:#181818;color:#aaa;padding:5px 6px;text-align:left;font:8px ui-monospace,monospace;cursor:pointer}
.ob-agent-list button i{width:6px;height:6px;border-radius:50%;background:#555}.ob-agent-list button b{font-weight:500}.ob-agent-list button span{color:#666;font-size:7px}
.ob-agent-list button.is-speaking{border-color:#617e38;background:#20251c;color:#e8e8e8}.ob-agent-list button.is-speaking i{background:var(--ob-accent);box-shadow:0 0 8px rgba(166,217,79,.55)}.ob-agent-list button.is-speaking span{color:var(--ob-accent)}
.ob-git-row{padding:7px 8px}.ob-pill{display:inline-block;border:1px solid #404040;padding:2px 5px;margin-right:4px;color:#aaa;font-size:7px}.ob-pill.ok{border-color:#516b35;color:var(--ob-accent)}
.ob-git details{border-top:1px dotted #303030;padding:5px 8px;color:#aaa;font-size:8px}.ob-git summary{cursor:pointer}.ob-file{padding:4px 0;border-bottom:1px dotted #292929;color:#888}.ob-git .ob-action{margin:5px 8px}
.ob-status-console{display:grid;grid-template-rows:34px 25px repeat(3,minmax(0,1fr));min-height:0}
.ob-status-heading span{display:flex;align-items:center;gap:5px;font-weight:700;color:var(--ob-accent)}.ob-status-heading span i{width:6px;height:6px;border-radius:50%;background:var(--ob-accent);box-shadow:0 0 7px rgba(166,217,79,.5)}
.ob-status-controls{display:flex;align-items:center;gap:4px;padding:3px 7px;border-bottom:1px dotted #303030}.ob-status-controls button{border:1px solid #3a3a3a;background:#181818;color:#cfcfcf;padding:2px 5px;font:7px ui-monospace,monospace}.ob-status-controls button.active{border-color:#7ca53d;color:var(--ob-accent)}.ob-status-controls em{margin-left:auto;border:1px solid #607d36;color:var(--ob-accent);padding:1px 5px;font:7px ui-monospace,monospace;font-style:normal}
.ob-status-metric{min-height:0;padding:3px 7px;border-bottom:1px dotted #303030;overflow:hidden}.ob-status-metric:last-child{border-bottom:0}.ob-status-metric header{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:7px}.ob-status-metric header strong{font-weight:600;color:#ddd}.ob-status-metric header span{color:#888;white-space:nowrap}.ob-status-metric svg{display:block;width:100%;height:26px;margin:2px 0;overflow:visible}.ob-status-metric polyline{fill:none;stroke:#e4e4e4;stroke-width:1.6;vector-effect:non-scaling-stroke}.ob-status-metric polyline.secondary{stroke:#777;stroke-dasharray:5 4}.ob-status-metric polyline.token{stroke:#858585;stroke-width:1.2}.ob-status-metric p{margin:0;color:#777;font-size:6.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ob-activity-state{display:flex;justify-content:space-between;padding:7px 8px;font-size:8px}.ob-activity-state strong{color:var(--ob-accent);font-weight:500}.ob-activity-state span{color:#777}
.ob-mini-chart{height:43px;display:flex;align-items:flex-end;gap:2px;padding:4px 8px}.ob-mini-chart i{flex:1;background:#6f923e;opacity:.72}
.ob-sim-toast{position:absolute;z-index:30;left:50%;bottom:18px;transform:translate(-50%,18px);max-width:min(520px,80%);padding:10px 13px;border:1px solid #66863a;border-radius:3px;background:#1e241b;color:#dff6b6;font:9px/1.35 ui-monospace,monospace;opacity:0;pointer-events:none;transition:opacity .18s,transform .18s;box-shadow:0 10px 35px rgba(0,0,0,.45)}
.ob-sim-toast.show{opacity:1;transform:translate(-50%,0)}
.ouro-sim button,.ouro-sim input,.ouro-sim select,.ouro-sim summary{user-select:none}
.july-surface{background:#101426;padding:2.5%;display:grid;place-items:center}
.july-shot{width:100%;height:100%;border:1px solid #46558f;background:#111522;color:#cfd6ff;box-shadow:0 30px 90px rgba(0,0,0,.35);display:grid;grid-template-rows:42px 1fr}
.july-shot-bar{display:flex;justify-content:space-between;align-items:center;padding:0 12px;border-bottom:1px solid #46558f;font:8px var(--mono);letter-spacing:.06em}
.july-shot-bar i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--acid);box-shadow:0 0 12px var(--acid)}
.july-shot-main{display:grid;grid-template-columns:1.6fr .8fr;min-height:0}
.july-camera{position:relative;overflow:hidden;border-right:1px solid #46558f;background:radial-gradient(circle at 62% 40%,#34426e 0 6%,transparent 7%),linear-gradient(135deg,#202944,#0b0e19 65%)}
.camera-grid{position:absolute;inset:0;opacity:.18;background:linear-gradient(#8da8ff 1px,transparent 1px),linear-gradient(90deg,#8da8ff 1px,transparent 1px);background-size:44px 44px}
.camera-box{position:absolute;border:2px solid var(--acid)}
.camera-box span{position:absolute;left:-2px;top:-20px;background:var(--acid);color:#111;padding:4px 6px;font:7px var(--mono)}
.box-person{left:25%;top:16%;width:21%;height:65%}.box-laptop{right:14%;top:48%;width:28%;height:22%;border-color:var(--orange)}.box-laptop span{background:var(--orange)}
.camera-readout{position:absolute;left:12px;bottom:12px;display:grid;gap:3px;background:rgba(8,10,18,.76);border:1px solid #46558f;padding:8px;font:8px var(--mono)}
.camera-readout b{color:var(--acid)}
.july-side{display:grid;grid-template-rows:1fr 1fr .9fr;min-height:0}
.july-side section{min-height:0;overflow:hidden;border-bottom:1px solid #46558f}
.july-side header{height:29px;padding:8px 9px;border-bottom:1px solid #303c69;font:7px var(--mono);letter-spacing:.06em;color:#8898db}
.july-side svg{display:block;width:100%;height:calc(100% - 29px);fill:none;stroke:#8da8ff;stroke-width:2;filter:drop-shadow(0 0 5px #8da8ff)}
.spectrum div{height:calc(100% - 29px);display:flex;align-items:end;gap:2px;padding:8px}
.spectrum i{flex:1;height:var(--h);background:#8da8ff;opacity:.78}
.spectrum i:nth-child(-n+5){background:var(--acid)}
.july-events{font:7px var(--mono)}
.july-events p{margin:0;padding:5px 9px;border-bottom:1px solid #222a49;color:#8b96c7}
@media(max-width:900px){
  :root{--rail:82px}
  .project-rail{padding:14px 9px 10px}
  .rail-home{display:grid;justify-items:center}
  .rail-home b{font-size:27px}
  .rail-home span,.rail-nav a span,.rail-story,.rail-foot{display:none}\n  .july-stop-sensors{padding:8px 3px;font-size:6px;text-align:center;letter-spacing:0}
  .rail-nav{align-items:stretch}
  .rail-nav a{display:grid;grid-template-columns:1fr;place-items:center;padding:14px 0;font-size:0;transform:none!important}
  .rail-nav a i{font-size:9px}
  .rail-nav a.is-current{background:var(--orange);color:#111}
  .splash-title{font-size:clamp(57px,13vw,108px)}
  .splash-bottom{width:80%;grid-template-columns:1fr;gap:15px}
  .stage-overlay{width:min(560px,75%)}
  .ouro-layout{grid-template-columns:1fr}
  .ouro-graph{display:none}
  .july-shot-main{grid-template-columns:1fr}
  .july-side{display:none}
}
@media(max-width:600px){
  :root{--rail:58px}
  .stage{min-height:560px}
  .project-rail{padding:9px 6px}
  .rail-home{padding-bottom:12px}.rail-home b{font-size:21px}
  .rail-nav{margin-top:8px}.rail-nav a{padding:12px 0}
  .splash{padding:16px}
  .splash-meta span:last-child{display:none}
  .splash-title{font-size:15.5vw;line-height:.73}
  .splash-bottom{width:88%;margin:0 0 58px auto}.splash-bottom p{font-size:14px}
  .stage-overlay{left:12px;right:12px;bottom:14px;width:auto;padding:14px}
  .overlay-index{margin-bottom:18px}
  .stage-overlay h2{font-size:15vw}
  .stage-overlay p{margin-top:14px;font-size:13px}
  .info-toggle{right:9px;top:9px}
  .vintage-shot{inset:3%;padding:16px}
  .vintage-shot>strong{left:16px;bottom:16px;font-size:10vw}
  .shot-metrics{grid-template-columns:1fr}.shot-metrics span:nth-child(n+2){display:none}
  .shot-table{width:90%}.agent-dialog{width:94%;margin-top:35px}
  .ouro-surface{padding:8px}.ouro-panel{border:0}.ouro-metrics{grid-template-columns:1fr 1fr}.ouro-stream{font-size:7px}.ouro-event{grid-template-columns:65px 55px 1fr}
  .july-surface{padding:0}.july-shot{border:0}.july-shot-bar span:last-child{display:none}
}

@media(max-width:1100px){
  .ob-grid{grid-template-columns:minmax(220px,.72fr) minmax(340px,1.28fr)}
  .ob-right-stack{display:none}
}
@media(max-width:900px){
  .ob-grid{grid-template-columns:minmax(205px,.72fr) minmax(320px,1.28fr)}
  .ob-panel-menu button:nth-of-type(n+8){display:none}
}
@media(max-width:700px){
  .ob-grid{grid-template-columns:1fr}
  .ob-terminal-console{display:none}
}
@media(max-width:600px){
  .ob-channel:nth-of-type(n+3),.ob-channel-note{display:none}
  .ob-panel-menu input{display:none}
  .ob-message{grid-template-columns:105px minmax(0,1fr);gap:6px}
  .ob-message p{font-size:8px}
  .ob-compose{grid-template-columns:auto 62px auto minmax(0,1fr)}
  .ob-compose button:nth-last-child(-n+2){display:none}
  .ob-review-context small{display:none}
}


/* Phone browser: preserve the desktop/landscape composition even before rotation. */
.site-shell{position:fixed;inset:0;overflow:hidden}
.rotate-device-notice{display:none;position:fixed;z-index:1000;left:0;right:0;top:0;padding:calc(env(safe-area-inset-top,0px) + 12px) 12px 0;pointer-events:none}
.rotate-device-card{margin:0 auto;width:max-content;max-width:calc(100vw - 24px);display:flex;align-items:center;gap:11px;padding:9px 12px 9px 10px;border:1px solid rgba(255,255,255,.28);background:rgba(10,12,13,.88);color:#f4f2eb;backdrop-filter:blur(15px);box-shadow:0 10px 30px rgba(0,0,0,.32);font-family:var(--mono)}
.rotate-device-card strong{display:block;font-size:9px;letter-spacing:.09em}.rotate-device-card small{display:block;margin-top:2px;color:#a8adaa;font-size:7px;letter-spacing:.04em}
.rotate-device-icon{position:relative;width:31px;height:23px;display:block;flex:0 0 auto}.rotate-device-icon i{position:absolute;left:3px;top:2px;width:11px;height:19px;border:1px solid #f4f2eb;border-radius:2px;transform:rotate(-16deg)}.rotate-device-icon b{position:absolute;right:0;bottom:-2px;font-size:19px;font-weight:400;line-height:1;color:var(--orange)}
html.phone-portrait,html.phone-portrait body{width:100%;height:100%;overflow:hidden}
html.phone-portrait .site-shell{
  position:fixed;
  left:0;top:0;right:auto;bottom:auto;
  width:var(--landscape-w);
  height:var(--landscape-h);
  transform-origin:0 0;
  transform:translateX(var(--portrait-w)) rotate(90deg);
  overflow:hidden;
}
html.phone-portrait .rotate-device-notice{display:block}
html.phone-portrait{--rail:82px}
html.phone-portrait .stage{height:var(--landscape-h)!important;min-height:var(--landscape-h)!important}
html.phone-portrait .project-rail{padding:14px 9px 10px}
html.phone-portrait .rail-home{display:grid;justify-items:center;padding-bottom:22px}
html.phone-portrait .rail-home b{font-size:27px}
html.phone-portrait .rail-home span,html.phone-portrait .rail-nav a span,html.phone-portrait .rail-story,html.phone-portrait .rail-foot{display:none}\nhtml.phone-portrait .july-stop-sensors{padding:8px 3px;font-size:6px;text-align:center;letter-spacing:0}
html.phone-portrait .rail-nav{margin-top:18px;align-items:stretch}
html.phone-portrait .rail-nav a{display:grid;grid-template-columns:1fr;place-items:center;padding:14px 0;font-size:0;transform:none!important}
html.phone-portrait .rail-nav a i{font-size:9px}
html.phone-portrait .splash{padding:16px}
html.phone-portrait .splash-meta span:last-child{display:inline}
html.phone-portrait .splash-title{font-size:min(108px,calc(var(--landscape-w) * .13));line-height:.69}
html.phone-portrait .splash-bottom{width:80%;margin-left:auto;margin-bottom:0;grid-template-columns:1fr;gap:15px}
html.phone-portrait .stage-overlay{left:12px;right:auto;bottom:14px;width:min(560px,75%);padding:14px}
html.phone-portrait .stage-overlay h2{font-size:clamp(48px,10vw,82px)}
html.phone-portrait .info-toggle{right:9px;top:9px}
html.phone-portrait .vintage-shot{inset:5%;padding:22px}
html.phone-portrait .vintage-shot>strong{left:22px;bottom:22px;font-size:clamp(40px,7vw,76px)}
html.phone-portrait .shot-metrics{grid-template-columns:repeat(3,1fr)}
html.phone-portrait .shot-metrics span:nth-child(n+2){display:grid}
html.phone-portrait .agent-dialog{width:min(650px,68%);margin-top:5vh}
html.phone-portrait .ob-grid{grid-template-columns:minmax(205px,.72fr) minmax(320px,1.28fr)}
html.phone-portrait .ob-terminal-console{display:grid}
html.phone-portrait .ob-channel:nth-of-type(n+3){display:inline-block}
html.phone-portrait .ob-channel-note{display:inline}
html.phone-portrait .ob-message{grid-template-columns:minmax(128px,.34fr) minmax(0,1fr);gap:10px}
html.phone-portrait .ob-message p{font-size:9px}
html.phone-portrait .ob-compose{grid-template-columns:auto 76px auto minmax(0,1fr) auto auto}
html.phone-portrait .ob-compose button:nth-last-child(-n+2){display:block}
html.phone-portrait .ob-review-context small{display:inline}
@media(prefers-reduced-motion:reduce){
  .rotate-device-icon b{animation:none}
}
