[data-spoons="0"] .ui-chrome,[data-spoons="0"] .ui-chrome *{display:none!important}html:not([data-spoons="0"]) p31-crisis-overlay{display:none!important}[data-spoons="0"] body{padding-bottom:0!important}[data-spoons="1"] .spoon-orbit-btn{opacity:.5;filter:saturate(.6)}.spoon-orbit-btn{transition:opacity .3s ease,filter .3s ease,transform var(--p31-duration-fast) var(--p31-easing-standard);border-radius:12px}.spoon-orbit-btn:hover{box-shadow:0 0 18px #00f0ff4d}.spoon-orbit-btn:focus-visible{outline:2px solid var(--p31-accent);outline-offset:4px}@media(prefers-reduced-motion:reduce){.spoon-orbit-btn{animation:none!important}}:root{--color-neutral-50: oklch(1 0 90);--color-neutral-100: oklch(.979 .007 97);--color-neutral-200: oklch(.923 .015 98);--color-neutral-400: oklch(.859 .014 97);--color-neutral-600: oklch(.622 .01 100);--color-neutral-800: oklch(.482 .006 95);--color-neutral-900: oklch(.386 .005 107);--color-accent-50: oklch(.953 .018 245);--color-accent-100: oklch(.858 .056 249);--color-accent-200: oklch(.764 .092 250);--color-accent-400: oklch(.623 .149 252);--color-accent-600: oklch(.481 .131 252);--color-accent-800: oklch(.385 .11 253);--color-accent-900: oklch(.291 .083 252);--color-danger-50: oklch(.954 .019 17);--color-danger-100: oklch(.859 .062 18);--color-danger-200: oklch(.763 .11 20);--color-danger-400: oklch(.623 .188 25);--color-danger-600: oklch(.48 .154 25);--color-danger-800: oklch(.387 .124 25);--color-danger-900: oklch(.292 .091 25);--color-success-50: oklch(.952 .029 126);--color-success-100: oklch(.859 .097 127);--color-success-200: oklch(.765 .145 128);--color-success-400: oklch(.622 .156 131);--color-success-600: oklch(.481 .13 135);--color-success-800: oklch(.386 .107 136);--color-success-900: oklch(.291 .081 136);--color-warning-50: oklch(.953 .029 81);--color-warning-100: oklch(.858 .116 78);--color-warning-200: oklch(.764 .154 71);--color-warning-400: oklch(.622 .13 67);--color-warning-600: oklch(.48 .104 64);--color-warning-800: oklch(.386 .084 63);--color-warning-900: oklch(.292 .063 65);--color-teal-50: oklch(.953 .023 173);--color-teal-100: oklch(.859 .073 172);--color-teal-200: oklch(.765 .115 168);--color-teal-400: oklch(.623 .123 165);--color-teal-600: oklch(.481 .091 170);--color-teal-800: oklch(.386 .07 174);--color-teal-900: oklch(.292 .051 178);--color-purple-50: oklch(.952 .023 289);--color-purple-100: oklch(.858 .059 288);--color-purple-200: oklch(.764 .095 288);--color-purple-400: oklch(.623 .15 285);--color-purple-600: oklch(.481 .166 282);--color-purple-800: oklch(.386 .136 282);--color-purple-900: oklch(.292 .102 282);--color-coral-50: oklch(.953 .017 41);--color-coral-100: oklch(.859 .061 40);--color-coral-200: oklch(.764 .113 40);--color-coral-400: oklch(.623 .168 38);--color-coral-600: oklch(.48 .132 38);--color-coral-800: oklch(.386 .105 39);--color-coral-900: oklch(.291 .076 38);--color-pink-50: oklch(.952 .02 354);--color-pink-100: oklch(.859 .063 357);--color-pink-200: oklch(.764 .114 359);--color-pink-400: oklch(.622 .167 3);--color-pink-600: oklch(.482 .136 3);--color-pink-800: oklch(.387 .112 3);--color-pink-900: oklch(.29 .084 2);--surface-bg: oklch(10% .01 270);--surface-surface: oklch(15% .015 270);--surface-surface2: oklch(22% .02 270);--surface-s1: oklch(0% 0 0);--surface-s2: oklch(4.9% 0 0);--surface-s3: oklch(6.9% 0 0);--surface-s4: oklch(10.5% 0 0);--surface-text-primary: oklch(96% .005 270);--surface-text-secondary: oklch(80% .01 270);--surface-text-tertiary: oklch(78% .01 270);--surface-accent-primary: oklch(65% .18 195);--surface-accent-alt: oklch(65% .18 285);--surface-accent-violet: oklch(65% .18 285);--surface-accent-gold: oklch(65% .18 15);--surface-accent-green: oklch(65% .18 105);--surface-accent-red: oklch(65% .18 20);--surface-accent-iris: oklch(65% .18 270);--surface-glass-bg: oklch(100% .01 240 / .04);--surface-glass-border: oklch(100% .01 240 / .08);--surface-glass-border-hover: oklch(100% .01 240 / .15);--surface-glass-bg-strong: oklch(100% .01 75 / .22);--surface-glass-bg-overlay: oklch(100% .01 75 / .1);--surface-glass-bg-light: oklch(100% .01 75 / .1);--surface-glass-border-strong: oklch(100% .01 75 / .16);--surface-glass-border-strong-hover: oklch(100% .01 75 / .25);--surface-status-online: oklch(65% .18 105);--surface-status-offline: oklch(78% .01 270);--surface-status-warning: oklch(65% .18 15);--surface-status-error: oklch(65% .18 20);--surface-status-info: oklch(65% .18 195);--surface-glow-cyan: oklch(NaN NaN NaN);--surface-glow-neon: oklch(90.5% .155 194.8);--surface-glow-neon-dim: oklch(90.5% .155 194.8 / .35);--surface-glow-neon-faint: oklch(90.5% .155 194.8 / .08);--surface-glow-neon-ghost: oklch(90.5% .155 194.8 / .03);--surface-glow-neon-cyan: oklch(90.5% .155 194.8);--surface-glow-neon-magenta: oklch(70.2% .322 328.4);--surface-glow-neon-violet: oklch(67% .234 309.1);--surface-glow-neon-amber: oklch(88.7% .182 95.3);--surface-glow-neon-mint: oklch(87.6% .228 152.5);--surface-glow-neon-coral: oklch(71.2% .181 22.8);--surface-glow-neon-orange: oklch(75.4% .164 50.4);--surface-glow-neon-blue: oklch(80.4% .146 219.5);--surface-glow-neon-lavender: oklch(62% .279 290.8);--surface-glow-neon-pink: oklch(67.4% .293 340.4);--surface-glow-starfield-hearth: oklch(55% .15 35);--surface-glow-starfield-teal: oklch(60% .08 185);--surface-glow-starfield-remembrance: oklch(95% .01 80);--surface-glow-starfield-particle-teal: oklch(70% .12 185 / .6);--surface-glow-starfield-particle-coral: oklch(65% .14 40 / .5);--spacing-base: 16px;--spacing-tiny: 2px;--spacing-3xl: 64px;--scale-xs: calc(var(--p31-base) * .75);--scale-sm: calc(var(--p31-base));--scale-md: calc(var(--p31-base) * 1.3333);--scale-lg: calc(var(--p31-base) * 1.7777);--scale-xl: calc(var(--p31-base) * 2.3703);--scale-2xl: calc(var(--p31-base) * 3.1604);--scale-3xl: calc(var(--p31-base) * 4.2139);--scale-4xl: calc(var(--p31-base) * 5.6186);--typography-font-family-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--typography-font-family-mono: ui-monospace, SFMono-Regular, "Fira Code", "Fira Mono", "Roboto Mono", "JetBrains Mono", Menlo, Monaco, Consolas, monospace;--typography-font-family-display: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--typography-font-weight-body: 400;--typography-font-weight-emphasis: 500;--typography-font-size-caption: 11px;--typography-font-size-label: 12px;--typography-font-size-body: 14px;--typography-font-size-h3: 16px;--typography-font-size-h2: 20px;--typography-font-size-h1: 26px;--typography-font-size-display: 34px;--typography-line-height-tight: 1.2;--typography-line-height-normal: 1.5;--typography-line-height-relaxed: 1.65;--motion-blur-subtle: 8px;--motion-blur-standard: 12px;--motion-blur-strong: 24px;--layout-topbar-height: 64px;--layout-touch-min: 48px;--layout-touch-recommended: 56px;--layout-touch-large: 64px;--container-min-width: 320px;--container-max-width: 1200px;--portal-accent-default: oklch(65% .18 195);--portal-accent-research: oklch(65% .18 285);--portal-accent-quantum: oklch(65% .18 285);--portal-accent-build: oklch(65% .18 105);--portal-accent-blog: oklch(65% .18 195);--portal-accent-passport: oklch(65% .18 270);--portal-accent-care: oklch(65% .18 15)}[data-brand=meatspace]{--p31-bg: #0B0E14;--p31-surface: #121721;--p31-surface2: #1A202C;--p31-accent: #3B82F6;--p31-accent-alt: #8B5CF6;--p31-accent-green: #10B981;--p31-accent-gold: #F59E0B;--p31-accent-red: #F43F5E;--p31-accent-cyan: #06B6D4;--p31-text: #E2E8F0;--p31-text-secondary: #64748B;--p31-glass-bg: rgba(18, 23, 33, .6);--p31-glass-border: rgba(255, 255, 255, .1);--p31-glass-blur: blur(12px);--p31-font-sans: "Plus Jakarta Sans", system-ui, sans-serif;--p31-font-mono: "Fira Code", ui-monospace, monospace;--p31-space-xs: 6px;--p31-space-sm: 8px;--p31-space-md: 12px;--p31-space-lg: 16px;--p31-space-xl: 24px;--p31-radius-sm: 6px;--p31-radius-md: 10px;--p31-radius-lg: 14px;--p31-radius-xl: 20px;--p31-radius-full: 9999px;--p31-duration-fast: .15s;--p31-duration-normal: .3s;--p31-duration-slow: .5s;--p31-touch-min: 44px;--p31-touch-recommended: 48px}[data-spoons="0"],[data-spoons="1"]{--p31-speed-factor: 0;--p31-glass-blur: none}[data-spoons="2"]{--p31-speed-factor: .25;--p31-glass-blur: blur(8px)}[data-spoons="3"]{--p31-speed-factor: .5}[data-spoons="4"]{--p31-speed-factor: .75}[data-spoons="5"]{--p31-speed-factor: 1}@media(prefers-reduced-motion:reduce){:root{--p31-speed-factor: 0}}html,body{height:100%;overflow:hidden}body{background:var(--p31-bg);color:var(--p31-text);font-family:var(--p31-font-sans);-webkit-font-smoothing:antialiased;margin:0}.app{height:100vh;width:100%;margin:0 auto;display:flex;flex-direction:column;overflow:hidden}.topbar{height:64px;padding:0 var(--p31-space-lg);display:flex;align-items:center;justify-content:space-between;background:var(--p31-glass-bg);backdrop-filter:var(--p31-glass-blur);-webkit-backdrop-filter:var(--p31-glass-blur);border-bottom:1px solid var(--p31-glass-border);flex-shrink:0;z-index:var(--p31-z-topbar)}.topbar-left{display:flex;align-items:center;gap:var(--p31-space-md);font-weight:600;font-size:1.1rem}.topbar-right{display:flex;align-items:center;gap:var(--p31-space-md)}.badge{display:inline-flex;align-items:center;gap:var(--p31-space-xs);padding:var(--p31-space-xs) var(--p31-space-md);background:var(--p31-glass-bg);border:1px solid var(--p31-glass-border);border-radius:var(--p31-radius-full);font-size:var(--p31-type-caption);font-family:var(--p31-font-mono);color:var(--p31-text-secondary)}.badge strong{color:var(--p31-text);font-weight:500}.badge.accent{border-color:var(--p31-accent);color:var(--p31-accent);background:#38bdf814}.spoon-dial{display:flex;background:#0006;border:1px solid var(--p31-glass-border);border-radius:var(--p31-radius-full);padding:4px;gap:4px}.spoon-btn{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;transition:all var(--p31-duration-fast) var(--p31-easing-smooth);color:var(--p31-text-secondary)}.spoon-btn svg{width:16px;height:16px;fill:currentColor}.spoon-btn:hover{background:var(--p31-glass-bg);color:var(--p31-text)}.spoon-btn.active{background:var(--p31-accent);color:#000;box-shadow:0 0 12px rgba(var(--p31-accent-rgb, 56, 189, 248),.4)}.spoon-btn.active:hover{box-shadow:0 0 20px rgba(var(--p31-accent-rgb, 56, 189, 248),.6)}.viewport{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--p31-space-lg);scroll-behavior:smooth;padding-bottom:80px}.page{display:none;animation:pageIn var(--p31-duration-normal) var(--p31-easing-smooth) forwards}.page.active{display:block}@keyframes pageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:64px;background:#060608cc;backdrop-filter:var(--p31-glass-blur);-webkit-backdrop-filter:var(--p31-glass-blur);border-top:1px solid var(--p31-glass-border);display:flex;justify-content:center;gap:4px;padding:0 var(--p31-space-sm);z-index:100}.nav-item{flex:1;max-width:100px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--p31-text-secondary);border-radius:var(--p31-radius-md);background:transparent;border:none;cursor:pointer;transition:all var(--p31-duration-fast) var(--p31-easing-smooth);padding:var(--p31-space-xs);min-height:48px;font-family:var(--p31-font-sans);font-size:.65rem}.nav-item:hover{background:var(--p31-glass-bg);color:var(--p31-text)}.nav-item.active{color:var(--p31-accent)}.nav-item svg{width:20px;height:20px;opacity:.7;transition:all var(--p31-duration-fast) var(--p31-easing-smooth)}.nav-item.active svg{opacity:1;transform:translateY(-2px)}.map-wrapper{position:relative;min-height:420px;border-radius:var(--p31-radius-lg);overflow:hidden;background:radial-gradient(ellipse at 30% 40%,#2d1d14,#080503);border:1px solid var(--p31-glass-border)}.map-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:40px 40px}.map-zones{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-content:center;justify-content:center;gap:var(--p31-space-sm);padding:var(--p31-space-lg);min-height:420px;box-sizing:border-box}.zone-badge{padding:var(--p31-space-xs) var(--p31-space-md);border-radius:var(--p31-radius-full);font-size:var(--p31-type-caption);font-weight:600;background:#0006;border:1px solid var(--p31-glass-border);color:var(--p31-text-secondary)}.zone-badge.calm{border-color:var(--p31-accent-green);color:var(--p31-accent-green)}.zone-badge.lab{border-color:var(--p31-accent);color:var(--p31-accent)}.zone-badge.kitchen{border-color:var(--p31-accent-gold);color:var(--p31-accent-gold)}.zone-badge.deep{border-color:var(--p31-accent-alt);color:var(--p31-accent-alt)}.zone-badge.wild{border-color:var(--p31-accent-red);color:var(--p31-accent-red)}.fab{position:absolute;bottom:var(--p31-space-lg);right:var(--p31-space-lg);width:56px;height:56px;border-radius:50%;background:var(--p31-accent);border:none;box-shadow:0 4px 20px #0000004d;color:var(--p31-bg);font-size:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:5;animation:pulse-glow 3s infinite alternate}.fab:active{transform:scale(.92)}@keyframes pulse-glow{0%{box-shadow:0 0 20px rgba(var(--p31-accent-rgb, 56, 189, 248),.25),0 4px 20px #0000004d}to{box-shadow:0 0 30px rgba(var(--p31-accent-rgb, 56, 189, 248),.4),0 4px 20px #0000004d}}.nearby{margin-top:var(--p31-space-lg);max-height:400px;border-radius:var(--p31-radius-lg);overflow-y:auto;padding:var(--p31-space-md);background:var(--p31-glass-bg);backdrop-filter:var(--p31-glass-blur);-webkit-backdrop-filter:var(--p31-glass-blur);border:1px solid var(--p31-glass-border)}.nearby::-webkit-scrollbar{width:4px}.nearby::-webkit-scrollbar-thumb{background:var(--p31-glass-border);border-radius:4px}.atom-row{display:flex;align-items:center;gap:var(--p31-space-sm);padding:var(--p31-space-sm) var(--p31-space-md);border-radius:var(--p31-radius-md);background:#ffffff05;border:1px solid transparent;min-height:var(--p31-touch-min);transition:border-color var(--p31-duration-fast) var(--p31-easing-smooth)}.atom-row:hover{border-color:var(--p31-glass-border-hover)}.avatar{width:var(--p31-scale-xl);height:var(--p31-scale-xl);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--p31-type-h3);font-weight:700;color:var(--p31-bg);flex-shrink:0}.avatar.calm{background:var(--p31-accent-green)}.avatar.lab{background:var(--p31-accent)}.avatar.kitchen{background:var(--p31-accent-gold)}.avatar.deep{background:var(--p31-accent-alt)}.avatar.wild{background:var(--p31-accent-red)}.atom-info{flex:1;min-width:0}.atom-name{font-weight:600;font-size:var(--p31-type-body)}.atom-meta{font-size:var(--p31-type-caption);color:var(--p31-text-secondary)}.ping-btn{min-height:var(--p31-touch-min);padding:0 var(--p31-space-md);border-radius:var(--p31-radius-full);border:1px solid var(--p31-accent);background:transparent;color:var(--p31-accent);font-size:var(--p31-type-caption);font-weight:600;cursor:pointer;flex-shrink:0;transition:all var(--p31-duration-fast) var(--p31-easing-smooth)}.ping-btn:hover{background:rgba(var(--p31-accent-rgb, 56, 189, 248),.1)}.profile-header{text-align:center;padding:var(--p31-space-lg) 0}.profile-avatar{width:80px;height:80px;border-radius:50%;background:var(--p31-accent);margin:0 auto var(--p31-space-sm);display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;color:var(--p31-bg);border:2px solid var(--p31-accent)}.profile-name{font-size:var(--p31-type-h2);font-weight:700}.profile-zone{display:inline-block;padding:var(--p31-space-xs) var(--p31-space-md);border-radius:var(--p31-radius-full);background:#ffffff0a;border:1px solid var(--p31-glass-border);font-size:var(--p31-type-caption);color:var(--p31-text-secondary);margin-top:var(--p31-space-xs)}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--p31-space-sm);margin-bottom:var(--p31-space-lg)}.stat-card{background:var(--p31-glass-bg);backdrop-filter:var(--p31-glass-blur);-webkit-backdrop-filter:var(--p31-glass-blur);border:1px solid var(--p31-glass-border);border-radius:var(--p31-radius-md);padding:var(--p31-space-md);text-align:center}.stat-val{font-size:var(--p31-type-h2);font-weight:700}.stat-lbl{font-size:var(--p31-type-caption);color:var(--p31-text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-top:var(--p31-space-xs)}.val-bar{width:100%;height:4px;background:#ffffff0f;border-radius:var(--p31-radius-full);margin-top:var(--p31-space-xs);overflow:hidden}.val-fill{height:100%;background:var(--p31-accent);border-radius:var(--p31-radius-full);transition:width var(--p31-duration-normal) var(--p31-easing-smooth)}.sec-title{font-size:var(--p31-type-h3);font-weight:600;color:var(--p31-text-secondary);margin-bottom:var(--p31-space-sm);letter-spacing:.02em}.bond-item,.act-item{display:flex;align-items:center;gap:var(--p31-space-sm);padding:var(--p31-space-sm) var(--p31-space-md);border-radius:var(--p31-radius-md);background:#ffffff05;border:1px solid var(--p31-glass-border);margin-bottom:var(--p31-space-xs)}.bond-type{font-size:var(--p31-type-caption);padding:var(--p31-space-xs) var(--p31-space-sm);border-radius:var(--p31-radius-full);background:#ffffff0a;color:var(--p31-text-secondary)}.act-icon{font-size:var(--p31-scale-lg);flex-shrink:0}.act-text{flex:1;min-width:0;font-size:var(--p31-type-body)}.act-time{font-size:var(--p31-type-caption);color:var(--p31-text-secondary);flex-shrink:0}.modal-ov{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:800;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity var(--p31-duration-normal) var(--p31-easing-smooth)}.modal-ov.show{opacity:1;pointer-events:auto}.modal-panel{background:var(--p31-glass-bg);backdrop-filter:var(--p31-glass-blur);-webkit-backdrop-filter:var(--p31-glass-blur);border:1px solid var(--p31-glass-border);border-radius:var(--p31-radius-lg);max-width:340px;width:90%;max-height:80vh;overflow-y:auto;padding:var(--p31-space-lg);transform:scale(.95);transition:transform var(--p31-duration-normal) var(--p31-easing-smooth)}.modal-ov.show .modal-panel{transform:scale(1)}.modal-panel h2{font-size:var(--p31-type-h2);margin-bottom:var(--p31-space-sm)}.modal-panel p{color:var(--p31-text-secondary);font-size:var(--p31-type-body);margin-bottom:var(--p31-space-md)}.modal-row{display:flex;gap:var(--p31-space-sm);justify-content:flex-end;margin-top:var(--p31-space-md)}.form-group{margin-bottom:var(--p31-space-md)}.form-group label{display:block;font-size:var(--p31-type-caption);font-weight:600;color:var(--p31-text-secondary);margin-bottom:var(--p31-space-xs)}.form-group input,.form-group textarea{width:100%;padding:var(--p31-space-sm) var(--p31-space-md);border-radius:var(--p31-radius-sm);border:1px solid var(--p31-glass-border);background:#0003;color:var(--p31-text);font-size:var(--p31-type-body);font-family:var(--p31-font-sans)}.form-group textarea{min-height:60px;resize:vertical}.chip-row{display:flex;flex-wrap:wrap;gap:var(--p31-space-xs)}.chip{background:#ffffff0a;border:1px solid var(--p31-glass-border);border-radius:var(--p31-radius-full);padding:var(--p31-space-xs) var(--p31-space-md);font-size:var(--p31-type-caption);display:inline-flex;align-items:center;gap:var(--p31-space-xs)}.chip .rm{cursor:pointer;color:var(--p31-text-secondary);font-size:var(--p31-type-h3);line-height:1}.chat-bubble{background:#fff;border-radius:var(--p31-radius-lg) var(--p31-radius-lg) var(--p31-radius-lg) 4px;padding:var(--p31-space-md) var(--p31-space-lg);max-width:85%;box-shadow:0 2px 12px #0000000a;margin-bottom:var(--p31-space-sm);font-size:var(--p31-type-body);line-height:1.5;border:1px solid var(--p31-glass-border)}.chat-bubble.companion{background:var(--p31-accent);color:#fff;border-radius:var(--p31-radius-lg) var(--p31-radius-lg) 4px var(--p31-radius-lg);align-self:flex-start;border:none}.chat-bubble.companion.pending{opacity:.6}.chat-bubble.user{align-self:flex-end;background:var(--p31-glass-bg)}.chat-container{display:flex;flex-direction:column;gap:var(--p31-space-sm);padding:var(--p31-space-md) 0}#rest-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:none}html[data-spoons="0"] .app>#rest-overlay,html[data-spoons="1"] .app>#rest-overlay{display:block}html[data-spoons="0"] .app>*:not(#rest-overlay){display:none}#rest-return{position:fixed;top:20px;left:50%;transform:translate(-50%);pointer-events:auto;padding:10px 20px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:#0a0e1773;color:#ffffffb3;font-family:var(--p31-font-sans);font-size:13px;letter-spacing:.02em;cursor:pointer;opacity:.5;transition:opacity var(--p31-duration-fast) ease,background var(--p31-duration-fast) ease,color var(--p31-duration-fast) ease}#rest-return:hover,#rest-return:focus-visible{opacity:1;background:#0a0e17b3;color:#fff;outline:2px solid var(--p31-accent);outline-offset:2px}.toast{position:fixed;bottom:calc(80px + var(--p31-space-md));left:50%;transform:translate(-50%);background:var(--p31-glass-bg);backdrop-filter:var(--p31-glass-blur);-webkit-backdrop-filter:var(--p31-glass-blur);border:1px solid var(--p31-glass-border);border-radius:var(--p31-radius-full);padding:var(--p31-space-md) var(--p31-space-lg);color:var(--p31-text);font-size:var(--p31-type-body);font-weight:500;box-shadow:var(--p31-glass-shadow);z-index:900;pointer-events:none;opacity:0;transform:translateY(20px);transition:all var(--p31-duration-normal) var(--p31-easing-smooth)}.toast.show{opacity:1;transform:translateY(0)}.glass-panel{background:var(--p31-glass-bg);backdrop-filter:var(--p31-glass-blur);-webkit-backdrop-filter:var(--p31-glass-blur);border:1px solid var(--p31-glass-border);border-radius:var(--p31-radius-xl);box-shadow:0 8px 32px #00000026}.glass-card{background:var(--p31-glass-bg);backdrop-filter:var(--p31-glass-blur);-webkit-backdrop-filter:var(--p31-glass-blur);border:1px solid var(--p31-glass-border);border-radius:var(--p31-radius-xl);padding:var(--p31-space-lg);box-shadow:var(--p31-glass-shadow);transition:all var(--p31-duration-normal) var(--p31-easing-smooth)}.glass-card:hover{border-color:var(--p31-glass-border-hover);background:#ffffff0f}.glass-strong{background:var(--p31-glass-bg);backdrop-filter:var(--p31-glass-blur);-webkit-backdrop-filter:var(--p31-glass-blur);border:1px solid rgba(255,255,255,.12);border-radius:calc(var(--p31-scale-xl) / 2)}.glass-subtle{background:var(--p31-glass-bg);backdrop-filter:var(--p31-glass-blur);-webkit-backdrop-filter:var(--p31-glass-blur);border:1px solid rgba(255,255,255,.06);border-radius:calc(var(--p31-scale-xl) / 2)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--p31-space-sm) var(--p31-space-lg);background:var(--p31-accent);color:#fff;border:none;border-radius:var(--p31-radius-md);font-weight:600;font-size:var(--p31-type-caption);cursor:pointer;transition:all var(--p31-duration-fast) var(--p31-easing-smooth);min-height:var(--p31-touch-min);min-width:var(--p31-touch-min);gap:var(--p31-space-sm);text-decoration:none;font-family:var(--p31-font-sans)}.btn:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0003}.btn:active{transform:scale(.97)}.btn.secondary{background:var(--p31-glass-bg);color:var(--p31-text);border:1px solid var(--p31-glass-border)}.btn.secondary:hover{background:var(--p31-glass-border-hover);border-color:var(--p31-text-secondary);box-shadow:none}.btn.outline{background:transparent;color:var(--p31-accent);border:2px solid var(--p31-accent)}.btn.outline:hover{background:var(--p31-accent);color:#fff}.skip-link{position:absolute;top:-60px;left:var(--p31-space-md);background:var(--p31-accent);color:#fff;padding:var(--p31-space-md) var(--p31-space-lg);text-decoration:none;z-index:var(--p31-z-skip-link);font-weight:700;border-radius:var(--p31-radius-md)}.skip-link:focus{top:var(--p31-space-md)}*:focus-visible{outline:3px solid var(--p31-accent);outline-offset:3px}@media(max-width:480px){.map-wrapper{min-height:300px;border-radius:0;margin:0 calc(-1 * var(--p31-space-lg))}.map-zones{gap:var(--p31-space-xs);min-height:300px}.zone-badge{font-size:var(--p31-type-caption);padding:var(--p31-space-xs) var(--p31-space-sm)}}@media(max-width:320px){.stat-grid{grid-template-columns:1fr}.map-zones{gap:2px}.zone-badge{font-size:.6rem}.spoon-btn{width:24px;height:24px}.topbar{height:56px;padding:0 var(--p31-space-sm)}.topbar-left{font-size:.9rem}.bottom-nav{gap:0}.nav-item{max-width:60px;font-size:.5rem}.nav-item svg{width:16px;height:16px}}.break-ov{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:var(--p31-bg);color:var(--p31-text);flex-direction:column;align-items:center;justify-content:center;padding:var(--p31-space-xl);text-align:center}html[data-spoons="0"] .break-ov,.show .break-ov{display:flex}.break-ov h2{font-size:var(--p31-type-h1);margin-bottom:var(--p31-space-sm)}.break-ov p{color:var(--p31-text-secondary);max-width:300px;margin-bottom:var(--p31-space-lg)}.break-ov .btn{min-height:var(--p31-touch-recommended);padding:var(--p31-space-sm) var(--p31-space-xl);font-size:var(--p31-type-body)}.pin-ov{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);align-items:center;justify-content:center;padding:var(--p31-space-lg)}.show .pin-ov,.pin-ov.show{display:flex}.pin-panel{background:var(--p31-glass-bg);-webkit-backdrop-filter:var(--p31-glass-blur);backdrop-filter:var(--p31-glass-blur);border:1px solid var(--p31-glass-border);border-radius:var(--p31-radius-lg);padding:var(--p31-space-lg);max-width:320px;width:100%;text-align:center}.pin-panel h2{font-size:var(--p31-type-h2);margin-bottom:var(--p31-space-sm)}.pin-panel p{color:var(--p31-text-secondary);font-size:var(--p31-type-body);margin-bottom:var(--p31-space-md)}.pin-panel input{width:100%;padding:var(--p31-space-sm) var(--p31-space-md);border-radius:var(--p31-radius-sm);border:1px solid var(--p31-glass-border);background:#0003;color:var(--p31-text);font-size:var(--p31-type-h2);text-align:center;letter-spacing:.5em;margin-bottom:var(--p31-space-md)}.pin-panel .btn{width:100%}#tourOverlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:none;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}#tourOverlay.active{display:flex}.tour-card{background:var(--p31-surface);border:1px solid var(--p31-glass-border);border-radius:var(--p31-radius-lg);padding:var(--p31-space-xl);max-width:420px;width:90%;position:relative}.tour-close{position:absolute;top:12px;right:12px;background:none;border:none;color:var(--p31-text-secondary);font-size:18px;cursor:pointer;min-width:36px;min-height:36px;z-index:1}.tour-step h2{font-size:var(--p31-scale-lg);font-weight:700;margin-bottom:var(--p31-space-md);color:var(--p31-accent)}.tour-step p{font-size:var(--p31-scale-sm);color:var(--p31-text-secondary);line-height:1.6;margin-bottom:var(--p31-space-sm)}.tour-footer{display:flex;align-items:center;justify-content:space-between;margin-top:var(--p31-space-lg)}.tour-dots{display:flex;gap:6px}.tour-dot{width:8px;height:8px;border-radius:50%;background:var(--p31-glass-border);transition:all var(--p31-duration-fast) ease}.tour-dot.active{background:var(--p31-accent);width:24px;border-radius:4px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:none;align-items:center;justify-content:center;z-index:10001}.modal-overlay.active{display:flex}
