:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background:var(--body-bg);--text:#eef6ef;--muted:#aebbb4;--subtle:#c9d6cf;--accent:#d9b66a;--primary:#5eead4;--primary-strong:#7dff6a;--primary-text:#06110f;--body-bg:#101411;--page-bg:#111612;--page-glow:#7cff001f;--page-sheen:#ffffff0a;--topbar-bg:#101411e6;--panel-bg:#171d19;--panel-strong:#1e2621;--field-bg:#101612;--border:#eef6ef21;--border-strong:#eef6ef33;--shadow:#0000003d;--brand-filter:invert(1) hue-rotate(180deg) saturate(1.2);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--text:#1e2930;--muted:#65737a;--subtle:#52636b;--accent:#8a5a14;--primary:#0f766e;--primary-strong:#0f766e;--primary-text:#fff;--body-bg:#f7f3ea;--page-bg:#f8f4eb;--page-glow:#7cff0033;--page-sheen:#ffffffe0;--topbar-bg:#f7f3eae6;--panel-bg:#fffdf8;--panel-strong:#fff;--field-bg:#fff;--border:#1e29301f;--border-strong:#1e293029;--shadow:#362d1a14;--brand-filter:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}a{color:inherit}.page{background:radial-gradient(circle at top right, var(--page-glow), transparent 34rem), linear-gradient(180deg, var(--page-sheen), #fff0), var(--page-bg);min-height:100vh}.topbar{border-bottom:1px solid var(--border);background:var(--topbar-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:3;align-items:center;gap:18px;height:64px;padding:0 28px;display:flex;position:sticky;top:0}.brand{align-items:center;width:144px;height:44px;text-decoration:none;display:inline-flex}.brand img{width:100%;height:auto;filter:var(--brand-filter);display:block}.current-app{color:var(--muted);font-size:.92rem}.topbar nav{align-items:center;gap:14px;margin-left:auto;display:flex}.topbar nav a{color:var(--subtle);font-weight:600;text-decoration:none}.theme-toggle{border:1px solid var(--border);background:color-mix(in srgb, var(--panel-strong) 82%, transparent);border-radius:8px;grid-template-columns:repeat(2,minmax(56px,1fr));align-items:center;min-height:34px;padding:3px;display:inline-grid}.theme-toggle button{min-width:0;min-height:28px;color:var(--muted);cursor:pointer;text-transform:capitalize;background:0 0;border:0;border-radius:6px;font-size:.78rem;font-weight:800}.theme-toggle button.active{background:var(--primary);color:var(--primary-text);box-shadow:0 6px 16px color-mix(in srgb, var(--primary) 24%, transparent)}main{width:min(1040px,100vw - 32px);margin:0 auto;padding:40px 0 72px}.hero{justify-content:space-between;align-items:center;gap:28px;min-height:360px;display:flex}.hero-copy{flex:560px}.hero-logo{width:min(560px,92vw);height:auto;filter:var(--brand-filter);margin:-12px 0 -20px;display:block}.hero p{max-width:560px;color:var(--subtle);font-size:1.18rem;line-height:1.6}.hero-action{flex:0 0 230px;align-content:center;place-items:center;gap:18px;min-height:230px;display:grid}.hero-icon{width:min(176px,36vw);height:auto;filter:var(--brand-filter) drop-shadow(0 20px 26px #00000038)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.08em;margin:0 0 10px;font-size:.76rem;font-weight:800}.button,.text-button{cursor:pointer;border:0;border-radius:8px;font-weight:800}.button{min-height:44px;color:var(--primary-text);background:var(--primary);box-shadow:0 10px 24px color-mix(in srgb, var(--primary) 24%, transparent);padding:0 18px}.button:disabled{cursor:default;opacity:.62}.button.secondary{color:var(--text);background:var(--panel-strong);border:1px solid var(--border);box-shadow:none;align-items:center;text-decoration:none;display:inline-flex}.text-button{color:var(--primary-strong);background:0 0}.launcher,.miniapp,.auth-gate,.empty-state,.setup-missing{background:var(--panel-bg);border:1px solid var(--border);box-shadow:0 18px 40px var(--shadow);border-radius:8px;padding:26px}.hosted-app{width:min(1720px,100vw - 32px);margin-left:50%;transform:translate(-50%)}.hosted-app-frame{border:1px solid var(--border);width:100%;height:max(760px,100vh - 150px);box-shadow:0 18px 40px var(--shadow);background:#f7f1e8;border-radius:8px;display:block}.signed-out-launcher{box-shadow:none}.section-title{justify-content:space-between;align-items:center;gap:18px;margin-bottom:20px;display:flex}.section-title h2,.hello-list h2,.miniapp-header h1,.auth-gate h1,.empty-state h1{margin:0}.badge{border:1px solid var(--border);background:var(--panel-strong);color:var(--muted);white-space:nowrap;border-radius:999px;padding:8px 12px;font-size:.86rem;font-weight:700}.badge.ok{color:var(--primary-strong);border-color:color-mix(in srgb, var(--primary) 32%, transparent);background:color-mix(in srgb, var(--primary) 12%, var(--panel-strong))}.app-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;display:grid}.app-card{border:1px solid var(--border);background:var(--panel-strong);border-radius:8px;flex-direction:column;justify-content:space-between;min-height:124px;padding:18px;text-decoration:none;transition:transform .16s,border-color .16s;display:flex}.app-card:hover{border-color:color-mix(in srgb, var(--primary) 42%, transparent);transform:translateY(-2px)}.app-card-title{align-items:center;gap:10px;font-size:1.14rem;font-weight:850;display:flex}.app-card-title img{width:34px;height:34px;filter:var(--brand-filter);flex:none}.app-card small,.muted{color:var(--muted);line-height:1.5}.miniapp-header{margin-bottom:24px}.miniapp-header p:last-child{color:var(--subtle);line-height:1.6}.hello-form{gap:9px;margin-bottom:26px;display:grid}.hello-form label{font-weight:800}.hello-row{gap:10px;display:flex}.hello-row input{border:1px solid var(--border-strong);background:var(--field-bg);min-width:0;min-height:44px;color:var(--text);border-radius:8px;flex:1;padding:0 13px}.hello-list ul{gap:10px;margin:14px 0 0;padding:0;list-style:none;display:grid}.hello-list li{border:1px solid var(--border);background:var(--panel-strong);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;display:flex}.hello-list li span{font-weight:800}.hello-list time{color:var(--muted);font-size:.88rem}.memory-game{gap:18px;display:grid;overflow:hidden}.memory-top{justify-content:space-between;align-items:start;gap:16px;display:flex}.memory-top h1{letter-spacing:0;margin:0;font-size:clamp(2.6rem,8vw,5.8rem);line-height:.9}.memory-new{border:1px solid var(--border);background:var(--primary);min-height:42px;color:var(--primary-text);cursor:pointer;white-space:nowrap;border-radius:8px;padding:0 14px;font-weight:850}.memory-controls{border:1px solid var(--border);background:var(--panel-strong);border-radius:8px;grid-template-columns:repeat(3,minmax(82px,1fr));width:min(390px,100%);min-height:42px;padding:4px;display:inline-grid}.memory-controls button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;font-size:.82rem;font-weight:850}.memory-controls button.active{color:#170d07;background:#d89b3d}.memory-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.memory-stats div{border:1px solid var(--border);background:var(--panel-strong);border-radius:8px;min-width:0;padding:12px}.memory-stats span,.memory-finish span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:800;display:block}.memory-stats strong{margin-top:4px;font-size:clamp(1.25rem,4vw,1.7rem);line-height:1;display:block}.memory-board{--memory-columns:4;grid-template-columns:repeat(var(--memory-columns), minmax(0, 1fr));gap:clamp(8px,2vw,12px);display:grid}.memory-tile{aspect-ratio:1;cursor:pointer;perspective:900px;background:0 0;border:0;min-width:0;padding:0}.memory-tile:disabled{cursor:default}.memory-tile-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .22s;display:block;position:relative}.memory-tile.visible .memory-tile-inner{transform:rotateY(180deg)}.memory-back,.memory-face{backface-visibility:hidden;border-radius:8px;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.memory-back{border:1px solid color-mix(in srgb, #d89b3d 46%, var(--border));background:linear-gradient(135deg, #d89b3d42, transparent 48%), linear-gradient(315deg, #50c8782e, transparent 52%), var(--panel-strong)}.memory-back span{aspect-ratio:1;border:2px solid #f3c86abd;border-radius:50%;width:45%;box-shadow:0 0 0 12px #d89b3d2e,inset 0 0 0 10px #50c87829}.memory-face{border:1px solid var(--border-strong);background:linear-gradient(180deg, #fff7e8f5, #fae8c6e6), var(--panel-bg);transform:rotateY(180deg)}.memory-face svg{filter:drop-shadow(0 12px 18px #0003);width:88%;height:88%}.memory-tile.matched .memory-face{border-color:color-mix(in srgb, var(--primary) 45%, var(--border));box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--primary) 18%, transparent)}.memory-finish{border:1px solid var(--border);background:var(--panel-strong);border-radius:8px;justify-content:space-between;align-items:center;gap:14px;min-height:58px;padding:12px 14px;display:flex}.memory-finish strong{font-size:1.05rem}.memory-finish.visible{border-color:color-mix(in srgb, var(--primary) 44%, var(--border));background:color-mix(in srgb, var(--primary) 12%, var(--panel-strong))}.memory-doofy{border:1px solid color-mix(in srgb, #d89b3d 42%, var(--border));background:linear-gradient(135deg, #d89b3d33, transparent 46%), var(--panel-strong);box-shadow:0 18px 40px var(--shadow);border-radius:8px;grid-template-columns:minmax(160px,240px) 1fr;align-items:center;gap:18px;padding:18px;display:grid}.memory-doofy h2{letter-spacing:0;margin:0;font-size:clamp(1.8rem,5vw,3rem);line-height:1}.doofy-svg{width:100%;max-height:220px;overflow:visible}.doofy-arm{fill:none;stroke:#d89b3d;stroke-linecap:round;stroke-width:22px}.doofy-paw{fill:#f3c86a;stroke:#8a4f18;stroke-width:5px}.doofy-burst{fill:#f3c86a;opacity:.95;transform-origin:212px 44px;animation:.78s ease-out both doofy-pop}.doofy-arm.raised,.doofy-paw.raised{transform-origin:160px 120px;animation:.9s ease-out both doofy-high-five}@keyframes doofy-high-five{0%{transform:rotate(-14deg)translateY(18px)}55%{transform:rotate(7deg)translateY(-5px)}to{transform:rotate(0)translateY(0)}}@keyframes doofy-pop{0%{opacity:0;transform:scale(.6)rotate(-10deg)}70%{opacity:1;transform:scale(1.12)rotate(4deg)}to{opacity:.95;transform:scale(1)rotate(0)}}.pull-finger-game,.ear-game{gap:18px;display:grid;overflow:hidden}.pull-top,.ear-top{justify-content:space-between;align-items:start;gap:16px;display:flex}.pull-top h1,.ear-top h1{letter-spacing:0;margin:0;font-size:clamp(2.3rem,7vw,5.4rem);line-height:.9}.pull-reset,.ear-reset{border:1px solid var(--border);background:var(--primary);min-height:42px;color:var(--primary-text);cursor:pointer;white-space:nowrap;border-radius:8px;padding:0 14px;font-weight:850}.pull-stats,.ear-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.pull-stats div,.ear-stats div{border:1px solid var(--border);background:var(--panel-strong);border-radius:8px;min-width:0;padding:12px}.pull-stats span,.ear-stats span,.pull-message span,.ear-lost span,.toilet-prize span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:800;display:block}.pull-stats strong,.ear-stats strong{margin-top:4px;font-size:clamp(1.25rem,4vw,1.7rem);line-height:1;display:block}.pull-stage{border:1px solid var(--border);background:radial-gradient(circle at 80% 30%, #d89b3d29, transparent 30rem), var(--panel-strong);border-radius:8px;padding:clamp(14px,3vw,24px)}.pull-meter,.ear-progress{border:1px solid var(--border);background:var(--field-bg);border-radius:999px;height:16px;overflow:hidden}.pull-meter span,.ear-progress span{border-radius:inherit;background:linear-gradient(90deg,#50c878,#f3c86a,#d9480f);height:100%;transition:width .12s;display:block}.pull-scene{touch-action:none;-webkit-user-select:none;user-select:none;place-items:center;min-height:360px;display:grid;position:relative}.pull-person{filter:drop-shadow(0 18px 28px #0000003d);width:min(520px,100%);height:auto}.finger-handle{cursor:grab;touch-action:none;background:#f2c08e;border:0;border-radius:28px 20px 20px 28px;width:78px;height:54px;transition:transform .1s;position:absolute;top:60%;left:calc(50% - 18px);box-shadow:0 12px 20px #0003}.finger-handle.pulling{cursor:grabbing;transition:none}.finger-handle span{background:#ffd2a8;border-radius:999px;position:absolute;inset:12px 10px 12px 18px}.fart-cloud{opacity:0;pointer-events:none;gap:6px;display:flex;position:absolute;bottom:15%;right:18%}.fart-cloud span{filter:blur(1px);background:#708b5270;border-radius:50%;width:34px;height:34px}.fart-cloud span:nth-child(2){width:44px;height:44px;margin-top:-14px}.fart-cloud.pop{animation:.86s ease-out both fart-puff}@keyframes fart-puff{0%{opacity:0;transform:translateY(10px)scale(.6)}24%{opacity:1}to{opacity:0;transform:translate(48px,-34px)scale(1.55)}}.pull-message{border:1px solid var(--border);background:var(--panel-strong);border-radius:8px;min-height:58px;padding:12px 14px}.pull-message strong{margin-bottom:5px;font-size:1.12rem;display:block}.ear-tools{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.ear-tools button{border:1px solid var(--border);background:var(--panel-strong);min-height:58px;color:var(--text);cursor:pointer;border-radius:8px;padding:8px;font-weight:850}.ear-tools button.active{border-color:color-mix(in srgb, #f3c86a 62%, var(--border));background:color-mix(in srgb, #f3c86a 18%, var(--panel-strong))}.ear-tools span{color:#23170b;background:#f3c86a;border-radius:50%;width:28px;height:28px;margin:0 auto 5px;font-weight:950;line-height:28px;display:block}.ear-board{grid-template-columns:minmax(0,1.25fr) minmax(240px,.75fr);align-items:stretch;gap:16px;display:grid}.ear-canvas{border:1px solid var(--border);background:radial-gradient(circle at 50% 45%, #d89b3d3d, transparent 20rem), var(--panel-strong);border-radius:8px;min-height:440px;position:relative;overflow:hidden}.ear-shape{filter:drop-shadow(0 18px 30px #0003);width:80%;height:94%;position:absolute;inset:4% 10% 2%}.wax-chunk{aspect-ratio:1;cursor:crosshair;background:radial-gradient(circle at 34% 30%,#facc15,#b7791f 72%);border:3px solid #5c361152;border-radius:48% 42% 54% 38%;position:absolute;transform:translate(-50%,-50%);box-shadow:inset -8px -10px #5c36112e,0 10px 18px #00000029}.wax-chunk:hover{outline:3px solid #facc1557}.ear-tool-cursor{color:#23170b;background:#f3c86a;border-radius:18px;place-items:center;width:58px;height:58px;font-size:1.5rem;font-weight:950;display:grid;position:absolute;bottom:7%;left:7%;box-shadow:0 14px 24px #0003}.ear-tool-cursor.pickaxe{transform:rotate(-14deg)}.ear-tool-cursor.vacuum{border-radius:999px 18px 18px 999px}.ear-side{border:1px solid var(--border);background:var(--panel-strong);border-radius:8px;align-content:start;gap:14px;padding:16px;display:grid}.ear-side p{color:var(--subtle);margin:0;font-weight:700;line-height:1.5}.toilet-prize,.ear-lost{border:1px solid var(--border);background:color-mix(in srgb, var(--primary) 10%, var(--panel-bg));border-radius:8px;padding:14px}.toilet-prize svg{width:min(220px,100%);margin:0 auto 10px;display:block}.toilet-prize strong,.ear-lost strong{font-size:1.14rem;display:block}.auth-gate,.empty-state,.setup-missing{text-align:center}.gate-icon{width:92px;height:92px;filter:var(--brand-filter);margin-bottom:14px}@media (width<=720px){.topbar{flex-wrap:wrap;gap:10px;height:auto;min-height:64px;padding:10px 16px}.brand{width:120px;height:36px}.current-app{order:3;width:100%}.topbar nav{gap:10px}.theme-toggle{grid-template-columns:repeat(2,minmax(42px,1fr))}.theme-toggle button{font-size:.72rem}main{padding-top:24px}.hero,.section-title,.memory-top,.memory-finish,.memory-doofy,.pull-top,.ear-top,.hello-row,.hello-list li{flex-direction:column;align-items:stretch}.hero{justify-content:center}.hero-logo{width:min(420px,100%);margin:-6px 0 -10px}.hero-action{min-height:auto}.memory-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.memory-board{grid-template-columns:repeat(4,minmax(0,1fr))}.memory-doofy{text-align:center;grid-template-columns:1fr}.doofy-svg{justify-self:center;max-width:240px}.pull-stats,.ear-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.pull-scene{min-height:300px}.finger-handle{width:68px;top:62%}.ear-tools{grid-template-columns:repeat(2,minmax(0,1fr))}.ear-board{grid-template-columns:1fr}.ear-canvas{min-height:360px}}@media (width<=480px){.memory-game{padding:18px}.memory-controls{grid-template-columns:1fr}.memory-board{gap:7px}.memory-stats div{padding:10px}.pull-stats,.ear-stats{grid-template-columns:1fr}.pull-stage,.ear-side{padding:12px}.ear-canvas{min-height:300px}}
