/*! © 2026 LogosVox. All rights reserved. Copying, modifying or redistributing this code is not permitted. https://games.logosvox.com/terms */
/* Berk’s Space: neutral surfaces, rounded controls, collections first. */
:root,[data-library-theme=light]{--lib-ink:#242424;--lib-muted:#666;--lib-paper:#fafafa;--lib-panel:#fff;--lib-line:#d7d7d7;--lib-accent:#292929;--lib-hover:#e9e9e9;--lib-rail:#f1f1f1;--lib-shadow:#0000001a;--lib-on-accent:#fff;color-scheme:light}
[data-library-theme=dark]{--lib-ink:#f4f4f4;--lib-muted:#b5b5b5;--lib-paper:#191919;--lib-panel:#242424;--lib-line:#424242;--lib-accent:#eee;--lib-hover:#343434;--lib-rail:#151515;--lib-shadow:#0006;--lib-on-accent:#202020;color-scheme:dark}
[hidden]{display:none!important}body{background:var(--lib-paper)}::selection{background:var(--lib-ink);color:var(--lib-paper)}button,.file-button,input,select,textarea,summary{border-radius:12px}button:hover,.file-button:hover{background:var(--lib-hover)}.primary,.primary:hover{background:var(--lib-accent);color:var(--lib-on-accent);border-color:var(--lib-accent)}.primary:hover{opacity:.87}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--lib-ink);outline-offset:3px}dialog{border-radius:16px}dialog::backdrop{background:#0008;backdrop-filter:none}#world-hint,#notice{background:#252525;color:#fff;border-radius:12px}#sleep-overlay{background:#101010}#world-bar{background:var(--lib-panel)}#world-bar button:hover{color:var(--lib-ink)}
.space-mark{display:block;flex:none;color:var(--lib-ink)}@keyframes space-signature{from{stroke-dasharray:100;stroke-dashoffset:100}to{stroke-dasharray:100;stroke-dashoffset:0}}
#lobby{display:grid;grid-template-columns:244px minmax(0,1fr);grid-template-rows:64px minmax(0,1fr);overflow:hidden}#library-rail{grid-column:1;grid-row:1/3;display:flex;flex-direction:column;padding:24px 14px 16px;gap:24px;overflow:auto;background:var(--lib-rail)}.library-brand{display:flex;align-items:center;gap:10px;padding:0 8px;font:600 17px/1.2 system-ui,sans-serif;white-space:nowrap}.library-brand .space-mark{width:36px;height:36px}#library-rail nav{display:grid;gap:4px;overflow:visible;order:initial}#library-rail nav button,#library-rail>.rail-settings{display:flex;align-items:center;gap:12px;text-align:left;min-height:44px;padding:10px 12px;font-size:13px;background:transparent;border-color:transparent;border-radius:12px;white-space:nowrap}#library-rail nav button[aria-current=true]{background:var(--lib-panel);color:var(--lib-ink)}#library-rail nav button[aria-current=true] .library-icon{color:var(--lib-ink)}#library-rail nav button:hover,#library-rail>.rail-settings:hover{background:var(--lib-hover)}#data-group{margin:0}#data-group>summary{display:flex;align-items:center;gap:12px;cursor:pointer;font-size:12px;color:var(--lib-muted);padding:8px 12px;min-height:40px;margin-bottom:8px;list-style:none}#data-group>summary::-webkit-details-marker{display:none}#data-group>summary::after{content:'';width:6px;height:6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);margin-left:auto}#data-group:not([open])>summary::after{transform:rotate(-45deg)}#library-rail>.rail-settings{margin-top:auto;flex:none}#workspace-topbar{grid-column:2;grid-row:1;display:flex;align-items:center;gap:14px;padding:10px 26px;border-bottom:1px solid var(--lib-line);background:var(--lib-paper)}#toggle-navigation{width:42px;height:42px;padding:10px;background:transparent;border-color:transparent}#workspace-route{font-size:13px;font-weight:600}.topbar-search{margin-left:auto;color:var(--lib-muted);font-size:12px;background:transparent;border-color:transparent}.workspace-page,#collection-main,#life-main{grid-column:2;grid-row:2;padding:36px clamp(22px,4vw,64px);overflow:auto;min-width:0;scrollbar-gutter:stable}.workspace-page h1{font-size:40px}.page-description{margin:16px 0 32px;color:var(--lib-muted);max-width:62ch}.home-space-image{width:100%;max-height:410px;object-fit:cover;border-radius:16px;display:block}.home-space-caption{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:22px}.home-shortcuts{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}.home-shortcuts button{display:flex;align-items:center;gap:10px;background:transparent;border-color:var(--lib-line)}.home-shortcuts button>svg{margin:0}.app-settings-section{padding:24px 0;border-bottom:1px solid var(--lib-line);max-width:780px;display:flex;flex-wrap:wrap;gap:14px;align-items:center}.app-settings-section h2{font:600 16px/1.4 system-ui,sans-serif;width:100%}.app-settings-section>p{color:var(--lib-muted);font-size:14px;max-width:58ch;width:100%}.app-settings-section #library-theme{min-width:220px}.app-settings-section #library-storage{width:100%}#library-storage>summary{display:none}#collection-main>footer:empty{display:none}#spaces-page #spaces-entry{margin:0}#spaces-page #spaces-heading{font-size:40px;margin:0 0 12px}.space-card{border:2px solid transparent;border-radius:16px}.space-card[aria-pressed=true]{box-shadow:none;border-color:var(--lib-ink)}#lobby.rail-collapsed{grid-template-columns:76px minmax(0,1fr)}.rail-collapsed #library-rail{padding-inline:10px}.rail-collapsed .menu-label,.rail-collapsed #data-group>summary::after{display:none}.rail-collapsed #library-rail button,.rail-collapsed #data-group>summary{justify-content:center;padding-inline:10px}.rail-collapsed .library-brand{padding:0;justify-content:center}.rail-collapsed #data-group summary{margin-bottom:8px}.rail-collapsed #library-rail .library-icon{width:19px;height:19px}.in-world #workspace-topbar,.in-world #space-welcome{display:none!important}#rail-backdrop{display:none}#library-boot{background:var(--lib-paper);color:var(--lib-ink)}
#overview-controls{position:fixed;right:18px;top:calc(var(--lv-shell-height,56px) + 14px);display:flex;gap:6px;z-index:24;background:var(--lib-panel);padding:6px;border-radius:14px}#overview-controls button{min-width:44px;padding:8px}body:not(.in-world) #overview-controls,body:not([data-camera=sims]):not([data-camera=plan]) #overview-controls{display:none}body[data-camera=sims] #reticle,body[data-camera=sims] .lv-touch-controls{display:none!important}body[data-camera=sims] #world-hint{left:18px;transform:none;max-width:50vw;text-align:left}body[data-camera=sims] #world-shelf-pages{top:calc(var(--lv-shell-height,56px) + 70px)}
@media(max-width:1000px){.home-space-caption{align-items:start;flex-direction:column}}
@media(max-width:700px){#lobby,#lobby.rail-collapsed{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:58px minmax(0,1fr);overflow:hidden}#library-rail{position:fixed;top:var(--lv-shell-height,56px);bottom:0;left:0;width:270px;max-width:85vw;z-index:65;transform:translateX(-100%);padding:24px 14px;gap:24px;border-right:1px solid var(--lib-line);overflow:auto;visibility:hidden}#lobby.rail-open #library-rail{transform:none;visibility:visible}#lobby.rail-open #rail-backdrop{display:block;position:fixed;inset:var(--lv-shell-height,56px) 0 0;background:#0006;z-index:64;border:0;border-radius:0}.library-brand{font-size:17px}.library-brand .space-mark{width:36px;height:36px}#library-rail nav{display:grid;grid-column:auto;grid-row:auto;overflow:visible}#library-rail nav button{min-height:44px;padding:10px 12px;gap:12px}#workspace-topbar{grid-column:1;grid-row:1;padding:6px 14px}.workspace-page,#collection-main,#life-main{grid-column:1;grid-row:2;padding:24px 20px;overflow:auto}.workspace-page h1,#spaces-page #spaces-heading{font-size:32px}.library-heading>div:first-child{display:block}.library-heading h1{font-size:32px}#intro{display:block}.page-description{margin:12px 0 24px}.home-space-image{height:230px;object-fit:cover}.home-shortcuts{display:grid}.home-space-caption .row>*{flex:1}.home-space-caption .row{width:100%}.app-settings-section{padding:22px 0}.app-settings-section>button,.app-settings-section #library-theme{width:100%}#overview-controls{right:10px;top:calc(var(--lv-shell-height,56px) + 8px);gap:3px;padding:4px}#overview-controls button{min-width:36px;min-height:40px;padding:6px;font-size:12px}body[data-camera=sims] #world-hint{left:10px;top:calc(var(--lv-shell-height,56px) + 66px);max-width:calc(100vw - 20px)}body[data-camera=sims] #world-shelf-pages{top:calc(var(--lv-shell-height,56px) + 112px)}}
@media(prefers-reduced-motion:reduce){.space-mark path{animation:none!important}*{scroll-behavior:auto!important}}

/* Keep navigation chrome fixed while collections scroll independently. */
#library-rail{overflow:hidden}.library-brand,.primary-navigation{flex:none}#data-group{min-height:0;overflow:auto;flex:0 1 auto}#library-rail>.rail-settings[aria-current=true]{background:var(--lib-panel);color:var(--lib-ink)}.lv-shell-btn,.lv-shell-profile-name{color:var(--lib-ink)}#overview-controls button{display:grid;place-items:center}

/* Theme changes must not tween dark text across a dark header. */
html[data-library-theme] .lv-shell-btn{color:var(--lib-ink);transition:background-color .16s ease,transform .16s ease}

/* The rail owns its toggle: expanded beside the title, collapsed beneath the B. */
#library-rail .library-brand{padding:0 2px;gap:8px;min-height:44px}
#library-rail .library-brand>.space-mark{width:28px;height:28px}
#library-rail .library-brand>.menu-label{font-size:16px;min-width:0}
#toggle-navigation{position:relative;flex:none;width:44px;height:44px;min-height:44px;padding:0;display:grid;place-items:center;cursor:pointer}
.library-brand>#toggle-navigation{margin-left:auto}
#toggle-navigation>.space-mark,#toggle-navigation>.library-icon{grid-area:1/1;pointer-events:none}
#toggle-navigation>.space-mark{width:32px;height:32px;opacity:0}
#toggle-navigation>.library-icon{width:20px;height:20px;opacity:1}
#toggle-navigation:hover{background:var(--lib-hover)}
.rail-collapsed #library-rail .library-brand>.space-mark{display:none}
.rail-collapsed .library-brand>#toggle-navigation{margin-inline:auto}
.rail-collapsed #toggle-navigation>.space-mark{opacity:1}
.rail-collapsed #toggle-navigation>.library-icon{opacity:0}
.rail-collapsed #toggle-navigation:is(:hover,:focus-visible)>.space-mark{opacity:0}
.rail-collapsed #toggle-navigation:is(:hover,:focus-visible)>.library-icon{opacity:1}
@media(hover:none){.rail-collapsed #toggle-navigation>.space-mark{opacity:0}.rail-collapsed #toggle-navigation>.library-icon{opacity:1}}

body[data-camera=plan] #reticle,body[data-camera=plan] .lv-touch-controls{display:none!important}body[data-camera=plan] #world-hint{left:18px;transform:none;max-width:50vw;text-align:left}
