@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Outfit:wght@300;400;500;600;700;800&family=Jost:wght@400..500&display=swap";:root{--color-bg-deep:#050510;--color-bg-mid:#0a0a2e;--color-bg-surface:#114;--color-accent-primary:#e8b94a;--color-accent-secondary:#f0d78c;--color-accent-glow:#e8b94a59;--color-nebula-purple:#6b3fa0;--color-nebula-blue:#2d5fa8;--color-nebula-pink:#a84073;--color-text-primary:#eef0f6;--color-text-secondary:#eef0f6a6;--color-text-tertiary:#eef0f666;--glass-bg:#0a0a2e99;--glass-border:#eef0f61a;--glass-highlight:#eef0f60d;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--font-display:"Outfit", system-ui, sans-serif;--font-body:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--text-4xl:2.5rem;--text-5xl:3.5rem;--radius-sm:.375rem;--radius-md:.75rem;--radius-lg:1rem;--radius-xl:1.5rem;--radius-full:9999px;--shadow-glow:0 0 30px var(--color-accent-glow);--shadow-glow-lg:0 0 60px var(--color-accent-glow), 0 0 120px #e8b94a26;--shadow-card:0 8px 32px #0006;--shadow-elevated:0 16px 48px #0009;--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-out-quart:cubic-bezier(.25, 1, .5, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--duration-fast:.15s;--duration-normal:.3s;--duration-slow:.5s;--duration-slower:.8s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{background:var(--color-bg-deep);width:100%;height:100%;color:var(--color-text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.6;overflow:hidden}.canvas-container{z-index:0;position:fixed;inset:0}.canvas-container canvas{touch-action:none;display:block}.loading-screen{z-index:1000;background:var(--color-bg-deep);transition:opacity .3s var(--ease-out-expo), visibility .3s;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.loading-screen.loaded{opacity:0;visibility:hidden;pointer-events:none}.loading-logo{font-family:var(--font-display);font-size:var(--text-5xl);letter-spacing:-.02em;background:linear-gradient(135deg, var(--color-accent-primary), var(--color-accent-secondary), var(--color-nebula-purple));-webkit-text-fill-color:transparent;margin-bottom:var(--space-xl);background-size:200% 200%;-webkit-background-clip:text;background-clip:text;font-weight:800;animation:3s infinite gradient-shift}.loading-subtitle{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-tertiary);letter-spacing:.2em;text-transform:uppercase;margin-bottom:var(--space-2xl);font-weight:300}.loading-bar-container{background:var(--glass-border);border-radius:var(--radius-full);width:200px;height:2px;position:relative;overflow:hidden}.loading-bar{background:linear-gradient(90deg, var(--color-accent-primary), var(--color-accent-secondary));border-radius:var(--radius-full);width:35%;height:100%;box-shadow:var(--shadow-glow);animation:1.1s ease-in-out infinite loading-sweep}.loading-bar.is-done{width:100%;transition:width .2s var(--ease-out-quart);animation:none;transform:none}@keyframes loading-sweep{0%{transform:translate(-100%)}to{transform:translate(290%)}}@media (prefers-reduced-motion:reduce){.loading-bar{opacity:.6;width:100%;animation:none}}.loading-particles{pointer-events:none;position:absolute;inset:0}.loading-particle{background:var(--color-accent-primary);opacity:0;border-radius:50%;width:2px;height:2px;animation:4s ease-in-out infinite float-particle;position:absolute}.hud-overlay{inset:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);z-index:10;pointer-events:none;padding:var(--space-lg);position:fixed}.hud-top-left{top:var(--space-lg);left:var(--space-lg);position:absolute}.hud-top-right{top:var(--space-lg);right:var(--space-lg);position:absolute}.hud-brand{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:-.02em;color:var(--color-text-primary);opacity:.7;transition:opacity var(--duration-normal);font-weight:700}.hud-bottom-left{bottom:var(--space-xl);left:var(--space-lg);position:absolute}.hud-bottom-right{bottom:var(--space-xl);right:var(--space-lg);position:absolute}.hud-mode{align-items:center;gap:var(--space-xs);font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-secondary);padding:var(--space-xs) var(--space-md);background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--radius-full);letter-spacing:.08em;text-transform:uppercase;display:flex}.hud-mode-icon{font-size:var(--text-base)}.hud-mode-label{font-weight:600}.hud-fps{font-family:var(--font-mono);color:#ffffff4d;text-align:right;letter-spacing:.05em;margin-top:4px;font-size:10px}.hud-speed{flex-direction:column;gap:4px;min-width:100px;display:flex}.hud-speed-bar-track{background:#ffffff14;border-radius:2px;width:100%;height:3px;overflow:hidden}.hud-speed-bar-fill{background:linear-gradient(90deg,#6b3fa099,#e8b94acc);border-radius:2px;height:100%;transition:width .1s linear}.hud-speed-value{font-family:var(--font-body);color:#ffffff80;letter-spacing:.05em;font-size:11px;font-weight:600}.hud-speed-unit{opacity:.6;font-weight:400}.radar-container{width:160px;height:160px;margin-bottom:var(--space-md);position:relative}.radar-canvas{width:100%;height:100%;display:block}.hud-keyboard{bottom:var(--space-xl);right:var(--space-lg);align-items:flex-end;gap:24px;display:flex;position:absolute}.hud-keyboard--world{right:var(--space-lg)}.hud-keyboard-cluster{flex-direction:column;align-items:flex-start;gap:3px;display:flex}.hud-cluster-label{font-family:var(--font-body);color:#fff3;text-transform:uppercase;letter-spacing:.1em;margin-bottom:2px;font-size:9px;font-weight:500}.hud-key-row{gap:3px;display:flex}.hud-key-row--offset-1{margin-left:6px}.hud-key-row--offset-2{margin-left:12px}.hud-key-row--space{margin-top:1px;margin-left:12px}.hud-keycap{min-width:22px;height:22px;font-family:var(--font-body);color:#ffffff59;-webkit-user-select:none;user-select:none;background:#ffffff0a;border:1px solid #ffffff14;border-bottom:2px solid #ffffff0f;border-radius:3px;justify-content:center;align-items:center;padding:0 4px;font-size:9px;font-weight:600;line-height:1;transition:all 60ms ease-out;display:inline-flex}.hud-keycap--wide{letter-spacing:.06em;min-width:80px;font-size:8px}.hud-keycap--active{color:#b4d2ff;text-shadow:0 0 6px #8cb4ff80;background:#6496ff26;border-color:#78aaff66 #78aaff66 #78aaff4d;box-shadow:0 0 8px #78aaff33,inset 0 0 2px #78aaff26}.hud-key-label{font-family:var(--font-body);color:#ffffff4d;margin-left:6px;font-size:10px}.hud-crosshair{pointer-events:none;transition:left 80ms linear,top 80ms linear;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hud-crosshair-dot{background:#fff3;border-radius:50%;width:4px;height:4px;box-shadow:0 0 6px #ffffff1a}.hud-crosshair-dot--charging{background:#8cb4ff99;animation:.5s ease-in-out infinite crosshair-pulse;box-shadow:0 0 10px #8cb4ff66}@keyframes crosshair-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.5)}}.hud-top-center{top:calc(var(--space-lg) + 48px);text-align:center;animation:fade-in var(--duration-fast) var(--ease-out-expo);position:absolute;left:50%;transform:translate(-50%)}.hud-target-info{padding:var(--space-xs) var(--space-lg);-webkit-backdrop-filter:blur(12px);border-radius:var(--radius-md);background:#5078c814;border:1px solid #8cb4ff26;flex-direction:column;align-items:center;gap:2px;display:flex}.hud-target-name{font-family:var(--font-body);font-size:var(--text-sm);color:#a0c3ffe6;letter-spacing:.03em;font-weight:600}.hud-target-distance{font-family:var(--font-body);color:#8cb4ff80;letter-spacing:.05em;font-size:11px}.hud-warp-charge-ring{justify-content:center;align-items:center;width:40px;height:40px;display:flex;position:relative}.hud-charge-svg{width:100%;height:100%;position:absolute;inset:0}.hud-lock-indicator{justify-content:center;align-items:center;display:flex}.hud-lock-diamond{border:1.5px solid #8cb4ff99;width:10px;height:10px;animation:1.5s ease-in-out infinite lock-pulse;transform:rotate(45deg)}@keyframes lock-pulse{0%,to{border-color:#8cb4ff66;box-shadow:0 0 4px #8cb4ff1a}50%{border-color:#8cb4ffcc;box-shadow:0 0 10px #8cb4ff4d}}.hud-mod-slots{margin-top:var(--space-sm);flex-direction:column;gap:3px;display:flex}.hud-mod-slot{font-family:var(--font-body);color:#ffffff4d;white-space:nowrap;letter-spacing:.03em;align-items:center;gap:6px;font-size:10px;display:flex}.hud-mod-slot kbd{min-width:14px;height:14px;font-family:var(--font-body);color:#fff6;background:#ffffff0a;border:1px solid #ffffff14;border-radius:2px;justify-content:center;align-items:center;padding:0 3px;font-size:9px;font-weight:600;line-height:1;display:inline-flex}.hud-gravity-mode{margin-top:var(--space-xs);font-family:var(--font-body);letter-spacing:.08em;border-radius:4px;align-items:center;gap:6px;padding:3px 8px;font-size:11px;font-weight:600;transition:all .3s;display:flex}.hud-gravity-mode kbd{min-width:16px;height:16px;font-family:var(--font-body);border-radius:3px;justify-content:center;align-items:center;padding:0 4px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.hud-gravity-mode--drive{color:#64c8dcd9;background:#64c8dc0f;border:1px solid #64c8dc26}.hud-gravity-mode--drive kbd{color:#64c8dce6;background:#64c8dc1a;border:1px solid #64c8dc33}.hud-gravity-mode--neutral{color:#e6b450e6;background:#e6b45014;border:1px solid #e6b45033;animation:2s ease-in-out infinite gravity-pulse}.hud-gravity-mode--neutral kbd{color:#e6b450f2;background:#e6b4501f;border:1px solid #e6b45040}@keyframes gravity-pulse{0%,to{opacity:.85}50%{opacity:1}}html.touch-ui,html.touch-ui body{overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}html.touch-ui input,html.touch-ui textarea,html.touch-ui [contenteditable=true]{-webkit-user-select:text;user-select:text}html.touch-ui input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),html.touch-ui select,html.touch-ui textarea{font-size:max(16px,1em)!important}html.touch-ui .planner-close{touch-action:manipulation;place-items:center;min-width:44px;min-height:44px;display:inline-grid}html.touch-ui .planner-ghost{min-width:44px;min-height:44px;padding:0 10px}html.touch-ui .planner-chip{touch-action:manipulation;min-height:44px;padding:0 14px}html.touch-ui .planner-send{width:44px;height:44px}html.touch-ui .library-dot{width:34px;height:34px}html.touch-ui .library-swatches{gap:8px}html.touch-ui .library-color input[type=color]{width:44px;height:44px}html.touch-ui .library-block,html.touch-ui .library-shape{touch-action:manipulation;min-height:44px}html.touch-ui .hud-keyboard,html.touch-ui .hud-gravity-mode,html.touch-ui .hud-mod-slots{display:none}html.touch-ui .hud-bottom-left{top:calc(var(--space-lg) + 38px);bottom:auto}html.touch-ui .radar-container{width:96px;height:96px;margin-bottom:var(--space-xs)}html.touch-ui .hud-speed{min-width:96px}.radar-container{pointer-events:auto;cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none}button.hud-target-info{font:inherit;color:inherit;cursor:pointer;pointer-events:auto;touch-action:manipulation;-webkit-user-select:none;user-select:none;transition:background .15s,transform .1s}button.hud-target-info:active{background:#5078c82e;transform:scale(.97)}button.hud-target-info:focus-visible{outline-offset:2px;outline:2px solid #a0c3ffb3}.hud-target-switch{display:none}html.touch-ui .hud-target-switch{font-family:var(--font-body);letter-spacing:.08em;color:#a0c3ff80;font-size:10px;display:block}html.touch-ui .hud-top-center{top:var(--space-lg)}@media (orientation:portrait){html.touch-ui .hud-top-center{top:calc(var(--space-lg) + 58px);right:var(--space-lg);max-width:calc(100vw - 156px);left:auto;transform:none}}.touch-overlay{--touch-safe-top:env(safe-area-inset-top,0px);--touch-safe-right:env(safe-area-inset-right,0px);--touch-safe-bottom:env(safe-area-inset-bottom,0px);--touch-safe-left:env(safe-area-inset-left,0px);--touch-accent:#8cc8ffe6;--touch-gold:#e8b94af2;--stick-r:62px;--thumbs-bottom:calc(var(--touch-safe-bottom) + 84px);z-index:20;pointer-events:none;font-family:var(--font-mono);transition:opacity .2s;position:fixed;inset:0}@media (orientation:landscape){.touch-overlay{--thumbs-bottom:calc(var(--touch-safe-bottom) + 16px)}}.touch-overlay--hidden{opacity:0;visibility:hidden}.touch-joystick-base{left:calc(var(--touch-safe-left) + 20px);bottom:var(--thumbs-bottom);width:calc(var(--stick-r) * 2);height:calc(var(--stick-r) * 2);pointer-events:none;opacity:.6;background:radial-gradient(circle,#8cc8ff12,#8cc8ff05 70%);border:1.5px solid #8cc8ff38;border-radius:50%;transition:opacity .15s,border-color .15s,box-shadow .15s;position:fixed;box-shadow:0 0 24px #8cc8ff14,inset 0 0 18px #8cc8ff0f}.touch-joystick-base--active{opacity:1;border-color:#8cc8ff66}.touch-joystick-base--right{left:auto;right:calc(var(--touch-safe-right) + 20px)}.touch-overlay:not(.touch-overlay--in-world) .touch-joystick-base--right{display:none}.touch-joystick-label{text-align:center;letter-spacing:.18em;color:#ffffff59;font-size:.6rem;font-weight:600;transition:opacity .15s;position:absolute;bottom:12%;left:0;right:0}.touch-joystick-base--active .touch-joystick-label{opacity:0}.touch-joystick-knob{will-change:transform;background:radial-gradient(circle at 35% 35%,#c8e6ff73,#8cc8ff2e);border:1px solid #c8e6ff73;border-radius:50%;width:52px;height:52px;position:absolute;top:calc(50% - 26px);left:calc(50% - 26px);box-shadow:0 0 16px #8cc8ff59}.touch-btn.touch-btn--thrust{--pull:0;--ring-thrust:#ffaa5a;--ring-brake:#be1e24;--ring-color:color-mix(in oklab, var(--ring-brake) calc(var(--pull) * 100%), var(--ring-thrust));width:88px;height:88px;color:color-mix(in srgb, var(--ring-color) 90%, white);border:2px solid color-mix(in srgb, var(--ring-color) 70%, transparent);box-shadow:0 0 22px color-mix(in srgb, var(--ring-color) 30%, transparent), inset 0 0 16px color-mix(in srgb, var(--ring-color) 14%, transparent);flex-direction:column;grid-area:thrust;justify-content:center;align-items:center;gap:2px;font-size:.78rem;display:flex}.touch-btn-sub{letter-spacing:.08em;opacity:.6;font-size:.55rem;font-weight:600}.touch-btn.touch-btn--thrust.touch-btn--pressed{background:color-mix(in srgb, var(--ring-color) 22%, #12142a99);animation:.9s ease-in-out infinite touch-thrust-pulse;transform:scale(.94)}.touch-btn.touch-btn--thrust.touch-btn--braking{background:#6e0a1299;border-color:#be1e24e6;animation:none;box-shadow:0 0 26px #aa141c8c,inset 0 0 16px #780a1280}@keyframes touch-thrust-pulse{0%,to{box-shadow:0 0 18px color-mix(in srgb, var(--ring-color) 35%, transparent)}50%{box-shadow:0 0 30px color-mix(in srgb, var(--ring-color) 65%, transparent)}}.touch-actions{right:calc(var(--touch-safe-right) + 14px);bottom:calc(var(--thumbs-bottom) + var(--stick-r) - 44px);pointer-events:none;grid-template-columns:64px 88px;grid-template-areas:"mode mode"".enter""warp thrust";place-items:end center;gap:12px;display:grid;position:fixed}.touch-btn{-webkit-backdrop-filter:blur(8px);width:64px;height:64px;color:var(--touch-accent);letter-spacing:.1em;pointer-events:auto;touch-action:none;cursor:pointer;background:#12142a8c;border:1.5px solid #ffffff29;border-radius:50%;font-family:inherit;font-size:.62rem;font-weight:700;transition:transform 80ms,background .12s,box-shadow .12s,border-color .12s}.touch-btn--pressed{background:#3c4682b3;border-color:#c8e6ff99;transform:scale(.92);box-shadow:0 0 18px #8cc8ff73}.touch-btn--enter{grid-area:enter}.touch-overlay:not(.touch-overlay--in-world) .touch-btn--enter{width:88px;height:48px;color:var(--touch-gold);border-color:#e8b94a99;border-radius:999px;box-shadow:0 0 18px #e8b94a4d}.touch-btn.touch-btn--off{opacity:0;visibility:hidden;pointer-events:none;transform:scale(.8)}.touch-btn--warp,.touch-btn--enter{transition:opacity .18s,transform .18s,visibility .18s,background .12s,box-shadow .12s,border-color .12s}.touch-btn--warp{color:#bea0fff2;grid-area:warp}.touch-btn--brake{grid-area:brake}.touch-overlay:not(.touch-overlay--in-world) .touch-btn--brake,.touch-overlay:not(.touch-overlay--in-world) .touch-btn--grab,.touch-overlay:not(.touch-overlay--in-world) .touch-btn--place,.touch-overlay--in-world .touch-btn--thrust{display:none}.touch-btn--warp.touch-btn--pressed{border-color:#bea0ffcc;box-shadow:0 0 22px #aa82ff99}.touch-mode-toggle{pointer-events:auto;-webkit-backdrop-filter:blur(6px);min-height:44px;color:var(--touch-accent);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;touch-action:none;background:#14142899;border:1px solid #ffffff24;border-radius:999px;grid-area:mode;padding:10px 12px;font-family:inherit;font-size:.72rem;font-weight:600;transition:background .2s,color .2s,border-color .2s,box-shadow .2s}.touch-mode-toggle.touch-btn--pressed{background:#282850bf;transform:scale(.95)}.touch-mode-toggle--neutral{color:var(--touch-gold);border-color:#e8b94a4d;box-shadow:0 0 10px #e8b94a26}.touch-overlay--in-world .touch-btn--warp,.touch-overlay--in-world .touch-mode-toggle{display:none}.touch-overlay--in-world .touch-actions{right:calc(var(--touch-safe-right) + 20px);bottom:var(--thumbs-bottom);width:calc(var(--stick-r) * 2);height:calc(var(--stick-r) * 2);display:block}.touch-overlay--in-world .touch-btn--brake{color:#8ce6fff2;border:2px solid #6edcffbf;width:72px;height:72px;font-size:.8rem;position:absolute;bottom:calc(100% + 8px);right:0;box-shadow:0 0 22px #6edcff59,inset 0 0 16px #6edcff26}.touch-overlay--in-world .touch-btn--brake.touch-btn--pressed{background:#286e9699;box-shadow:0 0 28px #6edcff99}.touch-overlay--in-world .touch-btn--enter{width:68px;height:44px;color:var(--touch-gold);border-color:#e8b94a8c;border-radius:999px;padding:0 10px;position:absolute;bottom:calc(100% + 40px);right:80px}.touch-overlay--in-world .touch-btn--grab{color:#cdb9fff2;border-color:#b496ff8c;border-radius:999px;width:68px;height:44px;padding:0 10px;position:absolute;bottom:calc(100% - 8px);right:132px}.touch-overlay--in-world .touch-btn--grab.touch-btn--carrying{color:#fff;background:#7855dca6;border-color:#cdb9ffe6;box-shadow:0 0 18px #9678ff8c}.touch-overlay--in-world .touch-btn--place{color:#dfffe8;background:#1a4830b8;border:1.5px solid #6eeba5bf;border-radius:999px;width:72px;height:48px;padding:0 10px;transition:opacity .18s,transform .18s,visibility .18s,background .12s,box-shadow .12s,border-color .12s;position:absolute;bottom:calc(50% - 22px);right:132px;box-shadow:0 0 20px #6eeba559,inset 0 0 12px #6eeba526}.touch-overlay--in-world .touch-btn--place.touch-btn--pressed{background:#2d8255d1;box-shadow:0 0 26px #6eeba5a6}.touch-joystick-base--sprint{border-color:#6edcffd9;box-shadow:0 0 24px #6edcff80}@media (prefers-reduced-motion:reduce){.touch-btn.touch-btn--thrust.touch-btn--pressed{animation:none}}@media (hover:none) and (pointer:coarse){button.keybindings-toggle{display:none}}html.touch-ui .hud-tools,html.touch-ui .hud-mode,html.touch-ui #player-account-chip,html.touch-ui .hud-fps:not(.hud-fps--pinned){display:none}html.touch-ui .hud-top-right{top:calc(var(--space-lg) + 52px)}.touch-toast{top:calc(var(--touch-safe-top) + 84px);-webkit-backdrop-filter:blur(10px);color:#e1ebfff2;max-width:min(420px,80vw);font-family:var(--font-body);text-align:center;letter-spacing:normal;opacity:0;pointer-events:none;background:#0e1024e0;border:1px solid #8cc8ff40;border-radius:12px;padding:12px 16px;font-size:.85rem;line-height:1.4;transition:opacity .25s,transform .25s;position:fixed;left:50%;transform:translate(-50%,-8px)}.touch-toast--visible{opacity:1;transform:translate(-50%)}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(8px);animation:fade-in var(--duration-normal) var(--ease-out-expo);background:#050510b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{width:90%;max-width:480px;padding:var(--space-2xl);background:var(--glass-bg);-webkit-backdrop-filter:blur(24px);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-elevated), var(--shadow-glow);animation:modal-enter var(--duration-slow) var(--ease-out-expo);max-height:calc(100dvh - 2 * var(--space-md));overscroll-behavior:contain;touch-action:pan-y;position:relative;overflow-y:auto}@media (orientation:landscape) and (height<=520px){.modal-backdrop{padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}.modal-content{width:94%;max-width:760px;max-height:calc(100dvh - 16px);padding:var(--space-lg) var(--space-xl)}.modal-step-amount{column-gap:var(--space-xl);grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);grid-auto-flow:dense;align-items:start;padding-right:36px;display:grid}.modal-step-amount>*{grid-column:2}.modal-step-amount>.modal-title{font-size:var(--text-2xl);grid-area:1/1;align-self:end;padding-right:0}.modal-step-amount>.modal-subtitle{grid-area:2/1/span 6;margin-bottom:0}.modal-step-amount .amount-grid{margin-bottom:var(--space-sm);gap:var(--space-xs)}.modal-step-amount .amount-btn{padding:var(--space-sm) var(--space-xs);font-size:var(--text-base)}.modal-step-amount .custom-amount-container{margin-bottom:var(--space-sm)}.modal-step-amount .custom-amount-input,.modal-step-amount .donate-btn{padding-top:var(--space-sm);padding-bottom:var(--space-sm)}.modal-step-amount .custom-amount-prefix{bottom:var(--space-sm)}.modal-content .modal-close{top:var(--space-sm);right:var(--space-sm)}}.modal-close{top:var(--space-md);right:var(--space-md);background:var(--glass-highlight);border:1px solid var(--glass-border);border-radius:var(--radius-full);width:36px;height:36px;color:var(--color-text-secondary);font-size:var(--text-lg);cursor:pointer;transition:all var(--duration-fast);justify-content:center;align-items:center;line-height:1;display:flex;position:absolute}.modal-close:hover{color:var(--color-text-primary);background:#eef0f61a;transform:rotate(90deg)}.modal-title{font-family:var(--font-display);font-size:var(--text-3xl);letter-spacing:-.02em;margin-bottom:var(--space-xs);background:linear-gradient(135deg, var(--color-accent-primary), var(--color-accent-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-weight:700}.modal-subtitle{font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-xl);line-height:1.5}.modal-subtitle a{color:#f0d78c;text-underline-offset:3px;white-space:nowrap}.modal-subtitle a:hover,.modal-subtitle a:focus-visible{color:#e8b94a}.amount-grid{gap:var(--space-sm);margin-bottom:var(--space-lg);grid-template-columns:repeat(3,1fr);display:grid}.amount-btn{padding:var(--space-md) var(--space-sm);background:var(--glass-highlight);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--text-lg);cursor:pointer;transition:all var(--duration-fast) var(--ease-spring);font-weight:600}.amount-btn:hover{background:#e8b94a1a;border-color:#e8b94a4d;transform:translateY(-2px)}.amount-btn.selected{border-color:var(--color-accent-primary);color:var(--color-accent-primary);background:#e8b94a26;box-shadow:0 0 20px #e8b94a26}.custom-amount-container{margin-bottom:var(--space-xl);position:relative}.custom-amount-label{font-size:var(--text-xs);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-xs);display:block}.custom-amount-input{width:100%;padding:var(--space-md) var(--space-lg);background:var(--glass-highlight);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--text-xl);transition:border-color var(--duration-fast);outline:none;padding-left:2rem;font-weight:600}.custom-amount-input:focus{border-color:var(--color-accent-primary)}.custom-amount-input::placeholder{color:var(--color-text-tertiary);font-weight:400}.custom-amount-prefix{bottom:var(--space-md);left:var(--space-md);color:var(--color-text-tertiary);font-size:var(--text-xl);pointer-events:none;font-weight:600;position:absolute}.donate-btn{width:100%;padding:var(--space-md) var(--space-xl);background:linear-gradient(135deg, var(--color-accent-primary), #d4a040);border-radius:var(--radius-md);color:var(--color-bg-deep);font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:.02em;cursor:pointer;transition:all var(--duration-fast) var(--ease-spring);border:none;font-weight:700;position:relative;overflow:hidden}.donate-btn:before{content:"";transition:transform .6s var(--ease-out-expo);background:linear-gradient(135deg,#0000 0%,#fff3 50%,#0000 100%);position:absolute;inset:0;transform:translate(-100%)}.donate-btn:hover:before{transform:translate(100%)}.donate-btn:hover{box-shadow:var(--shadow-glow-lg);transform:translateY(-2px)}.donate-btn:active{transform:translateY(0)}.donate-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.donate-btn:disabled:before{display:none}.security-note{justify-content:center;align-items:center;gap:var(--space-xs);margin-top:var(--space-md);font-size:var(--text-xs);color:var(--color-text-tertiary);display:flex}.modal-step{animation:step-enter var(--duration-normal) var(--ease-out-expo)}@keyframes step-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.payment-form{gap:var(--space-md);flex-direction:column;display:flex}.payment-back-btn{color:var(--color-text-secondary);font-family:var(--font-body);font-size:var(--text-sm);cursor:pointer;padding:var(--space-xs) 0;transition:color var(--duration-fast);letter-spacing:.01em;background:0 0;border:none;align-self:flex-start}.payment-back-btn:hover{color:var(--color-accent-primary)}.payment-back-btn:disabled{opacity:.4;cursor:not-allowed}.payment-amount-banner{text-align:center;font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text-secondary);padding:var(--space-md);border-radius:var(--radius-md);background:#e8b94a0f;border:1px solid #e8b94a1f}.payment-amount-banner strong{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--color-accent-primary);margin-top:var(--space-xs);font-weight:700;display:block}.stripe-element-wrapper{padding:var(--space-sm) 0;min-height:120px}.payment-error{color:#e8594a;font-size:var(--text-sm);text-align:center;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);background:#e8594a14;border:1px solid #e8594a26}.btn-spinner{align-items:center;gap:var(--space-sm);display:inline-flex}.btn-spinner:before{content:"";border:2px solid #0505104d;border-top-color:var(--color-bg-deep);border-radius:50%;width:16px;height:16px;animation:.6s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.modal-content.modal-success{text-align:center;overflow:hidden}.donation-success{align-items:center;gap:var(--space-md);z-index:1;flex-direction:column;display:flex;position:relative}.success-burst{width:0;height:0;animation:burst-expand 1s var(--ease-out-expo) forwards;z-index:0;pointer-events:none;background:radial-gradient(circle,#e8b94a4d 0%,#e8b94a00 70%);border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes burst-expand{0%{opacity:1;width:0;height:0}60%{opacity:.8}to{opacity:0;width:600px;height:600px}}.success-icon{width:72px;height:72px;color:var(--color-bg-deep);background:linear-gradient(135deg, var(--color-accent-primary), var(--color-accent-secondary));animation:success-pop .5s var(--ease-spring) forwards;z-index:1;border-radius:50%;justify-content:center;align-items:center;font-size:36px;font-weight:800;display:flex;position:relative;transform:scale(0);box-shadow:0 0 40px #e8b94a66,0 0 80px #e8b94a26}@keyframes success-pop{0%{transform:scale(0)rotate(-45deg)}to{transform:scale(1)rotate(0)}}.donation-success .modal-title{animation:fade-in var(--duration-slow) var(--ease-out-expo) .2s both}.donation-success .modal-subtitle{animation:fade-in var(--duration-slow) var(--ease-out-expo) .35s both;margin-bottom:var(--space-md)}.donation-success .donate-btn{animation:fade-in var(--duration-slow) var(--ease-out-expo) .5s both;max-width:300px}.sound-toggle{pointer-events:auto;background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--radius-full);width:40px;height:40px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--duration-fast);font-size:var(--text-base);justify-content:center;align-items:center;display:flex}.sound-toggle:hover{background:var(--glass-highlight);color:var(--color-text-primary)}@keyframes gradient-shift{0%,to{background-position:0%}50%{background-position:100%}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(12px)translate(-50%)}to{opacity:1;transform:translateY(0)translate(-50%)}}@keyframes rise-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes modal-enter{0%{opacity:0;transform:scale(.92)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes float-particle{0%{opacity:0;transform:translateY(0)}20%{opacity:.8}to{opacity:0;transform:translateY(-60px)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes rotate-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fallback-scene{z-index:1;text-align:center;background:radial-gradient(circle,#114 0%,#050510 100%);flex-direction:column;justify-content:center;align-items:center;padding:2rem;display:flex;position:absolute;inset:0}.fallback-title{font-family:var(--font-display);font-size:var(--text-4xl);background:linear-gradient(135deg, var(--color-accent-primary), var(--color-accent-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:1rem;font-weight:800}.fallback-body{font-family:var(--font-body);font-size:var(--text-lg);color:var(--color-text-secondary);max-width:500px;margin-bottom:2.5rem;line-height:1.6}.fallback-help-toggle{margin-top:var(--space-xl);color:var(--color-accent-primary);font-family:var(--font-body);font-size:var(--text-sm);cursor:pointer;opacity:.8;transition:opacity var(--duration-fast);letter-spacing:.02em;background:0 0;border:none}.fallback-help-toggle:hover{opacity:1}.fallback-help-panel{margin-top:var(--space-md);max-width:420px;padding:var(--space-lg);background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);text-align:left;animation:fade-in var(--duration-normal) var(--ease-out-expo)}.fallback-help-intro{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-md);line-height:1.5}.fallback-help-intro strong{color:var(--color-text-primary)}.fallback-help-steps{counter-reset:steps;margin:0;padding:0;list-style:none}.fallback-help-steps li{counter-increment:steps;margin-bottom:var(--space-sm);font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-secondary);padding-left:2rem;line-height:1.5;position:relative}.fallback-help-steps li:before{content:counter(steps);width:1.4rem;height:1.4rem;color:var(--color-accent-primary);border-radius:var(--radius-full);font-size:var(--text-xs);background:#e8b94a1f;justify-content:center;align-items:center;font-weight:600;display:flex;position:absolute;top:.05em;left:0}@media (width<=640px){.modal-content{padding:var(--space-xl);width:95%}.modal-title{font-size:var(--text-2xl)}.amount-grid{grid-template-columns:repeat(2,1fr)}.loading-logo{font-size:var(--text-4xl)}}@media (width<=380px){.modal-content{padding:var(--space-lg)}.amount-grid{gap:var(--space-xs)}}.teleport-toast{--teleport-color:var(--color-accent-primary);top:calc(6.5rem + env(safe-area-inset-top,0px));z-index:60;align-items:center;gap:var(--space-md);max-width:min(28rem, calc(100vw - 2 * var(--space-md)));padding:var(--space-sm) var(--space-sm) var(--space-sm) var(--space-md);background:var(--glass-bg);-webkit-backdrop-filter:blur(14px)saturate(140%);border:1px solid var(--glass-border);border-radius:var(--radius-full);box-shadow:var(--shadow-card), 0 0 40px color-mix(in srgb, var(--teleport-color) 25%, transparent);color:var(--color-text-primary);animation:teleport-toast-in .7s var(--ease-out-expo) both;pointer-events:auto;display:flex;position:fixed;left:50%;transform:translate(-50%)}.teleport-toast--error{--teleport-color:var(--color-nebula-pink)}.teleport-toast--pending{padding-right:var(--space-lg)}.teleport-toast__orb{background:radial-gradient(circle at 35% 35%, #fff 0%, var(--teleport-color) 45%, transparent 72%);width:1.75rem;height:1.75rem;box-shadow:0 0 18px var(--teleport-color);border-radius:50%;flex:none;animation:2.4s ease-in-out infinite teleport-orb-pulse}.teleport-toast__text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.teleport-toast__title{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.teleport-toast__detail{font-size:var(--text-sm);color:var(--color-text-secondary)}.teleport-toast__close{width:2rem;height:2rem;color:var(--color-text-tertiary);cursor:pointer;transition:background var(--duration-fast,.15s) ease, color var(--duration-fast,.15s) ease;background:0 0;border:none;border-radius:50%;flex:none;font-size:1.25rem;line-height:1}.teleport-toast__close:hover,.teleport-toast__close:focus-visible{background:var(--glass-highlight);color:var(--color-text-primary)}.teleport-toast__spinner{border:2px solid var(--glass-border);border-top-color:var(--color-accent-primary);border-radius:50%;width:1rem;height:1rem;animation:.9s linear infinite teleport-spin}@keyframes teleport-toast-in{0%{opacity:0;filter:blur(4px);transform:translate(-50%,-12px)scale(.96)}to{opacity:1;filter:blur();transform:translate(-50%)scale(1)}}@keyframes teleport-orb-pulse{0%,to{opacity:.9;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}@keyframes teleport-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.teleport-toast,.teleport-toast__orb,.teleport-toast__spinner{animation-duration:.01ms;animation-iteration-count:1}}.pa-chip{pointer-events:auto;margin-top:var(--space-sm);font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.02em;color:var(--color-text-secondary);background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--radius-full);cursor:pointer;opacity:0;animation:pa-rise .8s var(--ease-out-expo) .4s forwards;transition:color var(--duration-fast), border-color var(--duration-normal), box-shadow var(--duration-normal), translate var(--duration-fast) var(--ease-spring);align-items:center;gap:.5rem;padding:.35rem .85rem .35rem .45rem;font-weight:500;display:inline-flex}.pa-chip:hover,.pa-chip:focus-visible{color:var(--color-text-primary);border-color:#e8b94a73;translate:0 -1px;box-shadow:0 0 18px #e8b94a2e}.pa-chip:focus-visible{outline:2px solid var(--color-accent-secondary);outline-offset:2px}.pa-chip--saved{padding-right:.7rem}.pa-chip--glow{animation:pa-rise .8s var(--ease-out-expo) forwards, pa-chip-glow 2.4s ease-in-out .8s infinite;border-color:#e8b94a99}@keyframes pa-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes pa-chip-glow{0%,to{box-shadow:0 0 #e8b94a00}50%{box-shadow:0 0 22px #e8b94a59}}.pa-orb{--pa-color:var(--color-accent-primary);background:radial-gradient(circle at 32% 30%, #fff 0%, var(--pa-color) 38%, color-mix(in srgb, var(--pa-color) 40%, #050510) 100%);width:.95rem;height:.95rem;box-shadow:0 0 10px color-mix(in srgb, var(--pa-color) 70%, transparent);border-radius:50%;flex-shrink:0;animation:3.6s ease-in-out infinite pa-orb-breathe}.pa-orb--lg{width:3.5rem;height:3.5rem;box-shadow:0 0 32px color-mix(in srgb, var(--pa-color) 65%, transparent), 0 0 80px color-mix(in srgb, var(--pa-color) 25%, transparent)}@keyframes pa-orb-breathe{0%,to{filter:brightness();transform:scale(1)}50%{filter:brightness(1.15);transform:scale(1.06)}}.pa-nudge{pointer-events:auto;margin-top:var(--space-sm);max-width:17.5rem;padding:var(--space-md);-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-lg);box-shadow:var(--shadow-card), 0 0 30px #6b3fa040;animation:pa-rise .6s var(--ease-out-expo) both;background:linear-gradient(160deg,#171440d1,#0a0a2ebf);border:1px solid #e8b94a47}.pa-nudge-text{margin:0 0 var(--space-sm);font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.45}.pa-nudge-text strong{font-family:var(--font-display);color:var(--color-text-primary);margin-bottom:.15rem;font-weight:600;display:block}.pa-nudge-actions{gap:var(--space-sm);display:flex}.pa-dialog{pointer-events:auto;width:min(26rem,100vw - 2rem);height:fit-content;max-height:calc(100dvh - 2rem);color:var(--color-text-primary);opacity:0;transition-property:opacity,transform,display,overlay;transition-duration:.35s;transition-timing-function:var(--ease-out-expo);transition-behavior:allow-discrete;background:0 0;border:none;margin:auto;padding:0;position:fixed;inset:0;overflow:visible;transform:translateY(12px)scale(.97)}.pa-dialog[open]{opacity:1;transform:none}@starting-style{.pa-dialog[open]{opacity:0;transform:translateY(12px)scale(.97)}}.pa-dialog::backdrop{-webkit-backdrop-filter:blur();backdrop-filter:blur();transition-behavior:allow-discrete;background-color:#05051000;transition-property:background-color,-webkit-backdrop-filter,backdrop-filter,display,overlay;transition-duration:.35s}.pa-dialog[open]::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0505108c}@starting-style{.pa-dialog[open]::backdrop{-webkit-backdrop-filter:blur();backdrop-filter:blur();background-color:#05051000}}.pa-panel{padding:var(--space-xl) var(--space-lg) var(--space-lg);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-elevated), inset 0 1px 0 var(--glass-highlight);background:radial-gradient(120% 60% at 50% 0,#6b3fa059,#0000 60%),radial-gradient(80% 50% at 100% 100%,#2d5fa840,#0000 70%),linear-gradient(#111144eb,#050510f0);position:relative}.pa-close{width:2rem;height:2rem;color:var(--color-text-tertiary);border-radius:var(--radius-full);cursor:pointer;transition:color var(--duration-fast), background var(--duration-fast);background:0 0;border:none;font-size:1.35rem;line-height:1;position:absolute;top:.75rem;right:.85rem}.pa-close:hover,.pa-close:focus-visible{color:var(--color-text-primary);background:#eef0f614}.pa-hero{text-align:center;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-lg);flex-direction:column;display:flex}.pa-title{margin:var(--space-sm) 0 0;font-family:var(--font-display);letter-spacing:-.02em;background:linear-gradient(120deg, var(--color-text-primary), var(--color-accent-secondary));color:#0000;-webkit-background-clip:text;background-clip:text;font-size:1.6rem;font-weight:700}.pa-sub{max-width:21rem;font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;line-height:1.55}.pa-actions{flex-direction:column;gap:.6rem;display:flex}.pa-btn{width:100%;min-height:2.9rem;font-family:var(--font-body);font-size:var(--text-sm);border-radius:var(--radius-md);cursor:pointer;transition:transform var(--duration-fast) var(--ease-spring), box-shadow var(--duration-normal), background var(--duration-normal), border-color var(--duration-normal), opacity var(--duration-fast);border:1px solid #0000;justify-content:center;align-items:center;gap:.6rem;padding:.7rem 1rem;font-weight:600;display:inline-flex}.pa-btn:focus-visible{outline:2px solid var(--color-accent-secondary);outline-offset:2px}.pa-btn:disabled{opacity:.55;cursor:progress}.pa-btn:not(:disabled):hover{transform:translateY(-1px)}.pa-btn:not(:disabled):active{transform:translateY(0)scale(.99)}.pa-btn--primary{color:#1a1206;background:linear-gradient(135deg, var(--color-accent-secondary), var(--color-accent-primary));box-shadow:0 4px 18px #e8b94a47}.pa-btn--primary:not(:disabled):hover{box-shadow:var(--shadow-glow)}.pa-btn--light{color:#1f1f2e;background:#f4f5fa}.pa-btn--light:not(:disabled):hover{background:#fff;box-shadow:0 4px 18px #eef0f62e}.pa-btn--ghost{color:var(--color-text-primary);border-color:var(--glass-border);background:#eef0f60a}.pa-btn--ghost:not(:disabled):hover{background:#eef0f614;border-color:#eef0f633}.pa-btn--quiet{min-height:2.4rem;color:var(--color-text-tertiary);background:0 0;font-weight:500}.pa-btn--quiet:not(:disabled):hover{color:var(--color-text-secondary)}.pa-btn--sm{width:auto;min-height:2rem;font-size:var(--text-xs);border-radius:var(--radius-sm);padding:.4rem .8rem}.pa-btn-icon{flex-shrink:0;width:1.15rem;height:1.15rem}.pa-hint{text-align:center;font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-tertiary);margin:.1rem 0 0}.pa-divider{align-items:center;gap:var(--space-sm);margin:var(--space-sm) 0 .1rem;font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-tertiary);display:flex}.pa-divider:before,.pa-divider:after{content:"";background:var(--glass-border);flex:1;height:1px}.pa-name{width:100%;max-width:21rem;font-family:var(--font-body);font-size:var(--text-sm);border:1px solid var(--glass-border);border-radius:var(--radius-full,999px);animation:pa-name-in var(--duration-normal) var(--ease-spring) both;background:#eef0f60a;flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem .6rem;margin-top:.2rem;padding:.45rem .8rem;display:flex}.pa-name-label{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-tertiary)}.pa-name-value{color:var(--color-text-primary);overflow-wrap:anywhere;font-weight:600}.pa-name-value.is-unset{color:var(--color-text-secondary);font-weight:500}.pa-name--editing{text-align:left;border-radius:var(--radius-md);flex-direction:column;align-items:stretch;gap:.5rem;padding:.75rem}.pa-name-actions{gap:.5rem;display:flex}.pa-name-actions .pa-btn{flex:1;min-height:2.75rem}.pa-name-error{color:#f2a7a7}@keyframes pa-name-in{0%{opacity:0;transform:translateY(3px)}}@media (prefers-reduced-motion:reduce){.pa-name{animation:none}}.pa-characters{margin:0 0 .5rem}.pa-characters-title{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);margin:0 0 .45rem}.pa-character-list{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.pa-character{min-width:4.25rem;font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-md);cursor:pointer;background:#eef0f608;flex-direction:column;align-items:center;gap:.35rem;padding:.6rem .5rem .5rem;transition:transform .16s,border-color .16s,background .16s;display:flex}.pa-character:hover:not(:disabled){background:#eef0f612;border-color:#eef0f640;transform:translateY(-2px)}.pa-character:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.pa-character.is-playing{color:var(--color-text-primary);cursor:default;border-color:#e8b94a73;box-shadow:0 0 18px #e8b94a26}.pa-character:disabled:not(.is-playing){opacity:.55;cursor:progress}.pa-linked{flex-direction:column;gap:.4rem;margin:0 0 .25rem;padding:0;list-style:none;display:flex}.pa-linked li{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-md);background:#eef0f608;align-items:center;gap:.65rem;padding:.65rem .85rem;display:flex}.pa-linked li span:first-of-type{flex:1}.pa-linked li.is-on{color:var(--color-text-primary);border-color:#e8b94a4d}.pa-check{color:var(--color-accent-primary);font-weight:700}.pa-link{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-accent-secondary);border-radius:var(--radius-full);cursor:pointer;transition:background var(--duration-fast);background:0 0;border:1px solid #e8b94a59;padding:.2rem .55rem;font-weight:600}.pa-link:hover:not(:disabled){background:#e8b94a1f}.pa-status{min-height:1.25rem;margin:var(--space-md) 0 0;text-align:center;font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-tertiary);line-height:1.45}.pa-status--success{color:#9be7b4}.pa-status--error{color:#f2a7a7}.pa-status--info{color:var(--color-text-secondary)}@media (prefers-reduced-motion:reduce){.pa-orb,.pa-chip--glow{animation:none}.pa-chip{animation-duration:.01ms}.pa-dialog{transition-duration:.1s;transform:none}@starting-style{.pa-dialog[open]{transform:none}}}.pa-legal{text-align:center;color:var(--color-text-tertiary);margin:.75rem 0 0;font-size:.75rem}.pa-legal a{color:var(--color-text-secondary);text-underline-offset:2px}.pa-legal a:hover,.pa-legal a:focus-visible{color:var(--color-accent-secondary)}.pa-panel{overscroll-behavior:contain;scrollbar-width:thin;max-height:calc(100dvh - 2rem);overflow-y:auto}.pa-email{flex-direction:column;gap:.6rem;display:flex}.pa-field{flex-direction:column;gap:.3rem;display:flex}.pa-label{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-secondary);font-weight:500}.pa-input{width:100%;min-height:2.9rem;font-family:var(--font-body);color:var(--color-text-primary);border:1px solid var(--glass-border);border-radius:var(--radius-md);transition:border-color var(--duration-fast), box-shadow var(--duration-fast);background:#0505108c;outline:none;padding:.7rem .9rem;font-size:1rem}.pa-input::placeholder{color:var(--color-text-tertiary)}.pa-input:focus-visible{box-shadow:0 0 0 3px var(--color-accent-glow);border-color:#e8b94a99}.pa-input:user-invalid{border-color:#f2a7a799}.pa-input:disabled{opacity:.6}.pa-input--code{text-align:center;letter-spacing:.35em;color:var(--color-accent-secondary);font-family:SFMono-Regular,Menlo,Consolas,monospace;font-size:1.6rem;font-weight:700}.pa-row{justify-content:space-between;gap:var(--space-sm);flex-wrap:wrap;display:flex}.pa-link--quiet{color:var(--color-text-secondary);text-underline-offset:3px;border-color:#0000;align-self:center;padding:.25rem .4rem;font-weight:500;-webkit-text-decoration:underline #eef0f640;text-decoration:underline #eef0f640}.pa-link--quiet:hover:not(:disabled){color:var(--color-accent-secondary);background:0 0;text-decoration-color:currentColor}.pa-link:disabled{opacity:.5;cursor:default}.pa-hint--left{text-align:left}.pa-email-status{text-align:center;font-family:var(--font-body);font-size:var(--text-xs);margin:.1rem 0 0;line-height:1.45;animation:.25s ease-out both pa-rise}.pa-linked-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.pa-linked-sub{color:var(--color-text-tertiary);font-size:var(--text-xs)}.pa-link--danger{color:#f2a7a7;border-color:#f2a7a74d}.pa-link--danger:hover:not(:disabled){background:#f2a7a71a;border-color:#f2a7a78c}.pa-confirm{gap:var(--space-sm);padding:var(--space-md);border-radius:var(--radius-md);background:linear-gradient(160deg,#e8b94a14,#eef0f605 60%);border:1px solid #e8b94a4d;flex-direction:column;animation:.25s ease-out both pa-rise;display:flex;box-shadow:0 0 24px #e8b94a14}.pa-confirm-title{font-family:var(--font-display,var(--font-body));font-size:var(--text-base);color:var(--color-accent-secondary);margin:0;font-weight:600}.pa-confirm .pa-hint{margin:0}.pa-devlink{margin-top:var(--space-md);border:1px solid var(--glass-border);border-radius:var(--radius-md);background:#eef0f608}.pa-devlink-summary{cursor:pointer;min-height:2.75rem;font-family:var(--font-body);font-size:var(--text-sm,.875rem);color:var(--color-text-secondary);border-radius:var(--radius-md);justify-content:space-between;align-items:center;padding:.6rem .9rem;font-weight:500;list-style:none;display:flex}.pa-devlink-summary::-webkit-details-marker{display:none}.pa-devlink-summary:after{content:"";width:.5rem;height:.5rem;transition:transform var(--duration-fast);border-bottom:1.5px solid;border-right:1.5px solid;transform:rotate(45deg)translateY(-2px)}.pa-devlink[open]>.pa-devlink-summary:after{transform:rotate(-135deg)translateY(-2px)}.pa-devlink-summary:hover,.pa-devlink-summary:focus-visible{color:var(--color-accent-secondary)}.pa-devlink-summary:focus-visible{outline-offset:2px;outline:2px solid #e8b94a99}.pa-devlink-body{gap:var(--space-sm);flex-direction:column;padding:0 .9rem .9rem;display:flex}.pa-devlink-body .pa-hint,.pa-devlink-body .pa-status{margin:0}.pa-devlink-qr{align-items:center;gap:var(--space-sm);text-align:center;flex-direction:column;margin:0;animation:.25s ease-out both pa-rise;display:flex}.pa-devlink-qr img,.pa-devlink-qr-blank{aspect-ratio:1;border-radius:var(--radius-md);background:#fff;width:min(200px,60vw);height:auto;box-shadow:0 0 28px #e8b94a2e}.pa-devlink-code{letter-spacing:.18em;color:var(--color-accent-secondary);-webkit-user-select:all;user-select:all;margin:0;font-family:SFMono-Regular,Menlo,Consolas,monospace;font-size:1.5rem;font-weight:700}.pa-devlink-time{font-variant-numeric:tabular-nums;color:var(--color-text-primary)}.pa-devlink-form{padding-top:var(--space-sm);border-top:1px solid var(--glass-border);flex-direction:column;gap:.35rem;display:flex}.pa-devlink-row{gap:var(--space-sm);display:flex}.pa-devlink-row .pa-btn{flex:none}.pa-devlink-input{letter-spacing:.12em;text-transform:uppercase;min-width:0;font-family:SFMono-Regular,Menlo,Consolas,monospace}.pa-tabs{margin:0 2.25rem var(--space-md) 0;border:1px solid var(--glass-border);border-radius:var(--radius-full);background:#eef0f60a;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid;position:relative}.pa-tab{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-secondary);border-radius:var(--radius-full);cursor:pointer;background:0 0;border:0;padding:.6rem .75rem;font-weight:600;transition:color .16s,background .16s,box-shadow .16s}.pa-tab:hover:not([aria-selected=true]){color:var(--color-text-primary);background:#eef0f60f}.pa-tab[aria-selected=true]{color:#1a1206;background:linear-gradient(135deg, var(--color-accent-secondary), var(--color-accent-primary));box-shadow:0 4px 18px #e8b94a40}.pa-tab:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.pa-badge{font-size:var(--text-xs);letter-spacing:.02em;color:inherit;border-radius:var(--radius-full);white-space:nowrap;background:#ffffff2e;margin-left:auto;padding:.1rem .5rem;font-weight:600}.pa-btn--light .pa-badge{background:#1414281a}.pa-divider .pa-badge{color:var(--color-accent-primary);text-transform:none;background:#ffc85a24;margin-left:.45rem}.pa-input-wrap{position:relative}.pa-input-wrap .pa-input{padding-right:4rem}.pa-input-toggle{position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.pa-notice{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-primary);border-radius:var(--radius-md);background:#e8b94a14;border:1px solid #e8b94a59;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem .75rem;padding:.75rem .9rem;line-height:1.5;display:flex}.pa-notice span{flex:14rem}@media (prefers-reduced-motion:reduce){.pa-email-status,.pa-confirm{animation:none}.pa-tab{transition:none}}.wi-chip{pointer-events:auto;width:fit-content;margin-top:var(--space-sm);font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.02em;color:var(--color-text-secondary);background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--radius-full);cursor:pointer;opacity:0;animation:pa-rise .8s var(--ease-out-expo) .55s forwards;transition:color var(--duration-fast), border-color var(--duration-normal), box-shadow .6s var(--ease-out-expo), translate var(--duration-fast) var(--ease-spring), scale .5s var(--ease-spring);align-items:center;gap:.5rem;padding:.3rem .4rem .3rem .6rem;font-weight:500;display:flex}.wi-chip:hover,.wi-chip:focus-visible{color:var(--color-text-primary);border-color:#e8b94a73;translate:0 -1px;box-shadow:0 0 18px #e8b94a2e}.wi-chip:focus-visible{outline:2px solid var(--color-accent-secondary);outline-offset:2px}.wi-chip--pulse{color:var(--color-text-primary);border-color:#e8b94ab3;scale:1.07;box-shadow:0 0 30px #e8b94a80}.wi-chip-icon{fill:none;stroke:currentColor;stroke-width:1.5px;width:1.05rem;height:1.05rem}.wi-chip-icon rect:first-child{fill:#5b8cb84d}.wi-chip-icon rect:last-child{fill:#e8b94a47}.wi-chip-count{font-variant-numeric:tabular-nums;text-align:center;min-width:1.5rem;color:var(--color-accent-secondary);border-radius:var(--radius-full);background:#e8b94a24;padding:.05rem .45rem;font-weight:600}.wi-chip-kbd,.cr-hint kbd{font-family:var(--font-mono);color:var(--color-text-tertiary);border:1px solid var(--glass-border);border-bottom-width:2px;border-radius:.3rem;padding:.05rem .35rem;font-size:.65rem;line-height:1.2}.wi-dialog{width:min(68rem,100vw - 2rem)}.wi-panel{max-height:calc(100dvh - 2rem);padding:var(--space-lg) var(--space-lg) 0;flex-direction:column;display:flex;overflow:hidden}.wi-head{justify-content:space-between;align-items:flex-end;gap:var(--space-md);margin-bottom:var(--space-md);flex-wrap:wrap;padding-right:2.75rem;display:flex}.wi-title{font-family:var(--font-display);letter-spacing:-.02em;background:linear-gradient(120deg, var(--color-text-primary), var(--color-accent-secondary));color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.75rem;font-weight:700}.wi-sub{font-size:var(--text-sm);color:var(--color-text-secondary);margin:.15rem 0 0}.wi-sub strong{font-variant-numeric:tabular-nums;color:var(--color-text-primary);font-weight:600}.wi-filters{border:1px solid var(--glass-border);border-radius:var(--radius-full);background:#eef0f60a;padding:3px;display:inline-flex}.wi-filter{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-secondary);border-radius:var(--radius-full);cursor:pointer;transition:color var(--duration-fast), background var(--duration-normal), box-shadow var(--duration-normal);background:0 0;border:none;padding:.35rem .95rem;font-weight:500}.wi-filter:hover{color:var(--color-text-primary)}.wi-filter[aria-checked=true]{color:var(--color-accent-secondary);background:#e8b94a24;box-shadow:inset 0 0 0 1px #e8b94a59}.wi-filter:focus-visible{outline:2px solid var(--color-accent-secondary);outline-offset:1px}.wi-grid{margin:0 calc(-1 * var(--space-sm));padding:var(--space-sm) var(--space-sm) var(--space-lg);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#eef0f626 transparent;grid-template-columns:repeat(auto-fill,minmax(9.25rem,1fr));gap:1.4rem 1.1rem;list-style:none;display:grid;overflow-y:auto}.wi-item{min-width:0;animation:wi-deal .55s var(--ease-out-expo) both;animation-delay:calc(var(--wi-i,0) * 28ms);flex-direction:column;gap:.5rem;display:flex}@keyframes wi-deal{0%{opacity:0;transform:translateY(14px)scale(.96)}}.wi-card-btn{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:4.8%/3.4%;padding:0;display:block}.wi-card-btn:focus-visible{outline:2px solid var(--color-accent-secondary);outline-offset:3px}.wi-caption{min-height:1rem;color:var(--color-text-tertiary);align-items:center;gap:.45rem;padding-inline:.15rem;font-size:.72rem;display:flex}.wi-caption-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--color-text-secondary);flex:0 auto;font-weight:500;overflow:hidden}.wi-caption-state{letter-spacing:.14em;text-transform:uppercase;flex-shrink:0;font-size:.6rem}.wi-pending{background:#a480b8;border-radius:50%;flex-shrink:0;width:.45rem;height:.45rem;margin-left:auto;animation:2.4s ease-in-out infinite pa-orb-breathe;box-shadow:0 0 8px #a480b8cc}.wi-scroll{margin:0 calc(-1 * var(--space-sm));padding:var(--space-xs) var(--space-sm) var(--space-lg);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#eef0f626 transparent;overflow-y:auto}.wi-set+.wi-set{margin-top:var(--space-xl)}.wi-set-head{align-items:baseline;gap:.45rem var(--space-md);margin-bottom:var(--space-sm);grid-template-columns:minmax(0,1fr) auto;display:grid}.wi-set-name{font-family:var(--font-display);font-size:var(--text-xs);letter-spacing:.18em;text-transform:uppercase;overflow-wrap:anywhere;color:var(--color-text-primary);margin:0;font-weight:600}.wi-set-count{font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--color-text-secondary)}.wi-set-count strong{color:var(--color-accent-secondary);font-weight:600}.wi-set-progress{--progress-bar-radius:100000px;appearance:none;border-radius:var(--progress-bar-radius);background:#eef0f617;border:0 solid;grid-column:1/-1;block-size:4px;inline-size:100%;overflow:clip}.wi-set-progress::-webkit-progress-bar{background:0 0}.wi-set-progress::-webkit-progress-value{background:linear-gradient(90deg, #5b8cb8, #a480b8 55%, var(--color-accent-secondary));border-radius:var(--progress-bar-radius);transition:inline-size .3s}.wi-set-progress::-moz-progress-bar{background:linear-gradient(90deg, #5b8cb8, #a480b8 55%, var(--color-accent-secondary));border-radius:var(--progress-bar-radius)}.wi-grid--set{padding:var(--space-xs) 0 0;margin:0;overflow:visible}.wi-missing{aspect-ratio:63/88;outline-offset:-1px;border-radius:4.8%/3.4%;outline:1px dashed #eef0f638;display:grid;overflow:hidden}.wi-missing>*{grid-area:1/1}.wi-missing img{opacity:.22;filter:grayscale(.8);width:100%;height:100%;display:block}.wi-missing-no{border-radius:var(--radius-full);font-family:var(--font-display);font-variant-numeric:tabular-nums;color:var(--color-text-secondary);background:#050510c7;border:1px solid #eef0f629;place-self:center;padding:.2em .75em;font-size:1.15rem;font-weight:600}.wi-empty{align-items:center;gap:var(--space-md);padding:var(--space-lg) var(--space-lg) var(--space-2xl);text-align:center;font-size:var(--text-sm);color:var(--color-text-secondary);flex-direction:column;line-height:1.55;display:flex}.wi-empty p{max-width:22rem;margin:0}.wi-empty--filtered{padding-top:var(--space-xl)}.wi-empty-card{opacity:.6;width:7.5rem;box-shadow:var(--shadow-card);border-radius:4.8%/3.4%;animation:5s ease-in-out infinite wi-float}@keyframes wi-float{0%,to{transform:translateY(0)rotate(-3deg)}50%{transform:translateY(-6px)rotate(2deg)}}.wi-detail{padding-bottom:var(--space-lg);scrollbar-width:thin;scrollbar-color:#eef0f626 transparent;overflow-y:auto}.wi-back{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-secondary);cursor:pointer;transition:color var(--duration-fast), translate var(--duration-fast) var(--ease-spring);background:0 0;border:none;padding:.25rem 0;font-weight:500}.wi-back:hover,.wi-back:focus-visible{color:var(--color-text-primary);translate:-2px}.wi-detail-body{gap:var(--space-xl);padding-top:var(--space-md);grid-template-columns:minmax(12rem,17rem) 1fr;align-items:start;display:grid}.wi-detail-card{animation:wi-deal .5s var(--ease-out-expo) both}.wi-detail-info{animation:wi-deal .5s var(--ease-out-expo) 60ms both}.wi-state{letter-spacing:.16em;text-transform:uppercase;border-radius:var(--radius-full);padding:.2rem .6rem;font-size:.62rem;font-weight:600;display:inline-block}.wi-state--visited{color:var(--color-accent-secondary);background:#e8b94a1f;box-shadow:inset 0 0 0 1px #e8b94a4d}.wi-state--sighted{color:#cbb3dc;background:#a480b824;box-shadow:inset 0 0 0 1px #a480b859}.wi-detail-name{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-text-primary);text-shadow:0 0 28px color-mix(in srgb, var(--wc-color) 50%, transparent);overflow-wrap:anywhere;margin:.55rem 0 .1rem;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:700;line-height:1.1}.wi-detail-by{margin:0 0 var(--space-lg);font-size:var(--text-sm);color:var(--color-text-secondary)}.wi-facts{margin:0 0 var(--space-lg);gap:.7rem;display:grid}.wi-facts>div{border-bottom:1px solid #eef0f60f;grid-template-columns:4.5rem 1fr;gap:.75rem;padding-bottom:.7rem;display:grid}.wi-facts dt{letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-tertiary);padding-top:.15rem;font-size:.65rem;font-weight:600}.wi-facts dd{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;line-height:1.5}.wi-mono{font-variant-numeric:tabular-nums}.wi-dist{color:var(--color-text-tertiary)}.wi-note{margin:0 0 var(--space-md);font-size:var(--text-xs);color:#d9c8e6;border-radius:var(--radius-md);background:#a480b81a;border:1px solid #a480b840;padding:.55rem .75rem}.wi-actions{gap:.6rem;display:flex}.wi-actions .pa-btn{flex:1 1 0;width:auto}.wi-actions .pa-btn--primary{flex-grow:1.6}.wi-actions .pa-btn:disabled{cursor:not-allowed}.wi-hint{font-size:var(--text-xs);color:var(--color-text-tertiary);margin:.6rem 0 0}.wi-get-card{width:100%;margin-top:var(--space-lg);text-align:left;font-family:var(--font-body);color:#ffe9bd;border-radius:var(--radius-md);cursor:pointer;transition:background-position .9s var(--ease-out-expo), translate var(--duration-fast) var(--ease-spring), box-shadow var(--duration-fast);background:linear-gradient(115deg,#0000 30%,#ffe9bd29 45%,#0000 60%) 200% 0/250% 100% no-repeat,linear-gradient(135deg,#e8b94a29,#a480b81f);border:1px solid #e8b94a61;gap:.15rem;padding:.8rem 1rem;display:grid}.wi-get-card:hover,.wi-get-card:focus-visible{background-position:-50% 0,0 0;translate:0 -1px;box-shadow:0 8px 24px #e8b94a29}.wi-get-card:focus-visible{outline:2px solid var(--color-accent-secondary);outline-offset:2px}.wi-get-card-label{font-family:var(--font-display);font-size:var(--text-base);letter-spacing:-.01em;font-weight:700}.wi-get-card-sub{font-size:var(--text-xs);color:#ffe9bdb3}.cc{gap:var(--space-md);accent-color:var(--color-accent-secondary);display:grid}.cc-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-text-primary);overflow-wrap:anywhere;margin:0;font-size:clamp(1.3rem,2.6vw,1.7rem);font-weight:700;line-height:1.15}.cc-world{color:#ffe2a8}.cc-lede{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;line-height:1.5}.cc-field{border:0;min-width:0;margin:0;padding:0}.cc-legend{letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-tertiary);margin-bottom:.45rem;padding:0;font-size:.65rem;font-weight:600}.cc-qty{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;display:flex}.cc-qty-btn{width:48px;height:48px;color:var(--color-text-primary);cursor:pointer;transition:background var(--duration-fast), scale var(--duration-fast) var(--ease-spring);background:#ffffff0d;border:1px solid #ffffff1f;border-radius:50%;font-size:1.4rem;line-height:1}.cc-qty-btn:not(:disabled):hover{background:#ffffff1a}.cc-qty-btn:not(:disabled):active{scale:.92}.cc-qty-btn:disabled{opacity:.35;cursor:not-allowed}.cc-qty-btn:focus-visible{outline:2px solid var(--color-accent-secondary);outline-offset:2px}.cc-qty-n{min-width:2ch;font-family:var(--font-display);font-variant-numeric:tabular-nums;text-align:center;color:var(--color-text-primary);font-size:1.6rem;font-weight:700}.cc-each{font-size:var(--text-xs);color:var(--color-text-tertiary)}.cc-options{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.cc-option,.cc-check{border-radius:var(--radius-md);cursor:pointer;min-height:48px;transition:border-color var(--duration-fast), background var(--duration-fast);background:#ffffff08;border:1px solid #ffffff17;align-items:flex-start;gap:.6rem;padding:.7rem .8rem;display:flex}.cc-option:hover,.cc-check:hover{background:#ffffff0f}.cc-option:has(input:checked){background:#e8b94a1a;border-color:#e8b94a73}:is(.cc-option:has(input:focus-visible),.cc-check:has(input:focus-visible)){outline:2px solid var(--color-accent-secondary);outline-offset:2px}.cc-option input,.cc-check input{flex:none;width:1.1rem;height:1.1rem;margin:.1rem 0 0}.cc-option-text{font-size:var(--text-xs);color:var(--color-text-tertiary);gap:.15rem;line-height:1.4;display:grid}.cc-option-text strong{font-size:var(--text-sm);color:var(--color-text-primary);font-weight:600}.cc-check{font-size:var(--text-sm);color:var(--color-text-primary)}.cc-check:has(input:disabled){cursor:default}.cc-check-hint{font-size:var(--text-xs);color:var(--color-text-tertiary);margin-top:.15rem;line-height:1.4;display:block}.cc-actions{gap:.6rem;display:flex}.cc-actions .pa-btn{flex:1 1 0;width:auto;min-height:48px}.cc-actions .cc-pay{flex-grow:2}.cc-status{font-size:var(--text-sm);margin:0}.cc-status:empty{margin-top:calc(-1 * var(--space-md))}.cc-error{color:#f3a7a7}.cc-soon{color:#ffe2a8}.cc-fine{font-size:var(--text-xs);color:var(--color-text-tertiary);margin:0;line-height:1.5}.cc-fine a{color:var(--color-text-secondary)}.cc-option--photo{padding-right:calc(66px + 1.4rem);position:relative}.cc-option--off{cursor:default;opacity:.7}.cc-option--off:hover{background:#ffffff08}.cc-photo-thumb{object-fit:cover;border:1px solid #ffffff29;border-radius:6px;width:66px;height:54px;position:absolute;top:50%;right:.7rem;translate:0 -50%}.cc-take-photo{min-height:44px;font:inherit;font-size:var(--text-sm);color:var(--color-accent-secondary);border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast), border-color var(--duration-fast);background:0 0;border:1px dashed #f0d78c66;justify-self:start;margin-top:.5rem;padding:0 .9rem}.cc-take-photo:hover{background:#f0d78c14;border-color:#f0d78cb3}.cc-take-photo:focus-visible{outline:2px solid var(--color-accent-secondary);outline-offset:2px}.wc-art--photo img{object-fit:cover;width:100%;height:100%;display:block}body.photo-mode>:not(#root),body.photo-mode #root>:not(.canvas-container):not(#photo-mode){visibility:hidden!important}body.photo-mode .canvas-container>div>:not(:has(>canvas)){visibility:hidden!important}.pm{z-index:60;padding:max(.9rem, env(safe-area-inset-top)) max(.75rem, env(safe-area-inset-right)) max(.9rem, env(safe-area-inset-bottom)) max(.75rem, env(safe-area-inset-left));pointer-events:none;font-family:var(--font-body);color:var(--color-text-primary);grid-template-rows:auto minmax(0,1fr) auto auto;gap:.6rem;display:grid;position:fixed;inset:0}.pm-top,.pm-bar,.pm-hint{z-index:1;margin:0;position:relative}.pm-top{text-align:center;text-shadow:0 1px 6px #000000b3;justify-items:center;gap:.1rem;display:grid}.pm-top-kicker{font-size:var(--text-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--color-accent-secondary)}.pm-top-world{font-size:var(--text-lg);font-weight:600}.pm-stage{place-items:center;min-height:0;display:grid;container-type:size}.pm-frame{aspect-ratio:11/9;border-radius:10px;outline:1px solid #ffffff59;width:min(100cqw,122.222cqh);position:relative;box-shadow:0 0 0 200vmax #03040c94}.pm-corner{border:0 solid var(--color-accent-secondary);width:22px;height:22px;position:absolute}.pm-corner--tl{border-width:3px 0 0 3px;border-top-left-radius:12px;top:-3px;left:-3px}.pm-corner--tr{border-width:3px 3px 0 0;border-top-right-radius:12px;top:-3px;right:-3px}.pm-corner--bl{border-width:0 0 3px 3px;border-bottom-left-radius:12px;bottom:-3px;left:-3px}.pm-corner--br{border-width:0 3px 3px 0;border-bottom-right-radius:12px;bottom:-3px;right:-3px}.pm-flash{border-radius:inherit;opacity:0;background:#fff;animation:.42s ease-out pm-flash;position:absolute;inset:0}@keyframes pm-flash{0%{opacity:.85}to{opacity:0}}.pm-bar{grid-template-columns:1fr auto 1fr;justify-self:center;align-items:center;gap:1rem;width:min(100%,26rem);display:grid}.pm-bar>*{pointer-events:auto}.pm-btn{min-width:48px;min-height:48px;font:inherit;color:var(--color-text-primary);-webkit-backdrop-filter:blur(10px);cursor:pointer;background:#0a0a1e99;border:1px solid #ffffff2e;border-radius:999px;justify-self:start;padding:0 .9rem;font-size:1.4rem;line-height:1}.pm-btn--text{font-size:var(--text-sm);justify-self:end}.pm-btn:hover{background:#1e1e46bf}.pm-shutter{cursor:pointer;width:76px;height:76px;transition:transform var(--duration-fast);background:#ffffff1f;border:4px solid #ffffffeb;border-radius:50%;place-items:center;padding:0;display:grid}.pm-shutter-core{background:radial-gradient(circle at 35% 30%, #fff8e1, var(--color-accent-primary));width:58px;height:58px;box-shadow:0 0 24px var(--color-accent-glow);border-radius:50%}.pm-shutter:active{transform:scale(.92)}.pm-btn:focus-visible,.pm-shutter:focus-visible{outline:2px solid var(--color-accent-secondary);outline-offset:3px}.pm-hint{text-align:center;font-size:var(--text-xs);color:var(--color-text-secondary);text-shadow:0 1px 4px #000c;justify-self:center}.pm-preview{pointer-events:auto}.pm-preview-panel{gap:var(--space-md);text-align:center;justify-items:center;width:min(26rem,100vw - 2rem);display:grid}.pm-preview-title{font-size:var(--text-lg);margin:0;font-weight:600}.pm-preview-card{width:min(15rem,62vw,71.5909dvh - 12.1705rem)}.pm-preview-img{border:1px solid #ffffff29;border-radius:10px;width:100%;height:auto;display:block}.pm-preview-card:has(.pm-preview-img){width:min(22rem,100%)}.pm-preview-note{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0}.pm-preview-actions{flex-wrap:wrap;gap:.6rem;width:100%;display:flex}.pm-preview-actions .pa-btn{flex:7rem;width:auto;min-height:48px}.display-settings-photo{width:100%;min-height:40px;margin-top:var(--space-md);font:inherit;font-size:var(--text-sm);color:var(--color-text-primary);border:1px solid var(--glass-border);border-radius:var(--radius-md);cursor:pointer;background:#ffffff0d;justify-content:space-between;align-items:center;padding:0 .75rem;display:flex}.display-settings-photo:hover{background:#ffffff1a}.display-settings-photo kbd{font-family:var(--font-mono,monospace);font-size:var(--text-xs);border:1px solid var(--glass-border);color:var(--color-text-secondary);border-radius:4px;padding:.1rem .4rem}.display-settings-photo+.display-settings-photo{margin-top:var(--space-sm,.5rem)}.display-settings-price{font-size:var(--text-xs);color:#ffd27a;font-weight:600}@media (orientation:landscape) and (height<=32rem){.pm{grid-template:"stage top""stage bar"minmax(0,1fr)"stage hint"/minmax(0,1fr) auto;column-gap:1rem}.pm-top{grid-area:top}.pm-stage{grid-area:stage}.pm-hint{grid-area:hint;max-width:11rem}.pm-bar{grid-area:bar;grid-template-columns:auto;align-content:center;justify-items:center;gap:.75rem;width:auto}.pm-bar>.pm-btn{justify-self:center}.pm-preview.pa-dialog{width:min(44rem,100vw - 2rem)}.pm-preview-panel{width:100%;padding-block:var(--space-lg);align-content:center;column-gap:var(--space-lg,1.5rem);text-align:start;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"card title""card note""card actions";justify-items:stretch}.pm-preview-title{grid-area:title;align-self:end}.pm-preview-note{grid-area:note}.pm-preview-actions{grid-area:actions;align-self:start}.pm-preview-card{grid-area:card;width:min(15rem,71.5909dvh - 4.29545rem)}.pm-preview-card:has(.pm-preview-img){width:min(22rem,122.222dvh - 7.33333rem)}}@media (prefers-reduced-motion:reduce){.pm-flash{animation-duration:1ms}.pm-shutter{transition:none}}@media (width<=26rem){.cc-options{grid-template-columns:1fr}}@media (width<=40rem){.wi-detail-body{grid-template-columns:1fr}.wi-detail-card{width:min(13rem,70%);margin-inline:auto}.wi-detail-body--buying .wi-detail-card{width:min(8.5rem,42%)}.wi-grid{grid-template-columns:repeat(auto-fill,minmax(7.5rem,1fr))}}.wc{--wc-color:#8b8fa8;aspect-ratio:63/88;width:100%;transform:perspective(700px) rotateX(var(--wc-rx,0deg)) rotateY(var(--wc-ry,0deg));transition:transform .6s var(--ease-out-expo), translate .4s var(--ease-spring), box-shadow .4s;border-radius:4.8%/3.4%;position:relative;box-shadow:0 6px 18px #00000073,0 0 0 1px #ffffff0f;container-type:inline-size}.wc--tilt:hover{box-shadow:0 18px 38px #0000008c, 0 0 28px color-mix(in srgb, var(--wc-color) 35%, transparent), 0 0 0 1px #ffffff1a;transition-duration:.12s,.4s,.4s;translate:0 -4px}.wc-face{--mm:calc(100cqw / 63);border-radius:inherit;position:absolute;inset:0;overflow:hidden}.wc-front{font-family:"Jost", var(--font-display);color:#f4f4f5;background:#18181b}.wc-front>*{position:absolute}.wc-name{left:calc(4.5 * var(--mm));right:calc(4.5 * var(--mm));top:calc(5.5 * var(--mm));font-size:calc(4.4 * var(--mm));white-space:nowrap;text-overflow:ellipsis;font-weight:500;line-height:1;overflow:hidden}.wc-by{left:calc(4.5 * var(--mm));right:calc(4.5 * var(--mm));top:calc(60.2 * var(--mm));font-size:calc(2.7 * var(--mm));color:#acacb4;white-space:nowrap;text-overflow:ellipsis;font-weight:450;line-height:1;overflow:hidden}.wc-by strong{color:#e4e4e7;font-weight:500}.wc-loc{left:calc(4.5 * var(--mm));right:calc(4.5 * var(--mm));top:calc(65.2 * var(--mm));font-size:calc(2.1 * var(--mm));font-variant-numeric:tabular-nums;color:#acacb4;white-space:nowrap;text-overflow:ellipsis;font-weight:450;line-height:1;overflow:hidden}.wc-rule{left:calc(4 * var(--mm));top:calc(70.5 * var(--mm));width:calc(55 * var(--mm));height:max(1px, calc(.2 * var(--mm)));background:#27272a}.wc-mark{left:calc(4.1 * var(--mm));top:calc(76 * var(--mm));width:calc(5.4 * var(--mm))}.wc-set{left:calc(11.6 * var(--mm));top:calc(75.1 * var(--mm));max-width:calc(34 * var(--mm));white-space:nowrap;text-overflow:ellipsis;font-size:calc(2.3 * var(--mm));letter-spacing:.18em;text-transform:uppercase;color:#d4d4d8;font-weight:500;line-height:1;overflow:hidden}.wc-setno{right:calc(4.5 * var(--mm));top:calc(7.1 * var(--mm));font-size:calc(2.2 * var(--mm));font-variant-numeric:tabular-nums;white-space:nowrap;color:#acacb4;line-height:1}.wc-front--numbered .wc-name{right:calc(17 * var(--mm))}.wc-hint{left:calc(11.6 * var(--mm));top:calc(78.9 * var(--mm));font-size:calc(2 * var(--mm));color:#acacb4;font-weight:450;line-height:1}.wc-visits{right:calc(4.5 * var(--mm));top:calc(75.4 * var(--mm));padding:calc(.6 * var(--mm)) calc(1.6 * var(--mm));font-size:calc(2.4 * var(--mm));font-variant-numeric:tabular-nums;color:color-mix(in srgb, var(--wc-color) 55%, #fff);border:max(1px, calc(.2 * var(--mm))) solid color-mix(in srgb, var(--wc-color) 45%, transparent);border-radius:calc(3 * var(--mm));font-weight:500;line-height:1}.wc-art{left:calc(4 * var(--mm));top:calc(12 * var(--mm));width:calc(55 * var(--mm));height:calc(45 * var(--mm));border-radius:calc(1.5 * var(--mm));background:radial-gradient(120% 90% at 50% 60%, color-mix(in srgb, var(--wc-color) 16%, #0a0a12), #0a0a12 72%);overflow:hidden}.wc-art:after{content:"";border-radius:inherit;box-shadow:inset 0 0 0 max(1px, calc(.25 * var(--mm))) #3f3f46;background:linear-gradient(#0000 70%,#18181b8c);position:absolute;inset:0}.wc-art>span{position:absolute}.wc-art-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.wc-stars{background-image:radial-gradient(circle at 12% 18%,#ffffffe6 0 1px,#0000 1.5px),radial-gradient(circle at 78% 12%,#ffffffb3 0 1px,#0000 1.5px),radial-gradient(circle at 88% 64%,#fffc 0 1px,#0000 1.5px),radial-gradient(circle at 22% 80%,#fff9 0 1px,#0000 1.5px),radial-gradient(circle at 55% 8%,#ffffff80 0 .8px,#0000 1.2px),radial-gradient(circle at 6% 52%,#ffffff8c 0 .8px,#0000 1.2px),radial-gradient(circle at 66% 88%,#ffffff80 0 .8px,#0000 1.2px),radial-gradient(circle at 94% 34%,#ffffff73 0 .8px,#0000 1.2px);background-position:var(--wc-stars-x,0) 0;inset:0}.wc-nebula{background:radial-gradient(38% 30% at 30% 32%, color-mix(in srgb, var(--wc-color) 32%, transparent), transparent 70%), radial-gradient(34% 28% at 74% 70%, #a480b82e, transparent 70%);filter:blur(calc(2 * var(--mm)));inset:-20%}.wc-orb{left:var(--wc-orb-x,50%);top:var(--wc-orb-y,50%);width:calc(21 * var(--mm));aspect-ratio:1;background:radial-gradient(circle at var(--wc-light-x,35%) var(--wc-light-y,30%), #fff 0%, color-mix(in srgb, var(--wc-color) 65%, #fff) 9%, var(--wc-color) 34%, color-mix(in srgb, var(--wc-color) 32%, #050510) 74%, #050510 100%);box-shadow:0 0 calc(5 * var(--mm)) color-mix(in srgb, var(--wc-color) 55%, transparent), 0 0 calc(14 * var(--mm)) color-mix(in srgb, var(--wc-color) 22%, transparent), inset calc(-2 * var(--mm)) calc(-2 * var(--mm)) calc(5 * var(--mm)) #00000080;transition:scale .8s var(--ease-out-expo);border-radius:50%;translate:-50% -50%}.wc-ring{width:175%;height:40%;translate:-50% -50%;rotate:var(--wc-tilt,0deg);border:max(1px, calc(.6 * var(--mm))) solid color-mix(in srgb, var(--wc-color) 55%, #fff);box-shadow:0 0 calc(2 * var(--mm)) color-mix(in srgb, var(--wc-color) 60%, transparent);opacity:.65;mix-blend-mode:screen;border-radius:50%;position:absolute;top:50%;left:50%}.wc--tilt:hover .wc-orb{scale:1.06}.wc-art--portal{background:radial-gradient(110% 90% at 50% 55%,#e8b94a29,#0a0a12 70%)}.wc-portal-halo,.wc-portal-ring,.wc-portal-core{border-radius:50%;top:52%;left:50%}.wc-portal-halo{width:calc(36 * var(--mm));aspect-ratio:1;background:radial-gradient(circle,#e8b94a61,#e8b94a14 45%,#0000 68%);translate:-50% -50%}.wc-portal-ring{width:calc(24 * var(--mm));aspect-ratio:1;transform:translate(-50%, -50%) perspective(calc(60 * var(--mm))) rotateX(62deg);border:calc(1.1 * var(--mm)) solid #e8b94a;box-shadow:0 0 calc(3 * var(--mm)) #e8b94a, inset 0 0 calc(3 * var(--mm)) #e8b94a}.wc-portal-core{width:calc(7 * var(--mm));aspect-ratio:1;box-shadow:0 0 calc(5 * var(--mm)) #f0d78ce6;background:radial-gradient(circle at 38% 34%,#fff,#f0d78c 35%,#e8b94a 70%,#8a6420);translate:-50% -50%}.wc-glare{border-radius:inherit;pointer-events:none;background:radial-gradient(circle at var(--wc-gx,50%) var(--wc-gy,0%), #fff3, transparent 55%);opacity:0;transition:opacity .3s;position:absolute;inset:0}.wc--tilt:hover .wc-glare{opacity:1}.wc-back{background:#18181b}.wc-back img{-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.wc-back-glow{background:radial-gradient(48% 34% at 50% 45%, color-mix(in srgb, var(--wc-color) 30%, transparent), transparent 72%);mix-blend-mode:screen;opacity:0;transition:opacity .4s;position:absolute;inset:0}.wc--tilt:hover .wc-back-glow{opacity:1}.cr-overlay{z-index:40;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:1.4rem;display:flex;position:fixed;inset:0}.cr-burst{aspect-ratio:1;background:radial-gradient(circle, color-mix(in srgb, var(--wc-color) 38%, transparent), transparent 60%);width:min(40rem,120vw);animation:cr-burst 3.8s var(--ease-out-expo) both;border-radius:50%;position:absolute;top:50%;left:50%;translate:-50% -50%}.cr-fly{perspective:1200px;width:min(15rem,46vw);animation:3.8s both cr-fly}.cr-flip{transform-style:preserve-3d;animation:cr-flip 3.8s var(--ease-out-expo) both;position:relative}.cr-side{backface-visibility:hidden;box-shadow:0 24px 60px #0009, 0 0 40px color-mix(in srgb, var(--wc-color) 40%, transparent)}.cr-side--front{position:absolute;inset:0;transform:rotateY(180deg)}.cr-side--front .wc-front:after{content:"";background:linear-gradient(105deg,#0000 38%,#ffffff52 50%,#0000 62%) 0 0/260% 100%;animation:3.8s both cr-sheen;position:absolute;inset:0}.cr-caption{text-align:center;flex-direction:column;align-items:center;gap:.3rem;margin:0;animation:3.8s both cr-caption;display:flex}.cr-kicker{font-size:var(--text-xs);letter-spacing:.3em;text-transform:uppercase;color:var(--color-accent-secondary);font-weight:600}.cr-name{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-text-primary);text-shadow:0 2px 18px #000c;font-size:1.7rem;font-weight:700}.cr-hint{font-size:var(--text-xs);color:var(--color-text-secondary);text-shadow:0 1px 8px #000c;align-items:center;gap:.35rem;display:inline-flex}@keyframes cr-burst{0%{opacity:0;scale:.3}30%{opacity:1;scale:1}70%{opacity:.55}to{opacity:0;scale:1.1}}@keyframes cr-fly{0%{opacity:0;transform:translateY(24px)scale(.6)}10%{opacity:1;transform:none}72%{opacity:1;animation-timing-function:cubic-bezier(.55,0,.8,.2);transform:none}to{opacity:0;transform:translate(var(--cr-tx,-40vw), var(--cr-ty,-40vh)) scale(.08)}}@keyframes cr-flip{0%,16%{transform:rotateY(0)}42%,to{transform:rotateY(180deg)}}@keyframes cr-sheen{0%,40%{background-position:120% 0}62%,to{background-position:-20% 0}}@keyframes cr-caption{0%,34%{opacity:0;transform:translateY(8px)}44%,68%{opacity:1;transform:none}78%,to{opacity:0;transform:none}}@media (prefers-reduced-motion:reduce){.wi-item,.wi-detail-card,.wi-detail-info,.wi-empty-card{animation:none}.wc{transition:none;transform:none}.wc--tilt:hover{translate:none}.cr-fly,.cr-flip,.cr-burst,.cr-side--front .wc-front:after{animation:none}.cr-flip{transform:rotateY(180deg)}.cr-overlay{animation:3.8s both cr-fade}@keyframes cr-fade{0%,to{opacity:0}10%,85%{opacity:1}}}.wave-flash{pointer-events:none;z-index:60;mix-blend-mode:screen;background:radial-gradient(#ffecbe00 0%,#f2c45a47 55%,#f2aa3c8c 100%);animation:1.6s ease-out forwards wave-flash;position:fixed;inset:0}@keyframes wave-flash{0%{opacity:0}12%{opacity:1}to{opacity:0}}.steer-banner{left:50%;top:calc(env(safe-area-inset-top,0px) + 26vh);z-index:62;max-width:calc(100vw - 1.5rem);font-family:var(--font-body);font-size:var(--text-xs,.8rem);color:var(--color-text-primary);-webkit-backdrop-filter:blur(10px);background:#0c0b1ec7;border:1px solid #e8b94a59;border-radius:999px;align-items:center;gap:.6rem;padding:.3rem .35rem .3rem .85rem;animation:.3s ease-out both steer-in;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 6px 24px #00000059,0 0 18px #e8b94a1f}.steer-banner-dot{background:var(--color-accent-secondary,#e8b94a);width:.5rem;height:.5rem;box-shadow:0 0 8px var(--color-accent-secondary,#e8b94a);border-radius:50%;flex:none}.steer-banner-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.steer-banner-btn{min-height:2.75rem;font:inherit;color:#1a1408;cursor:pointer;transition:transform var(--duration-fast,.15s), box-shadow var(--duration-fast,.15s);background:linear-gradient(135deg,#f3d27a,#e8b94a);border:0;border-radius:999px;flex:none;padding:0 1rem;font-weight:600}.steer-banner-btn:hover{box-shadow:0 0 14px #e8b94a73}.steer-banner-btn:active{transform:scale(.97)}.steer-banner-btn:focus-visible{outline-offset:2px;outline:2px solid #fff}@keyframes steer-in{0%{opacity:0;transform:translate(-50%,-6px)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.steer-banner{animation:none}}.wave-banner{left:50%;top:calc(env(safe-area-inset-top,0px) + 18vh);z-index:61;pointer-events:none;text-align:center;opacity:0;max-width:min(90vw,640px);transition:opacity 1.2s,transform 1.2s;position:fixed;transform:translate(-50%,12px)}.wave-banner--on{opacity:1;transform:translate(-50%)}body:has(#onboarding-hint) .wave-banner{top:calc(env(safe-area-inset-top,0px) + 44vh)}.wave-banner__line{font-family:var(--font-display);letter-spacing:.02em;color:#fff3d1;text-shadow:0 0 18px #f2c45ad9,0 0 42px #f2aa3c73,0 2px 10px #000000b3;font-size:clamp(1.15rem,3.4vw,1.9rem);font-weight:600}.wave-banner__sub{font-family:var(--font-body);letter-spacing:.28em;text-transform:uppercase;color:#f2c45ad9;text-shadow:0 0 12px #000c;margin-top:.4rem;font-size:clamp(.72rem,1.8vw,.9rem)}@media (prefers-reduced-motion:reduce){.wave-flash{animation-duration:10ms}.wave-banner{transition:none}}.display-settings{pointer-events:auto;justify-content:flex-end;margin-top:6px;display:flex;position:relative}.display-settings-toggle{border-radius:var(--radius-full);border:1px solid var(--glass-border);background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);width:26px;height:26px;color:var(--color-text-tertiary);cursor:pointer;transition:color var(--duration-fast), border-color var(--duration-fast), transform var(--duration-normal) var(--ease-out-expo), box-shadow var(--duration-fast);place-items:center;display:grid}.display-settings-toggle:hover,.display-settings-toggle--open{color:var(--color-accent-primary);border-color:#e8b94a66;box-shadow:0 0 14px #e8b94a33}.display-settings-toggle--open{transform:rotate(60deg)}.display-settings-toggle:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.display-settings-panel{width:264px;padding:var(--space-md);border-radius:var(--radius-lg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(18px)saturate(1.3);box-shadow:var(--shadow-elevated), inset 0 1px 0 var(--glass-highlight);font-family:var(--font-body);color:var(--color-text-secondary);text-align:left;animation:display-panel-in var(--duration-normal) var(--ease-out-expo);transform-origin:100% 0;background:linear-gradient(160deg,#14123cd1,#080820e0);position:absolute;top:calc(100% + 8px);right:0}@keyframes display-panel-in{0%{opacity:0;transform:translateY(-6px)scale(.97)}to{opacity:1;transform:none}}.display-settings-title{font-family:var(--font-display);font-size:var(--text-sm);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-primary);margin-bottom:var(--space-sm);font-weight:600}.display-settings-label{font-size:var(--text-xs);letter-spacing:.04em;justify-content:space-between;align-items:baseline;margin-bottom:6px;display:flex}.display-settings-value{color:var(--color-accent-primary);font-weight:600}.quality-slider{--control-value:0%;appearance:none;cursor:pointer;background:0 0;width:100%;height:18px;margin:0}.quality-slider::-webkit-slider-runnable-track{border-radius:var(--radius-full);background:linear-gradient(90deg, var(--color-nebula-purple), var(--color-accent-primary) var(--control-value), #eef0f61f var(--control-value));height:4px}.quality-slider::-moz-range-track{border-radius:var(--radius-full);background:#eef0f61f;height:4px}.quality-slider::-moz-range-progress{border-radius:var(--radius-full);background:linear-gradient(90deg, var(--color-nebula-purple), var(--color-accent-primary));height:4px}.quality-slider::-webkit-slider-thumb{appearance:none;background:var(--color-accent-primary);width:16px;height:16px;transition:transform var(--duration-fast) var(--ease-spring);border:2px solid #fff3d1;border-radius:50%;margin-top:-6px;box-shadow:0 0 10px #e8b94ab3}.quality-slider::-moz-range-thumb{background:var(--color-accent-primary);border:2px solid #fff3d1;border-radius:50%;width:12px;height:12px;box-shadow:0 0 10px #e8b94ab3}.quality-slider:hover::-webkit-slider-thumb{transform:scale(1.15)}.quality-slider:focus-visible{outline:none}.quality-slider:focus-visible::-webkit-slider-thumb{outline:2px solid var(--color-text-primary);outline-offset:2px}.quality-slider:focus-visible::-moz-range-thumb{outline:2px solid var(--color-text-primary);outline-offset:2px}.quality-stops{letter-spacing:.03em;color:var(--color-text-tertiary);justify-content:space-between;margin-top:4px;font-size:10px;display:flex}.quality-stop--active{color:var(--color-text-primary)}.display-settings-stats{margin-top:var(--space-md);padding-top:var(--space-sm);border-top:1px solid var(--glass-border);font-size:var(--text-xs);gap:4px;display:grid}.display-settings-stats>div{justify-content:space-between;display:flex}.display-settings-stats dd{font-family:var(--font-mono);color:var(--color-text-primary)}.display-settings-note{margin-top:var(--space-sm);color:var(--color-text-tertiary);font-size:10.5px;line-height:1.45}@media (prefers-reduced-motion:reduce){.display-settings-panel{animation:none}.display-settings-toggle{transition:none}}.display-settings-title--sub{margin-top:var(--space-md);padding-top:var(--space-sm);border-top:1px solid var(--glass-border)}.sound-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.sound-level{align-items:center;gap:10px;margin-top:6px;display:flex}.sound-level-name{width:52px;color:var(--color-text-secondary);flex:none;font-size:13px}.sound-level-value{text-align:right;flex:none;width:48px}.sound-mute{border:1px solid var(--glass-border);width:32px;height:32px;color:var(--color-text-primary);cursor:pointer;transition:background var(--duration-fast) ease, color var(--duration-fast) ease, transform .1s ease;background:#ffffff0f;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.sound-mute:hover{background:#ffffff1f}.sound-mute:active{transform:scale(.92)}.sound-mute[aria-pressed=true]{color:var(--color-text-tertiary);background:#ffffff08}.sound-mute:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.sound-volume{flex:1;min-width:0}@media (pointer:coarse){.sound-mute{width:44px;height:44px}.sound-volume{height:44px}}.create-panel{left:50%;bottom:calc(var(--space-xl) + env(safe-area-inset-bottom,0px));align-items:center;gap:var(--space-sm);z-index:40;pointer-events:none;flex-direction:column;width:min(560px,100vw - 32px);display:flex;position:fixed;transform:translate(-50%)}.create-panel>*{pointer-events:auto}.create-open,.create-submit{font-family:var(--font-body);font-size:var(--text-sm);color:#1a1206;border-radius:var(--radius-full);cursor:pointer;background:linear-gradient(135deg,#ffd27a,#ff9f5a);border:none;padding:10px 20px;font-weight:600;transition:transform .15s,box-shadow .15s;box-shadow:0 6px 24px #ffaa5059}.create-open:hover,.create-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 30px #ffaa5080}.create-submit:disabled{opacity:.5;cursor:default}.create-open kbd{background:#00000026;border-radius:4px;margin-left:8px;padding:1px 6px;font-size:11px}.create-form{gap:var(--space-sm);background:var(--glass-bg);-webkit-backdrop-filter:blur(14px);border:1px solid var(--glass-border);border-radius:var(--radius-full);width:100%;animation:rise-in .25s var(--ease-out-expo) both;flex-wrap:wrap;padding:8px;display:flex}.create-form:has(.create-error){border-radius:22px}.create-input{min-width:0;font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-primary);background:0 0;border:none;outline:none;flex:1;padding:8px 12px}.create-error{width:100%;font-size:var(--text-xs);color:#ffb4a0;margin:0;padding:0 12px 4px}.create-suggestion{min-height:44px;font:600 var(--text-sm) var(--font-body);color:var(--color-accent-secondary);border-radius:var(--radius-full);cursor:pointer;background:#ffd28c1a;border:1px solid #ffd28c59;margin:0 8px 4px;padding:0 16px;transition:background .15s}.create-suggestion:hover{background:#ffd28c2e}.create-makings{flex-direction:column;gap:6px;width:100%;margin:0;padding:0;list-style:none;display:flex}.create-making{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-secondary);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:12px;justify-content:space-between;gap:12px;padding:8px 14px;display:flex;position:relative;overflow:hidden}.create-making-prompt{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.create-making-state{color:#ffd27a;flex:none}.create-making--failed .create-making-state{color:#ffb4a0}.create-making-bar{background:linear-gradient(90deg,#ffd27a,#ff9f5a);height:2px;transition:width .6s;position:absolute;bottom:0;left:0}html.touch-ui .create-panel{top:calc(60px + env(safe-area-inset-top,0px));bottom:auto}html.touch-ui .create-panel .create-form{--create-room:calc(100dvh - 60px - 296px - 52px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));max-height:max(180px, var(--create-room));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow-y:auto}html.touch-ui .create-panel:has(.make-tabs) .create-makings{overscroll-behavior:contain;order:2;max-height:112px;overflow-y:auto}html.touch-ui .create-panel:has(.make-tabs):has(.create-makings) .create-form{max-height:max(160px, calc(var(--create-room) - 120px))}@media (orientation:landscape){html.touch-ui .create-panel{top:calc(12px + env(safe-area-inset-top,0px));width:min(480px,100vw - 380px)}html.touch-ui .create-panel .create-form{--create-room:calc(100dvh - 12px - 76px - 52px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}}.plant-panel{left:50%;bottom:calc(var(--space-xl) + env(safe-area-inset-bottom,0px));z-index:40;position:fixed;transform:translate(-50%)}.plant-open{min-height:44px;font-family:var(--font-body);font-size:var(--text-sm);color:#0c1a10;border-radius:var(--radius-full);cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#c8ffb0,#7fe0a0 55%,#5ac8c8);border:none;padding:10px 20px;font-weight:600;transition:transform .15s,box-shadow .15s;position:relative;overflow:hidden;box-shadow:0 6px 24px #6ee6a059}.plant-open:hover{transform:translateY(-1px);box-shadow:0 8px 30px #6ee6a080}.plant-open:focus-visible{outline-offset:3px;outline:2px solid #c8ffb0}.plant-open kbd{background:#00000026;border-radius:4px;margin-left:8px;padding:1px 6px;font-size:11px}html.touch-ui .plant-open kbd{display:none}.plant-open.is-sealed:after{content:"";pointer-events:none;background:linear-gradient(110deg,#0000 30%,#ffffff73 50%,#0000 70%);animation:4.5s ease-in-out infinite seal-shimmer;position:absolute;inset:0;transform:translate(-120%)}.plant-sheet form{margin:0}.plant-orb{background:radial-gradient(circle at 35% 30%, #fff 0%, var(--orb) 32%, color-mix(in oklab, var(--orb), #000 55%) 100%);width:96px;height:96px;box-shadow:0 0 36px var(--orb), 0 0 90px color-mix(in oklab, var(--orb), transparent 50%);border-radius:50%;margin:4px auto 14px;transition:background .3s,box-shadow .3s;animation:3.2s ease-in-out infinite seal-breathe}.plant-orb.is-planted{animation:plant-bloom .9s var(--ease-out-expo) both, seal-breathe 3.2s ease-in-out .9s infinite}@keyframes plant-bloom{0%{opacity:0;transform:scale(.2)}60%{opacity:1;transform:scale(1.15)}}.plant-field{text-align:left;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:16px;align-items:center;gap:10px;margin:0 0 12px;padding:6px 6px 6px 16px;display:flex}.plant-field:focus-within{border-color:#ffd27a99}.plant-field>span{width:56px;color:var(--color-text-tertiary);flex:none;font-size:13px}.plant-field input:not([type=color]){min-width:0;min-height:40px;font:inherit;color:var(--color-text-primary);background:0 0;border:none;outline:none;flex:1;font-size:16px}.plant-field input[type=color]{cursor:pointer;background:0 0;border:none;border-radius:10px;width:56px;height:40px;padding:0}.plant-field input[type=color]::-webkit-color-swatch-wrapper{padding:0}.plant-field input[type=color]::-webkit-color-swatch{border:none;border-radius:10px}.plant-field input[type=color]::-moz-color-swatch{border:none;border-radius:10px}.plant-field--color code{color:var(--color-text-secondary);font-size:13px}.plant-error{color:#ffb3a8;margin:0 0 12px;font-size:14px}.plant-sheet .mana-seal-cta:disabled{opacity:.5;cursor:default;transform:none}.plant-link{border-radius:var(--radius-full);background:#ffffff0f;border:1px solid #ffffff1f;align-items:center;gap:8px;margin:0 0 14px;padding:6px 6px 6px 14px;display:flex}.plant-link code{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-text-secondary);text-align:left;flex:1;font-size:13px;overflow:hidden}.plant-link-btn{border-radius:var(--radius-full);min-height:40px;font:inherit;color:var(--color-text-primary);cursor:pointer;background:#ffffff1f;border:none;flex:none;padding:0 16px;font-size:14px;font-weight:600}.plant-link-btn:hover{background:#fff3}.sync-status-region{pointer-events:none;width:0;height:0;position:fixed;top:0;left:0}.sync-status{left:50%;top:calc(80px + env(safe-area-inset-top,0px));z-index:60;width:max-content;max-width:calc(100vw - 32px);font-family:var(--font-body);color:var(--color-text-primary);-webkit-backdrop-filter:blur(12px);border-radius:var(--radius-full);pointer-events:none;background:#28141ed9;border:1px solid #ff968259;align-items:center;gap:8px;padding:8px 14px;font-size:13px;animation:.3s both fade-in;display:flex;position:fixed;transform:translate(-50%)}.sync-status-dot{background:#ff9f8a;border-radius:50%;flex:none;width:8px;height:8px;animation:1.6s ease-in-out infinite seal-breathe}.sync-status[data-tier=solo]{background:#1c182ce0;border-color:#ff788c66}.sync-status[data-tier=solo] .sync-status-dot{background:#ff7a8c;animation:none}.sync-status[data-tier=mesh]{background:#241e0ee0;border-color:#ffd36b73}.sync-status[data-tier=mesh] .sync-status-dot{background:#ffd36b;animation:none}@media (prefers-reduced-motion:reduce){.plant-open.is-sealed:after,.plant-orb,.plant-orb.is-planted,.sync-status-dot{animation:none}}.planner-open{right:var(--space-lg);bottom:calc(var(--space-xl) + env(safe-area-inset-bottom,0px));z-index:41;font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-primary);background:var(--glass-bg);-webkit-backdrop-filter:blur(14px);border-radius:var(--radius-full);cursor:pointer;border:1px solid #b4a0ff73;padding:10px 18px;font-weight:600;transition:transform .15s,box-shadow .15s;position:fixed;box-shadow:0 6px 24px #8c6eff40}.planner-open:hover{transform:translateY(-1px);box-shadow:0 8px 30px #8c6eff73}.planner-open kbd{background:#ffffff1f;border-radius:4px;margin-left:8px;padding:1px 6px;font-size:11px}.planner{right:var(--space-lg);top:80px;bottom:calc(var(--space-xl) + env(safe-area-inset-bottom,0px));z-index:41;width:min(380px,100vw - 32px);font-family:var(--font-body);color:var(--color-text-primary);-webkit-backdrop-filter:blur(18px);animation:rise-in .25s var(--ease-out-expo) both;background:linear-gradient(160deg,#1e163cd1,#0c0e20db);border:1px solid #b4a0ff47;border-radius:20px;flex-direction:column;gap:10px;padding:14px;display:flex;position:fixed;box-shadow:0 20px 60px #00000073}.planner-head{align-items:center;gap:8px;display:flex}.planner-title{font-size:var(--text-base);text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;font-weight:600;overflow:hidden}.planner-model{font:inherit;font-size:var(--text-xs);color:var(--color-text-secondary);border:1px solid var(--glass-border);background:#ffffff0f;border-radius:8px;padding:4px 6px}.planner-model option{background:#16142a}.planner-close{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:22px;line-height:1}.planner-log{flex-direction:column;flex:1;gap:10px;padding-right:4px;display:flex;overflow-y:auto}.planner-empty{color:var(--color-text-secondary);margin:auto;font-style:italic}.planner-turn{max-width:88%;font-size:var(--text-sm);line-height:1.45}.planner-turn p{margin:0}.planner-turn--you{background:#ffffff14;border-radius:14px 14px 4px;align-self:flex-end;padding:8px 12px}.planner-turn--planner{color:#e8e2ff;align-self:flex-start}.planner-meta{color:#c8beff73;margin-top:4px;font-size:10px;display:block}.planner-thinking{gap:5px;padding:6px 0;display:flex}.planner-thinking span{background:#b8a8ff;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite planner-dot}.planner-thinking span:nth-child(2){animation-delay:.15s}.planner-thinking span:nth-child(3){animation-delay:.3s}@keyframes planner-dot{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.planner-chips{flex-wrap:wrap;gap:6px;display:flex}.planner-chip{font:inherit;font-size:var(--text-xs);color:#e8e2ff;cursor:pointer;border-radius:var(--radius-full);background:#967dff24;border:1px solid #b4a0ff59;padding:5px 12px;transition:background .15s,transform .15s}.planner-chip:hover{background:#967dff4d;transform:translateY(-1px)}.planner-chip--open{color:var(--color-text-secondary);background:0 0;border-style:dashed}.planner-card{font-size:var(--text-xs);border:1px solid var(--glass-border);background:#ffffff0a;border-radius:12px;padding:8px 10px}.planner-card summary{cursor:pointer;color:#cfc4ff}.planner-art{color:var(--color-text-secondary);margin:8px 0 6px;font-style:italic}.planner-palette{gap:4px;margin-bottom:6px;display:flex}.planner-palette span{border:1px solid #ffffff26;border-radius:5px;width:18px;height:18px}.planner-assets{flex-direction:column;gap:6px;max-height:160px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.planner-assets em{color:#c8beff8c;font-style:normal}.planner-assets span{color:var(--color-text-secondary);display:block}.planner-form{border:1px solid var(--glass-border);border-radius:var(--radius-full);background:#ffffff0f;gap:6px;padding:4px;display:flex}.planner-input{min-width:0;font:inherit;font-size:var(--text-sm);color:var(--color-text-primary);background:0 0;border:none;outline:none;flex:1;padding:8px 12px}.planner-send{cursor:pointer;color:#140f2a;background:linear-gradient(135deg,#cbbcff,#8f7bff);border:none;border-radius:50%;flex:none;width:36px;height:36px;font-size:16px;font-weight:700}.planner-send:disabled{opacity:.4;cursor:default}.planner-error{font-size:var(--text-xs);color:#ffb4a0;margin:0}html.touch-ui .planner{top:calc(60px + env(safe-area-inset-top,0px));bottom:calc(296px + env(safe-area-inset-bottom,0px));width:auto;left:12px;right:12px}@media (orientation:landscape){html.touch-ui .planner{top:calc(12px + env(safe-area-inset-top,0px));bottom:calc(76px + env(safe-area-inset-bottom,0px));left:calc(168px + env(safe-area-inset-left,0px));right:calc(232px + env(safe-area-inset-right,0px))}}.planner-ghost{border:1px solid var(--glass-border);color:var(--color-text-secondary);cursor:pointer;background:0 0;border-radius:8px;padding:2px 7px;font-size:13px}.planner-ghost.is-on{color:#cfc4ff;background:#967dff26;border-color:#b4a0ff80}.ghost-label{white-space:nowrap;pointer-events:none;font-family:var(--font-body);letter-spacing:.04em;color:#e8e2ff;border-radius:var(--radius-full);background:#1410288c;border:1px solid #b4a0ff59;padding:2px 8px;font-size:12px;display:inline-block}.planner-open-badge{color:#ffd27a;margin-left:8px;font-size:11px}.planner-makings{flex-direction:column;gap:4px;max-height:140px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.planner-making{font-size:var(--text-xs);color:var(--color-text-secondary);border:1px solid var(--glass-border);background:#ffffff0a;border-radius:10px;justify-content:space-between;gap:10px;padding:6px 10px;display:flex;position:relative;overflow:hidden}.planner-making-state{color:#ffd27a;flex:none}.planner-making--failed .planner-making-state{color:#ffb4a0}.planner-making--later .planner-making-state{color:var(--color-text-secondary)}.planner-making-bar{background:linear-gradient(90deg,#ffd27a,#ff9f5a);height:2px;transition:width .6s;position:absolute;bottom:0;left:0}.planner-manifest{font:inherit;font-size:var(--text-sm);color:#1a1206;cursor:pointer;border-radius:var(--radius-full);background:linear-gradient(135deg,#ffd27a,#ff9f5a);border:none;padding:9px 16px;font-weight:600;transition:transform .15s,box-shadow .15s;box-shadow:0 6px 24px #ffaa504d}.planner-manifest:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 30px #ffaa5080}.planner-manifest:disabled{opacity:.5;cursor:default}.planner-actions{flex:none;gap:8px;display:flex}.planner-actions .planner-manifest{flex:1;padding:9px 10px}#planner-terrain{background:linear-gradient(135deg,#9fd8c4,#6fb7d8);box-shadow:0 6px 24px #6ebedc4d}.planner-makings{flex:none}.planner-making{flex:none;align-items:flex-start}.planner-making>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.planner-making-state{text-align:right;white-space:normal;max-width:60%}.planner-card,.planner-chips,.planner-manifest,.planner-form{flex:none}.planner-card[open]{overscroll-behavior:contain;flex:0 auto;min-height:0;scroll-padding-block:44px 8px;overflow-y:auto}.planner:has(.planner-card[open]) .planner-chips{display:none}.planner-card[open] .planner-assets,.planner-card[open] .planner-history-list{max-height:none;overflow:visible}.planner-card[open]>summary{z-index:2;background:#251f42;border-radius:12px 12px 0 0;margin:0 -10px;padding:8px 10px;position:sticky;top:0}.planner-card[open]{padding-top:0}@media (height<=520px){.planner:has(.planner-card[open]) :is(.planner-actions,.planner-form,.planner-makings){display:none}}.planner-asset-head{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.planner-asset-tools{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.planner-tool{min-block-size:24px;min-inline-size:26px;font:inherit;color:#cfc4ff;cursor:pointer;border:1px solid var(--glass-border);background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:0 6px;font-size:12px;line-height:1;transition:background .15s,border-color .15s;display:inline-flex}.planner-tool:hover:not(:disabled){background:#967dff33;border-color:#b4a0ff73}.planner-tool:disabled{opacity:.4;cursor:default}.planner-tool--remove{color:#ffb4a0;margin-inline-start:auto}.planner-tool--remove:hover:not(:disabled){background:#ff8c6e29;border-color:#ffa08273}.planner-tool--text{padding:0 10px}@media (pointer:coarse){.planner-tool{min-block-size:32px;min-inline-size:34px;font-size:14px}.planner-asset-tools{gap:6px}}.planner-card-bar{align-items:center;gap:6px;margin-top:8px;display:flex}.planner-card-bar .planner-rename{flex:1;margin-top:0}.planner-word-form{align-items:flex-end}.planner-word-form textarea{resize:vertical;min-block-size:3lh;line-height:1.35}.planner-history{border-top:1px solid var(--glass-border);margin-top:8px;padding-top:6px}.planner-history summary{cursor:pointer;color:#cfc4ff}.planner-history-empty{color:var(--color-text-secondary);margin:6px 0 0}.planner-history-list{flex-direction:column;gap:4px;max-height:150px;margin:6px 0 0;padding:0;list-style:none;display:flex;overflow-y:auto}.planner-history-list li{background:#ffffff08;border-radius:8px;grid-template-columns:auto 1fr auto;align-items:center;column-gap:8px;padding:4px 6px;display:grid}.planner-history-list li.is-current{background:#967dff1f}.planner-history-v{color:#ffd27a;font-variant-numeric:tabular-nums;grid-row:span 2}.planner-history-label{color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.planner-history-at{color:var(--color-text-secondary);grid-column:2;font-size:11px}.planner-history-list li>button,.planner-history-now{grid-area:1/3/span 2}.planner-history-now{color:#cfc4ff;padding:0 6px;font-size:11px}.planner-redo-form{gap:6px;margin-top:6px;display:flex}.planner-redo-input{min-width:0;font:inherit;font-size:var(--text-xs);color:var(--color-text-primary);border:1px solid var(--glass-border);background:#ffffff0f;border-radius:8px;outline:none;flex:1;padding:5px 8px}.planner-redo-input:focus-visible{border-color:#b4a0ff99}.planner-redo-go{font:inherit;font-size:var(--text-xs);color:#1a1206;cursor:pointer;background:linear-gradient(135deg,#ffd27a,#ff9f5a);border:none;border-radius:8px;flex:none;padding:5px 10px;font-weight:600}.planner-redo-go:disabled{opacity:.45;cursor:default}.library-open{right:auto;left:var(--space-lg)}html.touch-ui #library-open,html.touch-ui #create-open,html.touch-ui #planner-open,html.touch-ui #plant-open,html.touch-ui #world-index-chip,html.touch-ui #chat-open,.touch-dock{display:none}html.touch-ui .touch-dock{left:50%;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:21;border-radius:var(--radius-full);-webkit-backdrop-filter:blur(14px);font-family:var(--font-body);background:#1210289e;border:1px solid #b4a0ff40;gap:2px;padding:4px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 28px #00000059}html.touch-ui:has(dialog[open],.modal-backdrop) .touch-dock{display:none}.touch-dock-btn{border-radius:var(--radius-full);color:#e8e2ff;width:64px;height:50px;font:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:0;transition:background .15s,transform .1s;display:flex;position:relative}.touch-dock-btn:active{transform:scale(.94)}.touch-dock-btn.is-on{background:#967dff52}.touch-dock-btn:focus-visible{outline-offset:-2px;outline:2px solid #c8b9ffcc}.touch-dock-icon{font-size:20px;line-height:1}.touch-dock-label{letter-spacing:.04em;color:#e8e2ffbf;font-size:10px;font-weight:600}.touch-dock-count{border-radius:var(--radius-full);color:#1a1206;text-align:center;background:#e8b94ae6;min-width:16px;padding:0 4px;font-size:10px;font-weight:700;line-height:16px;position:absolute;top:3px;right:10px}.make-tabs{display:none}html.touch-ui .make-tabs{overscroll-behavior-x:contain;scrollbar-width:none;scroll-snap-type:x proximity;background:#ffffff0f;border-radius:12px;flex:none;gap:4px;min-width:0;padding:3px;display:flex;overflow-x:auto}html.touch-ui .make-tabs::-webkit-scrollbar{display:none}html.touch-ui .create-panel .make-tabs{box-sizing:border-box;-webkit-backdrop-filter:blur(14px);background:#181230d1;border:1px solid #b4a0ff38;width:100%}.make-tab{white-space:nowrap;scroll-snap-align:start;touch-action:manipulation;min-height:44px;font:inherit;font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:9px;flex:1 0 auto;padding:0 8px;font-weight:600;transition:background .15s,color .15s}.make-tab.is-on{color:var(--color-text-primary);background:#967dff59}.more-sheet{top:calc(60px + env(safe-area-inset-top,0px));bottom:calc(296px + env(safe-area-inset-bottom,0px));z-index:41;font-family:var(--font-body);color:var(--color-text-primary);-webkit-backdrop-filter:blur(18px);background:linear-gradient(160deg,#1e163cdb,#0c0e20e6);border:1px solid #b4a0ff47;border-radius:18px;flex-direction:column;padding:12px 14px 14px;animation:.22s both rise-in;display:flex;position:fixed;left:12px;right:12px;box-shadow:0 18px 48px #00000073}.more-sheet.is-space{bottom:calc(336px + env(safe-area-inset-bottom,0px))}@media (orientation:landscape){.more-sheet,.more-sheet.is-space{top:calc(12px + env(safe-area-inset-top,0px));bottom:calc(76px + env(safe-area-inset-bottom,0px));left:calc(168px + env(safe-area-inset-left,0px));right:calc(232px + env(safe-area-inset-right,0px))}}.more-head{flex:none;justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.more-title{font-size:var(--text-lg);letter-spacing:.02em;margin:0;font-weight:700}.more-close{cursor:pointer;width:36px;height:36px;color:var(--color-text-secondary);background:#ffffff0f;border:none;border-radius:50%;font-size:22px;line-height:1}.more-body{overscroll-behavior:contain;flex-direction:column;flex:1;gap:8px;min-height:0;padding-right:2px;display:flex;overflow-y:auto}.more-body>*{flex:none}.more-section{letter-spacing:.12em;text-transform:uppercase;color:#c8beff99;margin:10px 0 0;font-size:11px;font-weight:700}.more-section:first-child{margin-top:4px}.more-row{box-sizing:border-box;width:100%;min-height:52px;font:inherit;text-align:left;color:inherit;cursor:pointer;border:1px solid var(--glass-border);background:#ffffff0d;border-radius:14px;align-items:center;gap:12px;padding:10px 12px;transition:background .15s,transform .1s;display:flex}.more-row:active{background:#967dff2e;transform:scale(.98)}.more-row-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.more-row-title{font-size:var(--text-sm);font-weight:600}.more-row-sub{font-size:var(--text-xs);color:var(--color-text-secondary)}.more-chev{color:#c8beff80;font-size:22px}.more-icon{text-align:center;width:28px;font-size:18px}.more-orb{background:radial-gradient(circle at 35% 35%, #fff, var(--more-color) 55%, transparent 72%);width:28px;height:28px;box-shadow:0 0 14px var(--more-color);border-radius:50%;flex:none}.more-row--give{background:linear-gradient(135deg,#ffd27a1f,#ff9f5a14);border-color:#ffd27a66}.more-mods{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.more-mod{min-height:56px;font:inherit;color:inherit;cursor:pointer;border:1px solid var(--glass-border);background:#ffffff0d;border-radius:12px;flex-direction:column;align-items:center;gap:3px;padding:8px 4px;transition:background .15s,transform .1s;display:flex}.more-mod:active{background:#967dff38;transform:scale(.95)}.more-mod-kind{letter-spacing:.1em;text-transform:uppercase;color:#c8beff8c;font-size:10px}.more-mod-value{font-size:var(--text-xs);white-space:nowrap;font-weight:600}.more-card{border:1px solid var(--glass-border);background:#ffffff0d;border-radius:14px;padding:12px}.more-toggle{cursor:pointer}.more-toggle input{appearance:none;cursor:pointer;background:#ffffff29;border-radius:13px;flex:none;width:44px;height:26px;margin:0;transition:background .2s;position:relative}.more-toggle input:after{content:"";background:#e8e2ff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:3px;left:3px}.more-toggle input:checked{background:linear-gradient(135deg,#cbbcff,#8f7bff)}.more-toggle input:checked:after{transform:translate(18px)}.more-toggle input:focus-visible{outline-offset:2px;outline:2px solid #c8b9ffcc}.more-legend{font-size:var(--text-xs);color:var(--color-text-secondary);background:#ffffff08;border-radius:14px;flex-direction:column;gap:6px;margin:0;padding:10px 12px 10px 28px;line-height:1.4;display:flex}.more-legend b{color:var(--color-text-primary);font-weight:600}.touch-dock-icon--more{letter-spacing:1px;color:#e8e2ff;font-size:16px}@media (prefers-reduced-motion:reduce){.more-sheet{animation:none}}.library-list{flex-direction:column;flex:1;gap:8px;margin:0;padding:0 4px 0 0;list-style:none;display:flex;overflow-y:auto}.library-item{border:1px solid var(--glass-border);background:#ffffff0d;border-radius:12px;grid-template-columns:64px 1fr auto;align-items:center;gap:2px 10px;padding:10px 12px;display:grid}.library-prompt{font-size:var(--text-xs);color:#e8e2ff;-webkit-line-clamp:3;-webkit-box-orient:vertical;grid-column:2;margin:0;line-height:1.4;display:-webkit-box;overflow:hidden}.library-meta{color:#c8beff80;grid-column:2;font-size:10px}.library-place{grid-area:1/3}.library-remove{opacity:.55;grid-area:2/3;justify-self:end;padding:2px 8px;font-size:11px}.library-remove:hover,.library-remove:focus-visible{opacity:1;color:#ffb4a0;border-color:#ffb4a080}.library-thumb{object-fit:cover;background:#ffffff0f;border-radius:10px;grid-area:1/1/span 2;width:64px;height:64px}.library-thumb--none{color:#c8beff59;place-items:center;font-size:24px;display:grid}.mana-tracker{top:var(--space-lg);z-index:41;font-family:var(--font-body);color:var(--color-text-primary);flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.mana-pill{--hold-p:0;font:inherit;font-size:var(--text-sm);color:inherit;cursor:pointer;border-radius:var(--radius-full);background:var(--glass-bg);-webkit-backdrop-filter:blur(14px);touch-action:manipulation;-webkit-user-select:none;user-select:none;border:1px solid #ffd27a66;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:6px 14px;transition:transform .15s,box-shadow .15s,border-color .2s;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 4px 18px #ffaa502e}.mana-pill:hover{transform:translateY(-1px);box-shadow:0 6px 24px #ffaa5059}.mana-pill.is-holding{border-color:#6edcffbf;transform:scale(.97)}.mana-pill-hold{pointer-events:none;transform-origin:0;transform:scaleX(var(--hold-p,0));background:linear-gradient(90deg,#6edcff61,#e8b94a73);position:absolute;inset:0}.mana-pill-row{align-items:center;gap:6px;display:inline-flex;position:relative}.mana-pill-place{color:var(--color-text-primary);align-items:center;gap:5px;font-weight:600;display:none}.mana-pill-place-icon{font-size:13px}.mana-pill-place-name{text-overflow:ellipsis;white-space:nowrap;max-width:112px;overflow:hidden}@media (width<=380px){.mana-pill-place-name{max-width:86px}}.mana-pill-sep{color:#c8beff73;margin:0 1px}.mana-pill-leave-sub{letter-spacing:.08em;color:#c8beff99;font-size:10px;line-height:1.1;display:none;position:relative}.mana-pill-icon{color:#ffd27a}.mana-pill-num{font-variant-numeric:tabular-nums;font-weight:700}.mana-pill-label{color:var(--color-text-secondary);font-size:var(--text-xs)}.mana-pill-held{color:#d8ceff;background:#b4a0ff33;border-radius:999px;padding:1px 8px;font-size:11px;animation:1.6s ease-in-out infinite mana-pulse}.mana-tracker.is-low .mana-pill{border-color:#ff786ea6}.mana-tracker.is-low .mana-pill-icon{color:#ff8a80}html.touch-ui .mana-tracker{top:calc(var(--space-lg) + env(safe-area-inset-top,0px));right:calc(var(--space-lg) + env(safe-area-inset-right,0px));align-items:flex-end;left:auto;transform:none}html.touch-ui .mana-pill{min-height:44px;padding:5px 14px}html.touch-ui .mana-pill-place{display:inline-flex}html.touch-ui .mana-pill-leave-sub{display:block}html.touch-ui .mana-pill-desktop-only,html.touch-ui .mana-pill-wide{display:none}@keyframes mana-pulse{50%{opacity:.55}}.mana-panel{width:min(340px,100vw - 32px);max-height:calc(100dvh - 88px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overscroll-behavior:contain;-webkit-backdrop-filter:blur(18px);font-size:var(--text-sm);animation:rise-in .2s var(--ease-out-expo) both;background:linear-gradient(160deg,#1e163ce6,#0c0e20eb);border:1px solid #ffd27a40;border-radius:18px;padding:14px 16px;overflow-y:auto;box-shadow:0 20px 60px #00000073}.mana-panel-head{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.mana-panel-head h3{margin:0}.mana-panel-close{cursor:pointer;width:32px;height:32px;color:var(--color-text-secondary);background:#ffffff12;border:none;border-radius:50%;font-size:14px;line-height:1}.mana-panel-account{width:100%;min-height:44px;font:inherit;font-size:var(--text-xs);color:var(--color-text-primary);border:1px solid var(--glass-border);cursor:pointer;background:#ffffff0f;border-radius:12px;justify-content:space-between;align-items:center;margin-top:12px;padding:8px 12px;font-weight:600;display:flex}.mana-panel h3{letter-spacing:.08em;text-transform:uppercase;color:#ffdca0b3;margin:12px 0 6px;font-size:11px}.mana-panel h3:first-child{margin-top:0}.mana-row{color:var(--color-text-secondary);justify-content:space-between;gap:12px;margin:3px 0;display:flex}.mana-row b{color:var(--color-text-primary);font-variant-numeric:tabular-nums;font-weight:600}.mana-bar{background:#ffffff14;border-radius:3px;height:6px;margin:4px 0 6px;display:block;overflow:hidden}.mana-bar>span{border-radius:3px;height:100%;transition:width .5s;display:block}.mana-bar--me>span{background:linear-gradient(90deg,#ffd27a,#ff9f5a)}.mana-bar--world>span{background:linear-gradient(90deg,#8f7bff,#5ac8ff)}.mana-note{color:#c8beff99;margin:4px 0 0;font-size:12px;line-height:1.4}.mana-avgs{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;display:grid}.mana-avg{background:#ffffff0d;border-radius:12px;flex-direction:column;padding:8px 10px;display:flex}.mana-avg span{color:var(--color-text-secondary);font-size:11px}.mana-avg b{font-size:var(--text-base);font-variant-numeric:tabular-nums}.mana-avg i{color:#c8beff80;font-size:10px;font-style:normal}.mana-recent{margin:0;padding:0;list-style:none}.mana-recent li{color:var(--color-text-secondary);align-items:baseline;gap:10px;padding:3px 0;display:flex}.mana-recent li span{flex:1}.mana-recent li b{color:var(--color-text-primary);font-variant-numeric:tabular-nums}.mana-recent li i{text-align:right;color:#c8beff73;width:60px;font-size:11px;font-style:normal}.library-tabs{overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;background:#ffffff0f;border-radius:12px;flex:none;gap:4px;min-width:0;padding:3px;display:flex;overflow-x:auto}.library-tabs::-webkit-scrollbar{display:none}.library-tabs.has-more-right,html.touch-ui .make-tabs.has-more-right{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 32px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 32px),#0000)}.library-tabs.has-more-left:not(.has-more-right),html.touch-ui .make-tabs.has-more-left:not(.has-more-right){-webkit-mask-image:linear-gradient(270deg,#000 calc(100% - 32px),#0000);mask-image:linear-gradient(270deg,#000 calc(100% - 32px),#0000)}.library-tabs.has-more-left.has-more-right,html.touch-ui .make-tabs.has-more-left.has-more-right{-webkit-mask-image:linear-gradient(90deg,#0000,#000 32px calc(100% - 32px),#0000);mask-image:linear-gradient(90deg,#0000,#000 32px calc(100% - 32px),#0000)}.library-tab{font:inherit;font-size:var(--text-sm);color:var(--color-text-secondary);white-space:nowrap;scroll-snap-align:start;cursor:pointer;background:0 0;border:none;border-radius:9px;flex:1 0 auto;padding:6px 10px;font-weight:600;transition:background .15s,color .15s}html.touch-ui .library-tab{touch-action:manipulation;min-height:44px;padding:0 8px}html.touch-ui .create-submit{min-height:44px}.library-tab:hover{color:var(--color-text-primary)}.library-tab.is-on{color:var(--color-text-primary);background:#967dff59}.library-shelf{flex-direction:column;flex:1;gap:10px;padding-right:4px;display:flex;overflow-y:auto}.library-shelf-title{letter-spacing:.08em;text-transform:uppercase;color:#c8beff99;margin:4px 0 0;font-size:11px}.library-blocks,.library-shapes{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.library-block,.library-shape{width:100%;font:inherit;font-size:var(--text-xs);color:var(--color-text-primary);border:1px solid var(--glass-border);cursor:pointer;background:#ffffff0d;border-radius:12px;align-items:center;gap:8px;padding:8px;transition:transform .12s,background .15s,border-color .15s;display:flex}.library-block:hover,.library-shape:hover,.library-block:focus-visible,.library-shape:focus-visible{background:#967dff38;border-color:#b4a0ff80;transform:translateY(-1px)}.library-block.is-on,.library-shape.is-on{background:#6eeba533;border-color:#6eeba5a6}.library-block:active,.library-shape:active{transform:scale(.97)}.held-item-bar{left:50%;bottom:calc(80px + env(safe-area-inset-bottom,0px));z-index:39;border-radius:var(--radius-full);-webkit-backdrop-filter:blur(14px);max-width:calc(100vw - 24px);font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-primary);animation:fade-in-up .2s var(--ease-out-expo) both;background:#12162cd1;border:1px solid #6eeba573;align-items:center;gap:8px;padding:6px 8px 6px 12px;display:inline-flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 28px #0006,0 0 18px #6eeba526}html.touch-ui .held-item-bar{top:calc(76px + env(safe-area-inset-top,0px));bottom:auto}@media (orientation:landscape){html.touch-ui .held-item-bar{top:calc(16px + env(safe-area-inset-top,0px))}}html.touch-ui:has(dialog[open],.modal-backdrop) .held-item-bar{display:none}.held-item-swatch{border:1px solid #0006;border-radius:5px;flex:none;width:18px;height:18px;box-shadow:inset 0 0 0 1px #ffffff40}.held-item-badge{color:#e8e2ff;white-space:nowrap;font-weight:700}.held-item-name{text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-weight:600;overflow:hidden}.held-item-tools{align-items:center;gap:4px;display:inline-flex}.held-tool-btn{min-width:32px;min-height:32px;color:var(--color-text-primary);font:inherit;cursor:pointer;touch-action:manipulation;background:#ffffff14;border:1px solid #ffffff29;border-radius:999px;padding:0 6px;font-size:14px;font-weight:700;line-height:1;transition:background .12s,transform 80ms}html.touch-ui .held-tool-btn{min-width:44px;min-height:44px}.held-tool-btn:hover{background:#ffffff2e}.held-tool-btn:active{transform:scale(.92)}.held-place-btn{color:#dfffe8;min-height:32px;font:inherit;font-size:var(--text-xs);cursor:pointer;touch-action:manipulation;white-space:nowrap;background:#226240bf;border:1px solid #6eeba5a6;border-radius:999px;padding:0 12px;font-weight:700}.held-place-btn kbd{background:#00000047;border-radius:4px;margin-left:4px;padding:1px 5px;font-size:10px}html.touch-ui .held-place-btn{display:none}.held-clear-btn{min-width:32px;min-height:32px;color:var(--color-text-secondary);cursor:pointer;touch-action:manipulation;background:#ffffff1a;border:none;border-radius:50%;padding:0;font-size:18px;line-height:1}html.touch-ui .held-clear-btn{min-width:44px;min-height:44px}.held-clear-btn:hover{color:var(--color-text-primary);background:#ffffff2e}.library-swatch{border:1px solid #00000059;border-radius:6px;flex:none;width:22px;height:22px;box-shadow:inset 0 0 0 1px #ffffff2e}.library-swatch--dig{background:linear-gradient(145deg,#ff8a7a,#b8475a);place-items:center;font-size:14px;line-height:1;display:grid}.library-made{flex-direction:column;flex:1;gap:10px;min-height:0;display:flex}.library-shape{flex-direction:column;gap:2px;padding:10px 6px 8px}.library-picker{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.library-color{font-size:var(--text-xs);color:var(--color-text-secondary);cursor:pointer;align-items:center;gap:8px;display:inline-flex}.library-color input[type=color]{border:1px solid var(--glass-border);cursor:pointer;background:0 0;border-radius:8px;width:38px;height:30px;padding:0}.library-swatches{flex-wrap:wrap;gap:6px;display:flex}.library-dot{cursor:pointer;border:2px solid #ffffff26;border-radius:50%;width:20px;height:20px;padding:0;transition:transform .12s}.library-dot:hover{transform:scale(1.15)}.library-dot.is-on{border-color:#fff;box-shadow:0 0 0 2px #967dff99}.library-size{font-size:var(--text-xs);color:var(--color-text-secondary);align-items:center;gap:10px;display:flex}.library-size input[type=range]{accent-color:#9775fa;flex:1}.library-size b{text-align:right;min-width:44px;color:var(--color-text-primary);font-variant-numeric:tabular-nums}.library-hint{color:#c8beff80;margin:0;font-size:11px}.library-surface{border:0;flex-wrap:wrap;gap:0 18px;min-inline-size:0;margin:0;padding:0;display:flex}.library-surface legend{font-size:var(--text-xs);letter-spacing:.02em;color:var(--color-text-secondary);margin-bottom:2px;padding:0;font-weight:600}.library-surface-row{min-height:44px;font-size:var(--text-sm);color:var(--color-text-primary);cursor:pointer;align-items:center;gap:10px;display:inline-flex}.library-surface-row input[type=checkbox][switch]{accent-color:var(--color-accent-primary);cursor:pointer;margin:0;font-size:1.25rem}.library-surface-row input:focus-visible{outline:2px solid var(--color-accent-secondary);outline-offset:4px}.library-surface .library-hint{flex-basis:100%}.library-thumb--none.is-loading{animation:1.4s ease-in-out infinite library-thumb-pulse}@keyframes library-thumb-pulse{50%{opacity:.55}}.chat-panel{z-index:40;width:min(380px,100vw - 32px);font-family:var(--font-body);pointer-events:none;flex-direction:column;gap:6px;display:flex;position:fixed;bottom:76px;left:16px}.chat-log{flex-direction:column;justify-content:flex-end;gap:2px;max-height:140px;padding:2px 0;display:flex;overflow:hidden;-webkit-mask-image:linear-gradient(#0000,#000 30%);mask-image:linear-gradient(#0000,#000 30%)}.chat-panel.is-open .chat-log{pointer-events:auto;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#181230c7;border:1px solid #b4a0ff38;border-radius:14px;justify-content:flex-start;max-height:260px;padding:10px 12px;overflow-y:auto;-webkit-mask-image:none;mask-image:none}.chat-line,.chat-empty,.chat-notice{color:#f1ecff;text-shadow:0 1px 3px #000000b3;overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.35;animation:.25s ease-out chat-in}.chat-name{margin-right:6px;font-size:12px;font-weight:600}.chat-empty{opacity:.6;font-style:italic}.chat-notice{color:#ffd9a8;font-size:12px}.chat-name--btn{text-shadow:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:none;border-radius:6px;margin:-2px 2px -2px -4px;padding:2px 4px;font-family:inherit;-webkit-text-decoration:underline dotted #ffffff59;text-decoration:underline dotted #ffffff59}.chat-name--btn:hover,.chat-name--btn:focus-visible{background:#ffffff1a;outline:none}.pact{pointer-events:auto;width:min(24rem,100vw - 2rem);height:fit-content;max-height:calc(100dvh - 2rem);color:var(--color-text-primary);opacity:0;transition:opacity .25s, transform .3s var(--ease-spring), display .3s allow-discrete, overlay .3s allow-discrete;background:0 0;border:none;margin:auto;padding:0;position:fixed;inset:0;overflow:visible;transform:translateY(12px)scale(.97)}.pact[open]{opacity:1;transform:none}@starting-style{.pact[open]{opacity:0;transform:translateY(12px)scale(.97)}}.pact::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0505108c}.pact-panel{border:1px solid var(--glass-border);background:linear-gradient(160deg,#1e1648f5,#0a0a20f7);border-radius:22px;max-height:calc(100dvh - 2rem);padding:1.25rem 1.1rem 1rem;overflow-y:auto;box-shadow:0 24px 60px #0000008c}.pact-eyebrow{font:600 11px/1.2 var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-tertiary);margin:0}.pact-title{font:700 1.35rem/1.2 var(--font-display);overflow-wrap:anywhere;margin:.2rem 0 .9rem}.pact-actions{flex-direction:column;gap:.5rem;display:flex}.pact-btn{text-align:left;width:100%;min-height:3.4rem;font:inherit;color:var(--color-text-primary);border:1px solid var(--glass-border);cursor:pointer;transition:background var(--duration-fast), transform var(--duration-fast) var(--ease-spring);background:#eef0f60d;border-radius:14px;align-items:center;gap:.8rem;padding:.6rem .9rem;font-size:1.15rem;display:flex}.pact-btn:hover{background:#eef0f61a;transform:translateY(-1px)}.pact-btn--danger .pact-btn-title{color:#ffb4a3}.pact-btn-text{flex-direction:column;gap:2px;display:flex}.pact-btn-title{font:600 15px/1.2 var(--font-body)}.pact-btn-sub{font:400 12px/1.3 var(--font-body);color:var(--color-text-secondary)}.pact-quiet{min-height:2.75rem;color:var(--color-text-tertiary);font:500 14px var(--font-body);cursor:pointer;background:0 0;border:none}.pact-quiet:hover{color:var(--color-text-secondary)}.pact-reasons{border:none;flex-wrap:wrap;gap:.4rem;margin:0;padding:0;display:flex}.pact-legend{width:100%;font:600 12px/1.3 var(--font-body);color:var(--color-text-secondary);margin:0 0 .35rem;padding:0}.pact-reason{min-height:2.5rem;font:500 13px var(--font-body);border:1px solid var(--glass-border);cursor:pointer;transition:background var(--duration-fast), border-color var(--duration-fast);background:#eef0f60a;border-radius:999px;align-items:center;padding:0 .8rem;display:inline-flex}.pact-reason input{opacity:0;pointer-events:none;position:absolute}.pact-reason:has(input:focus-visible){outline:2px solid var(--color-accent-secondary);outline-offset:2px}.pact-reason.is-on{color:#ffd3c8;background:#ffb4a329;border-color:#ffb4a380}.pact-note{width:100%;font:16px/1.4 var(--font-body);color:var(--color-text-primary);border:1px solid var(--glass-border);resize:vertical;background:#0505108c;border-radius:12px;padding:.6rem .75rem}.pact-hint,.pact-body{font:400 12px/1.45 var(--font-body);color:var(--color-text-tertiary);margin:0}.pact-body{color:var(--color-text-secondary);font-size:14px}.pact-error{color:#f2a7a7;margin:0;font-size:13px}.pact-cta{white-space:nowrap;min-height:3rem;font:600 15px var(--font-body);color:#1a1206;background:linear-gradient(135deg, var(--color-accent-secondary), var(--color-accent-primary));cursor:pointer;border:none;border-radius:14px;padding:0 1.4rem}.pact-cta:disabled{opacity:.5;cursor:not-allowed}@media (width<=560px) and (orientation:portrait){.pact{width:100vw;max-width:100vw;margin:0;inset:auto 0 0}.pact-panel{padding-bottom:calc(1rem + env(safe-area-inset-bottom));border-radius:22px 22px 0 0}}@media (prefers-reduced-motion:reduce){.pact{transition:none}}.chat-form{pointer-events:auto}.chat-input{box-sizing:border-box;color:#fff;width:100%;font:14px var(--font-body);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#181230e0;border:1px solid #b4a0ff73;border-radius:999px;outline:none;padding:10px 14px}.chat-input:focus{border-color:#d2beffe6;box-shadow:0 0 0 3px #9678ff40}.chat-open{pointer-events:auto;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;background:#181230b3;border:1px solid #b4a0ff59;border-radius:50%;align-self:flex-start;width:44px;height:44px;font-size:18px;line-height:1;transition:transform .15s,background .15s}.chat-open:hover{background:#3c2c6ed9;transform:scale(1.08)}.chat-bubble{white-space:normal;color:#1d1535;width:max-content;max-width:220px;font:500 14px/1.3 var(--font-body);text-align:center;overflow-wrap:anywhere;background:#fffffff0;border-radius:14px 14px 14px 4px;padding:6px 12px;animation:.2s ease-out chat-pop;box-shadow:0 4px 14px #00000059}@keyframes chat-in{0%{opacity:0;transform:translateY(4px)}}@keyframes chat-pop{0%{opacity:0;transform:scale(.85)}}.chat-bubble--space{max-width:180px;padding:5px 10px;font-size:13px;transform:translateY(-14px)}.name-tag{color:#eef0f6eb;width:max-content;max-width:180px;font:600 12px/1.3 var(--font-body);letter-spacing:.01em;white-space:nowrap;text-overflow:ellipsis;text-shadow:0 1px 3px #0009;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a08188c;border:1px solid #eef0f624;border-radius:999px;padding:2px 9px;animation:.25s ease-out chat-in;overflow:hidden}html.touch-ui .chat-panel{left:calc(16px + env(safe-area-inset-left,0px));bottom:calc(296px + env(safe-area-inset-bottom,0px));width:min(300px,100vw - 210px)}html.touch-ui .chat-panel.is-open{width:min(380px,100vw - 32px)}html.touch-ui .chat-panel.is-open.is-space{bottom:calc(336px + env(safe-area-inset-bottom,0px))}@media (orientation:landscape){html.touch-ui .chat-panel,html.touch-ui .chat-panel.is-open,html.touch-ui .chat-panel.is-open.is-space{left:calc(168px + env(safe-area-inset-left,0px));bottom:calc(80px + env(safe-area-inset-bottom,0px));width:min(340px,100vw - 410px)}}@media (prefers-reduced-motion:reduce){.chat-line,.chat-bubble{animation:none}}.create-open.is-sealed,.mana-tracker.is-sealed .mana-pill{position:relative}.create-open.is-sealed,.planner-open.is-sealed,.mana-tracker.is-sealed .mana-pill{overflow:hidden}.create-open.is-sealed:after,.planner-open.is-sealed:after,.mana-tracker.is-sealed .mana-pill:after{content:"";pointer-events:none;background:linear-gradient(110deg,#0000 30%,#ffffff73 50%,#0000 70%);animation:4.5s ease-in-out infinite seal-shimmer;position:absolute;inset:0;transform:translate(-120%)}.mana-tracker.is-sealed .mana-pill-label{color:var(--color-text-primary);font-weight:600}@media (width<=519px){.mana-pill-wide{display:none}}@keyframes seal-shimmer{0%,60%{transform:translate(-120%)}to{transform:translate(120%)}}.mana-seal-backdrop{z-index:100;animation:fade-in .25s var(--ease-out-expo) both;background:radial-gradient(at 50% 100%,#7850ff47,#04040e9e 70%);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.mana-seal{box-sizing:border-box;width:100%;max-height:92dvh;padding:28px 22px calc(20px + env(safe-area-inset-bottom,0px));text-align:center;font-family:var(--font-body);color:var(--color-text-primary);-webkit-backdrop-filter:blur(20px);animation:seal-rise .45s var(--ease-out-expo) both;background:radial-gradient(circle at 50% 0,#ffc8782e,#0000 55%),linear-gradient(170deg,#221846f5,#0a0a1cfa);border:1px solid #ffd27a4d;border-bottom:none;border-radius:28px 28px 0 0;position:relative;overflow-y:auto;box-shadow:0 -20px 80px #8c64ff59}@keyframes seal-rise{0%{opacity:0;transform:translateY(40px)}}.mana-seal-close{width:44px;height:44px;color:var(--color-text-secondary);cursor:pointer;background:#ffffff0f;border:none;border-radius:50%;font-size:22px;line-height:1;position:absolute;top:10px;right:10px}.mana-seal-close:hover{color:var(--color-text-primary);background:#ffffff1f}.mana-seal-sigil{place-items:center;width:112px;height:112px;margin:4px auto 14px;display:grid;position:relative}.mana-seal-ring{filter:drop-shadow(0 0 12px #ffbe6eb3);background:conic-gradient(#ffd27a,#ff9f5a,#b48cff,#5ac8ff,#ffd27a);border-radius:50%;animation:9s linear infinite seal-spin;position:absolute;inset:0;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 3px),#000 calc(100% - 2px));mask:radial-gradient(farthest-side,#0000 calc(100% - 3px),#000 calc(100% - 2px))}.mana-seal-ring--inner{opacity:.75;animation-duration:6s;animation-direction:reverse;inset:18px}.mana-seal-core{color:#ffe2a8;text-shadow:0 0 18px #ffc878f2,0 0 42px #b48cffcc;font-size:34px;animation:3.2s ease-in-out infinite seal-breathe}@keyframes seal-spin{to{transform:rotate(360deg)}}@keyframes seal-breathe{50%{opacity:.85;transform:scale(1.18)}}.mana-seal-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:#ffdca0bf;margin:0;font-size:12px}.mana-seal-title{font-family:var(--font-display);background:linear-gradient(120deg,#fff1d0,#ffd27a 40%,#c9b2ff);color:#0000;-webkit-background-clip:text;background-clip:text;margin:6px 0 10px;font-size:28px;font-weight:700}.mana-seal-body{max-width:34ch;color:var(--color-text-secondary);margin:0 auto 20px;font-size:15px;line-height:1.5}.mana-seal-body strong{color:#ffd27a;font-weight:600}.mana-seal-cta{border-radius:var(--radius-full);width:100%;min-height:52px;font-family:var(--font-body);color:#1a1206;cursor:pointer;background:linear-gradient(135deg,#ffe0a0,#ffb36a 55%,#ff8f6a);border:none;font-size:16px;font-weight:700;transition:transform .15s,box-shadow .15s;display:block;box-shadow:0 10px 34px #ffaa5073,inset 0 1px #ffffff80}.mana-seal-cta:hover{transform:translateY(-1px);box-shadow:0 14px 42px #ffaa5099,inset 0 1px #ffffff80}.mana-seal-cta:focus-visible,.mana-seal-secondary:focus-visible,.mana-seal-close:focus-visible{outline-offset:3px;outline:2px solid #ffd27a}.mana-seal-secondary{width:100%;min-height:44px;font:inherit;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;margin-top:8px;font-size:15px;display:block}.mana-seal-secondary:hover{color:var(--color-text-primary)}.mana-seal-offline{color:#ffb3a8;margin:0;font-size:14px}.mana-seal-note{max-width:36ch;color:var(--color-text-tertiary);margin:10px auto 0;font-size:12px;line-height:1.45}@media (width>=720px) and (height>=560px){.mana-seal-backdrop{background:radial-gradient(#7850ff40,#04040e99 70%);align-items:center}.mana-seal{border-bottom:1px solid #ffd27a4d;border-radius:28px;width:min(440px,100vw - 48px);padding:36px 34px 28px;box-shadow:0 30px 100px #8c64ff66}.mana-seal-sigil{width:128px;height:128px}.mana-seal-title{font-size:32px}}@media (prefers-reduced-motion:reduce){.mana-seal,.mana-seal-backdrop,.mana-seal-ring,.mana-seal-core,.create-open.is-sealed:after,.planner-open.is-sealed:after,.mana-tracker.is-sealed .mana-pill:after{animation:none}}.onboarding-hint{-webkit-backdrop-filter:blur(14px);width:min(344px,100vw - 24px);color:var(--color-text-primary);z-index:26;pointer-events:auto;background:#0b0d1ae0;border:1px solid #87c3ff47;border-radius:16px;padding:12px 14px;position:fixed;top:68px;left:50%;transform:translate(-50%);box-shadow:0 14px 36px #0000008c,0 0 24px #5aaaff24}html.touch-ui .onboarding-hint{top:calc(114px + env(safe-area-inset-top,0px))}@media (orientation:landscape) and (height<=540px){html.touch-ui .onboarding-hint{top:calc(14px + env(safe-area-inset-top,0px));width:min(300px,100vw - 380px);padding:10px 12px}}.onboarding-hint__top{align-items:center;gap:8px;display:flex}.onboarding-hint__step{letter-spacing:.06em;color:#8fd2ff;background:#5aafff29;border:1px solid #78c3ff47;border-radius:999px;justify-content:center;align-items:center;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.onboarding-hint__title{font-family:var(--font-display);color:#f4f7ff;flex:1;font-size:15px;font-weight:600}.onboarding-hint__dismiss{width:36px;min-width:36px;height:36px;min-height:36px;color:var(--color-text-secondary);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:999px;justify-content:center;align-items:center;margin:-4px -4px -4px 0;font-size:18px;line-height:1;display:inline-flex}html.touch-ui .onboarding-hint__dismiss{width:44px;min-width:44px;height:44px;min-height:44px}.onboarding-hint__body{color:var(--color-text-secondary);margin:8px 0 10px;font-size:13px;line-height:1.45}.onboarding-hint__actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.onboarding-hint__dots{align-items:center;gap:6px;display:inline-flex}.onboarding-hint__dot{background:#fff3;border-radius:50%;width:7px;height:7px;transition:transform .2s,background .2s}.onboarding-hint__dot.is-done{background:#82d2ff8c}.onboarding-hint__dot.is-active{background:#8fd2ff;transform:scale(1.25)}.onboarding-hint__next{color:#e9f6ff;letter-spacing:.04em;cursor:pointer;background:#4ba5f538;border:1px solid #82cdff73;border-radius:999px;height:36px;min-height:36px;padding:0 14px;font-size:12px;font-weight:700}html.touch-ui .onboarding-hint__next{height:44px;min-height:44px;padding:0 16px}.world-load-hud{--world-load-color:#5ac8fa;top:calc(1rem + env(safe-area-inset-top,0px));z-index:55;pointer-events:none;-webkit-backdrop-filter:blur(14px);width:min(21rem,100vw - 2rem);box-shadow:0 12px 32px #00000073, 0 0 24px color-mix(in srgb, var(--world-load-color) 24%, transparent);background:#0a0c1cd6;border:1px solid #ffffff24;border-radius:14px;flex-direction:column;gap:6px;padding:10px 14px;transition:opacity .3s,transform .3s;display:flex;position:fixed;left:50%;transform:translate(-50%)}.world-load-hud.is-complete{opacity:0;transform:translate(-50%,-6px)}.world-load-hud__row{align-items:center;gap:8px;min-width:0;display:flex}.world-load-hud__orb{background:var(--world-load-color);width:10px;height:10px;box-shadow:0 0 10px var(--world-load-color);border-radius:50%;flex:none}.world-load-hud__name{font-family:var(--font-display);color:#f4f7ff;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.world-load-hud__detail{color:var(--color-text-secondary);white-space:nowrap;margin-left:auto;font-size:11px}progress.world-load-progress{appearance:none;background-color:#ffffff1f;border:0 solid;border-radius:999px;block-size:6px;inline-size:100%;overflow:clip}progress.world-load-progress::-webkit-progress-bar{background-color:#0000}progress.world-load-progress::-webkit-progress-value{background:linear-gradient(90deg, var(--world-load-color), #e8b94a);border-radius:999px;transition:inline-size .22s}progress.world-load-progress::-moz-progress-bar{background:linear-gradient(90deg, var(--world-load-color), #e8b94a);border-radius:999px;transition:inline-size .22s}.held-color-btn{cursor:pointer;background:#ffffff14;border:1px solid #ffffff29;border-radius:8px;justify-content:center;align-items:center;width:32px;min-width:32px;height:32px;min-height:32px;display:inline-flex;position:relative}html.touch-ui .held-color-btn{width:38px;min-width:38px;height:38px;min-height:38px}.held-color-btn input[type=color]{opacity:0;cursor:pointer;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.held-color-dot{pointer-events:none;border:1.5px solid #ffffffd9;border-radius:50%;width:16px;height:16px;box-shadow:0 0 6px #0006}.held-tool-btn--danger{color:#ff9c92;border-color:#ff6e5f47}.held-tool-btn--danger:hover,.held-tool-btn--danger:focus-visible{color:#ffd2cd;background:#e8594a3d}.wc--dreamt .wc-front{border-color:#af94ff6b;box-shadow:0 0 24px #8f7bff2e}.wc-edition{top:calc(13.4 * var(--mm));right:calc(5.4 * var(--mm));z-index:3;padding:calc(.35 * var(--mm)) calc(1.4 * var(--mm));font-size:max(7px, calc(2.2 * var(--mm)));letter-spacing:.05em;text-transform:uppercase;color:#dcd2ff;pointer-events:none;background:#342678b8;border:1px solid #baa4ff73;border-radius:999px;font-weight:700;line-height:1.3;position:absolute}.wi-badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.wi-edition{letter-spacing:.03em;border-radius:999px;align-items:center;padding:2px 9px;font-size:11px;font-weight:600;display:inline-flex}.wi-edition--dreamt{color:#dcd2ff;background:#785ce638;border:1px solid #b49eff61}.wi-edition--solid{color:#f5d98e;background:#e8b94a24;border:1px solid #e8b94a52}.child-world-portal-label{text-align:center;background:#080a1ad1;border:1px solid #ffffff2e;border-radius:999px;padding:4px 10px;box-shadow:0 4px 16px #00000080}.child-world-portal-label__name{font-family:var(--font-display);color:#f4f7ff;font-size:12px;font-weight:700}.child-world-portal-label__hint{color:#d2e1ffc7;font-size:10px}.child-world-portal-label--return{border-color:#a0e6ff5c}.plant-policy{text-align:left;background:#ffffff0a;border:1px solid #ffffff17;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;margin:0 0 12px;padding:8px 12px;display:flex}.plant-policy__label{color:var(--color-text-secondary);font-size:13px}.plant-policy__btns{background:#00000059;border-radius:999px;gap:4px;padding:3px;display:inline-flex}.plant-policy__btn{min-height:36px;color:var(--color-text-secondary);font-family:var(--font-body);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:0 12px;font-size:12px;font-weight:600}.plant-policy__btn.is-on{color:#ffe2a8;background:#ffd27a33;box-shadow:0 0 0 1px #ffd27a59}.builders{text-align:left;background:#ffffff0a;border:1px solid #ffffff17;border-radius:14px;margin:0 0 12px;padding:10px 12px}.builders-hint,.builders-empty{color:var(--color-text-tertiary);margin:2px 0 8px;font-size:12px;line-height:1.4}.builders-empty{margin-bottom:0}.builders-list{overscroll-behavior:contain;flex-direction:column;gap:4px;max-height:11rem;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.builders-row{justify-content:space-between;align-items:center;gap:10px;min-height:44px;display:flex}.builders-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-text-primary);font-size:14px;font-weight:600;overflow:hidden}.builders-away{color:var(--color-text-tertiary);font-weight:400}.builders-toggle{min-height:40px;transition:background var(--duration-fast), color var(--duration-fast), box-shadow var(--duration-fast);background:#00000059;flex-shrink:0}.builders-toggle:disabled{opacity:.6;cursor:progress}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.jr-chip{pointer-events:auto;width:fit-content;margin-top:var(--space-sm);font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.02em;color:var(--color-text-secondary);background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--radius-full);cursor:pointer;opacity:0;animation:pa-rise .8s var(--ease-out-expo) .65s forwards;transition:color var(--duration-fast), border-color var(--duration-normal), box-shadow .6s var(--ease-out-expo), translate var(--duration-fast) var(--ease-spring);align-items:center;gap:.5rem;padding:.3rem .7rem .3rem .55rem;font-weight:500;display:flex}.jr-chip:hover,.jr-chip:focus-visible{color:var(--color-text-primary);border-color:#b296ff80;translate:0 -1px;box-shadow:0 0 18px #967dff38}.jr-chip:focus-visible{outline-offset:2px;outline:2px solid #b8a6ff}.jr-chip-star{color:#c9b8ff;text-shadow:0 0 8px #aa8cffcc}.jr-chip-level{color:var(--color-text-primary);font-variant-numeric:tabular-nums;font-weight:600}.jr-chip-bar{border-radius:var(--radius-full);background:#eef0f61f;width:3.5rem;height:4px;position:relative;overflow:clip}.jr-chip-fill{border-radius:inherit;transition:width .6s var(--ease-out-expo);background:linear-gradient(90deg,#8f7dff,#f0d78c);position:absolute;inset:0 auto 0 0}.jr-chip-chapter{color:var(--color-text-tertiary)}html.touch-ui #journey-chip{display:none}.jr-row-icon{color:#c9b8ff;text-shadow:0 0 8px #aa8cffcc}.jr-dialog{width:min(28rem,100vw - 2rem)}.jr-panel{overscroll-behavior:contain;max-height:calc(100dvh - 2rem);overflow-y:auto}.jr-title{font-family:var(--font-display);font-size:var(--text-2xl);letter-spacing:.01em;margin:0;font-weight:600}.jr-sub,.jr-empty{margin:var(--space-xs) 2.25rem var(--space-md) 0;font-size:var(--text-sm);color:var(--color-text-secondary)}.jr-level{padding:var(--space-md);margin-bottom:var(--space-md);border-radius:var(--radius-lg);background:radial-gradient(120% 140% at 0 0,#8f7dff38,#0000 60%),#ffffff0a;border:1px solid #b296ff38}.jr-level-head{justify-content:space-between;align-items:baseline;gap:var(--space-sm);margin-bottom:.6rem;display:flex}.jr-level-badge{align-items:baseline;gap:.4rem;display:inline-flex}.jr-level-word{font-size:var(--text-sm);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.12em}.jr-level-num{font-family:var(--font-display);background:linear-gradient(135deg,#e6dcff,#f0d78c);color:#0000;font-variant-numeric:tabular-nums;-webkit-background-clip:text;background-clip:text;font-size:2.25rem;font-weight:700;line-height:1}.jr-level-xp{font-size:var(--text-sm);color:var(--color-accent-secondary);font-variant-numeric:tabular-nums}.jr-progress{appearance:none;border-radius:var(--radius-full);background:#eef0f61a;border:0 solid;width:100%;height:10px;display:block;overflow:clip;box-shadow:inset 0 1px 2px #00000059}.jr-progress::-webkit-progress-bar{background:0 0}.jr-progress::-webkit-progress-value{border-radius:var(--radius-full);transition:inline-size .6s var(--ease-out-expo);background:linear-gradient(90deg,#8f7dff,#c9a8ff 60%,#f0d78c);box-shadow:0 0 12px #aa8cff99}.jr-progress::-moz-progress-bar{border-radius:var(--radius-full);background:linear-gradient(90deg,#8f7dff,#c9a8ff 60%,#f0d78c);box-shadow:0 0 12px #aa8cff99}.jr-level-next{font-size:var(--text-sm);color:var(--color-text-secondary);font-variant-numeric:tabular-nums;margin:.45rem 0 0}.jr-gate{font-size:var(--text-sm);color:#ffd9a0;margin:.4rem 0 0}.jr-chapters{margin:0 0 var(--space-md);gap:2px;padding:0;list-style:none;display:grid}.jr-ch{border-radius:.75rem;grid-template-columns:2rem 1fr;gap:.7rem;padding:.55rem .6rem;display:grid;position:relative}.jr-ch:not(:last-child):after{content:"";background:#eef0f61a;width:2px;position:absolute;top:2.4rem;bottom:-.35rem;left:calc(1.6rem - 1px)}.jr-ch--done:not(:last-child):after{background:linear-gradient(#8f7dff,#8f7dff66)}.jr-ch-num{z-index:1;width:2rem;height:2rem;font-size:var(--text-sm);color:var(--color-text-tertiary);border:1px solid var(--glass-border);background:#0a0a2ee6;border-radius:50%;place-items:center;font-weight:600;display:grid}.jr-ch--done .jr-ch-num{color:#120d2a;background:linear-gradient(135deg,#b8a6ff,#8f7dff);border-color:#0000}.jr-ch--current{background:#8f7dff1f;box-shadow:inset 0 0 0 1px #b296ff4d}.jr-ch--current .jr-ch-num{color:#1a1206;background:linear-gradient(135deg,#f0d78c,#e8b94a);border-color:#0000;box-shadow:0 0 16px #e8b94a8c}.jr-ch-body{flex-direction:column;gap:.15rem;min-width:0;padding-top:.3rem;display:flex}.jr-ch-name{font-family:var(--font-display);font-size:var(--text-base);font-weight:600}.jr-ch--locked .jr-ch-name{color:var(--color-text-secondary)}.jr-ch-unlock{font-size:var(--text-xs);color:var(--color-text-tertiary)}.jr-ch--current .jr-ch-unlock{color:var(--color-accent-secondary)}.jr-steps{gap:.35rem;margin:.45rem 0 .1rem;padding:0;list-style:none;display:grid}.jr-step{font-size:var(--text-sm);color:var(--color-text-primary);align-items:baseline;gap:.5rem;display:flex}.jr-step-mark{width:1rem;color:var(--color-text-tertiary);flex:none}.jr-step--done{color:var(--color-text-secondary)}.jr-step--done .jr-step-mark{color:#9fe8c4}.jr-step-label{flex:1;min-width:0}.jr-step-count{font-size:var(--text-xs);color:var(--color-text-tertiary);font-variant-numeric:tabular-nums;flex:none}.jr-note{margin:0 0 var(--space-sm);font-size:var(--text-sm);color:#ffd9a0}.jr-ways{font-size:var(--text-xs);color:var(--color-text-tertiary);margin:0;line-height:1.5}.jr-toast{inset:auto;top:calc(env(safe-area-inset-top,0px) + 4.75rem);z-index:60;width:min(23rem,100vw - 32px);color:var(--color-text-primary);font-family:var(--font-body);-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-lg);opacity:0;transition-property:opacity,transform,display,overlay;transition-duration:.45s;transition-timing-function:var(--ease-out-expo);transition-behavior:allow-discrete;background:radial-gradient(120% 160% at 0 0,#8f7dff66,#0000 60%),linear-gradient(#181446eb,#08081af0);border:1px solid #b296ff73;align-items:center;gap:.7rem;margin:0;padding:.6rem .5rem .6rem .85rem;display:none;position:fixed;left:50%;transform:translateY(-10px)scale(.96);box-shadow:0 12px 40px #00000073,0 0 30px #8f7dff4d}.jr-toast:popover-open{opacity:1;display:flex;transform:none}@starting-style{.jr-toast:popover-open{opacity:0;transform:translateY(-10px)scale(.96)}}.jr-toast.is-open{opacity:1;display:flex;transform:none}.jr-toast-star{color:#e6dcff;text-shadow:0 0 12px #bea0fff2,0 0 24px #f0d78c99;flex:none;font-size:1.6rem}.jr-toast-text{flex-direction:column;flex:1;min-width:0;display:flex}.jr-toast-title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:600}.jr-toast-sub{font-size:var(--text-sm);color:var(--color-accent-secondary)}.jr-toast-btn{min-width:44px;min-height:44px;font:inherit;font-size:var(--text-sm);color:#1a1206;border-radius:var(--radius-full);cursor:pointer;background:linear-gradient(135deg,#f0d78c,#e8b94a);border:none;flex:none;padding:0 .85rem;font-weight:600}.jr-toast-close{width:44px;height:44px;color:var(--color-text-tertiary);border-radius:var(--radius-full);cursor:pointer;background:0 0;border:none;flex:none;font-size:1.3rem;line-height:1}.jr-toast-close:hover,.jr-toast-close:focus-visible{color:var(--color-text-primary);background:#eef0f614}@media (prefers-reduced-motion:reduce){.jr-toast,.jr-chip-fill{transition-duration:10ms}}.star-caption{z-index:62;border:1px solid color-mix(in srgb, var(--star-color,#f4c65a) 35%, transparent);box-shadow:0 8px 28px #00000073, 0 0 22px color-mix(in srgb, var(--star-color,#f4c65a) 18%, transparent);-webkit-backdrop-filter:blur(14px)saturate(1.3);color:var(--color-text-primary);font-family:var(--font-body);pointer-events:none;opacity:1;background:#0c0a1cb8;border-radius:14px;align-items:flex-start;gap:10px;padding:10px 12px;transition:opacity .35s ease-out,translate .35s ease-out;animation:.5s ease-in 3.6s forwards star-caption-out;display:flex;position:fixed;translate:0}@starting-style{.star-caption{opacity:0;translate:0 8px}}@keyframes star-caption-out{to{opacity:0;translate:0 -6px}}.star-caption-dot{background:var(--star-color,#f4c65a);width:10px;height:10px;box-shadow:0 0 10px var(--star-color,#f4c65a), 0 0 2px #fff;border-radius:50%;flex:none;margin-top:4px}.star-caption-body{min-width:0}.star-caption-title{color:#fff;font-size:13px;font-weight:600;line-height:1.3}.star-caption-detail{color:#d6ceffb8;margin-top:2px;font-size:11.5px;line-height:1.35}@media (prefers-reduced-motion:reduce){.star-caption{transition-duration:.1s;animation-name:star-caption-fade;translate:none}@starting-style{.star-caption{translate:none}}@keyframes star-caption-fade{to{opacity:0}}}.mana-note--solar{color:#ffe2a0b8}.sky-legend{margin:0;padding:0;list-style:none}.sky-legend li{color:var(--color-text-secondary);align-items:center;gap:10px;padding:4px 0;font-size:13px;display:flex}.sky-legend-dot{background:var(--star-color);width:9px;height:9px;box-shadow:0 0 8px var(--star-color);border-radius:50%;flex:none}.sky-legend-dot--shortfall{border:1.5px solid var(--star-color);background:0 0}.sky-legend-what{flex-direction:column;flex:1;min-width:0;line-height:1.25;display:flex}.sky-legend-what i{color:#c8beff73;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-style:normal;overflow:hidden}.sky-legend li b{color:var(--color-text-primary);font-variant-numeric:tabular-nums}.sky-key{color:var(--star-color);font-weight:600}.donor-name-optin{margin:calc(var(--space-xl) * -.5) 0 var(--space-lg);text-align:left}.donor-name-check{cursor:pointer;min-height:44px;font-size:var(--text-sm);color:var(--color-text-secondary);align-items:center;gap:10px;display:inline-flex}.donor-name-check input{width:18px;height:18px;accent-color:var(--color-accent-primary);flex:none;margin:0}@supports not (accent-color:red){.donor-name-check input{appearance:none;border:1.5px solid var(--glass-border);background:var(--glass-highlight) center / 12px 12px no-repeat;border-radius:4px}.donor-name-check input:checked{background-color:var(--color-accent-primary);border-color:var(--color-accent-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 6.5l2.5 2.5L10 3.5' fill='none' stroke='%23140f24' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.donor-name-check input:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}}.donor-name-input{width:100%;margin-top:var(--space-xs);padding:var(--space-sm) var(--space-md);background:var(--glass-highlight);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:var(--font-body);transition:border-color var(--duration-fast);outline:none;font-size:16px}.donor-name-input:focus{border-color:var(--color-accent-primary)}.donor-name-input::placeholder{color:var(--color-text-tertiary)}.donor-name-hint{margin:var(--space-xs) 0 0;font-size:var(--text-xs);color:var(--color-text-tertiary);line-height:1.4}.mana-note a{color:var(--color-accent-primary);text-underline-offset:2px}.create-form--kinds{border-radius:22px}.make-kinds{scroll-snap-type:x proximity;scrollbar-width:none;border:0;gap:6px;width:100%;min-width:0;margin:0;padding:2px 2px 4px;display:flex;overflow-x:auto}.make-kinds::-webkit-scrollbar{display:none}html.touch-ui .make-kinds{overscroll-behavior-x:contain;padding-right:24px;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000)}.make-kind,.make-length{min-height:44px;font:600 var(--text-xs) var(--font-body);color:var(--color-text-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-full);cursor:pointer;scroll-snap-align:start;transition:color .15s ease, background .15s ease, border-color .15s ease, transform .15s var(--ease-spring);background:#eef0f60d;flex:none;align-items:center;gap:6px;padding:0 14px;display:inline-flex;position:relative}.make-kind input,.make-length input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.make-kind-icon{opacity:.85;font-size:14px;line-height:1}.make-kind:hover,.make-length:hover{color:var(--color-text-primary);background:#eef0f617}:is(.make-kind:has(input:checked),.make-length:has(input:checked)){color:#1a1206;background:linear-gradient(135deg,#ffd27a,#ff9f5a);border-color:#0000;box-shadow:0 4px 16px #ffaa504d}.make-kind:has(input:checked){transform:translateY(-1px)}:is(.make-kind:has(input:focus-visible),.make-length:has(input:focus-visible)){outline:2px solid var(--color-accent-secondary);outline-offset:2px}.make-options{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;width:100%;padding:0 4px;display:flex}.make-lengths{border:0;align-items:center;gap:6px;margin:0;padding:0;display:flex}.make-lengths legend{float:left;font-size:var(--text-xs);color:var(--color-text-tertiary);margin-right:4px}.make-length{padding:0 12px}.make-loop{min-height:44px;font-size:var(--text-xs);color:var(--color-text-secondary);cursor:pointer;align-items:center;gap:10px;display:inline-flex}.make-loop input[type=checkbox][switch]{accent-color:var(--color-accent-primary);cursor:pointer;margin:0;font-size:1.25rem}.make-loop input:focus-visible{outline:2px solid var(--color-accent-secondary);outline-offset:4px}.make-voice{width:100%;min-height:44px;font-size:var(--text-xs);color:var(--color-text-secondary);align-items:center;gap:10px;display:flex}.make-voice select{border-radius:var(--radius-md);border:1px solid var(--glass-border);min-width:0;min-height:44px;color:var(--color-text-primary);font:inherit;text-overflow:ellipsis;background:#0000004d;flex:1;padding:0 10px;font-size:16px}.make-hold{width:100%;font-size:var(--text-xs);color:var(--color-text-tertiary);margin:0;padding:0 12px 2px}.create-making-kind{letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent-secondary);opacity:.8;flex:none;font-size:10px;font-weight:700}.create-making-prompt{flex:1;min-width:0}.create-making:has(.create-making-action){flex-wrap:wrap}.create-making-action{width:100%;min-height:44px;font:600 var(--text-xs) var(--font-body);color:#1a1206;border-radius:var(--radius-full);cursor:pointer;animation:rise-in .3s var(--ease-out-expo) both;background:linear-gradient(135deg,#c59bff,#7fe3ff);border:none}.lore-sign-anchor{pointer-events:none}.lore-sign{width:min(260px,66vw);max-height:40vh;font-family:var(--font-body);color:#2b1d0e;animation:lore-rise .35s var(--ease-out-expo) both;background:radial-gradient(120% 90% at 20% 0,#ffffff8c,#0000 60%),linear-gradient(160deg,#f6e7c4,#e8cf98);border:1px solid #78501e59;border-radius:10px;margin:0;padding:10px 12px 12px;overflow:hidden;translate:-50% -100%;box-shadow:0 10px 30px #00000073,inset 0 0 0 3px #fff5dc59}.lore-sign-title{font:700 10.5px var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:#7a4f1d;margin:0 0 4px}.lore-sign-text{margin:0;font-size:12.5px;line-height:1.45}@media (orientation:landscape) and (height<=500px){.lore-sign{width:min(380px,50vw)}}@keyframes lore-rise{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.lore-sign,.create-making-action{animation:none}.make-kind:has(input:checked){transform:none}}.library-listen{font:inherit;color:#0a081ecc;cursor:pointer;opacity:.85;border:1px solid #ffffff40;place-items:center;padding:0;font-size:22px;transition:opacity .15s,transform .12s,box-shadow .15s;display:grid}.library-listen:hover,.library-listen:focus-visible{opacity:1;transform:translateY(-1px)}.library-listen.is-on{opacity:1;box-shadow:0 0 0 2px #fffc,0 0 18px #ffffff59}.story-stone-label{color:#f4f0ff;min-height:44px;font:inherit;cursor:pointer;pointer-events:auto;touch-action:manipulation;background:#0e0a20d6;border:1px solid #c9a6ff73;border-radius:999px;flex-direction:column;align-items:center;gap:2px;padding:6px 14px;display:flex;box-shadow:0 4px 16px #00000080,0 0 18px #aa78ff40}.story-stone-label:hover{border-color:#dcc4ffcc}.story-stone-label:focus-visible{outline-offset:3px;outline:2px solid #c9a6ff}.story-stone-label__name{font-family:var(--font-display);font-size:13px;font-weight:700}.story-stone-label__hint{color:#e1d6ffcc;font-size:11px}.making-of{width:min(560px,100vw);max-width:100vw;height:min(78dvh,720px);max-height:calc(100dvh - env(safe-area-inset-top) - 12px);border:1px solid var(--glass-border);border-radius:var(--radius-lg) var(--radius-lg) 0 0;-webkit-backdrop-filter:blur(22px)saturate(1.3);box-shadow:var(--shadow-elevated), inset 0 1px 0 var(--glass-highlight);color:var(--color-text-secondary);font-family:var(--font-body);background:linear-gradient(170deg,#1a1230f5,#08081af7);border-bottom:0;flex-direction:column;margin:0 auto;padding:0;display:flex;position:fixed;inset:auto 0 0;overflow:hidden}.making-of:not([open]){display:none}.making-of[open]{animation:making-of-up .24s var(--ease-out-expo)}.making-of::backdrop{background:#03030e73}@keyframes making-of-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.making-of-head{align-items:flex-start;gap:var(--space-sm);padding:var(--space-md) var(--space-md) var(--space-sm);border-bottom:1px solid #ffffff0f;display:flex}.making-of-glyph{flex:none;font-size:26px;line-height:44px}.making-of-head-text{flex:1;min-width:0;padding-top:4px}.making-of-title{font-family:var(--font-display);font-size:var(--text-base);letter-spacing:.08em;color:var(--color-text-primary);overflow-wrap:anywhere;margin:0;font-weight:600}.making-of-sub{font-size:var(--text-sm);color:var(--color-text-tertiary);overflow-wrap:anywhere;margin:2px 0 0}.making-of-close{border-radius:var(--radius-full);border:1px solid var(--glass-border);width:44px;height:44px;color:var(--color-text-tertiary);font-size:var(--text-base);cursor:pointer;background:0 0;flex:none}.making-of-close:hover{color:var(--color-text-primary);border-color:#ffffff4d}.making-of-log{overscroll-behavior:contain;padding:var(--space-sm) var(--space-md) calc(var(--space-lg) + env(safe-area-inset-bottom));gap:var(--space-lg);flex-direction:column;flex:1;display:flex;overflow-y:auto}.making-of-empty{margin:var(--space-lg) 0;text-align:center;color:var(--color-text-tertiary)}.making-of-session{flex-direction:column;gap:10px;display:flex}.making-of-session-head{top:calc(-1 * var(--space-sm));z-index:1;margin:0 calc(-1 * var(--space-md));padding:8px var(--space-md);font-family:var(--font-display);font-size:var(--text-sm);letter-spacing:.06em;color:#d9c6ff;background:#100c24eb;flex-wrap:wrap;justify-content:space-between;gap:2px 12px;font-weight:600;display:flex;position:sticky}.making-of-session-meta{font-family:var(--font-body);letter-spacing:0;color:var(--color-text-tertiary);font-weight:400}.making-of-turn{flex-direction:column;gap:3px;max-width:88%;display:flex}.making-of-turn--player{align-self:flex-end;align-items:flex-end}.making-of-turn--planner{align-self:flex-start;align-items:flex-start}.making-of-who{font-size:var(--text-xs);color:var(--color-text-tertiary)}.making-of-bubble{color:var(--color-text-primary);overflow-wrap:anywhere;white-space:pre-wrap;border-radius:16px;margin:0;padding:9px 13px;font-size:15px;line-height:1.45}.making-of-turn--player .making-of-bubble{background:#785adc52;border-bottom-right-radius:4px}.making-of-turn--planner .making-of-bubble{background:#ffffff0f;border:1px solid #c9a6ff2e;border-bottom-left-radius:4px}.making-of-chips{flex-wrap:wrap;gap:6px;margin:2px 0 0;padding:0;list-style:none;display:flex}.making-of-chips li{font-size:var(--text-xs);color:#e1d6ffbf;border:1px dashed #c9a6ff59;border-radius:999px;padding:3px 10px}.making-of-note{text-align:center;max-width:92%;font-size:var(--text-xs);color:var(--color-text-tertiary);overflow-wrap:anywhere;align-self:center;margin:0;font-style:italic}.making-of-fold{flex-direction:column;align-self:center;gap:6px;max-width:92%;display:flex}.making-of-fold>summary{min-height:44px;font-size:var(--text-xs);color:var(--color-text-tertiary);cursor:pointer;border:1px dashed #ffffff24;border-radius:999px;justify-content:center;align-items:center;padding:0 14px;font-style:italic;list-style:none;display:flex}.making-of-fold>summary::-webkit-details-marker{display:none}.making-of-fold>summary:after{content:" ▸";margin-left:4px;font-style:normal}.making-of-fold[open]>summary:after{content:" ▾"}.making-of-fold>summary:focus-visible{outline-offset:2px;outline:2px solid #c9a6ff}@media (height<=480px) and (orientation:landscape){.making-of{height:calc(100dvh - env(safe-area-inset-top) - 8px);width:min(620px,100vw - 32px)}}@media (width>=900px) and (height>=560px){.making-of{border:1px solid var(--glass-border);border-radius:var(--radius-lg);width:440px;height:auto;max-height:none;margin:0;inset:16px 16px 16px auto}.making-of::backdrop{background:0 0}.making-of[open]{animation-name:making-of-in}@keyframes making-of-in{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:none}}}.planner-public{font-size:var(--text-xs);color:var(--color-text-tertiary);text-align:center;margin:4px 0 0;line-height:1.45}.mind-thumb{color:#ffd8b8;background:linear-gradient(145deg,#d9622b73,#9b3fc473);place-items:center;font-size:22px;display:grid}.mind-item .library-prompt b{color:var(--color-text-primary)}.mind-item-greeting{color:#ffd8b8;font-style:italic}.mind-item-more{min-height:44px;font:inherit;font-size:var(--text-xs);color:#ffb27a;cursor:pointer;background:0 0;border:0;grid-column:1/-1;justify-self:start;padding:0;text-decoration:underline}.mind-history-wide{grid-column:1/-1}.life-mind-pick .mind-list .library-list{overflow:visible}.life-mind-pick,.life-mind-history{gap:var(--space-sm);flex-direction:column;display:flex}.life-saved{color:#b8f0cf}.life-fine{font-size:var(--text-xs);color:var(--color-text-tertiary)}.mind-history{gap:var(--space-sm);flex-direction:column;min-width:0;display:flex}.mind-origin b{color:var(--color-text-primary)}.mind-versions{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.mind-version{background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;flex-direction:column;gap:6px;min-width:0;padding:10px 12px;display:flex}.mind-version-head{font-size:var(--text-xs);color:var(--color-text-tertiary);margin:0}.mind-version-head b{color:#ffb27a}.mind-version-words{font-size:var(--text-sm);color:var(--color-text-primary);white-space:pre-wrap;overflow-wrap:anywhere;border-left:2px solid #ffaa6e99;margin:0;padding:2px 0 2px 10px;line-height:1.5}.mind-version-detail{font-size:var(--text-xs);color:var(--color-text-secondary);min-width:0}.mind-version-detail>summary{cursor:pointer;color:#ffb27a;align-items:center;min-height:44px;list-style:none;display:flex}.mind-version-detail>summary::-webkit-details-marker{display:none}.mind-version-detail>summary:before{content:"▸";margin-right:6px;transition:transform .15s}.mind-version-detail[open]>summary:before{transform:rotate(90deg)}.mind-label{letter-spacing:.06em;text-transform:uppercase;color:#ffc8a099;margin:6px 0 4px;font-size:11px}.mind-pre{max-height:240px;font-family:var(--font-mono,ui-monospace, monospace);white-space:pre-wrap;overflow-wrap:anywhere;color:#e8e2ff;background:#0000004d;border-radius:8px;margin:0;padding:8px 10px;font-size:12px;line-height:1.45;overflow:auto}.mind-persona{font-size:var(--text-xs);grid-template-columns:auto 1fr;gap:4px 10px;margin:0;line-height:1.45;display:grid}.mind-persona dt{color:var(--color-text-tertiary)}.mind-persona dd{color:var(--color-text-primary);overflow-wrap:anywhere;margin:0}@media (width<=380px){.mind-persona{grid-template-columns:1fr}.mind-persona dd{margin-bottom:4px}}.hud-tools{pointer-events:auto;justify-content:flex-end;align-items:center;gap:6px;margin-top:6px;display:flex}.hud-tools .display-settings{margin-top:0}.keybindings-toggle{border-radius:var(--radius-full);border:1px solid var(--glass-border);background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);width:26px;height:26px;color:var(--color-text-tertiary);cursor:pointer;transition:color var(--duration-fast), border-color var(--duration-fast), box-shadow var(--duration-fast);place-items:center;display:grid}.keybindings-toggle:hover,.keybindings-toggle--open{color:var(--color-accent-primary);border-color:#e8b94a66;box-shadow:0 0 14px #e8b94a33}.keybindings-toggle:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.keybindings-panel{pointer-events:auto;border:1px solid var(--glass-border);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(22px)saturate(1.3);width:min(760px,94vw);max-height:min(86vh,760px);box-shadow:var(--shadow-elevated), inset 0 1px 0 var(--glass-highlight);color:var(--color-text-secondary);font-family:var(--font-body);background:linear-gradient(160deg,#14123ceb,#080820f2);margin:auto;padding:0;position:fixed;inset:0;overflow:hidden}.keybindings-panel[open]{animation:keybindings-in .22s var(--ease-out-expo);display:flex}.keybindings-panel::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#03030e8c}@keyframes keybindings-in{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:none}}.keybindings-shell{width:100%;min-height:0;padding:var(--space-lg);gap:var(--space-md);flex-direction:column;display:flex}.keybindings-head{justify-content:space-between;align-items:flex-start;gap:var(--space-md);display:flex}.keybindings-title{font-family:var(--font-display);font-size:var(--text-lg,1.1rem);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-primary);margin:0;font-weight:600}.keybindings-sub{font-size:var(--text-xs);color:var(--color-text-tertiary);margin:4px 0 0}.keybindings-close{border-radius:var(--radius-full);border:1px solid var(--glass-border);width:28px;height:28px;color:var(--color-text-tertiary);cursor:pointer;transition:color var(--duration-fast), border-color var(--duration-fast);background:0 0}.keybindings-close:hover{color:var(--color-text-primary);border-color:#ffffff4d}.keybindings-tabs{border-radius:var(--radius-full);border:1px solid var(--glass-border);background:#ffffff0d;gap:4px;width:fit-content;padding:3px;display:flex}.keybindings-tab{border-radius:var(--radius-full);color:var(--color-text-tertiary);font:inherit;font-size:var(--text-xs);letter-spacing:.06em;cursor:pointer;transition:background var(--duration-fast), color var(--duration-fast);background:0 0;border:0;padding:5px 14px}.keybindings-tab:hover{color:var(--color-text-primary)}.keybindings-tab--active{color:var(--color-accent-secondary);background:#e8b94a29;box-shadow:inset 0 0 0 1px #e8b94a59}.keybindings-tab:focus-visible,.keybindings-close:focus-visible,.keybindings-key:focus-visible,.keybindings-reset:focus-visible,.keybindings-reset-all:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.keybindings-list{columns:2 280px;column-gap:var(--space-xl,28px);flex:1;min-height:0;padding-right:4px;overflow-y:auto}.keybindings-group{break-inside:avoid;margin-bottom:var(--space-md)}.keybindings-group-title{font-family:var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-tertiary);margin:0 0 4px;font-size:10.5px;font-weight:600}.keybindings-row{justify-content:space-between;align-items:center;gap:var(--space-sm);border-radius:var(--radius-md,8px);font-size:var(--text-sm);transition:background var(--duration-fast);padding:4px 6px;display:flex}.keybindings-row:hover{background:#ffffff0a}.keybindings-row--lit{background:#6496ff24}.keybindings-label{color:var(--color-text-secondary)}.keybindings-actions{flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.keybindings-key{min-width:56px;height:26px;font-family:var(--font-mono);color:var(--color-text-primary);cursor:pointer;transition:border-color var(--duration-fast), background var(--duration-fast), box-shadow var(--duration-fast);background:#ffffff12;border:1px solid #ffffff24;border-bottom-width:2px;border-radius:5px;padding:0 10px;font-size:12px;font-weight:600}.keybindings-key:hover{background:#e8b94a1a;border-color:#e8b94a80}.keybindings-key--custom{color:var(--color-accent-secondary);border-color:#e8b94a59}.keybindings-key--unbound{color:var(--color-text-tertiary);border-style:dashed;font-style:italic}.keybindings-key--listening{color:var(--color-accent-primary);border-color:var(--color-accent-primary);box-shadow:0 0 14px var(--color-accent-glow);background:#e8b94a24;animation:1.1s ease-in-out infinite keybindings-pulse}@keyframes keybindings-pulse{50%{box-shadow:0 0 4px var(--color-accent-glow)}}.keybindings-key--fixed{cursor:default;color:var(--color-text-tertiary);background:#ffffff08;border-color:#ffffff14;place-items:center;display:inline-grid}.keybindings-key--fixed:hover{background:#ffffff08;border-color:#ffffff14}.keybindings-reset{border-radius:var(--radius-full);width:22px;height:22px;color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:0;place-items:center;font-size:14px;display:grid}.keybindings-reset:hover{color:var(--color-accent-primary)}.keybindings-foot{justify-content:space-between;align-items:center;gap:var(--space-md);padding-top:var(--space-sm);border-top:1px solid var(--glass-border);display:flex}.keybindings-notice{min-height:1.4em;font-size:var(--text-xs);color:var(--color-accent-secondary);margin:0}.keybindings-reset-all{border-radius:var(--radius-full);border:1px solid var(--glass-border);color:var(--color-text-secondary);font:inherit;font-size:var(--text-xs);cursor:pointer;white-space:nowrap;transition:color var(--duration-fast), border-color var(--duration-fast);background:0 0;padding:5px 12px}.keybindings-reset-all:hover:not(:disabled){color:var(--color-accent-primary);border-color:#e8b94a66}.keybindings-reset-all:disabled{opacity:.4;cursor:default}@media (prefers-reduced-motion:reduce){.keybindings-panel[open],.keybindings-key--listening{animation:none}}.life-panel{width:min(440px,100vw - 24px);max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));border:1px solid var(--glass-border);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(22px)saturate(1.3);box-shadow:var(--shadow-elevated), inset 0 1px 0 var(--glass-highlight);color:var(--color-text-secondary);font-family:var(--font-body);overscroll-behavior:contain;background:linear-gradient(160deg,#241028f2,#0a081ef7);margin:auto;padding:0;position:fixed;inset:0;overflow-y:auto}.life-panel[open]{animation:life-in .22s var(--ease-out-expo)}.life-panel::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#03030e8c}@keyframes life-in{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:none}}.life-shell{gap:var(--space-md);padding:var(--space-lg);flex-direction:column;display:flex}.life-head{justify-content:space-between;align-items:flex-start;gap:var(--space-md);display:flex}.life-head-text{flex:1;min-width:0}.life-thumb{border-radius:var(--radius-md);object-fit:cover;border:1px solid var(--glass-border);background:#ffffff0f;flex:none;width:56px;height:56px}.life-title{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-primary);margin:0;font-weight:600}.life-sub{font-size:var(--text-sm);color:var(--color-text-tertiary);overflow-wrap:anywhere;margin:4px 0 0}.life-close{border-radius:var(--radius-full);border:1px solid var(--glass-border);width:44px;height:44px;color:var(--color-text-tertiary);font-size:var(--text-base);cursor:pointer;background:0 0;flex:none}.life-close:hover{color:var(--color-text-primary);border-color:#ffffff4d}.life-section{gap:var(--space-sm);padding:var(--space-md);border-radius:var(--radius-md);background:#ffffff08;border:1px solid #ffffff14;flex-direction:column;display:flex}.life-h{font-size:var(--text-xs);letter-spacing:.18em;text-transform:uppercase;color:#ffb27a;margin:0}.life-modes,.life-gaits{border:0;flex-wrap:wrap;gap:8px;min-width:0;margin:0;padding:0;display:flex}.life-gaits legend{width:100%;font-size:var(--text-xs);color:var(--color-text-tertiary);margin-bottom:4px}.life-mode,.life-gait{flex:1 1 0;min-width:72px;position:relative}.life-mode input,.life-gait input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.life-mode span,.life-gait span{border-radius:var(--radius-full);border:1px solid var(--glass-border);min-height:44px;font-size:var(--text-sm);color:var(--color-text-secondary);justify-content:center;align-items:center;padding:0 12px;display:flex}.life-mode input:checked+span,.life-gait input:checked+span{color:var(--color-text-primary);background:#ff8c462e;border-color:#ff9a5a}.life-mode input:focus-visible+span,.life-gait input:focus-visible+span{outline-offset:2px;outline:2px solid #ffb27a}.life-sliders{gap:var(--space-sm);flex-direction:column;display:flex}.life-slider{font-size:var(--text-sm);flex-direction:column;gap:6px;display:flex}.life-slider>span{justify-content:space-between;display:flex}.life-slider output{color:var(--color-text-primary)}.life-slider input[type=range]{accent-color:#ff9a5a;width:100%;min-height:32px}.life-rig{gap:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid #ffffff0f;flex-direction:column;display:flex}.life-note{font-size:var(--text-sm);margin:0;line-height:1.5}.life-note b{color:var(--color-text-primary)}.life-primary,.life-secondary{min-height:48px;padding:0 var(--space-md);border-radius:var(--radius-full);font-size:var(--text-sm);cursor:pointer;font-weight:600}.life-primary{color:#fff;background:linear-gradient(135deg,#d9622b,#9b3fc4);border:1px solid #ffaa6e99}.life-primary:disabled{opacity:.5;cursor:default}.life-secondary{border:1px solid var(--glass-border);color:var(--color-text-secondary);background:0 0}.life-link{color:#ffb27a;min-height:44px;font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:6px 0;text-decoration:underline}.life-progress{min-height:44px;padding:0 var(--space-md);border-radius:var(--radius-full);border:1px solid var(--glass-border);font-size:var(--text-sm);align-items:center;display:flex;position:relative;overflow:hidden}.life-progress span:first-child{z-index:1;color:var(--color-text-primary);position:relative}.life-bar{background:linear-gradient(90deg,#d9622b73,#9b3fc473);transition:width .4s;position:absolute;inset:0 auto 0 0}.life-mind{gap:var(--space-sm);flex-direction:column;display:flex}.life-mind-name{color:var(--color-text-secondary);font-size:var(--text-base);margin:0}.life-mind-name b{color:var(--color-text-primary)}.life-mind-greeting{color:#ffd8b8;font-style:italic;font-size:var(--text-sm);margin:0}.life-mind-form{gap:var(--space-sm);flex-direction:column;display:flex}.life-field{font-size:var(--text-sm);flex-direction:column;gap:6px;min-width:0;display:flex}.life-field textarea,.life-field select{box-sizing:border-box;border-radius:var(--radius-md);border:1px solid var(--glass-border);width:100%;color:var(--color-text-primary);font:inherit;background:#0000004d;padding:10px 12px;font-size:16px}.life-field select{text-overflow:ellipsis;min-height:44px}.life-field textarea{resize:vertical;min-height:84px}.life-row{gap:var(--space-sm);flex-wrap:wrap;align-items:flex-end;display:flex}.life-field--grow{flex:200px}.life-switch{min-height:44px;font-size:var(--text-sm);align-items:center;gap:8px;display:flex}.life-error{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);color:#ffd0d6;font-size:var(--text-sm);background:#ff6e821f;border:1px solid #ff6e8259;margin:0}.name-tag--mind{color:#ffd2a8;border-color:#ffa05a73}.chat-bubble--mind{border-color:#ffa05a80}@media (width>=900px){.life-panel{width:min(480px,100vw - 48px)}}.chat-name--mind{color:#ffb27a;font-style:italic}.held-tool-btn--life{color:#ffb27a}.made-from-orb{border-radius:var(--radius-full);color:#0a081ed9;flex:none;place-items:center;width:44px;height:44px;font-size:22px;font-weight:700;display:grid;box-shadow:0 0 20px #ffffff47}.made-from-prompt{padding:var(--space-sm) var(--space-md);border-radius:0 var(--radius-md) var(--radius-md) 0;color:var(--color-text-primary);font-size:var(--text-base);white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;background:#00000040;border-left:3px solid #ffb27a;margin:0;line-height:1.5}
