/* Dimensional presentation; market data remains on a stable reading plane. */
:root{--accent:#87e8ed;--accent2:#c7b6ff}
body{background:radial-gradient(ellipse at 0% 0%,#12465370,transparent 45%),radial-gradient(ellipse at 100% 12%,#542c7050,transparent 42%),#080d18}
header{min-height:300px;padding:36px;background:linear-gradient(115deg,#173742ed,#141d34f5 55%,#302342e6);box-shadow:0 2px 0 #86d4e525,0 12px 0 -5px #07101f,0 28px 65px #0007,inset 0 1px #dcfaff30}
header::after{display:none}.hero-top{min-height:174px;padding-right:270px;align-items:flex-start;flex-direction:column;gap:18px;margin-bottom:24px}.hero-top h1{max-width:750px}.signal{padding:8px 13px;background:#0a142a90}.signal strong{display:inline;margin-right:12px}.controls{background:#0b142533;margin:0 -12px -12px;padding:18px 12px 12px;border-radius:12px}
.orbital-scene{position:absolute;right:35px;top:8px;width:260px;height:250px;pointer-events:none;perspective:750px}
.orbit-stage{position:absolute;inset:10px;transform-style:preserve-3d;transform:rotateX(var(--scene-x,-12deg)) rotateY(var(--scene-y,-18deg));transition:transform .25s ease-out}
.planet{position:absolute;inset:52px;border-radius:50%;overflow:hidden;background:radial-gradient(circle at 28% 23%,#c4fff5 0%,#5ececd 12%,#326e96 34%,#252948 65%,#0a1225 90%);box-shadow:inset -17px -14px 25px #030b2390,inset 3px 3px 10px #c1ffef88,0 0 45px #76e7e32b,25px 30px 45px #0008;transform:translateZ(15px)}
.planet-grid{position:absolute;inset:0;border-radius:50%;background:repeating-linear-gradient(0deg,transparent 0 19px,#c4fff322 20px 21px,transparent 22px 25px),repeating-linear-gradient(90deg,transparent 0 23px,#c4fff322 24px 25px,transparent 26px 30px);transform:rotate(-22deg) scale(1.15)}
.orbit{position:absolute;inset:15px;border:1px solid #88eae5a0;border-radius:50%;transform-style:preserve-3d;box-shadow:0 0 14px #5ffff012,inset 0 0 14px #5ffff012}
.orbit-one{transform:rotateX(68deg) rotateY(-15deg);border-width:2px}.orbit-two{inset:0;transform:rotateX(30deg) rotateY(64deg);border-color:#b6a4ff70}.orbit-three{inset:30px;transform:rotateX(-40deg) rotateY(35deg);border-style:dashed;border-color:#a8e5ff40}
.satellite{position:absolute;left:23px;top:111px;width:9px;height:9px;border-radius:50%;background:#c3fff3;box-shadow:0 0 20px #70ffda;transform:translateZ(48px)}
.orbit-caption{position:absolute;bottom:0;left:0;right:0;text-align:center;color:#b5d5e0;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase}
.metric,.panel,.tile{--tilt-x:0deg;--tilt-y:0deg;--light-x:50%;--light-y:0%;position:relative;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.metric,.panel{background:radial-gradient(circle at var(--light-x) var(--light-y),#8edeea12,transparent 65%),linear-gradient(140deg,#203647,#121c30 75%);border-color:#8dc5df30;box-shadow:0 1px 0 #ceeaff18 inset,0 8px 0 -3px #050b16,0 20px 35px #0005}
.metric::after{background:#8df4dc;box-shadow:0 0 22px #70f7d9}.metric .val{text-shadow:0 3px 0 #050c1d,0 0 28px #91edff17}.panel h3{color:#d8f4ff}.metric .label{color:#b5c8db}
.metric.is-tilting,.panel.is-tilting,.tile.is-tilting{transform:perspective(950px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) translateY(-5px);border-color:#a0e8ef85;box-shadow:0 1px 0 #dcffff35 inset,0 12px 0 -5px #050b16,0 26px 40px #0007;z-index:2}
.tile.is-tilting::before{background:radial-gradient(circle at var(--light-x) var(--light-y),#ffffff38,transparent 65%)}
.panel{overflow:hidden}.panel::after{content:"";position:absolute;pointer-events:none;right:0;top:0;width:55px;height:2px;background:linear-gradient(90deg,transparent,#a7f4ea80)}
.table-shell{box-shadow:0 1px 0 #d3f6ff1a inset,0 10px 0 -4px #040b16,0 25px 50px #0005}thead{background:linear-gradient(180deg,#243d51,#192b41)}
button.accent{background:linear-gradient(135deg,#226c79,#344e89);border-color:#75bfcb}button[aria-pressed="true"]{color:#adfff0;border-color:#68b9ae80}.chip.active{background:linear-gradient(125deg,#23667b,#494887);border-color:#99dbed}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){body:not(.motion-off) .orbit-one{animation:orbit-turn 24s linear infinite}body:not(.motion-off) .satellite{animation:beacon 4s ease-in-out infinite}}
@keyframes orbit-turn{from{transform:rotateX(68deg) rotateY(-15deg) rotateZ(0)}to{transform:rotateX(68deg) rotateY(-15deg) rotateZ(360deg)}}
@keyframes beacon{50%{box-shadow:0 0 32px #70ffda;opacity:.55}}
body.motion-off .metric:hover,body.motion-off .tile:hover,body.motion-off button:hover,body.motion-off button:active{transform:none}body.motion-off *,body.motion-off *::before,body.motion-off *::after{animation:none!important}.motion-off .orbit-stage{transform:rotateX(-12deg) rotateY(-18deg);transition:none}
@media(max-width:900px){header{padding:26px}.hero-top{padding-right:190px}.orbital-scene{width:200px;height:210px;right:20px;top:20px}.planet{inset:40px}.satellite{top:90px}.signal strong{display:block}}
@media(max-width:640px){header{padding:22px;min-height:0}.hero-top{padding-right:0;padding-top:0;min-height:0;display:block}.hero-top h1{max-width:100%;font-size:1.8rem}.orbital-scene{position:relative;margin:-12px auto 18px;right:auto;top:auto;width:190px;height:180px}.orbit-caption{bottom:-12px;font-size:.55rem}.signal{margin-top:18px}.signal strong{display:block}.controls{margin:0;padding:16px 0 0}.metric,.panel{box-shadow:0 6px 0 -3px #050b16,0 14px 26px #0004}}
@media(prefers-reduced-motion:reduce){.orbit-stage,.metric:hover,.tile:hover,button:hover,button:active{transform:none!important}}
/* Interactive research charts and performance tiles */
.visit-counter{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:15px 20px;margin:0 0 24px;border:1px solid #83c6d930;border-radius:12px;background:linear-gradient(120deg,#163638,#162039);box-shadow:0 6px 18px #0003;font-size:.8rem;color:var(--muted)}.visit-counter strong{font-size:1.3rem;color:#baffed;font-variant-numeric:tabular-nums}.visit-beacon{width:8px;height:8px;border-radius:50%;background:#87e8ed;box-shadow:0 0 12px #87e8ed66}.visit-help{margin-left:auto;font-size:.65rem}.visit-counter #visitStatus{font-size:.7rem}
.stock-drawer.chart-expanded{width:min(1050px,100vw)}
.chart-controls{display:flex;gap:7px;flex-wrap:wrap;margin:20px 0 14px}.chart-controls button:last-child{margin-left:auto}
.chart-summary{font-size:.8rem;color:var(--muted);margin-bottom:12px}.chart-summary strong{font-size:1.15rem}
.interactive-chart{display:block;width:100%;height:auto;touch-action:pan-y;background:#08152670;border:1px solid #82b5dc25;border-radius:12px}
#chartReadout{display:block;margin:12px 0;font-size:.9rem;font-variant-numeric:tabular-nums;color:#dcfaff;min-height:22px}
.chart-slider{width:100%;accent-color:#87e8ed;cursor:crosshair;min-height:28px}.chart-dates{display:flex;justify-content:space-between;color:var(--muted);font-size:.68rem}.chart-caption{color:var(--muted);font-size:.7rem;line-height:1.6;margin-top:12px}
.heat-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;background:#14263b;border:1px solid #83c6d930;padding:20px;border-radius:14px}.heat-toolbar strong{font-size:1.15rem}.heat-toolbar p{color:var(--muted);font-size:.75rem;margin-top:7px}.heat-toolbar label{font-size:.8rem}.heat-toolbar select{margin-left:8px}
.heat-legend{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:.7rem;margin:16px 0}.heat-gradient{width:150px;height:8px;border-radius:5px;background:linear-gradient(90deg,rgb(150,45,45),rgb(28,34,46),rgb(34,120,55))}.hcat{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.hcat span{letter-spacing:0;text-transform:none}
.hgrid{grid-template-columns:repeat(auto-fill,minmax(185px,1fr))}.rich-tile{text-align:left;padding:17px;min-height:180px}.tile-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.tile-top .tpct{margin:0;font-weight:700}.tile-name{font-size:.7rem;color:#e0e9f3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:8px}.tile-price{font-size:1.1rem;margin:12px 0;font-variant-numeric:tabular-nums}.rich-tile .spark{width:100%;height:32px}.tile-foot{font-size:.62rem;color:#e0e9f3;margin-top:8px}
@media(max-width:640px){.hgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.rich-tile{padding:12px}.tile-top{align-items:flex-start;flex-direction:column}.heat-toolbar{padding:16px}.chart-controls{gap:5px}.chart-controls button{padding:7px 10px}}
