/* VibeThink skin over Jay's shared structural CSS. */
:root{color-scheme:dark;--bg:var(--void);--panel:var(--card-deep);--ink:var(--ink-2);--muted:var(--mute);--border:var(--edge);--tip-bg:var(--card-deep)}
body{font-family:var(--display),sans-serif;line-height:1.5}
[hidden]{display:none!important}button,a,input{font:inherit}button{cursor:pointer;color:var(--ink);background:var(--card-deep);border:1px solid var(--edge);padding:8px 12px;border-radius:8px;font-size:13px}button:hover,button[aria-pressed=true]{background:var(--ink);color:var(--void)}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--ink);outline-offset:5px}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}
.lab-header{position:fixed;inset:0 0 auto;z-index:35;padding:27px 38px;display:flex;justify-content:space-between;align-items:center;gap:22px;pointer-events:none}.lab-header a{pointer-events:auto}.lab-header img{filter:invert(1);object-fit:contain;display:block}.lab-header nav{display:flex;gap:22px;font-size:13px}.lab-header nav a[aria-current]{border-bottom:1px solid var(--ink)}
.lab-intro{position:fixed;z-index:10;left:38px;top:31%;width:270px;pointer-events:none}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:10px;color:var(--mute)}h1{font-size:clamp(28px,3.2vw,44px);font-weight:300;letter-spacing:-.035em;line-height:1.1;margin:16px 0 22px}.lab-intro p{font-size:15px;color:var(--lit);margin-bottom:18px}.lab-intro .human{color:var(--ink);font-size:17px}.lab-intro .help{font-size:12px;color:var(--mute);max-width:25ch}
#brain-canvas{touch-action:none}.lab-controls{position:fixed;z-index:40;right:38px;top:113px;display:flex;gap:8px}#brain-panel{display:none;top:164px;right:38px;width:285px;max-height:calc(100dvh - 235px);border-radius:12px;box-shadow:0 12px 38px rgba(0,0,0,.4)}.brain-panel-open #brain-panel{display:block}#brain-panel h2,#brain-legend h2{font-size:12px;font-weight:400;letter-spacing:.03em;margin:20px 0 8px}#brain-panel label{display:block;font-size:12px;margin:13px 0 7px}.layout-buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:5px}.node-buttons{display:flex;flex-wrap:wrap;gap:5px}#brain-spin{width:100%;accent-color:var(--ink)}#brain-search{font-size:14px;width:100%;border:1px solid var(--edge);border-radius:6px;padding:8px;color:var(--ink);background:var(--void)}#brain-results{position:relative;top:0;display:flex;flex-wrap:wrap;gap:4px;background:transparent;border:none;box-shadow:none;margin-top:7px}
#brain-card{position:fixed;inset:var(--brain-card-top) var(--m) auto auto;z-index:45;width:min(var(--brain-card-width),calc(100vw - var(--m) - var(--m)));max-height:calc(100dvh - var(--brain-card-top) - var(--brain-card-footer-clearance));overflow:auto;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:23px;color:var(--ink);box-shadow:0 16px 48px rgba(0,0,0,.6)}#brain-card h2{font-size:22px;font-weight:400;margin:0 38px 12px 0}#brain-card h3{font-size:12px;font-weight:400;margin:18px 0 9px;color:var(--mute)}#brain-card p{font-size:14px;line-height:1.6;color:var(--lit)}#card-close{position:absolute;top:8px;right:8px;padding:2px 7px}#brain-card .neighbors{display:flex;flex-wrap:wrap;gap:5px}#brain-card button{font-size:12px}
#brain-card .card-badge{display:inline-flex;align-items:center;max-width:100%;margin:0 0 12px;padding:3px 9px;border:1px solid var(--card-badge-color,var(--cyan));border-radius:999px;color:var(--card-badge-color,var(--cyan));font-size:11px;line-height:1.4;overflow-wrap:anywhere}
#brain-legend{display:none;left:38px;bottom:110px;width:255px;max-height:40dvh;padding:20px;z-index:45;border-radius:12px;background:var(--panel)}.lg-open #brain-legend{display:block}#brain-legend p{font-size:12px;color:var(--lit);margin-bottom:16px}#brain-legend button{display:block;margin-top:6px;width:100%}#fab-legend{position:fixed;z-index:40;left:38px;bottom:76px}
.lab-credit{position:fixed;inset:auto 38px 25px;z-index:35;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--mute);pointer-events:none}.lab-credit a{pointer-events:auto}.lab-credit span{max-width:50ch}#brain-splash{position:fixed;inset:0;z-index:70;display:grid;place-items:center;background:var(--void)}#brain-toast{position:fixed;left:50%;bottom:73px;transform:translateX(-50%);color:var(--ink);background:var(--card-deep);font-size:12px;padding:6px 14px;z-index:50}#brain-toast:empty{display:none}.fallback{position:fixed;inset:125px 20px 80px;background:var(--void);overflow:auto;z-index:60;padding:25px}.fallback h3{margin-top:18px}
@media(max-width:900px){.lab-intro{width:200px}h1{font-size:31px}.lab-intro p{font-size:13px}}
@media(max-width:700px){.lab-header{padding:18px 19px}.lab-header img{width:78px;height:44px}.lab-header nav{gap:12px;font-size:12px}.lab-intro{left:20px;top:100px;width:calc(100% - 40px)}h1{font-size:26px;max-width:21ch;margin:8px 0 0}.lab-intro>p{display:none}.lab-controls{right:20px;top:auto;bottom:94px}.lab-controls button{padding:7px 9px;font-size:11px}#brain-panel{inset:auto 20px 137px;width:calc(100% - 40px);max-height:55dvh}#brain-card{inset:auto 20px 137px;width:calc(100% - 40px);max-height:45dvh}#fab-legend{left:20px;bottom:94px;padding:7px 9px;font-size:11px}#brain-legend{left:20px;bottom:137px;width:calc(100% - 40px)}.lab-credit{inset:auto 20px 15px;display:block;font-size:9px}.lab-credit span{display:block;margin-bottom:5px}}
:root[data-motion-reduced="true"],:root[data-motion-reduced="true"] *,:root[data-motion-reduced="true"]::before,:root[data-motion-reduced="true"]::after,:root[data-motion-reduced="true"] *::before,:root[data-motion-reduced="true"] *::after{animation:none!important;transition:none!important}

/* Native presentation tokens resolve against clearance measured on its own main. */
#brain-panel .brain-panel-heading{display:flex;align-items:center;gap:8px;margin-bottom:7px}
#brain-panel .brain-panel-heading label{flex:1;min-width:0;margin:0}
#brain-panel-close{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;padding:0;background:transparent}
@media(max-width:700px){#brain-panel-close{flex-basis:44px;width:44px;height:44px}}
.native-core{--brain-card-top:calc(var(--header-clearance,var(--tb)) + var(--header-content-fade) + var(--scene-control-height) + var(--scene-control-gap) + var(--scene-control-gap))}
/* Keep the scroll link keyboard-accessible after the map, outside the product hit area. */
.native-core>.scroll-cue{position:relative;left:auto;bottom:auto;transform:none;display:inline-grid;width:max-content;margin:0 var(--m) var(--space-sm)}

/* Details float on desktop and enter document flow below the map on mobile. */
html,body{height:auto;min-height:100%;overflow-y:auto;overflow-x:hidden}
.brain-stage{position:relative;height:100dvh;width:100vw;overflow:hidden}
.brain-stage #brain-canvas{position:absolute;inset:0}
.lab-header,.lab-intro,.lab-controls,#brain-panel,#brain-legend,#fab-legend,.lab-credit{position:absolute}
#brain-card{position:fixed;inset:var(--brain-card-top) var(--m) auto auto;width:min(var(--brain-card-width),calc(100vw - var(--m) - var(--m)));max-width:none;max-height:calc(100dvh - var(--brain-card-top) - var(--brain-card-footer-clearance));margin:0;padding:24px;box-shadow:0 16px 48px rgba(0,0,0,.6)}
#brain-card h2{font-size:24.2px}
#brain-card p{font-size:16px}
#brain-card button{font-size:13.2px}
@media(max-width:700px){#brain-card{position:relative;inset:auto;width:calc(100% - 40px);max-width:900px;max-height:none;margin:20px auto;box-shadow:none}}
.native-content.native-core #brain-card{background:var(--brain-card-surface);backdrop-filter:blur(var(--brain-card-backdrop-blur));-webkit-backdrop-filter:blur(var(--brain-card-backdrop-blur))}
#brain-card #card-close{position:absolute;inset:8px 8px auto auto;left:auto;right:8px;z-index:2}
