:root{--p31-base: 16px;--p31-bg: oklch(10% .01 240);--p31-surface: oklch(15% .015 240);--p31-surface2: oklch(22% .02 240);--p31-accent: oklch(65% .18 195);--p31-accent-alt: oklch(65% .18 285);--p31-accent-violet: oklch(65% .18 285);--p31-accent-gold: oklch(65% .18 15);--p31-accent-green: oklch(65% .18 105);--p31-accent-red: oklch(65% .18 20);--p31-accent-iris: oklch(65% .18 270);--p31-text: oklch(96% .005 240);--p31-text-secondary: oklch(80% .01 240);--p31-text-tertiary: oklch(78% .01 240);--p31-glass-bg: oklch(100% .01 240 / .04);--p31-glass-border: oklch(100% .01 240 / .08);--p31-glass-border-hover: oklch(100% .01 240 / .15);--p31-glass-shadow: 0 8px 32px rgba(0,0,0,.15);--p31-glass-blur: blur(12px);--p31-glass-bg-strong: oklch(100% .01 75 / .22);--p31-glass-bg-overlay: oklch(100% .01 75 / .1);--p31-glass-bg-light: oklch(100% .01 75 / .1);--p31-glass-border-strong: oklch(100% .01 75 / .16);--p31-glass-border-strong-hover: oklch(100% .01 75 / .25);--p31-glow-cyan: 0 0 20px rgba(0,240,255,.25);--p31-glow-neon: 0 0 6px oklch(90.5% .155 194.8), 0 0 20px oklch(90.5% .155 194.8 / .3);--p31-glow-magenta: 0 0 6px oklch(70.2% .322 328.4), 0 0 20px oklch(70.2% .322 328.4 / .3);--p31-glow-violet: 0 0 6px oklch(67% .234 309.1), 0 0 20px oklch(67% .234 309.1 / .3);--p31-glow-amber: 0 0 6px oklch(88.7% .182 95.3), 0 0 20px oklch(88.7% .182 95.3 / .3);--p31-glow-mint: 0 0 6px oklch(87.6% .228 152.5), 0 0 20px oklch(87.6% .228 152.5 / .3);--p31-glow-coral: 0 0 6px oklch(71.2% .181 22.8), 0 0 20px oklch(71.2% .181 22.8 / .3);--p31-neon: oklch(90.5% .155 194.8);--p31-neon-dim: oklch(90.5% .155 194.8 / .35);--p31-neon-faint: oklch(90.5% .155 194.8 / .08);--p31-neon-ghost: oklch(90.5% .155 194.8 / .03);--p31-neon-cyan: oklch(90.5% .155 194.8);--p31-neon-magenta: oklch(70.2% .322 328.4);--p31-neon-violet: oklch(67% .234 309.1);--p31-neon-amber: oklch(88.7% .182 95.3);--p31-neon-mint: oklch(87.6% .228 152.5);--p31-neon-coral: oklch(71.2% .181 22.8);--p31-neon-orange: oklch(75.4% .164 50.4);--p31-neon-blue: oklch(80.4% .146 219.5);--p31-neon-lavender: oklch(62% .279 290.8);--p31-neon-pink: oklch(67.4% .293 340.4);--p31-surface-s1: oklch(0% 0 0);--p31-surface-s2: oklch(4.9% 0 0);--p31-surface-s3: oklch(6.9% 0 0);--p31-surface-s4: oklch(10.5% 0 0);--p31-status-online: oklch(65% .18 105);--p31-status-offline: oklch(78% .01 240);--p31-status-warning: oklch(65% .18 15);--p31-status-error: oklch(65% .18 20);--p31-status-info: oklch(65% .18 195);--p31-scale-xs: calc(var(--p31-base) * .75);--p31-scale-sm: var(--p31-base);--p31-scale-md: calc(var(--p31-base) * 1.3333);--p31-scale-lg: calc(var(--p31-base) * 1.7777);--p31-scale-xl: calc(var(--p31-base) * 2.3703);--p31-scale-2xl: calc(var(--p31-base) * 3.1604);--p31-scale-3xl: calc(var(--p31-base) * 4.2139);--p31-scale-4xl: calc(var(--p31-base) * 5.6186);--p31-type-caption: clamp(var(--p31-scale-xs), .8vw, var(--p31-scale-sm));--p31-type-body: clamp(calc(var(--p31-base) * .95), 1vw + .5rem, var(--p31-scale-sm));--p31-type-label: var(--p31-scale-sm);--p31-type-h3: clamp(var(--p31-scale-md), 2vw, var(--p31-scale-lg));--p31-type-h2: clamp(var(--p31-scale-lg), 3.5vw, var(--p31-scale-xl));--p31-type-h1: clamp(var(--p31-scale-xl), 5.6vw, var(--p31-scale-2xl));--p31-type-display: clamp(var(--p31-scale-2xl), 7vw, var(--p31-scale-3xl));--p31-font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--p31-font-mono: ui-monospace, SFMono-Regular, "Fira Code", "Fira Mono", "Roboto Mono", "JetBrains Mono", Menlo, Monaco, Consolas, monospace;--p31-font-display: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--p31-duration-fast: .1s;--p31-duration-normal: .3s;--p31-duration-slow: .5s;--p31-easing-smooth: cubic-bezier(.4, 0, .2, 1);--p31-easing-snappy: cubic-bezier(.34, 1.56, .64, 1);--p31-easing-linear: linear;--p31-speed-factor: 1;--p31-starfield-hearth: oklch(55% .15 35);--p31-starfield-teal: oklch(60% .08 185);--p31-starfield-remembrance: oklch(95% .01 80);--p31-starfield-particle-teal: oklch(70% .12 185 / .6);--p31-starfield-particle-coral: oklch(65% .14 40 / .5);--p31-blur-subtle: 8px;--p31-blur-standard: 12px;--p31-blur-strong: 24px;--p31-space-xs: clamp(var(--p31-scale-xs), 1vw, var(--p31-scale-sm));--p31-space-sm: clamp(var(--p31-scale-sm), 1.5vw, var(--p31-scale-md));--p31-space-md: clamp(var(--p31-scale-md), 2.5vw, var(--p31-scale-lg));--p31-space-lg: clamp(var(--p31-scale-lg), 3.5vw, var(--p31-scale-xl));--p31-space-xl: clamp(var(--p31-scale-xl), 5vw, var(--p31-scale-2xl));--p31-space-2xl: clamp(var(--p31-scale-2xl), 6.5vw, var(--p31-scale-3xl));--p31-space-tiny: 2px;--p31-radius-sm: calc(var(--p31-scale-sm) / 2);--p31-radius-md: calc(var(--p31-scale-md) / 2);--p31-radius-lg: calc(var(--p31-scale-lg) / 2);--p31-radius-xl: calc(var(--p31-scale-xl) / 2);--p31-radius-full: 9999px;--p31-radius-candy: 24px;--p31-touch-min: 48px;--p31-touch-recommended: 56px;--p31-touch-large: 64px;--p31-z-starfield: 0;--p31-z-topbar: 10;--p31-z-toast: 9999;--p31-z-crisis: 99999;--p31-z-skip-link: 100;--p31-topbar-height: 64px;--p31-z-content: 1;--p31-z-floating: 60;--p31-space-3xl: 64px}:root [data-brand=p31ca]{--p31-glass-bg: oklch(14% .02 260 / .35);--p31-glass-border: oklch(100% .01 240 / .12);--p31-glass-border-hover: oklch(100% .01 240 / .25);--p31-glass-blur: blur(24px)}:root [data-brand=phosphorus31]{--p31-glass-bg: oklch(99% .01 85 / .55);--p31-glass-border: oklch(80% .02 75 / .3);--p31-glass-border-hover: oklch(70% .03 70 / .4);--p31-glass-blur: blur(16px)}:root [data-brand=willow]{--p31-glass-bg: rgba(255, 248, 240, .7);--p31-glass-border: rgba(200, 180, 160, .25);--p31-glass-blur: blur(16px);--p31-text: oklch(25% .02 80);--p31-text-secondary: oklch(55% .02 75);--p31-accent: oklch(65% .18 45);--p31-accent-alt: oklch(60% .15 200);--p31-accent-gold: oklch(72% .14 80);--p31-accent-green: oklch(70% .12 120);--p31-accent-red: oklch(62% .15 10);--p31-font-sans: "Comic Sans MS", "Chalkboard SE", cursive, sans-serif;--p31-font-display: "Comic Sans MS", "Chalkboard SE", cursive;--p31-radius-sm: 12px;--p31-radius-md: 20px;--p31-radius-lg: 28px;--p31-radius-xl: 40px;--p31-radius-full: 9999px;--p31-space-xs: .5rem;--p31-space-sm: .75rem;--p31-space-md: 1.25rem;--p31-space-lg: 2rem;--p31-space-xl: 2.5rem;--p31-space-2xl: 4rem;--p31-duration-fast: .2s;--p31-duration-normal: .4s;--p31-duration-slow: .6s;--p31-easing-smooth: cubic-bezier(.34, 1.56, .64, 1);--p31-easing-snappy: cubic-bezier(.34, 1.56, .64, 1);--p31-touch-min: 56px;--p31-touch-recommended: 64px}[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(4px)}[data-spoons="3"]{--p31-speed-factor: .5;--p31-glass-blur: blur(8px)}[data-spoons="4"]{--p31-speed-factor: .75;--p31-glass-blur: blur(12px)}[data-spoons="5"]{--p31-speed-factor: 1;--p31-glass-blur: blur(16px)}[data-spoons="2"]{--p31-speed-factor: .25;--p31-glass-blur: blur(8px)}[data-spoons="3"]{--p31-speed-factor: .5;--p31-glass-blur: blur(12px)}[data-spoons="4"]{--p31-speed-factor: .75}[data-spoons="5"]{--p31-speed-factor: 1}@media(prefers-reduced-motion:reduce){:root{--p31-speed-factor: 0}}[data-dark-mode=true]{--p31-glass-bg: rgba(30, 28, 26, .8);--p31-glass-border: rgba(80, 75, 70, .3);--p31-text: oklch(90% .01 80);--p31-text-secondary: oklch(65% .02 80)}[data-theme=light]{--p31-bg: #F8FAFC;--p31-surface: #FFFFFF;--p31-surface2: #F1F5F9;--p31-text: #0F172A;--p31-text-secondary: rgba(15,23,42,.6);--p31-text-tertiary: rgba(15,23,42,.3);--p31-glass-bg: rgba(0,0,0,.03);--p31-glass-border: rgba(0,0,0,.08);--p31-glass-border-hover: rgba(0,0,0,.15)}[data-portal=mesh]{--p31-portal-accent: var(--p31-accent);--p31-portal-glow: rgba(0, 240, 255, .08)}[data-portal=research]{--p31-portal-accent: var(--p31-accent-violet);--p31-portal-glow: rgba(167, 139, 250, .08)}[data-portal=quantum]{--p31-portal-accent: var(--p31-accent-alt);--p31-portal-glow: rgba(139, 92, 246, .08)}[data-portal=build]{--p31-portal-accent: var(--p31-accent-green);--p31-portal-glow: rgba(52, 211, 153, .08)}[data-portal=blog]{--p31-portal-accent: var(--p31-accent);--p31-portal-glow: rgba(0, 240, 255, .06)}[data-portal=passport]{--p31-portal-accent: var(--p31-accent-iris);--p31-portal-glow: rgba(139, 92, 246, .08)}[data-portal=care]{--p31-portal-accent: var(--p31-accent-gold);--p31-portal-glow: rgba(251, 191, 36, .08)}[data-portal] main,[data-portal] .portal-content{position:relative;z-index:1}[data-brand=phos]{--p31-accent: #3B82F6;--p31-accent-alt: #8B5CF6;--p31-accent-violet: #8B5CF6;--p31-accent-gold: #F59E0B;--p31-accent-green: #10B981;--p31-accent-red: #F43F5E;--p31-accent-iris: #06B6D4;--p31-accent-cyan: #06B6D4;--p31-text: #E2E8F0;--p31-text-secondary: #64748B;--p31-glass-bg: #121721;--p31-glass-border: #242C3D;--p31-glass-border-hover: #3B82F6;--p31-glass-shadow: 0 4px 12px rgba(0,0,0,.3);--p31-glass-blur: none;--p31-font-sans: "Plus Jakarta Sans", system-ui, sans-serif;--p31-font-mono: "Fira Code", ui-monospace, monospace;--p31-font-display: "Plus Jakarta Sans", system-ui, sans-serif;--p31-radius-sm: 6px;--p31-radius-md: 10px;--p31-radius-lg: 14px;--p31-radius-xl: 20px;--p31-touch-min: 40px;--p31-touch-recommended: 44px;--p31-touch-large: 48px}[data-brand=phos]{--site-bg: var(--p31-bg);--site-surface: var(--p31-surface);--site-accent: var(--p31-accent);--site-accent-alt: var(--p31-accent-alt);--site-accent-gold: var(--p31-accent-gold);--site-success: var(--p31-accent-green);--site-error: var(--p31-accent-red);--site-glass: var(--p31-glass-bg);--site-glass-hover: var(--p31-glass-border-hover);--site-border: var(--p31-glass-border);--site-border-strong: var(--p31-glass-border-hover);--site-text: var(--p31-text);--site-text-dim: var(--p31-text-secondary)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden}body{background:var(--p31-bg);color:var(--p31-text);font-family:var(--p31-font-sans);-webkit-font-smoothing:antialiased}.app-shell{display:flex;flex-direction:column;height:100vh;width:100vw;padding:12px;gap:12px;overflow:hidden}.topbar{flex-shrink:0;background:var(--p31-surface);border:1px solid var(--p31-glass-border);border-radius:var(--p31-radius-md);padding:10px 16px;display:flex;align-items:center;justify-content:space-between;gap:var(--p31-space-sm);z-index:var(--p31-z-topbar)}.topbar-left{display:flex;align-items:center;gap:var(--p31-space-sm);font-weight:800;font-size:var(--p31-scale-lg);color:#fff}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:4px;font-size:var(--p31-scale-xs);font-weight:700;font-family:var(--p31-font-mono);background:var(--p31-accent);color:#fff}.topbar-center{display:flex;align-items:center;gap:6px}.admin-tabs{display:flex;gap:6px}.admin-tab{background:transparent;color:var(--p31-text-secondary);border:1px solid transparent;padding:6px 12px;border-radius:var(--p31-radius-sm);font-size:var(--p31-scale-xs);font-weight:700;cursor:pointer;text-transform:uppercase;font-family:var(--p31-font-sans);transition:all var(--p31-duration-fast) ease}.admin-tab.active{background:var(--p31-surface2);color:#fff;border-color:var(--p31-accent)}.topbar-right{display:flex;align-items:center;gap:var(--p31-space-sm)}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--p31-accent-green);box-shadow:0 0 8px var(--p31-accent-green)}.spoon-dial{display:flex;gap:4px;align-items:center;background:#0006;border:1px solid var(--p31-glass-border);border-radius:var(--p31-radius-full);padding: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) ease;color:var(--p31-text-secondary)}.spoon-btn svg{width:16px;height:16px;fill:currentColor}.spoon-btn:hover{color:var(--p31-text)}.spoon-btn.active{background:var(--p31-accent-cyan);color:#000;box-shadow:0 0 12px #00f0ff66}:root{--glass-bg: rgba(18, 23, 33, .6);--glass-border: rgba(255, 255, 255, .1);--glass-blur: blur(12px);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .2)}.panel.glass{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--p31-radius-md);box-shadow:var(--glass-shadow)}.app-shell.has-glass .bottom-nav{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.app-grid{display:grid;grid-template-columns:320px 1fr 340px;gap:12px;flex:1;min-height:0;overflow:hidden}.panel{background:var(--p31-surface);border:1px solid var(--p31-glass-border);border-radius:var(--p31-radius-md);display:flex;flex-direction:column;overflow:hidden}.panel-header{background:var(--p31-bg);padding:10px 14px;font-size:var(--p31-scale-xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--p31-text-secondary);border-bottom:1px solid var(--p31-glass-border);flex-shrink:0;display:flex;justify-content:space-between;align-items:center}.panel-body{flex:1;overflow-y:auto;padding:var(--p31-space-md);display:flex;flex-direction:column;gap:var(--p31-space-md)}.member-card{background:var(--p31-surface2);padding:var(--p31-space-md);border-radius:var(--p31-radius-md);border:1px solid var(--p31-glass-border);display:flex;flex-direction:column;gap:var(--p31-space-xs)}.member-card-header{display:flex;justify-content:space-between;align-items:center}.member-name{font-weight:700;font-size:var(--p31-scale-sm)}.member-name.child{color:#ff6b8b}.member-name.teen{color:#00f2fe}.member-status{font-size:var(--p31-scale-xs)}.member-status.online{color:var(--p31-accent-green)}.member-app{font-size:var(--p31-scale-xs);color:var(--p31-text-secondary)}.spoon-admin-row{display:flex;align-items:center;justify-content:space-between;background:var(--p31-bg);padding:6px 10px;border-radius:var(--p31-radius-sm)}.spoon-admin-label{font-size:var(--p31-scale-xs);color:#94a3b8}.spoon-admin-pills{display:flex;gap:4px}.spoon-admin-pill{width:10px;height:10px;border-radius:2px;background:#242c3d;cursor:pointer}.spoon-admin-pill.active.child{background:var(--p31-accent-cyan);box-shadow:0 0 4px var(--p31-accent-cyan)}.spoon-admin-pill.active.teen{background:var(--p31-accent-alt);box-shadow:0 0 4px var(--p31-accent-alt)}.spoon-admin-pill.active.self{background:var(--p31-accent);box-shadow:0 0 4px var(--p31-accent)}.stats-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--p31-space-md)}.stat-card{background:var(--p31-surface2);padding:var(--p31-space-md);border-radius:var(--p31-radius-md);border:1px solid var(--p31-glass-border)}.stat-label{font-size:var(--p31-scale-xs);color:var(--p31-text-secondary);margin-bottom:4px}.stat-value{font-size:var(--p31-scale-xl);font-weight:800;font-family:var(--p31-font-mono)}.stat-value.green{color:var(--p31-accent-green)}.stat-value.cyan{color:var(--p31-accent-cyan)}.stat-value.blue{color:var(--p31-accent)}.status-card{background:var(--p31-surface2);padding:var(--p31-space-md);border-radius:var(--p31-radius-md);border:1px solid var(--p31-glass-border)}.status-card h4{font-size:var(--p31-scale-sm);color:var(--p31-accent);margin-bottom:6px}.status-card p{font-size:var(--p31-scale-xs);color:#94a3b8;line-height:1.5}.setting-group{background:var(--p31-surface2);padding:var(--p31-space-md);border-radius:var(--p31-radius-md);border:1px solid var(--p31-glass-border);display:flex;flex-direction:column;gap:8px}.setting-row{display:flex;justify-content:space-between;font-size:var(--p31-scale-sm);font-weight:600}.setting-val{color:var(--p31-accent-cyan);font-family:var(--p31-font-mono);font-size:var(--p31-scale-xs)}.range-slider{width:100%;accent-color:var(--p31-accent);cursor:pointer}.btn-autonomy{background:transparent;border:1px solid var(--p31-glass-border);color:var(--p31-text-secondary);padding:6px 12px;border-radius:var(--p31-radius-sm);font-size:var(--p31-scale-xs);font-weight:600;cursor:pointer;font-family:var(--p31-font-sans);transition:all var(--p31-duration-fast) ease}.btn-autonomy.active{border-color:var(--p31-accent);color:var(--p31-accent)}.btn-autonomy:hover{color:var(--p31-text)}.policy-editor{flex:1;background:var(--p31-bg);color:var(--p31-accent-cyan);border:none;padding:14px;font-family:var(--p31-font-mono);font-size:var(--p31-scale-xs);line-height:1.6;resize:none;outline:none}.copilot-chat{flex:1;padding:var(--p31-space-md);overflow-y:auto;display:flex;flex-direction:column;gap:var(--p31-space-sm)}.copilot-bubble{padding:10px 12px;border-radius:var(--p31-radius-md);font-size:var(--p31-scale-xs);line-height:1.5;max-width:92%}.copilot-bubble.ai{background:var(--p31-surface2);border:1px solid var(--p31-glass-border);color:var(--p31-text)}.copilot-input-bar{padding:10px;border-top:1px solid var(--p31-glass-border);display:flex;gap:8px;background:var(--p31-bg);flex-shrink:0}.copilot-input{flex:1;background:var(--p31-surface);border:1px solid var(--p31-glass-border);border-radius:var(--p31-radius-sm);padding:8px 12px;color:var(--p31-text);font-size:var(--p31-scale-xs);outline:none;font-family:var(--p31-font-sans)}.copilot-input:focus{border-color:var(--p31-accent)}.copilot-send{background:var(--p31-accent);color:#fff;border:none;padding:6px 12px;border-radius:var(--p31-radius-sm);font-size:var(--p31-scale-xs);font-weight:600;cursor:pointer;font-family:var(--p31-font-sans)}.bottom-nav{flex-shrink:0;background:var(--p31-surface);border:1px solid var(--p31-glass-border);border-radius:var(--p31-radius-md);display:flex;justify-content:center;gap:4px;padding:0 var(--p31-space-sm);overflow:hidden}.nav-item{flex:1;max-width:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--p31-text-secondary);border-radius:var(--p31-radius-sm);background:transparent;border:none;cursor:pointer;transition:all var(--p31-duration-fast) ease;padding:var(--p31-space-xs);min-height:48px;font-family:var(--p31-font-sans);font-size:var(--p31-scale-xs);font-weight:600}.nav-item:hover{background:var(--p31-surface2);color:var(--p31-text)}.nav-item.active{color:var(--p31-accent);background:#3b82f614}.nav-item svg{width:20px;height:20px;opacity:.7}.nav-item.active svg{opacity:1}.page{display:none;flex-direction:column;gap:0;height:100%}.page.active{display:flex}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--p31-space-sm) var(--p31-space-md);background:var(--p31-accent);color:#fff;border:none;border-radius:var(--p31-radius-sm);font-weight:600;font-size:var(--p31-scale-xs);cursor:pointer;transition:all var(--p31-duration-fast) ease;min-height:36px;min-width:36px;gap:var(--p31-space-xs);font-family:var(--p31-font-sans)}.btn:hover{opacity:.9}.btn:active{transform:scale(.97)}.btn.secondary{background:var(--p31-surface2);color:var(--p31-text);border:1px solid var(--p31-glass-border)}.toast{background:var(--p31-surface);border:1px solid var(--p31-glass-border);border-left:4px solid var(--p31-accent);padding:var(--p31-space-md);border-radius:var(--p31-radius-md);font-size:var(--p31-scale-xs);font-family:var(--p31-font-mono);box-shadow:0 10px 40px #00000080;max-width:360px}.toast.error{border-left-color:var(--p31-accent-red)}.toast.success{border-left-color:var(--p31-accent-green)}#rest-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:none;z-index:var(--p31-z-crisis);pointer-events:none}html[data-spoons="0"] #rest-overlay{display:block}html[data-spoons="0"] .app-shell>*: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}#break-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0e17f2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:calc(var(--p31-z-crisis) - 1);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--p31-space-md);padding:var(--p31-space-xl);text-align:center}.chat-bubble{background:var(--p31-surface2);border:1px solid var(--p31-glass-border);border-radius:var(--p31-radius-md);padding:var(--p31-space-sm) var(--p31-space-md);font-size:var(--p31-scale-sm);max-width:85%}.chat-bubble.companion{background:var(--p31-accent);color:#fff;border:none}.chat-bubble.user{align-self:flex-end}.chat-container{display:flex;flex-direction:column;gap:var(--p31-space-sm);padding:var(--p31-space-md);overflow-y:auto}.chat-input-bar{padding:var(--p31-space-md);border-top:1px solid var(--p31-glass-border);display:flex;gap:var(--p31-space-sm)}.chat-input-bar input{flex:1;background:var(--p31-surface2);border:1px solid var(--p31-glass-border);border-radius:var(--p31-radius-sm);padding:8px 12px;color:var(--p31-text);font-size:var(--p31-scale-sm);outline:none;font-family:var(--p31-font-sans)}.chat-input-bar input:focus{border-color:var(--p31-accent)}#tourOverlay{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}#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}*:focus-visible{outline:2px solid var(--p31-accent);outline-offset:2px}.sandbox-ide{display:grid;grid-template-columns:280px 1fr 300px;grid-template-rows:1fr 180px;grid-template-areas:"left center right" "left terminal terminal";gap:12px;flex:1;min-height:0;padding:0}.sandbox-left{grid-area:left}.sandbox-center{grid-area:center}.sandbox-right{grid-area:right}.sandbox-terminal{grid-area:terminal}.sandbox-editor{flex:1;background:#0b0e14;color:var(--p31-accent-cyan);border:none;padding:14px;font-family:var(--p31-font-mono);font-size:var(--p31-scale-xs);line-height:1.6;resize:none;outline:none}.sandbox-terminal-view{flex:1;background:#0b0e14;color:var(--p31-accent-green);border:none;padding:10px 14px;font-family:var(--p31-font-mono);font-size:11px;line-height:1.5;resize:none;outline:none;overflow-y:auto;white-space:pre-wrap}.sandbox-canvas-wrap{flex:1;position:relative;background:#0b0e14;border-radius:var(--p31-radius-sm);overflow:hidden}.sandbox-canvas-wrap canvas{display:block;width:100%;height:100%}.sandbox-controls{display:flex;flex-direction:column;gap:var(--p31-space-sm)}.sandbox-toolbar{display:flex;gap:6px;flex-wrap:wrap}.sandbox-toolbar button{background:var(--p31-surface2);border:1px solid var(--p31-glass-border);color:var(--p31-text-secondary);padding:4px 10px;border-radius:var(--p31-radius-sm);font-size:var(--p31-scale-xs);font-weight:600;cursor:pointer;transition:all var(--p31-duration-fast) ease;font-family:var(--p31-font-sans)}.sandbox-toolbar button:hover{border-color:var(--p31-accent);color:var(--p31-text)}.sandbox-toolbar button.active{background:var(--p31-accent);color:#fff;border-color:var(--p31-accent)}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}@media(max-width:1024px){.app-grid{grid-template-columns:1fr;overflow-y:auto}}@media(max-width:768px){.app-shell{padding:8px;gap:8px}.topbar{flex-direction:column;gap:8px;padding:8px 12px}.bottom-nav{gap:0}.nav-item{max-width:80px}}@media(max-width:480px){.stats-row{grid-template-columns:1fr}.sandbox-ide{grid-template-columns:1fr;grid-template-rows:200px 200px 140px;grid-template-areas:"center" "left" "terminal"}.sandbox-right{display:none}}
