@font-face{font-family:Libre Baskerville;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/libre-baskerville-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Baskerville;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/libre-baskerville-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304-0305,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Baskerville;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fonts/libre-baskerville-latin-400-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Baskerville;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fonts/libre-baskerville-latin-ext-400-italic.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304-0305,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Baskerville;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/libre-baskerville-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Baskerville;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/libre-baskerville-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304-0305,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304-0305,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304-0305,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--font-serif: "Libre Baskerville", "Iowan Old Style", "Palatino Linotype", "Palatino", "Charter", "Georgia", serif;--font-mono: "IBM Plex Mono", "SF Mono", "Monaco", "Menlo", "Consolas", "Cascadia Mono", "Roboto Mono", monospace;--text-xs: .7rem;--text-sm: .8rem;--text-md: .92rem;--text-lg: 1.02rem;--text-xl: 1.28rem;--text-2xl: 1.55rem;--text-display: 2.4rem;--weight-prose: 400;--weight-ui: 400;--radius-xs: .2rem;--radius-sm: .3rem;--radius-md: .45rem;--radius-lg: .5rem;--radius-pill: 999px;--blur-sm: blur(4px);--blur-md: blur(8px);--grain-paper: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23g)' opacity='0.18'/%3E%3C/svg%3E");--grain-dark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23g)'/%3E%3C/svg%3E");--grain-tile-size: 140px 140px;--measure-prose: 56ch;--z-world: 0;--z-world-marker: 2;--z-hud: 20;--z-notice: 40;--z-touch: 50;--z-modal: 60;--z-settings: 70;--z-story: 78;--z-splash: 100;--edge: 14px;--edge-top: max(var(--edge), env(safe-area-inset-top));--edge-left: max(var(--edge), env(safe-area-inset-left));--edge-right: max(var(--edge), env(safe-area-inset-right));--edge-bottom: max(var(--edge), env(safe-area-inset-bottom));--mc-btn-size: 52px;--mc-gap: 14px;--mc-inset-bottom: max(28px, env(safe-area-inset-bottom, 16px));--mc-inset-right: max(28px, env(safe-area-inset-right, 16px));--mc-stack-h: calc(3 * var(--mc-btn-size) + 2 * var(--mc-gap));--mc-cluster-w: calc(var(--mc-inset-right) + var(--mc-btn-size) + 10px + 5.2rem);--panel-device-bg: rgba(18, 12, 24, .94);--panel-device-border: rgba(190, 170, 210, .28)}.panel{border-radius:var(--radius-lg);box-shadow:0 4px 20px #00000073,inset 0 1px #fffaf00f}.panel--device{background:var(--panel-device-bg);border:1px solid var(--panel-device-border);backdrop-filter:var(--blur-md);-webkit-backdrop-filter:var(--blur-md);color:#e8e2d8}.panel--paper{background:var(--grain-paper),linear-gradient(120deg,#faf6ec,#f5ecd8 45%,#efe6d4);background-size:var(--grain-tile-size),cover;background-blend-mode:multiply,normal;color:#2a1f18;box-shadow:0 30px 80px #0009,inset 0 1px #fffaeb66}.panel--raised{box-shadow:0 28px 80px #0000008c,inset 0 1px #fffaf00f}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden;background:#0d0a12;color:#e8e2d8;font-family:var(--font-serif);font-weight:var(--weight-prose);font-size:clamp(16px,1.05vw + 12px,22px);line-height:1.5;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.ui-hint-coarse{display:none}@media (pointer: coarse){.ui-hint-fine{display:none}.ui-hint-coarse{display:inline}}#app{position:fixed;inset:0;width:100%;height:100%}#canvas{position:absolute;inset:0;width:100%;height:100%;display:block;cursor:default;touch-action:none}#canvas:active{cursor:grabbing}#overlay{position:absolute;inset:0;pointer-events:none;z-index:var(--z-hud)}.splash{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background-image:url(/assets/splash.webp);background-size:cover;background-position:center;background-color:#0a070e;background-blend-mode:normal;z-index:var(--z-splash);transition:opacity 1.2s ease-out}.splash.lit{background-image:none;background-color:transparent}.splash:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 30%,#0c09109e,#0a070e57 58%,#08060c85);z-index:var(--z-world);transition:background .5s ease-in}.splash.handing-over:before{background:#060409fe}.splash.fading{opacity:0;pointer-events:none}body:has(#splash:not(.fading)) .settings-menu,body:has(#splash:not(.fading)) .game-menu,body:has(#splash:not(.fading)) .memory-dock{opacity:0;pointer-events:none}.settings-menu,.game-menu{transition:opacity .9s ease-out}.splash-inner{position:relative;z-index:var(--z-world-marker);display:flex;flex-direction:column;align-items:center;text-align:center;color:#e8d8c8;width:min(100%,28rem);padding:max(1.5rem,env(safe-area-inset-top,0px)) 1.5rem max(1.5rem,env(safe-area-inset-bottom,0px))}.splash-brand{animation:splash-rise .9s ease-out both}.splash-title{font-size:var(--text-display);font-weight:400;letter-spacing:.01em;line-height:1.12;text-wrap:balance;color:#f0e4d4;margin-bottom:.65rem;text-shadow:0 2px 28px rgba(0,0,0,.45)}@media (max-width: 26rem){:root{--text-display: 2.05rem}}.splash-subtitle{font-style:italic;font-size:clamp(var(--text-lg),2.1vw,var(--text-xl));opacity:.62;letter-spacing:.045em;line-height:1.45;text-wrap:balance;max-width:22rem;margin:1.1rem auto 0;animation:splash-rise .9s ease-out .12s both}.splash-about{margin-top:1.5rem;width:100%;animation:splash-about-veil .9s ease-out .2s both}.splash-about-toggle{display:inline-block;font-size:var(--text-sm);font-style:italic;letter-spacing:.08em;opacity:.45;cursor:pointer;padding:.4em .75em;border-bottom:1px solid transparent;list-style:none;transition:opacity .25s ease,border-color .25s ease;-webkit-tap-highlight-color:transparent}.splash-about-toggle::-webkit-details-marker{display:none}.splash-about-toggle:hover,.splash-about-toggle:focus-visible{opacity:.85;border-bottom-color:#f0e4d459;outline:none}.splash-about-label-open{display:none}.splash-about[open] .splash-about-toggle{position:fixed;inset:0;z-index:calc(var(--z-splash) + 1);padding:0;border-bottom:none;opacity:1}.splash-about[open] .splash-about-label-closed{display:none}.splash-about[open] .splash-about-label-open{position:absolute;top:max(1.35rem,env(safe-area-inset-top,0px));right:max(1.35rem,env(safe-area-inset-right,0px));display:inline-block;font-size:var(--text-xs);font-style:normal;letter-spacing:.24em;text-transform:uppercase;opacity:.4;transition:opacity .25s ease}.splash-about[open] .splash-about-toggle:hover .splash-about-label-open,.splash-about[open] .splash-about-toggle:focus-visible .splash-about-label-open{opacity:.85}.splash-about[open] .splash-about-body{position:fixed;z-index:calc(var(--z-splash) + 2);pointer-events:none;opacity:1;animation:splash-about-veil .4s ease-out both}.splash:has(.splash-about[open]) .splash-brand,.splash:has(.splash-about[open]) .splash-loading,.splash:has(.splash-about[open]) .splash-beginform,.splash:has(.splash-about[open]) .splash-feedback{animation-name:none;opacity:0;pointer-events:none}.splash-brand,.splash-beginform,.splash-feedback{transition:opacity .35s ease-out}.splash-about-meta{font-size:var(--text-sm);opacity:.55;padding-top:1.1rem;border-top:1px solid rgba(240,228,212,.14)}@keyframes splash-about-veil{0%{opacity:0}to{opacity:1}}.splash-loading{font-size:var(--text-md);opacity:.45;font-style:italic;letter-spacing:.12em;margin:2.75rem 0 0;animation:splash-rise .8s ease-out .28s both,splash-pulse 2.4s ease-in-out 1s infinite}.splash-progress{width:min(100%,14rem);height:2px;margin-top:1.1rem;background:#f0e4d41f;border-radius:2px;overflow:hidden;animation:splash-about-veil .8s ease-out .34s both}.splash-progress-fill{width:0%;height:100%;background:#f0e4d48c;border-radius:2px;transition:width .45s ease-out}.splash-inner:has(.splash-beginform) .splash-progress{display:none}.splash-feedback{position:absolute;left:0;right:0;bottom:calc(2.25rem + env(safe-area-inset-bottom,0px));z-index:var(--z-world-marker);display:flex;flex-direction:column;align-items:center;gap:.6rem;width:min(100% - 2rem,19rem);margin:0 auto;padding:0;border-top:none;animation:splash-rise .85s ease-out .4s both}.splash-devnote{font-size:var(--text-xs);line-height:1.5;opacity:.3;font-style:italic;letter-spacing:.03em;max-width:18rem;margin:0}.splash-messageform{display:flex;align-items:center;width:100%;padding-left:.9rem;background:#08060c59;border:1px solid rgba(240,228,212,.13);border-radius:999px;transition:border-color .25s ease,background-color .25s ease}.splash-messageform:focus-within{border-color:#f0e4d457;background:#08060c8c}.splash-messageinput{flex:1;min-width:0;background:transparent;border:none;border-radius:0;color:#f0e4d4;font-family:var(--font-serif);font-style:italic;font-size:16px;line-height:1.4;letter-spacing:.03em;text-align:left;padding:.5em 0;outline:none;transition:opacity .25s ease;opacity:.75;touch-action:manipulation}.splash-messageinput:focus{opacity:1}.splash-messageinput::placeholder{color:#f0e4d461}.splash-messagesend{flex-shrink:0;background:none;border:none;color:#f0e4d4;font-family:var(--font-serif);font-size:var(--text-sm);letter-spacing:.14em;text-transform:lowercase;padding:0 1rem 0 .75rem;min-height:38px;border-radius:999px;cursor:pointer;opacity:.5;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:opacity .25s ease}.splash-messagesend:hover,.splash-messagesend:focus-visible{opacity:1;outline:none}.splash-feedback-thanks{font-size:var(--text-sm);font-style:italic;opacity:.5;letter-spacing:.05em;animation:splash-rise .45s ease-out both}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.splash-beginform{display:flex;justify-content:center;margin-top:2.75rem;animation:splash-rise .7s ease-out both}.splash-beginbutton{background:#f0e4d414;border:1px solid rgba(240,228,212,.48);border-radius:2px;color:#f0e4d4;font-family:var(--font-serif);font-size:var(--text-md);letter-spacing:.2em;padding:.7em 2.4em;min-height:44px;min-width:8.5rem;cursor:pointer;opacity:.9;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:opacity .25s ease,border-color .25s ease,background-color .25s ease,transform .2s ease}.splash-beginbutton:active{opacity:1;background:#f0e4d42e;border-color:#f0e4d4bf}.splash-beginbutton:hover{opacity:1;border-color:#f0e4d4d9;background:#f0e4d424;transform:translateY(-1px)}.splash-beginbutton:focus-visible{outline:1px solid rgba(240,228,212,.55);outline-offset:3px}.splash:has(.splash-beginform) .splash-feedback{opacity:.85}.splash:has(.splash-beginform) .splash-devnote{opacity:.34}@keyframes splash-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes splash-pulse{0%,to{opacity:.35}50%{opacity:.55}}@media (prefers-reduced-motion: reduce){.splash-brand,.splash-subtitle,.splash-loading,.splash-feedback,.splash-beginform,.splash-feedback-thanks{animation:none}}.prompt-stack{position:absolute;pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:.42rem;animation:prompt-fade-in .2s ease-out;isolation:isolate}.prompt-stack:before{content:"";position:absolute;inset:-2.2rem -1.8rem -1.4rem;background:radial-gradient(ellipse at 50% 65%,rgba(6,10,18,.58) 0%,rgba(6,10,18,.22) 45%,transparent 72%);pointer-events:none}.prompt-options{display:flex;flex-direction:column;align-items:stretch;gap:.28rem;pointer-events:none}.prompt-stack--multi .prompt-options{gap:.34rem}.object-preview-menu{display:flex;flex-direction:column;align-items:center;gap:.18rem;padding:.4rem .5rem;width:min(11rem,calc(100vw - 2rem));max-height:min(42vh,18rem);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;box-sizing:border-box}.object-preview-menu--zoomable{cursor:zoom-in;transition:background .15s ease,box-shadow .15s ease}.object-preview-menu--zoomable:hover{background:#1c1424f5;box-shadow:0 4px 20px #00000073,inset 0 1px #fffaf00f,0 0 0 1px var(--panel-device-border)}.object-preview-zoom-hint{font-size:var(--text-xs);letter-spacing:.06em;font-style:italic;color:#b4a8bc8c;text-align:center;line-height:1.2}.object-preview-menu--zoomable:hover .object-preview-zoom-hint{color:#dccdbec7}.object-preview-art svg{width:5.25rem;height:5.25rem;display:block;shape-rendering:geometricPrecision;pointer-events:none}@media (max-height: 500px){.object-preview-menu{max-height:min(36vh,12rem)}.object-preview-menu .object-preview-art svg{width:4rem;height:4rem}}.object-preview-pile{display:flex;align-items:center;justify-content:center;gap:.3rem;width:100%;font-size:var(--text-xs);letter-spacing:.06em;color:#b4a8bcb3;line-height:1.2}.object-preview-pile-count{font-variant-numeric:tabular-nums;color:#d6e0ece6}.object-preview-title{font-size:var(--text-sm);letter-spacing:.08em;text-transform:uppercase;color:#e8dac8d1;font-style:normal;font-weight:500;width:100%;text-align:center;line-height:1.28;overflow-wrap:break-word}.object-preview-desc{font-size:var(--text-xs);font-weight:400;letter-spacing:.02em;text-transform:none;color:#c8bcafe0;width:100%;text-align:center;line-height:1.4;margin-top:.12rem;overflow-wrap:break-word}.prompt{position:relative;display:flex;align-items:center;width:100%;box-sizing:border-box;margin:0;min-height:44px;background:#0c1018e6;color:#d6e0ecf5;padding:.35rem .85rem;border-radius:var(--radius-sm);font:inherit;font-size:var(--text-xs);font-weight:var(--weight-ui);text-align:left;cursor:pointer;pointer-events:auto;white-space:nowrap;border:1px solid rgba(150,175,205,.32);backdrop-filter:var(--blur-sm);-webkit-backdrop-filter:var(--blur-sm);font-style:normal;letter-spacing:.02em;box-shadow:0 6px 22px #00000080,0 1px #00000059,inset 0 1px #ffffff24;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.prompt:hover,.prompt:focus-visible{border-color:#b4cde68c;background:#121822f0;outline:none}.prompt:active{transform:translateY(1px)}.prompt--charge{display:flex;flex-direction:column;align-items:stretch;gap:.35rem;white-space:normal;min-width:7.5rem;padding-bottom:.4rem}.prompt-row{white-space:nowrap}.prompt-charge{position:relative;height:.28rem;border-radius:var(--radius-pill);background:#a0bedc1f;overflow:hidden;box-shadow:inset 0 0 0 1px #8caac829}.prompt-charge-fill{height:100%;width:0%;border-radius:inherit;background:linear-gradient(90deg,#78a0d2cc,#bed7f5fa);transition:width .05s linear}.prompt-charge--ready .prompt-charge-fill{background:linear-gradient(90deg,#8cb4e6f2,#dcebff);box-shadow:0 0 8px #a0c8ff59}.prompt-key{display:inline-block;background:#a0bedc1f;border:1px solid rgba(150,180,210,.28);color:#c8daeef5;padding:.06rem .48rem;border-radius:var(--radius-xs);margin-right:.5rem;font-family:var(--font-mono);font-size:inherit;font-style:normal;letter-spacing:0}@keyframes prompt-fade-in{0%{opacity:0}to{opacity:1}}.inspect-spot{position:fixed;inset:0;pointer-events:none;z-index:var(--z-hud);opacity:0;background:radial-gradient(circle var(--spot-r, 240px) at var(--spot-x, 50%) var(--spot-y, 50%),rgba(6,8,11,0) 0%,rgba(6,8,11,0) 62%,rgba(6,8,11,.52) 88%,rgba(6,8,11,.72) 100%)}.drop-marker{position:absolute;width:2.9rem;height:3.3rem;pointer-events:none;z-index:var(--z-notice);filter:drop-shadow(0 0 3px rgba(0,0,0,.85)) drop-shadow(0 2px 9px rgba(0,0,0,.55))}.drop-marker-bob{position:absolute;inset:0;animation:drop-marker-bob 1.15s ease-in-out infinite}.drop-marker-arrow{position:absolute;left:50%;top:0;width:0;height:0;transform:translate(-50%);border-left:.62rem solid transparent;border-right:.62rem solid transparent;border-top:.95rem solid rgba(255,240,214,1)}.drop-marker-arrow:before{content:"";position:absolute;left:50%;top:-1.05rem;width:.28rem;height:.55rem;transform:translate(-50%);background:#fff0d6;border-radius:1px 1px 0 0}.drop-marker-ring{position:absolute;left:50%;bottom:.1rem;width:1.35rem;height:.55rem;transform:translate(-50%);border-radius:50%;border:2px solid rgba(255,240,214,.95);background:#ffeccd3d;box-shadow:0 0 12px #ffd6aa8c,inset 0 0 6px #ffe2be59}.drop-marker--notice .drop-marker-arrow{border-top-color:#ffc6a0f5}.drop-marker--notice .drop-marker-arrow:before{background:#ffc6a0f5}.drop-marker--notice .drop-marker-ring{border-color:#ffba96e0;background:#ffb48c2e;box-shadow:0 0 14px #ffaa7866}@keyframes drop-marker-bob{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}.memory-dock{position:absolute;left:max(.75rem,var(--edge-left));bottom:max(1rem,var(--edge-bottom));z-index:var(--z-hud);display:flex;flex-direction:column;align-items:stretch;gap:.38rem;pointer-events:none;transform:translate(var(--jx, 0px),var(--jy, 0px));will-change:transform;transition:transform .08s linear,opacity .9s ease-out}@media (pointer: coarse){.memory-dock{max-width:calc(100vw - var(--mc-cluster-w) - var(--edge-left) - .6rem)}}.inspiration-hud-panel{position:relative;pointer-events:none;max-width:calc(100vw - 1.5rem);padding:.4rem .55rem .48rem;overflow:visible}.inspiration-hud-panel--pulse .inspiration-hud-track{animation:inspiration-hud-pulse .55s ease-out}.inspiration-hud-label{display:block;text-align:center;font-family:var(--font-serif);font-style:italic;font-size:var(--text-sm);letter-spacing:.08em;color:#f5e8d2f5;text-shadow:0 1px 2px rgba(0,0,0,.55);margin-bottom:.3rem}.inspiration-hud-track{height:1.05rem;border-radius:var(--radius-lg);background:#0a080eb3;border:1px solid rgba(180,160,200,.42);overflow:hidden;position:relative;box-shadow:inset 0 1px 2px #00000080,inset 0 1px #fffaf014}.inspiration-hud-fill{height:100%;width:0%;min-width:0;border-radius:.42rem;position:relative;box-sizing:border-box;box-shadow:inset 0 1px #ffffff59;transition:width .12s linear}.inspiration-hud-sheen{position:absolute;left:0;top:0;width:100%;height:48%;border-radius:.42rem .42rem 0 0;opacity:.28;pointer-events:none}.inspiration-hud-gain{position:absolute;right:.45rem;top:.15rem;font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;font-style:normal;letter-spacing:.04em;color:#ffecc8fa;text-shadow:0 1px 3px rgba(0,0,0,.65);pointer-events:none;animation:inspiration-hud-gain .95s ease-out forwards}@keyframes inspiration-hud-gain{0%{opacity:0;transform:translateY(.35rem)}18%{opacity:1;transform:translateY(0)}70%{opacity:1;transform:translateY(-.85rem)}to{opacity:0;transform:translateY(-1.35rem)}}.inspiration-hud-gain--loss{color:#c4a8d6fa;animation:inspiration-hud-loss .95s ease-out forwards}@keyframes inspiration-hud-loss{0%{opacity:0;transform:translateY(-.35rem)}18%{opacity:1;transform:translateY(0)}70%{opacity:1;transform:translateY(.85rem)}to{opacity:0;transform:translateY(1.35rem)}}@keyframes inspiration-hud-pulse{0%{box-shadow:inset 0 1px 2px #00000080,0 0 #ffdcaa00}35%{box-shadow:inset 0 1px 2px #00000080,0 0 0 3px #ffdcaa59}to{box-shadow:inset 0 1px 2px #00000080,0 0 #ffdcaa00}}@media (prefers-reduced-motion: reduce){.inspiration-hud-gain{animation:none;opacity:0}.inspiration-hud-panel--pulse .inspiration-hud-track{animation:none}}.memory-inventory-shell{display:flex;flex-direction:row;align-items:center;gap:.28rem;pointer-events:auto;transition:opacity .35s ease}.memory-inventory-shell--empty{opacity:0;visibility:hidden;pointer-events:none}.memory-inventory-panel{display:flex;flex-direction:column;align-items:center;gap:.18rem;padding:.4rem .5rem;min-width:9.5rem;width:min(11rem,calc(100vw - 5rem));max-height:min(50vh,20rem);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;box-sizing:border-box}.memory-inventory-view{display:flex;flex-direction:column;align-items:center;gap:.2rem;width:100%}.memory-inventory-panel .memory-inventory-desc.object-preview-desc{margin-top:.06rem}.memory-inventory-art{cursor:zoom-in;border-radius:var(--radius-sm);outline:none;transition:background .15s ease,box-shadow .15s ease}.memory-inventory-art:hover,.memory-inventory-art:focus-visible{background:#fff5e60d;box-shadow:0 0 0 1px #c8b9d247}.memory-inventory-art:hover+.memory-inventory-zoom-hint,.memory-inventory-art:focus-visible+.memory-inventory-zoom-hint{color:#dccdbec7}.memory-inventory-panel .object-preview-art svg{width:5.25rem;height:5.25rem;display:block;shape-rendering:geometricPrecision;filter:grayscale(.18) contrast(.94) brightness(1.02);opacity:.92;pointer-events:none}.memory-inventory-zoom-hint{font-size:var(--text-xs);letter-spacing:.06em;font-style:italic;color:#b4a8bc8c;text-align:center;line-height:1.2;margin-top:-.05rem;cursor:zoom-in;transition:color .15s ease}.memory-inventory-zoom-hint:hover{color:#dccdbec7}.memory-inventory-panel .object-preview-title{margin-top:.08rem}.memory-inventory-desk{font-size:var(--text-xs);font-style:italic;letter-spacing:.03em;color:#b4a8c6e0;text-align:center;line-height:1.25}.memory-inventory--unease .memory-inventory-panel .object-preview-art svg{filter:grayscale(.32) contrast(.9) brightness(.97);opacity:.88}.memory-inventory-meta{width:100%;text-align:center;padding-top:.12rem;border-top:1px solid rgba(140,120,160,.15)}.memory-inventory-index{font-size:var(--text-xs);letter-spacing:.12em;font-variant-numeric:tabular-nums;color:#b4a8bca6;font-family:var(--font-mono)}.memory-nav{flex-shrink:0;width:2rem;height:2.6rem;border-radius:.35rem;border:1px solid rgba(190,170,210,.35);background:#16101eeb;color:#e8dac8e0;font-size:var(--text-xl);line-height:1;cursor:pointer;pointer-events:auto;transition:background .15s ease,border-color .15s ease,opacity .15s ease}.memory-nav:hover:not(:disabled){background:#241c30f2;border-color:#d2bee673}.memory-nav:disabled{opacity:.28;cursor:default}.memory-nav:focus-visible{outline:2px solid rgba(200,180,230,.55);outline-offset:2px}.dialogue{position:absolute;background:#f5ecd8eb;color:#2a1f18;padding:.5rem .9rem;border-radius:.4rem;font-size:var(--text-md);font-style:italic;pointer-events:none;white-space:nowrap;max-width:24rem;white-space:normal;text-align:center;box-shadow:0 4px 16px #00000059;transform:translate(-50%,-50%);letter-spacing:.01em;line-height:1.4;border:1px solid rgba(80,60,50,.15)}.dialogue:after{content:"";position:absolute;bottom:-8px;left:calc(50% + var(--tail-x, 0px));transform:translate(-50%);border:8px solid transparent;border-top-color:#f5ecd8eb;border-bottom:0}.dialogue--tail-up:after{bottom:auto;top:-8px;border-top:0;border-bottom:8px solid rgba(245,236,216,.92)}.dialogue--thought{background:#e8e0d2c7;color:#3a322c;font-size:var(--text-sm);border-style:dashed;border-color:#503c3238;box-shadow:0 3px 12px #00000047}.dialogue--thought:after{border-top-color:#e8e0d2c7}.dialogue--thought.dialogue--tail-up:after{border-bottom-color:#e8e0d2c7}.notice-stack{--notice-top: max(4.75rem, calc(env(safe-area-inset-top) + 4rem) );position:absolute;left:50%;top:var(--notice-top);transform:translate(-50%);z-index:var(--z-hud);display:flex;flex-direction:column;align-items:stretch;gap:.42rem;width:min(24rem,calc(100vw - 2rem));pointer-events:none;transition:top .25s ease,width .25s ease,left .25s ease}@media (orientation: landscape) and (max-height: 500px){#overlay:has(.memory-dock--open) .notice-stack{width:min(20rem,calc(100vw - 15rem));left:calc(50% + 2.5rem)}}.notice-card{padding:.48rem .78rem .55rem;border-radius:var(--radius-md);backdrop-filter:var(--blur-md);-webkit-backdrop-filter:var(--blur-md);box-shadow:0 4px 18px #0006}.notice-card__label{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.18rem;opacity:.72}.notice-card__body{font-size:var(--text-md);line-height:1.35;text-align:center}.notice-card--observation{background:#0c1018eb;border:1px solid rgba(150,175,205,.32);color:#dce6f2f5;box-shadow:0 4px 18px #0006,inset 0 1px #ffffff1a}.notice-card--observation .notice-card__label{color:#aac3dce0}.notice-card--observation .notice-card__body{font-style:normal;letter-spacing:.01em}.notice-card--speech{background:#f5ecd8ed;border:1px solid rgba(80,60,50,.16);color:#2a1f18}.notice-card--speech .notice-card__label{color:#463428b3}.notice-card--speech .notice-card__body{font-style:italic}.speaker-ping{position:absolute;width:12px;height:12px;margin:0;border-radius:50%;background:#f5ecd8f2;box-shadow:0 0 0 3px #f5ecd838,0 0 16px #ffd6968c;transform:translate(-50%,-50%);pointer-events:none;z-index:var(--z-hud);animation:speaker-ping-pulse 1.1s ease-in-out infinite}.speaker-ping:after{content:"";position:absolute;inset:-7px;border-radius:50%;border:1.5px solid rgba(245,236,216,.55);animation:speaker-ping-ring 1.1s ease-out infinite}@keyframes speaker-ping-pulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:1}50%{transform:translate(-50%,-50%) scale(.88);opacity:.82}}@keyframes speaker-ping-ring{0%{transform:scale(.55);opacity:.85}to{transform:scale(1.35);opacity:0}}.read-mode{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#140e1aeb,#08050cf7);pointer-events:auto;z-index:var(--z-touch);opacity:0;transition:opacity .35s ease-out}.read-mode.visible{opacity:1}.read-mode-page{position:relative;width:min(48rem,92vw);max-height:86vh;padding:3rem 3.5rem;overflow-y:auto;font-family:var(--font-serif);font-style:italic;font-size:var(--text-lg);line-height:1.65;letter-spacing:.005em;white-space:pre-wrap;scrollbar-width:thin;scrollbar-color:rgba(120,90,60,.4) transparent}.read-mode-page::-webkit-scrollbar{width:8px}.read-mode-page::-webkit-scrollbar-track{background:transparent}.read-mode-page::-webkit-scrollbar-thumb{background:#785a3c59;border-radius:4px}.read-mode-page:before{content:"";position:absolute;top:1.5rem;bottom:1.5rem;left:2.2rem;width:1px;background:#b4966e73}.read-mode-page p{margin-bottom:1rem}.read-mode-page p:last-child{margin-bottom:0}.read-mode-hint{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);font-size:var(--text-sm);color:#e8dac880;letter-spacing:.06em;font-style:italic}.read-mode-hint .prompt-key{margin-right:.4rem;background:#fff0dc1f;padding:.05rem .45rem;border-radius:var(--radius-xs);font-family:var(--font-mono);font-style:normal}.chat-row{display:flex;width:100%;margin-bottom:.35rem}.chat-row--other{justify-content:flex-start}.chat-row--self{justify-content:flex-end}.chat-bubble{max-width:min(78%,22rem);padding:.45rem .7rem .5rem;border-radius:.85rem;border:1px solid transparent}.chat-row--other .chat-bubble{border-bottom-left-radius:.2rem}.chat-row--run-on{margin-top:-.2rem}.chat-row--run-on.chat-row--other .chat-bubble{border-top-left-radius:.2rem}.chat-row--run-on.chat-row--self .chat-bubble{border-top-right-radius:.2rem}.chat-row--self .chat-bubble{border-bottom-right-radius:.2rem}.chat-speaker{font-size:var(--text-xs);font-weight:600;letter-spacing:.04em;margin-bottom:.18rem;opacity:.85}.chat-text{font-size:var(--text-md);line-height:1.45;white-space:pre-wrap}.chat-divider{align-self:center;width:100%;text-align:center;font-size:var(--text-xs);letter-spacing:.08em;color:#aabedc66;margin:.55rem 0 .35rem}.chat-bubble--self{background:#286e786b;border-color:#78d2c847;color:#e8f7f5}.chat-bubble--self .chat-speaker{color:#a0e6dce6}.chat-bubble--c0{background:#465a9661;border-color:#8caae659;color:#e4eaf8}.chat-bubble--c0 .chat-speaker{color:#aac3f5f2}.chat-bubble--c1{background:#8c465061;border-color:#e68c9659;color:#f8e8ea}.chat-bubble--c1 .chat-speaker{color:#f5b4b9f2}.chat-bubble--c2{background:#6e508c61;border-color:#bea0e659;color:#f0e8f8}.chat-bubble--c2 .chat-speaker{color:#d2b9f5f2}.chat-bubble--c3{background:#5a6e4661;border-color:#aac88259;color:#eaf2e0}.chat-bubble--c3 .chat-speaker{color:#bedc96f2}.chat-bubble--c4{background:#82643c61;border-color:#dcb47859;color:#f6eedf}.chat-bubble--c4 .chat-speaker{color:#ebc891f2}.read-mode-nav{position:absolute;bottom:4.2rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.85rem;z-index:var(--z-world-marker)}.read-mode-nav-btn{appearance:none;border:1px solid rgba(180,200,230,.28);background:#141824d9;color:#dce6f5eb;font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.04em;padding:.45rem .95rem;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s ease,border-color .15s ease,opacity .15s ease}.read-mode-nav-btn:hover:not(:disabled){background:#283248f2;border-color:#b4c8e680}.read-mode-nav-btn:disabled{opacity:.35;cursor:default}.read-mode-nav-label{min-width:3.2rem;text-align:center;font-size:var(--text-xs);letter-spacing:.12em;color:#b4c8e68c;font-family:var(--font-mono)}.device-screen{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:var(--edge-top) var(--edge-right) var(--edge-bottom) var(--edge-left);box-sizing:border-box;background:radial-gradient(ellipse at center,#08060ef0,#020206fc);pointer-events:auto;z-index:var(--z-modal);opacity:0;transition:opacity .3s ease-out}.device-screen.visible{opacity:1}.device{display:flex;flex-direction:column;align-items:center;gap:.7rem;max-height:100%}.device-frame{display:flex;flex-direction:column;background:linear-gradient(160deg,#23252c,#101115 55%,#191b21);border:1px solid rgba(200,214,235,.16);border-radius:1.1rem;padding:.55rem;min-height:0;box-shadow:0 34px 90px #000000bf,inset 0 1px #ffffff12,0 0 40px #5a82be29}.device--phone .device-frame{width:min(20rem,86vw);border-radius:1.9rem;padding:.6rem .5rem .3rem}.device--tablet .device-frame{width:min(38rem,92vw);border-radius:1.2rem}.device--laptop .device-frame{width:min(44rem,94vw);border-radius:.7rem .7rem .25rem .25rem;padding:.5rem .5rem .2rem}.device-display{--display-h: min(30rem, 62vh);display:flex;flex-direction:column;min-height:0;height:var(--display-h);overflow:hidden;background:linear-gradient(180deg,#101119,#0a0a10);border-radius:.7rem;color:#d8e0e8;font-family:var(--font-mono)}.device--phone .device-display{--display-h: min(34rem, 66vh);border-radius:1.35rem}.device-status{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex:0 0 auto;padding:.45rem .85rem .35rem;font-size:var(--text-xs);letter-spacing:.06em;color:#aabedc8c;border-bottom:1px solid rgba(180,200,230,.08)}.device-status-clock{color:#d2e2f5cc}.device-status-right--low{color:#eb8c82e6}.device-view{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.device-home-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(5.2rem,1fr));align-content:start;gap:.9rem .5rem;padding:1.4rem 1rem;overflow-y:auto}.device--laptop .device-home-grid{grid-template-columns:repeat(auto-fill,minmax(6rem,1fr));padding:1.6rem 1.4rem}.device-home-section{grid-column:1 / -1;display:flex;align-items:center;gap:.6rem;margin:.35rem 0 -.15rem;font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;color:#aabedc73}.device-home-section:after{content:"";flex:1 1 auto;height:1px;background:#b4c8e624}.device-home-section:first-child{margin-top:0}.device-app{appearance:none;background:none;border:0;display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.3rem .1rem;border-radius:var(--radius-md);color:#d6e2f4db;font-family:var(--font-mono);cursor:pointer;min-height:44px;touch-action:manipulation;transition:background .15s ease,transform .15s ease}.device-app:hover,.device-app.is-active{background:#96b4e61f}.device-app.is-active{transform:translateY(-1px)}.device-app-icon{position:relative;display:flex;align-items:center;justify-content:center;width:2.9rem;height:2.9rem;border-radius:.8rem;font-size:var(--text-xl);border:1px solid rgba(255,255,255,.14);box-shadow:inset 0 1px #ffffff1f}.device-app.is-active .device-app-icon{outline:1px solid rgba(190,215,255,.55);outline-offset:2px}.device-app-icon--slate{background:linear-gradient(160deg,#4a5364,#262c38);color:#dce6f4}.device-app-icon--blue{background:linear-gradient(160deg,#3a5c96,#1e2c4c);color:#dfe9fb}.device-app-icon--green{background:linear-gradient(160deg,#2f7a56,#17392a);color:#ddf3e6}.device-app-icon--red{background:linear-gradient(160deg,#8c3a44,#431d24);color:#fadfe2}.device-app-icon--violet{background:linear-gradient(160deg,#6b4a94,#322145);color:#ebe0fa}.device-app-icon--amber{background:linear-gradient(160deg,#97733a,#453320);color:#f8ecd8}.device-badge{position:absolute;top:-.3rem;right:-.3rem;min-width:1.15rem;padding:0 .25rem;border-radius:var(--radius-pill);background:#d24646f2;border:1px solid rgba(255,200,200,.35);color:#fff2f2;font-size:var(--text-xs);line-height:1.15rem;text-align:center}.device-app-label{font-size:var(--text-xs);letter-spacing:.03em;text-align:center}.device-appbar{display:flex;align-items:center;gap:.5rem;flex:0 0 auto;padding:.5rem .7rem;border-bottom:1px solid rgba(180,200,230,.1);background:#181c28b3}.device-back{appearance:none;background:none;border:0;color:#bed4f5e6;font-family:var(--font-mono);font-size:var(--text-xl);line-height:1;padding:.1rem .45rem;min-width:44px;min-height:44px;border-radius:var(--radius-sm);cursor:pointer;touch-action:manipulation}.device-back:hover{background:#96b4e624}.device-appbar-titles{display:flex;flex-direction:column;min-width:0}.device-appbar-title{font-size:var(--text-md);color:#deeafaf0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-appbar-sub{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:#aabedc80}.device-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:.7rem .85rem 1.1rem}.device-body::-webkit-scrollbar{width:6px}.device-body::-webkit-scrollbar-thumb{background:#b4c8e633;border-radius:var(--radius-pill)}.device-list{display:flex;flex-direction:column;gap:.2rem}.device-row{appearance:none;display:flex;align-items:center;gap:.55rem;width:100%;text-align:left;background:#ffffff08;border:1px solid transparent;border-radius:var(--radius-md);padding:.55rem .7rem;color:inherit;font-family:var(--font-mono);min-height:44px;cursor:pointer;touch-action:manipulation;transition:background .15s ease,border-color .15s ease}.device-row:hover,.device-row.is-active{background:#96b4e624;border-color:#b4cdf559}.device-row--record{cursor:default;background:none;border-bottom:1px solid rgba(180,200,230,.07);border-radius:0;min-height:0;padding:.4rem .7rem}.device-list--history .device-row-label{color:#c4d4eed1}.device-row:before{content:"";flex:0 0 auto;width:.42rem}.device-row-dot{flex:0 0 auto;margin-left:-.97rem;width:.42rem;height:.42rem;border-radius:var(--radius-pill);background:#78beffe6;box-shadow:0 0 6px #78beff99}.device-row-text{display:flex;flex-direction:column;gap:.12rem;min-width:0;flex:1 1 auto}.device-row-label{font-size:var(--text-sm);color:#e0eaf8f0;overflow:hidden;text-overflow:ellipsis}.device-row-preview{font-size:var(--text-xs);color:#aabedc9e;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-row-meta{flex:0 0 auto;font-size:var(--text-xs);letter-spacing:.04em;color:#a0b6d680}.device-row-subject{font-size:var(--text-sm);color:#cedcf0db;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-row--unread .device-row-label,.device-row--unread .device-row-subject{color:#e8f2fffa;font-weight:600}.device-email{display:flex;flex-direction:column;gap:.85rem}.device-email-head{display:flex;flex-direction:column;gap:.5rem;padding-bottom:.7rem;border-bottom:1px solid rgba(180,200,230,.12)}.device-email-sender{display:flex;align-items:center;gap:.6rem}.device-email-avatar{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;border-radius:var(--radius-pill);background:linear-gradient(160deg,#3a5c96,#1e2c4c);border:1px solid rgba(190,215,255,.22);color:#e6eefb;font-size:var(--text-md)}.device-email-who{display:flex;flex-direction:column;min-width:0;flex:1 1 auto}.device-email-name{font-size:var(--text-md);color:#e4eefcf5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-email-addr{font-size:var(--text-xs);color:#a8bede9e}.device-email-date{flex:0 0 auto;font-size:var(--text-xs);color:#a0b6d68c}.device-email-field{display:flex;gap:.5rem;font-size:var(--text-xs)}.device-email-key{min-width:3.2rem;letter-spacing:.12em;text-transform:uppercase;color:#a0b6d680}.device-email-val{color:#cedcf0d9}.device-email-subject{font-size:var(--text-lg);line-height:1.35;color:#eaf2fef7}.device-email-body .device-prose p{background:none;border-left:0;padding:0;margin-bottom:.75rem}.device-email-clips{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding-top:.7rem;border-top:1px solid rgba(180,200,230,.12)}.device-email-clips-label{font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:#a0b6d680}.device-clip{appearance:none;display:inline-flex;align-items:center;gap:.4rem;background:#ffffff0a;border:1px solid rgba(180,200,230,.22);border-radius:var(--radius-sm);padding:.35rem .6rem;color:#e0eaf8f0;font-family:var(--font-mono);font-size:var(--text-sm);min-height:44px;cursor:pointer;touch-action:manipulation;transition:background .15s ease,border-color .15s ease}.device-clip:hover,.device-clip.is-active{background:#96b4e629;border-color:#bed7ff80}.device-clip-meta{font-size:var(--text-xs);color:#a0b6d68c}.device-prose p{font-size:var(--text-md);line-height:1.5;margin-bottom:.6rem;padding:.42rem .65rem;background:#ffffff0a;border-radius:var(--radius-xs);border-left:2px solid rgba(140,170,220,.45)}.device-chat{display:flex;flex-direction:column;gap:.35rem}.device-refusal{font-size:var(--text-sm);line-height:1.5;color:#b4c6e09e;text-align:center;padding:2.2rem 1.2rem}.device-lock{display:flex;flex-direction:column;align-items:center;gap:1.1rem;padding:1.6rem 1rem 1.2rem}.device-lock-hint{font-size:var(--text-sm);letter-spacing:.12em;text-transform:uppercase;color:#b4c6e09e}.device-lock-pad{display:grid;grid-template-columns:repeat(3,3.4rem);grid-template-rows:repeat(3,3.4rem);place-items:center;touch-action:none}.device-lock-dot{width:1.05rem;height:1.05rem;border-radius:50%;border:1px solid rgba(190,210,240,.4);background:#788caf40;padding:0;cursor:pointer;transition:transform .12s ease,background .12s ease,box-shadow .12s ease}.device-lock-dot.is-on{background:#bed7ffe6;box-shadow:0 0 .55rem #a0c3faa6;transform:scale(1.25)}.device-lock-pad.is-error .device-lock-dot.is-on{background:#e66e6ee6;box-shadow:0 0 .55rem #e66e6e8c}.device-lock-pad.is-error{animation:device-lock-shake .28s ease}@keyframes device-lock-shake{0%,to{transform:translate(0)}25%{transform:translate(-.35rem)}75%{transform:translate(.35rem)}}.device-lock-sub{font-size:var(--text-xs);color:#aabedc73;text-align:center}.device-replies{display:flex;flex-direction:column;gap:.35rem;margin-top:.9rem;padding-top:.7rem;border-top:1px solid rgba(180,200,230,.12)}.device-replies-label{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:#aabedc73}.device-reply{appearance:none;display:flex;align-items:baseline;gap:.6rem;width:100%;text-align:left;background:#ffffff0a;border:1px solid rgba(180,200,230,.2);border-radius:var(--radius-md);padding:.5rem .7rem;color:#e2ecfaf2;font-family:var(--font-mono);min-height:44px;cursor:pointer;touch-action:manipulation;transition:background .15s ease,border-color .15s ease}.device-reply:hover,.device-reply.is-active{background:#96b4e629;border-color:#bed7ff80}.device-reply-text{flex:1 1 auto;font-size:var(--text-sm);line-height:1.4}.device-typing-dots{display:flex;align-items:center;gap:.24rem;height:1.1rem}.device-typing-dots span{width:.32rem;height:.32rem;border-radius:var(--radius-pill);background:#e2ecfabf;animation:device-typing 1.1s infinite ease-in-out}.device-typing-dots span:nth-child(2){animation-delay:.16s}.device-typing-dots span:nth-child(3){animation-delay:.32s}@keyframes device-typing{0%,60%,to{opacity:.28;transform:translateY(0)}30%{opacity:1;transform:translateY(-.14rem)}}@media (prefers-reduced-motion: reduce){.device-typing-dots span{animation:device-typing-fade 1.4s infinite ease-in-out}@keyframes device-typing-fade{0%,60%,to{opacity:.3}30%{opacity:1}}}.device-cal{display:flex;flex-direction:column;gap:.7rem}.device-cal-grid{display:flex;flex-direction:column;border:1px solid rgba(180,200,230,.14);border-radius:var(--radius-md);overflow:hidden}.device-cal-day{display:flex;align-items:stretch;gap:.7rem;min-height:3.1rem;padding:.5rem .7rem;border-bottom:1px solid rgba(180,200,230,.09)}.device-cal-day:last-child{border-bottom:0}.device-cal-day--today{background:#96b4e614}.device-cal-day--blank{background:repeating-linear-gradient(-45deg,rgba(180,200,230,.035) 0 6px,transparent 6px 12px)}.device-cal-label{flex:0 0 3.6rem;display:flex;flex-direction:column;gap:.1rem;padding-right:.7rem;border-right:1px solid rgba(180,200,230,.12)}.device-cal-name{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:#b2c6e2b3}.device-cal-date{font-size:var(--text-lg);line-height:1;color:#e2ecfae6}.device-cal-day--today .device-cal-date{color:#f0a096f2}.device-cal-entries{display:flex;flex-direction:column;justify-content:center;gap:.3rem;flex:1 1 auto;min-width:0}.device-cal-entry{display:flex;align-items:baseline;gap:.55rem;padding:.28rem .5rem;border-radius:var(--radius-xs);background:#96b4e624;border-left:2px solid rgba(150,190,250,.6)}.device-cal-time{flex:0 0 auto;font-size:var(--text-xs);color:#c4d8f5cc}.device-cal-what{font-size:var(--text-sm);color:#e4eefcf0}.device-cal-empty{display:block;height:1px}.device-cal-note{font-size:var(--text-xs);letter-spacing:.06em;color:#b2c6e299;text-align:center}.device-dialog{width:min(22rem,100%);margin:2rem auto;background:linear-gradient(180deg,#1d2029,#14161d);border:1px solid rgba(200,214,235,.2);border-radius:var(--radius-md);overflow:hidden;box-shadow:0 18px 40px #0000008c}.device-dialog-bar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.35rem .6rem;background:#ffffff0d;border-bottom:1px solid rgba(180,200,230,.14)}.device-dialog-app{font-size:var(--text-xs);letter-spacing:.08em;color:#cedcf0d9}.device-dialog-x{font-size:var(--text-md);color:#aabedc80}.device-dialog-text{padding:1.1rem .9rem;font-size:var(--text-sm);line-height:1.5;color:#d8e4f4e6}.device-dialog-actions{display:flex;justify-content:flex-end;gap:.45rem;padding:0 .9rem .9rem}.device-dialog-btn{padding:.28rem .85rem;border:1px solid rgba(180,200,230,.22);border-radius:var(--radius-xs);background:#ffffff0a;font-size:var(--text-xs);color:#c4d4eeb3}.device-dialog-btn--default{border-color:#bed7ff73;color:#e2eefee6}.device-chin{display:flex;align-items:center;justify-content:center;flex:0 0 auto;padding:.4rem 0 .25rem}.device-home{appearance:none;border:1px solid rgba(200,215,240,.22);background:#ffffff0f;border-radius:var(--radius-pill);width:2.4rem;height:.42rem;padding:0;cursor:pointer;touch-action:manipulation;transition:background .15s ease}.device-home:hover{background:#bed7ff47}.device--laptop .device-chin{padding:.5rem 0 0}.device--laptop .device-home{width:7rem;height:.34rem;border-radius:0 0 var(--radius-sm) var(--radius-sm);border-top:0;background:#ffffff17}.device-caption{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:.25rem .7rem;text-align:center;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;color:#b4c8e680}.device-caption-name{color:#d6e4f8cc;letter-spacing:.14em;text-transform:uppercase}@media (max-height: 560px){.device-display{--display-h: 70vh}.device--phone .device-display{--display-h: 72vh}.device-home-grid{padding:.9rem 1rem}}.item-look-preview{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;padding:1.25rem 1rem 2.5rem;box-sizing:border-box;background:radial-gradient(ellipse at center,#120c16f0,#06040afa);pointer-events:auto;z-index:var(--z-touch);opacity:0;transition:opacity .3s ease-out}.item-look-preview.visible{opacity:1}.item-look-preview-panel{position:relative;display:flex;flex-direction:column;align-items:center;gap:.65rem;width:min(92vw,54rem);max-height:min(88vh,52rem);padding:1.35rem 1.5rem 1.15rem;box-sizing:border-box;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;min-height:0}.item-look-preview-close{position:absolute;top:.55rem;right:.6rem;width:2.1rem;height:2.1rem;padding:0;border:1px solid rgba(200,185,210,.28);border-radius:.35rem;background:#fff5e60f;color:#e8dac8e0;font-size:var(--text-xl);line-height:1;cursor:pointer;z-index:var(--z-world-marker)}.item-look-preview-close:hover{background:#fff5e61f;color:#faf0e1fa}.item-look-preview-title{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:#e8dac8b8;font-weight:500;text-align:center;padding:0 2.2rem}.item-look-preview-art{flex:1 1 auto;display:flex;align-items:center;justify-content:center;width:100%;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:rgba(160,140,170,.35) transparent}.item-look-preview-art svg{width:min(100%,48rem);height:auto;max-height:min(72vh,42rem);display:block;shape-rendering:geometricPrecision}.item-look-preview-desc{font-size:var(--text-sm);line-height:1.45;color:#c8bcafd1;text-align:center;max-width:36rem;font-style:italic}.item-look-preview-hint{font-size:var(--text-sm);color:#e8dac87a;letter-spacing:.05em;font-style:italic}.item-look-preview-hint .prompt-key{margin:0 .15rem;background:#fff0dc1a;padding:.05rem .45rem;border-radius:var(--radius-xs);font-family:var(--font-mono);font-style:normal}.safe-closeup{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#120e16f0,#06040afa);pointer-events:auto;z-index:var(--z-touch);opacity:0;transition:opacity .35s ease-out}.safe-closeup.visible{opacity:1}.safe-closeup-panel{width:min(22rem,90vw);padding:1.75rem 1.5rem 1.5rem;transition:transform .12s ease-out}@media (pointer: coarse){.safe-closeup{align-items:flex-start;padding:max(2.5rem,var(--edge-top)) 0 var(--edge-bottom);overflow-y:auto;overscroll-behavior:contain}.safe-closeup-panel{flex:none}}.safe-closeup-panel.safe-closeup--wrong{animation:safe-closeup-shake .42s ease-out}@keyframes safe-closeup-shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.safe-closeup-title{font-size:var(--text-xs);font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#c8cddaa6;text-align:center;margin-bottom:.35rem}.safe-closeup-sub{font-size:var(--text-sm);color:#b4b9c6c7;text-align:center;margin-bottom:1.25rem;line-height:1.35}.safe-closeup-display{display:flex;justify-content:center;gap:.65rem;margin-bottom:1.35rem;padding:.85rem .6rem;border-radius:.28rem;background:#06080ceb;border:1px solid rgba(90,100,120,.35);box-shadow:inset 0 2px 12px #0000008c}.safe-closeup-slot{font-family:var(--font-mono);font-size:var(--text-2xl);font-weight:500;color:#bee6ffeb;min-width:1.15rem;text-align:center;text-shadow:0 0 12px rgba(120,200,255,.35)}.safe-closeup-keys{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem;margin-bottom:1.1rem}.safe-closeup-key{font-family:inherit;font-size:var(--text-lg);font-weight:600;padding:.62rem .25rem;border-radius:.28rem;border:1px solid rgba(110,120,140,.45);background:linear-gradient(180deg,#4a505c,#353a44);color:#ebeef5f2;cursor:pointer;transition:background .12s ease,transform .08s ease}.safe-closeup-key:hover{background:linear-gradient(180deg,#585f6e,#424854)}.safe-closeup-key:active{transform:scale(.96)}.safe-closeup-key--ghost{border:none;background:transparent;cursor:default;pointer-events:none}.safe-closeup-hint{text-align:center;font-size:var(--text-sm);color:#c8bed273;letter-spacing:.04em}.password-closeup-input{display:block;width:100%;box-sizing:border-box;margin-bottom:.85rem;padding:.75rem .9rem;border-radius:.28rem;border:1px solid rgba(90,100,120,.45);background:#06080ceb;color:#dcebfff2;font-family:var(--font-mono);font-size:var(--text-lg);letter-spacing:.08em;text-align:center;outline:none;box-shadow:inset 0 2px 12px #0000008c}.password-closeup-input:focus{border-color:#78aadc8c}.password-closeup-input--wrong{border-color:#c8505ab3}.password-closeup-submit{display:block;width:100%;margin-bottom:1.1rem;font-family:inherit;font-size:var(--text-md);font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:.65rem .5rem;border-radius:.28rem;border:1px solid rgba(110,120,140,.45);background:linear-gradient(180deg,#4a505c,#353a44);color:#ebeef5f2;cursor:pointer}.password-closeup-submit:hover{background:linear-gradient(180deg,#585f6e,#424854)}.safe-closeup-hint .prompt-key{margin-right:.35rem;background:#fff0dc1a;padding:.05rem .45rem;border-radius:var(--radius-xs);font-family:var(--font-mono)}.modal-owns-screen .mc-root,.modal-owns-screen .memory-dock,.modal-owns-screen .cat-actions,.modal-owns-screen .scent-hud{visibility:hidden;pointer-events:none}.mc-root{position:absolute;inset:0;pointer-events:none;z-index:var(--z-hud)}.mc-joy-base{display:none;position:absolute;width:112px;height:112px;margin-left:-56px;margin-top:-56px;border-radius:50%;background:#fff5e614;border:1.5px solid rgba(255,245,230,.18);pointer-events:none;transition:opacity .16s ease;will-change:opacity}.mc-joy-knob{position:absolute;top:50%;left:50%;width:44px;height:44px;margin-left:-22px;margin-top:-22px;border-radius:50%;background:#fff5e647;border:1.5px solid rgba(255,245,230,.45);box-shadow:0 2px 12px #0006;transform:translate(-50%,-50%);transition:transform .04s linear;pointer-events:none}.mc-actions{position:absolute;bottom:var(--mc-inset-bottom);right:var(--mc-inset-right);display:flex;flex-direction:row;align-items:flex-end;gap:10px;pointer-events:auto}.mc-pads,.mc-verbs{display:flex;flex-direction:column;gap:var(--mc-gap);align-items:flex-end}.mc-pads{align-items:center}.mc-btn{width:var(--mc-btn-size, 52px);height:var(--mc-btn-size, 52px);border-radius:50%;border:1.5px solid rgba(255,245,230,.3);background:#fff5e61a;color:#fff5e6b3;font-family:var(--font-mono);font-size:var(--text-md);font-weight:600;display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:background .1s,border-color .1s,color .1s;box-shadow:0 2px 10px #00000059;user-select:none;-webkit-user-select:none}.mc-btn--pressed{background:#fff5e647;border-color:#fff5e699;color:#fff5e6}.mc-pill{width:auto;min-width:4.6rem;height:var(--mc-btn-size, 52px);padding:0 .7rem;border-radius:999px;font-size:var(--text-xs);font-weight:500;letter-spacing:.04em;white-space:nowrap}.mc-pill--hidden{visibility:hidden;pointer-events:none}@media (pointer: coarse) and (max-height: 520px){:root{--mc-btn-size: 44px;--mc-gap: 9px;--mc-inset-bottom: max(14px, env(safe-area-inset-bottom, 12px));--mc-inset-right: max(14px, env(safe-area-inset-right, 12px))}.mc-pill{min-width:4.1rem}}.cat-actions{position:fixed;bottom:var(--edge-bottom);right:var(--edge-right);display:none;flex-direction:column;align-items:flex-end;gap:.28rem;z-index:var(--z-hud);pointer-events:none}.cat-actions.visible{display:flex;animation:prompt-fade-in .2s ease-out}.cat-actions .prompt--cat{width:auto;min-width:7.5rem;pointer-events:auto}@media (pointer: coarse){.cat-actions{right:var(--mc-inset-right);bottom:calc(var(--mc-inset-bottom) + var(--mc-stack-h) + .75rem);max-height:calc(100vh - var(--mc-inset-bottom) - var(--mc-stack-h) - var(--edge-top) - 2rem);overflow-y:auto;overscroll-behavior:contain}}.prompt-key--wide{padding-left:.35rem;padding-right:.35rem;font-size:var(--text-xs);letter-spacing:.02em}.mc-hint-toast{position:absolute;left:50%;top:calc(var(--edge-top) + 3.4rem);transform:translate(-50%) translateY(0);width:min(22rem,calc(100vw - 28px));padding:.85rem 1rem .95rem;border-radius:12px;background:#120e1aeb;border:1px solid rgba(255,245,230,.14);box-shadow:0 8px 28px #00000073;pointer-events:auto;z-index:var(--z-notice);animation:mc-hint-in .35s ease-out}@keyframes mc-hint-in{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.mc-hint-toast__title{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.14em;opacity:.55;margin-bottom:.35rem}.mc-hint-toast__body{font-size:var(--text-sm);line-height:1.45;color:#f0e4d8eb}.mc-hint-toast__body strong{color:#f5ebe0;font-weight:600}.mc-hint-toast__dismiss{margin-top:.55rem;font-size:var(--text-xs);font-style:italic;opacity:.42}@media (pointer: coarse) and (max-width: 480px){:root{--mc-btn-size: 56px;--mc-gap: 16px}.mc-pads .mc-btn{font-size:var(--text-lg)}}.rotate-hint{position:fixed;top:var(--edge-top);left:calc(var(--edge-left) + 7.2rem);right:var(--edge-right);display:flex;align-items:center;gap:.5rem;padding:.45rem .3rem .45rem .65rem;border-radius:999px;background:#120e1ae0;border:1px solid rgba(255,245,230,.14);box-shadow:0 6px 20px #0006;z-index:var(--z-notice);pointer-events:auto;animation:prompt-fade-in .3s ease-out}.rotate-hint__icon{font-size:var(--text-md);opacity:.6;flex:none}.rotate-hint__body{font-size:var(--text-xs);line-height:1.35;color:#f0e4d8e6}.rotate-hint__close{flex:none;width:1.9rem;height:1.9rem;margin-left:auto;border:0;border-radius:50%;background:transparent;color:#f0e4d88c;font-size:var(--text-md);line-height:1;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.settings-menu{position:fixed;top:var(--edge-top);left:var(--edge-left);z-index:var(--z-settings);font-family:inherit}.settings-gear{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(240,228,216,.22);border-radius:50%;background:#0d0a12b8;color:#f0e4d8c7;cursor:pointer;transition:color .15s ease,border-color .15s ease,transform .25s ease}.settings-gear:hover{color:#f5ebe0;border-color:#f0e4d880;transform:rotate(30deg)}.settings-panel{position:absolute;top:46px;left:0;width:268px;padding:14px 16px;max-height:calc(100vh - 46px - var(--edge-top) - var(--edge-bottom));overflow-y:auto;overscroll-behavior:contain}.settings-row+.settings-row{margin-top:12px}.settings-label{display:block;margin-bottom:6px;font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:#f0e4d88c}.settings-volume{width:100%;accent-color:#d8b98a;cursor:pointer}.settings-controls{display:grid;grid-template-columns:auto 1fr;gap:5px 10px;margin:0;align-items:baseline}.settings-controls dt{display:flex;gap:3px;justify-content:flex-end}.settings-controls dd{margin:0;font-size:var(--text-xs);color:#f0e4d8b8}.settings-controls kbd{display:inline-block;min-width:1.1em;padding:1px 4px;border:1px solid rgba(240,228,216,.24);border-radius:4px;background:#f0e4d812;font:inherit;font-size:var(--text-xs);line-height:1.35;text-align:center;color:#f0e4d8d9}.settings-tiers{display:flex;gap:6px}.settings-tier{flex:1;padding:5px 0;border:1px solid rgba(240,228,216,.2);border-radius:6px;background:transparent;color:#f0e4d8a6;font-family:inherit;font-size:var(--text-xs);cursor:pointer;transition:color .15s ease,border-color .15s ease,background .15s ease}.settings-tier:hover{color:#f5ebe0;border-color:#f0e4d873}.settings-tier.is-active{background:#d8b98a2e;border-color:#d8b98a;color:#f0e0c8}.settings-fps-row{display:flex;align-items:baseline;justify-content:space-between}.settings-fps-row .settings-label{margin-bottom:0}.settings-fps{font-size:var(--text-md);font-variant-numeric:tabular-nums;color:#f0e0c8}.story-card{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:safe center;padding:max(2.5rem,env(safe-area-inset-top),6vh) clamp(1.5rem,8vw,6rem) max(2.5rem,env(safe-area-inset-bottom),6vh);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:var(--grain-dark),radial-gradient(ellipse at center,#120d16f5,#060409fc);background-size:var(--grain-tile-size),cover;background-blend-mode:overlay,normal;color:#ece2c6;font-family:var(--font-serif);pointer-events:auto;z-index:var(--z-story);opacity:0;transition:opacity 1.1s ease-out}.story-card.visible{opacity:1}.story-card-title{flex:0 0 auto;margin-bottom:2.4rem;font-size:var(--text-xs);letter-spacing:.24em;text-transform:uppercase;color:#d8b98aa6}.story-card-body{flex:0 1 auto;width:min(var(--measure-prose),100%);display:flex;flex-direction:column}.story-card-para{margin:0 0 1.35em;font-size:clamp(var(--text-md),1.6vw,var(--text-lg));line-height:1.72;font-style:italic;opacity:0;transform:translateY(.5rem);transition:opacity 1.5s ease-out,transform 1.5s ease-out}.story-card-para:last-child{margin-bottom:0}.story-card-para.visible{opacity:1;transform:none}.story-card-hint{flex:0 0 auto;margin-top:2.5rem;font-size:var(--text-sm);letter-spacing:.08em;font-style:italic;color:#e8dac847;opacity:0;transition:opacity 1.4s ease-in;text-align:center}.story-card--complete .story-card-hint{opacity:1}@media (prefers-reduced-motion: reduce){.story-card,.story-card-para,.story-card-hint{transition-duration:.2s}.story-card-para{transform:none}}.collection-overlay{position:absolute;inset:0;z-index:var(--z-modal);pointer-events:auto;display:flex;align-items:center;justify-content:center;background:#060609f0;opacity:0;transition:opacity .4s ease}.collection-overlay.visible{opacity:1}.collection-panel{width:min(72ch,94vw);max-height:92vh;min-height:min(26rem,92vh);padding:2rem 2.2rem 1.6rem;display:flex;flex-direction:column;color:#e8dac8e6}.collection-page{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.collection-tabs{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:1rem;border-bottom:1px solid rgba(232,218,200,.14)}.collection-tab{position:relative;display:flex;align-items:baseline;gap:.45rem;background:none;border:1px solid transparent;border-bottom:2px solid transparent;border-radius:4px 4px 0 0;color:#e8dac873;font:inherit;font-size:var(--text-sm);letter-spacing:.06em;padding:.4rem .85rem .45rem;cursor:pointer;margin-bottom:-1px}.collection-tab:hover{color:#e8dac8cc;background:#e8dac80d}.collection-tab--on{color:#e8dac8f2;background:#e8dac812;border-bottom-color:#e8dac8bf}.collection-tab:focus-visible{outline:1px solid rgba(232,218,200,.5);outline-offset:1px}.collection-tab-count{font-size:.82em;font-variant-numeric:tabular-nums;color:#e8dac873}.collection-tab--on .collection-tab-count{color:#e8dac8b3}.collection-tab-key{font-size:.7em;color:#e8dac847}@media (max-height: 560px){.collection-panel{min-height:0;max-height:calc(100vh - var(--edge-top) - var(--edge-bottom));padding:.8rem 1.2rem .7rem}.collection-panel .collection-stats,.collection-panel .story-card-hint{display:none}.collection-panel .story-card-title{margin-bottom:.5rem;padding-left:5.5rem}.collection-tabs{margin-bottom:.5rem}.collection-pager{margin-top:.5rem}}@media (pointer: coarse),(max-width: 560px){.collection-panel{width:min(72ch,100vw - 1.2rem);max-height:calc(100vh - var(--edge-top) - var(--edge-bottom));padding:1.1rem 1rem .9rem}.collection-tabs{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;margin-bottom:.7rem;-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 2rem),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 2rem),transparent)}.collection-tabs::-webkit-scrollbar{display:none}.collection-tab{flex:none;padding:.45rem .6rem .5rem}.collection-tab-key{display:none}.collection-panel .collection-stats{gap:.2rem 1rem;margin:.5rem 0 .8rem;font-size:var(--text-xs)}.collection-panel .story-card-title{font-size:var(--text-sm);letter-spacing:.16em;margin-bottom:.75rem}.collection-panel .story-card-hint{margin-top:.5rem;font-size:var(--text-xs)}.collection-close{top:.6rem;right:.7rem}.collection-pager-btn{min-width:3rem;min-height:2.75rem}.collection-pager-label{min-width:7rem}}.collection-pager{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:.9rem}.collection-pager[hidden]{display:none}.collection-pager-btn{background:none;border:1px solid rgba(232,218,200,.3);border-radius:4px;color:#e8dac8cc;font:inherit;font-size:var(--text-lg);line-height:1;padding:.2rem .75rem;cursor:pointer}.collection-pager-btn:hover{border-color:#e8dac899;background:#e8dac80f}.game-menu{position:fixed;top:var(--edge-top);left:calc(var(--edge-left) + 2.6rem);z-index:var(--z-settings);font-family:inherit}.game-menu-toggle{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:#0a0a0e8c;border:1px solid rgba(232,218,200,.2);border-radius:6px;color:#e8dac8b3;cursor:pointer}.game-menu-toggle:hover{color:#e8dac8;border-color:#e8dac880}.collection-close{position:absolute;top:1rem;right:1.2rem;background:none;border:1px solid rgba(232,218,200,.25);border-radius:4px;color:#e8dac8b3;font:inherit;font-size:var(--text-md);line-height:1;padding:.3rem .55rem;cursor:pointer}.collection-close:hover{border-color:#e8dac899;color:#e8dac8}.collection-panel{position:relative}.collection-pager-label{font-size:var(--text-sm);letter-spacing:.08em;color:#e8dac88c;min-width:9rem;text-align:center}.collection-stats{display:flex;flex-wrap:wrap;gap:.4rem 1.6rem;margin:.8rem 0 1.4rem;font-size:var(--text-sm);letter-spacing:.05em;color:#e8dac899}.collection-stats b{color:#e8dac8f2;font-weight:600}.collection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(5.2rem,1fr));gap:.5rem}.collection-tile{border:1px solid rgba(232,218,200,.12);border-radius:4px;padding:.4rem .3rem .3rem;display:flex;flex-direction:column;align-items:center;gap:.25rem;min-height:5.6rem}.collection-tile--found{border-color:#e8dac84d;background:#e8dac80a}.collection-art{width:3.4rem;height:3.4rem;display:flex;align-items:center;justify-content:center}.collection-art svg{width:100%;height:100%}.collection-art--unknown{font-size:var(--text-xl);font-style:italic;color:#e8dac838}.collection-name{font-size:var(--text-xs);line-height:1.25;text-align:center;color:#e8dac8a6;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.collection-empty{margin:.4rem 0 0;font-size:var(--text-sm);font-style:italic;color:#e8dac866}.collection-subtitle{margin-top:1.6rem}.collection-achievements{display:flex;flex-direction:column;gap:.3rem;margin-top:.7rem}.collection-moment{display:flex;align-items:baseline;gap:.9rem;padding:.3rem .6rem;font-size:var(--text-sm);color:#e8dac84d;border-left:2px solid rgba(232,218,200,.1)}.collection-moment--got{color:#e8dac8d9;border-left-color:#e8dac880}.collection-moment-hint{font-style:italic;font-size:.78em;color:#e8dac873}.story-history-list{flex:0 1 auto;width:min(56ch,100%);overflow-y:auto;display:flex;flex-direction:column;gap:.35rem}.collection-story{width:100%;overflow:visible}.story-history-entry{display:flex;align-items:baseline;gap:.8rem;padding:.55rem .9rem;background:none;border:1px solid rgba(232,218,200,.14);border-radius:4px;color:#e8dac8d1;font:inherit;font-size:var(--text-md);font-style:italic;text-align:left;cursor:pointer;transition:border-color .2s ease,background .2s ease}.story-history-entry:hover,.story-history-entry:focus-visible{border-color:#e8dac873;background:#e8dac80f}.story-history-num{flex:0 0 auto;font-size:var(--text-sm);font-style:normal;color:#e8dac859}.story-history-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cat-choice{position:absolute;left:50%;bottom:7.5rem;transform:translate(-50%) translateY(.4rem);display:flex;flex-direction:column;gap:.45rem;min-width:min(24rem,84vw);max-width:min(34rem,92vw);max-height:min(26rem,52vh);overflow-y:auto;pointer-events:auto;z-index:var(--z-modal);opacity:0;transition:opacity .28s ease-out,transform .28s ease-out}.cat-choice.visible{opacity:1;transform:translate(-50%) translateY(0)}.cat-choice-option{display:flex;align-items:baseline;gap:.6rem;padding:.55rem .9rem;background:#100c14eb;border:1px solid rgba(216,185,138,.28);border-radius:.35rem;color:#ece2c6;font-family:var(--font-serif);font-style:italic;font-size:var(--text-md);line-height:1.4;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease}.cat-choice-option:hover,.cat-choice-option:focus-visible{border-color:#d8b98abf;background:#1e1622f2;outline:none}.cat-choice-key{flex:0 0 auto;font-style:normal;font-size:var(--text-xs);padding:.05rem .4rem;border:1px solid rgba(216,185,138,.45);border-radius:.25rem;color:#d8b98ae6}.convo{position:absolute;left:50%;bottom:5.5rem;transform:translate(-50%) translateY(.5rem);display:grid;grid-template-columns:auto 1fr;grid-template-areas:"portrait body" "choices choices";gap:.85rem 1rem;width:min(38rem,92vw);padding:.95rem 1.1rem;background:#0e0a12f0;border:1px solid rgba(216,185,138,.3);border-radius:var(--radius-lg);box-shadow:0 18px 48px #0000008c;pointer-events:auto;z-index:var(--z-modal);opacity:0;transition:opacity .3s ease-out,transform .3s ease-out}.convo.visible{opacity:1;transform:translate(-50%) translateY(0)}.convo-portrait{grid-area:portrait;width:3.6rem;height:3.6rem;border-radius:.35rem;overflow:hidden;background:#28202ee6;border:1px solid rgba(216,185,138,.22)}.convo-portrait svg{display:block;width:100%;height:100%}.convo-body{grid-area:body;min-width:0}.convo-name{font-family:var(--font-serif);font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;color:#d8b98ac7;margin-bottom:.3rem}.convo-line{font-family:var(--font-serif);font-style:italic;font-size:var(--text-md);line-height:1.55;color:#ece2c6;min-height:3.1em}.cat-choice--docked{grid-area:choices;position:static;transform:none;left:auto;bottom:auto;min-width:0;max-width:none;width:100%;max-height:min(18rem,40vh);border-top:1px solid rgba(216,185,138,.18);padding-top:.7rem}.cat-choice--docked.visible{transform:none}.convo-next{grid-area:choices;justify-self:end;display:flex;align-items:baseline;gap:.55rem;margin-top:.2rem;padding:.4rem .85rem;background:#d8b98a1a;border:1px solid rgba(216,185,138,.42);border-radius:var(--radius-sm);color:#ece2c6;font-family:var(--font-serif);font-size:var(--text-sm);cursor:pointer;animation:convo-next-in .35s ease-out both;transition:border-color .15s ease,background .15s ease}.convo-next:hover,.convo-next:focus-visible{border-color:#d8b98ad9;background:#d8b98a2e;outline:none}.convo-next-label{font-style:italic}.convo-next-key{font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;opacity:.55}@keyframes convo-next-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.convo-next{animation:none}}.hold-hint{position:absolute;left:50%;bottom:11rem;transform:translate(-50%) translateY(.4rem);display:flex;align-items:center;gap:.1rem;padding:.5rem 1rem;background:#0e0a12e6;border:1px solid rgba(216,185,138,.3);border-radius:.35rem;font-family:var(--font-serif);font-style:italic;font-size:var(--text-md);color:#ece2c6;pointer-events:none;z-index:var(--z-modal);opacity:0;transition:opacity .3s ease-out,transform .3s ease-out,border-color .15s ease}.hold-hint.visible{opacity:1;transform:translate(-50%) translateY(0)}.hold-hint--active{border-color:#d8b98ad9}.hold-hint--active .hold-hint-key{background:#d8b98ad9;color:#1a1016}.hold-hint-key{transition:background .12s ease,color .12s ease}.convo~.hold-hint{bottom:16rem}@media (prefers-reduced-motion: reduce){.hold-hint{transition:opacity .15s linear}}.scent-hud{position:fixed;left:0;right:0;bottom:calc(3.2rem + env(safe-area-inset-bottom,0px));z-index:var(--z-hud);display:flex;justify-content:center;pointer-events:none;opacity:0;transition:opacity .25s ease-out}.scent-hud-inner{text-align:center;font-family:var(--font-serif);color:#f0e8d8d9;text-shadow:0 2px 18px rgba(0,0,0,.85)}.scent-hud-mode{margin:0;font-size:var(--text-xs);font-style:italic;letter-spacing:.3em;text-transform:uppercase;opacity:.55}.scent-hud-count{margin:.35rem 0 0;font-size:var(--text-sm);font-style:italic;opacity:.75}.scent-hud-trace{margin:.35rem 0 0;padding:.1rem .2rem;font-size:var(--text-sm);font-style:italic;opacity:.72;border:1px solid transparent;border-radius:999px;transition:opacity .2s ease,border-color .2s ease,background-color .2s ease}.scent-hud.tracing .scent-hud-trace{padding:.22rem .85rem;opacity:1;border-color:#f0e8d852;background:#08060c73}.scent-hud-trace:empty{display:none}.scent-hud-lead{margin-top:.6rem}.scent-hud-lead-label{margin:0 0 .3rem;font-size:var(--text-xs);letter-spacing:.16em;text-transform:lowercase;opacity:.7}.scent-hud-lead-bar{width:9rem;height:2px;margin:0 auto;background:#f0e8d82e;border-radius:2px;overflow:hidden}.scent-hud-lead-fill{width:0%;height:100%;background:#f0e8d8b3;transition:width .3s ease-out}@media (prefers-reduced-motion: reduce){.scent-hud,.scent-hud-lead-fill{transition-duration:.01s}}
