.app-root,body{font-family:var(--font-sans)}body{background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);background-attachment:fixed}:root{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-weight-regular:400;--font-weight-medium:600;--font-weight-bold:700;--text-sm:14px;--text-md:16px;--text-lg:18px;--text-xl:20px;--brand-500:#667eea;--brand-600:#5568d3;--accent-500:#764ba2;--neutral-0:#fff;--neutral-50:#f9f9f9;--neutral-100:#f5f5f5;--neutral-200:#e0e0e0;--neutral-300:#cbd5e0;--neutral-500:#999;--neutral-600:#666;--neutral-700:#4a5568;--neutral-800:#333;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 2px 8px #0000001a;--shadow-md:0 4px 12px #0003}.app-root{min-height:100vh}.app-body{box-sizing:border-box;flex-direction:column;min-height:calc(100vh - 58px);padding-top:58px;display:flex}.app-agent__bar{z-index:999;height:3px;position:fixed;top:58px;left:0;right:0;overflow:hidden}.app-agent__bar[data-voice=listening]{background:#ffffff40}.app-agent__bar[data-voice=listening]:after{content:"";background:linear-gradient(90deg, transparent, var(--neutral-0), transparent);width:35%;height:100%;animation:.9s ease-in-out infinite app-agent-sweep;position:absolute;top:0;left:0}@keyframes app-agent-sweep{0%{transform:translate(-200%)}to{transform:translate(700%)}}.app-agent__bar[data-voice=processing]{background:linear-gradient(90deg, var(--brand-500), var(--accent-500), var(--brand-500));background-size:200% 100%;animation:1.6s ease-in-out infinite app-agent-breathe}@keyframes app-agent-breathe{0%,to{opacity:.75;background-position:0%}50%{opacity:1;background-position:100%}}.app-agent__overlay{z-index:990;background:#00000059;justify-content:center;align-items:center;display:flex;position:fixed;inset:61px 0 0}.app-agent__modal{background:var(--neutral-0);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);flex-direction:column;align-items:center;gap:16px;padding:36px 48px;display:flex}.app-agent__spinner{border:3px solid var(--neutral-200);border-top-color:var(--brand-500);border-radius:50%;width:40px;height:40px;animation:.75s linear infinite app-agent-spin}@keyframes app-agent-spin{to{transform:rotate(360deg)}}.app-agent__modal-text{font-size:var(--text-md);color:var(--neutral-700);margin:0}.assignment-tracker{border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-0);min-height:44px;box-shadow:var(--shadow-sm);background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;align-items:center;gap:6px;padding:6px 10px;display:inline-flex}.assignment-tracker__icon{font-size:18px}.assignment-tracker__value{font-variant-numeric:tabular-nums;color:var(--neutral-0)}.drawer-toggle{border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:5.4px;width:44px;height:44px;transition:transform .15s,background-color .15s;display:inline-flex}.drawer-toggle:hover{background:var(--neutral-100)}.drawer-toggle:active{transform:scale(.92)}.drawer-toggle__line{background:var(--neutral-800);border-radius:999px;width:18px;height:2px;transition:transform .2s,opacity .2s}.drawer-toggle.is-open .drawer-toggle__line:first-child{transform:translateY(5.4px)rotate(45deg)}.drawer-toggle.is-open .drawer-toggle__line:nth-child(2){opacity:0}.drawer-toggle.is-open .drawer-toggle__line:nth-child(3){transform:translateY(-5.4px)rotate(-45deg)}.drawer-overlay{opacity:0;pointer-events:none;z-index:1200;background:#0000008c;transition:opacity .2s;position:fixed;inset:0}.drawer-overlay.is-open{opacity:1;pointer-events:auto}.drawer-panel{background:var(--neutral-0);width:min(320px,80vw);height:100%;box-shadow:var(--shadow-md);flex-direction:column;transition:transform .25s;display:flex;position:absolute;top:0;left:0;transform:translate(-100%)}.drawer-panel.is-open{transform:translate(0)}.drawer-panel__header{font-size:var(--text-lg);font-weight:var(--font-weight-medium);border-bottom:1px solid var(--neutral-100);color:var(--neutral-800);padding:20px 20px 12px}.drawer-panel__nav{flex-direction:column;gap:8px;padding:16px 16px 24px;display:flex}.drawer-panel__item{text-align:left;background:var(--neutral-100);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-700);cursor:pointer;border:none;align-items:center;gap:10px;padding:12px 16px;transition:background-color .15s,transform .15s;display:flex}.drawer-panel__item:hover{background:var(--neutral-200)}.drawer-panel__item:active{transform:translateY(1px)}.drawer-panel__icon{font-size:var(--text-lg)}.drawer-panel__label{align-items:center;display:inline-flex}.tinybucks-counter{border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-0);cursor:pointer;min-height:44px;box-shadow:var(--shadow-sm);background:linear-gradient(135deg,#f6d365 0%,#fda085 100%);border:none;align-items:center;gap:6px;padding:6px 10px;display:inline-flex}.tinybucks-counter:hover{box-shadow:var(--shadow-md);transform:scale(1.02)}.tinybucks-counter__icon{font-size:18px}.tinybucks-counter__value{font-variant-numeric:tabular-nums;color:var(--neutral-0)}.app-header{background:var(--neutral-0);height:58px;box-shadow:var(--shadow-sm);z-index:1000;position:fixed;top:0;left:0;right:0}.app-header__content{justify-content:space-between;align-items:center;gap:12px;height:100%;padding:0 12px;display:flex}.app-header__title{font-size:var(--text-xl);font-weight:var(--font-weight-medium);color:var(--neutral-800)}.app-header__left,.app-header__right{align-items:center;gap:12px;display:flex}.app-header__stop-btn{border-radius:var(--radius-md);color:var(--neutral-0);font-size:var(--text-sm);font-weight:var(--font-weight-medium);min-height:44px;box-shadow:var(--shadow-sm);cursor:pointer;white-space:nowrap;background:#e53e3e;border:none;align-items:center;padding:6px 10px;display:inline-flex}.app-header__stop-btn:hover{background:#c53030}.app-header__stop-btn-label-short{padding-left:5px;padding-right:5px;display:none}@media (width<=480px){.app-header__stop-btn-label{display:none}.app-header__stop-btn-label-short{display:inline}}@media (width<=360px){.app-header__content{gap:8px;padding:0 8px}.app-header__left,.app-header__right{gap:8px}}.login-gate{background:var(--neutral-0);z-index:2000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.login-gate__card{text-align:center;background:0 0;width:100%;max-width:320px;padding:20px}.login-gate__message{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-700);margin-top:16px}.login-gate .loading-spinner{border:2px solid var(--brand-500);vertical-align:middle;border-top-color:#0000;border-radius:50%;width:16px;height:16px;animation:.6s linear infinite login-gate-spin;display:inline-block}@keyframes login-gate-spin{to{transform:rotate(360deg)}}.cf{background:var(--cf-bg,linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%));z-index:100;background-position:50%;background-size:cover;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.cf__header{z-index:10;pointer-events:none;background:0 0;justify-content:space-between;align-items:center;padding:10px 14px;display:flex;position:absolute;top:0;left:0;right:0}.cf__exit,.cf__tinybucks{pointer-events:auto}.cf__exit{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:7px 14px;transition:box-shadow .15s,transform .1s}.cf__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.cf__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;display:flex}.cf__tinybucks-icon{font-size:18px;line-height:1}.cf__tinybucks-value{font-size:var(--text-md);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.cf__status{color:var(--neutral-0);font-size:var(--text-lg);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;display:flex}.cf__spinner{border:4px solid #ffffff4d;border-top-color:var(--neutral-0);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite cf-spin}@keyframes cf-spin{to{transform:rotate(360deg)}}.cf__error-msg{text-align:center;max-width:280px;line-height:1.5}.cf__exit-btn{background:var(--neutral-0);border-radius:var(--radius-md);font-size:var(--text-md);font-weight:var(--font-weight-medium);cursor:pointer;border:none;padding:10px 24px}.cf__content{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:8px 12px 12px;display:flex;overflow:hidden auto}.cf__word-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);background:#fffffff2;flex-direction:column;flex-shrink:0;align-items:center;gap:6px;width:100%;max-width:320px;padding:10px 20px;display:flex}.cf__word{font-size:clamp(22px,5vw,32px);font-weight:var(--font-weight-bold);color:var(--neutral-800);text-align:center;text-transform:capitalize;margin:0}.cf__word-image{object-fit:contain;border-radius:var(--radius-sm);width:clamp(72px,18vw,110px);height:clamp(72px,18vw,110px)}.cf__board{--cf-gap:4px;--cf-pad:8px;--cf-cell:min(calc((100vw - 48px) / 7), 68px);gap:var(--cf-gap);padding:var(--cf-pad);background:#1a5fc8;border-radius:14px;flex-direction:row;flex-shrink:0;display:flex;box-shadow:0 6px 24px #00000059}.cf__col{gap:var(--cf-gap);cursor:default;border-radius:var(--radius-sm);background:0 0;border:none;flex-direction:column;padding:0;transition:background .12s;display:flex}.cf__col--active{cursor:pointer}.cf__col--active:hover{background:#ffffff26}.cf__col-arrow{color:#0000;flex-shrink:0;justify-content:center;align-items:center;height:20px;font-size:13px;display:flex}.cf__col-arrow--visible{color:#ffffffd9;animation:1s ease-in-out infinite cf-bounce-hint}@keyframes cf-bounce-hint{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}.cf__cell{width:var(--cf-cell);height:var(--cf-cell);background:#ffffffeb;border-radius:50%;justify-content:center;align-items:center;transition:background .12s;display:flex;overflow:hidden;box-shadow:inset 0 2px 6px #00000040}.cf__cell--player{background:#e53e3e;box-shadow:inset 0 2px 4px #0003,0 2px 6px #e53e3e80}.cf__cell--ai{background:#d69e2e;box-shadow:inset 0 2px 4px #0003,0 2px 6px #d69e2e80}.cf__cell--dropped{animation:.35s cubic-bezier(.34,1.56,.64,1) cf-drop-in}@keyframes cf-drop-in{0%{opacity:.4;transform:scale(.55)}60%{transform:scale(1.08)}80%{transform:scale(.96)}to{opacity:1;transform:scale(1)}}.cf__cell--winning{z-index:1;animation:.55s ease-in-out infinite alternate cf-win-pulse}@keyframes cf-win-pulse{0%{filter:brightness();transform:scale(1)}to{filter:brightness(1.35);transform:scale(1.18)}}.cf__checker-img{object-fit:contain;pointer-events:none;border-radius:50%;width:88%;height:88%}.cf__prompt{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#ffffffe6;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-height:36px;padding:7px 20px;display:flex}.cf__prompt[data-voice=listening]{color:var(--neutral-0);background:#38a169eb;animation:.9s ease-in-out infinite cf-prompt-listening}@keyframes cf-prompt-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 8px #38a16914, var(--shadow-sm)}}.cf__prompt[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeae6,#764ba2e6);animation:1.6s ease-in-out infinite cf-prompt-processing}@keyframes cf-prompt-processing{0%,to{opacity:.85}50%{opacity:1}}.cf__tb-anim{font-size:22px;font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards cf-tb-float;position:fixed;top:48px;right:20px}@keyframes cf-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (height>=700px){.cf__word-card{gap:8px;padding:12px 24px}.cf__content{gap:14px}}@media (width>=600px){.cf__board{--cf-cell:68px}.cf__content{justify-content:center}}.mm{background:var(--mm-bg,linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%));z-index:100;background-position:50%;background-size:cover;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.mm__header{z-index:10;pointer-events:none;background:0 0;justify-content:space-between;align-items:center;padding:10px 14px;display:flex;position:absolute;top:0;left:0;right:0}.mm__exit,.mm__tinybucks{pointer-events:auto}.mm__exit{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:7px 14px;transition:box-shadow .15s,transform .1s}.mm__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.mm__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;display:flex}.mm__tinybucks-icon{font-size:18px;line-height:1}.mm__tinybucks-value{font-size:var(--text-md);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.mm__status{color:var(--neutral-0);font-size:var(--text-lg);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;display:flex}.mm__spinner{border:4px solid #ffffff4d;border-top-color:var(--neutral-0);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite mm-spin}@keyframes mm-spin{to{transform:rotate(360deg)}}.mm__error-msg{text-align:center;max-width:280px;line-height:1.5}.mm__exit-btn{background:var(--neutral-0);border-radius:var(--radius-md);font-size:var(--text-md);font-weight:var(--font-weight-medium);cursor:pointer;border:none;padding:10px 24px}.mm__content{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:60px 12px 12px;display:flex;overflow:hidden auto}.mm__score{box-shadow:var(--shadow-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);background:#ffffffeb;border-radius:999px;flex-shrink:0;align-items:center;gap:8px;padding:5px 16px;display:flex}.mm__score-pairs{font-weight:var(--font-weight-bold);color:var(--brand-500)}.mm__grid{--mm-card-size:min(calc((100vw - 60px) / 2), 130px);--mm-gap:8px;grid-template-columns:repeat(2, var(--mm-card-size));grid-template-rows:repeat(4, var(--mm-card-size));gap:var(--mm-gap);flex-shrink:0;display:grid}.mm__card{width:var(--mm-card-size);height:var(--mm-card-size);perspective:900px;cursor:pointer}.mm__card--unclickable{cursor:default}.mm__card-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .45s cubic-bezier(.4,0,.2,1);position:relative}.mm__card--flipped .mm__card-inner,.mm__card--matched .mm__card-inner{transform:rotateY(180deg)}.mm__card-back,.mm__card-front{border-radius:var(--radius-lg);backface-visibility:hidden;box-shadow:var(--shadow-md);position:absolute;inset:0;overflow:hidden}.mm__card-back{background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);justify-content:center;align-items:center;display:flex}.mm__card-back-img{object-fit:cover;border-radius:var(--radius-lg);width:100%;height:100%}.mm__card-back-placeholder{color:#ffffffb3;-webkit-user-select:none;user-select:none;font-size:clamp(28px,8vw,48px)}.mm__card-front{background:var(--neutral-0);flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:6px;display:flex;transform:rotateY(180deg)}.mm__card--matched .mm__card-front{background:#d4edda;border:2.5px solid #38a169}.mm__card-img{object-fit:contain;border-radius:var(--radius-sm);flex-shrink:0;width:65%;height:55%}.mm__card-word{font-size:clamp(11px,3vw,15px);font-weight:var(--font-weight-bold);color:var(--neutral-800);text-align:center;text-transform:capitalize;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.2;display:-webkit-box;overflow:hidden}@keyframes mm-flip-pop{0%{transform:rotateY(180deg)scale(.85)}60%{transform:rotateY(180deg)scale(1.06)}80%{transform:rotateY(180deg)scale(.97)}to{transform:rotateY(180deg)scale(1)}}.mm__card--just-flipped .mm__card-inner{animation:.4s cubic-bezier(.34,1.56,.64,1) forwards mm-flip-pop}@keyframes mm-match-pulse{0%,to{filter:brightness();transform:rotateY(180deg)scale(1)}50%{filter:brightness(1.12);transform:rotateY(180deg)scale(1.06)}}.mm__card--match-anim .mm__card-inner{animation:.45s ease-in-out 2 mm-match-pulse}.mm__prompt{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#ffffffe6;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-height:36px;padding:7px 20px;display:flex}.mm__prompt[data-voice=listening]{color:var(--neutral-0);background:#38a169eb;animation:.9s ease-in-out infinite mm-prompt-listening}@keyframes mm-prompt-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 8px #38a16914, var(--shadow-sm)}}.mm__prompt[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeae6,#764ba2e6);animation:1.6s ease-in-out infinite mm-prompt-processing}@keyframes mm-prompt-processing{0%,to{opacity:.85}50%{opacity:1}}.mm__tb-anim{font-size:22px;font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards mm-tb-float;position:fixed;top:48px;right:20px}@keyframes mm-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (height>=640px){.mm__content{gap:16px}.mm__grid{--mm-gap:10px}}@media (width>=500px){.mm__grid{--mm-card-size:130px}}@media (width>=640px){.mm__grid{--mm-card-size:min(calc((100vw - 60px) / 4), calc((100vh - 200px) / 2), 160px);grid-template-columns:repeat(4, var(--mm-card-size));grid-template-rows:repeat(2, var(--mm-card-size))}}.ttt{background:var(--ttt-bg,linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%));z-index:100;background-position:50%;background-size:cover;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.ttt__header{z-index:10;pointer-events:none;justify-content:space-between;align-items:center;padding:10px 14px;display:flex;position:absolute;top:0;left:0;right:0}.ttt__exit,.ttt__tinybucks{pointer-events:auto}.ttt__exit{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:7px 14px;transition:box-shadow .15s,transform .1s}.ttt__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.ttt__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;display:flex}.ttt__tinybucks-icon{font-size:18px;line-height:1}.ttt__tinybucks-value{font-size:var(--text-md);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.ttt__status{color:var(--neutral-0);font-size:var(--text-lg);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;display:flex}.ttt__spinner{border:4px solid #ffffff4d;border-top-color:var(--neutral-0);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite ttt-spin}@keyframes ttt-spin{to{transform:rotate(360deg)}}.ttt__error-msg{text-align:center;max-width:280px;line-height:1.5}.ttt__exit-btn{background:var(--neutral-0);border-radius:var(--radius-md);font-size:var(--text-md);font-weight:var(--font-weight-medium);cursor:pointer;border:none;padding:10px 24px}.ttt__content{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:58px 16px 12px;display:flex;overflow:hidden}.ttt__score-bar{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;flex-direction:column;flex-shrink:0;align-items:center;gap:2px;padding:6px 20px;display:flex}.ttt__round-label{font-size:10px;font-weight:var(--font-weight-medium);color:var(--neutral-500);text-transform:uppercase;letter-spacing:.06em}.ttt__score-row{font-size:var(--text-sm);font-weight:var(--font-weight-bold);align-items:center;gap:10px;display:flex}.ttt__score-player{color:var(--brand-500)}.ttt__score-sep{color:var(--neutral-400);font-weight:var(--font-weight-medium)}.ttt__score-ai{color:var(--accent-500)}.ttt__win-pip{opacity:.25;background:currentColor;border-radius:50%;width:8px;height:8px;margin:0 1px;display:inline-block}.ttt__win-pip--filled{opacity:1}.ttt__word-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);background:#ffffffed;flex-direction:row;flex-shrink:0;align-items:center;gap:12px;width:100%;max-width:300px;padding:10px 14px;display:flex}.ttt__word-img{object-fit:contain;border-radius:var(--radius-sm);flex-shrink:0;width:68px;height:68px}.ttt__word-img-placeholder{border-radius:var(--radius-sm);background:#667eea1f;flex-shrink:0;width:68px;height:68px}.ttt__word-text{font-size:clamp(18px,5vw,26px);font-weight:var(--font-weight-bold);color:var(--neutral-800);text-transform:capitalize;text-align:center;flex:1;line-height:1.2}.ttt__board-wrap{flex-shrink:0;position:relative}.ttt__board{--ttt-cell:min(calc((100vw - 48px) / 3), 110px);--ttt-gap:8px;grid-template-columns:repeat(3, var(--ttt-cell));grid-template-rows:repeat(3, var(--ttt-cell));gap:var(--ttt-gap);display:grid}.ttt__cell{width:var(--ttt-cell);height:var(--ttt-cell);border-radius:var(--radius-md);cursor:default;box-shadow:var(--shadow-sm);-webkit-user-select:none;user-select:none;background:#ffffffd1;justify-content:center;align-items:center;transition:background .18s,transform .1s;display:flex}.ttt__cell--clickable{cursor:pointer;background:#fffffff2}.ttt__cell--clickable:hover{box-shadow:var(--shadow-md);background:#fff;transform:scale(1.04)}.ttt__cell--clickable:active{transform:scale(.97)}.ttt__cell--x{cursor:default;background:#667eeae0;animation:.25s cubic-bezier(.34,1.56,.64,1) ttt-place}.ttt__cell--o{cursor:default;background:#764ba2e0;animation:.25s cubic-bezier(.34,1.56,.64,1) ttt-place}@keyframes ttt-place{0%{opacity:.5;transform:scale(.55)}to{opacity:1;transform:scale(1)}}.ttt__cell--winning{box-shadow:0 0 0 3px #f6c90e, var(--shadow-md);z-index:1;animation:.45s ease-in-out 3 ttt-win-pulse}@keyframes ttt-win-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.ttt__symbol{object-fit:contain;filter:drop-shadow(0 1px 3px #00000040);width:60%;height:60%}.ttt__symbol-text{font-size:calc(var(--ttt-cell) * .44);color:var(--neutral-0);text-shadow:0 1px 4px #00000040;-webkit-user-select:none;user-select:none;font-weight:900;line-height:1}.ttt__round-banner{border-radius:var(--radius-lg);z-index:5;background:#000000a6;flex-direction:column;justify-content:center;align-items:center;gap:6px;animation:.3s ease-out ttt-banner-in;display:flex;position:absolute;inset:0}@keyframes ttt-banner-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.ttt__banner-emoji{font-size:36px;line-height:1}.ttt__banner-title{font-size:clamp(20px,6vw,28px);font-weight:var(--font-weight-bold);color:var(--neutral-0);text-align:center;text-shadow:0 1px 4px #00000080}.ttt__banner-sub{font-size:var(--text-sm);color:#fffc;text-align:center}.ttt__prompt{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#ffffffe6;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-height:36px;padding:7px 20px;display:flex}.ttt__prompt[data-voice=listening]{color:var(--neutral-0);background:#38a169eb;animation:.9s ease-in-out infinite ttt-listening}@keyframes ttt-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 8px #38a16914, var(--shadow-sm)}}.ttt__prompt[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeae6,#764ba2e6);animation:1.6s ease-in-out infinite ttt-processing}@keyframes ttt-processing{0%,to{opacity:.85}50%{opacity:1}}.ttt__tb-anim{font-size:22px;font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards ttt-tb-float;position:fixed;top:48px;right:20px}@keyframes ttt-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (height>=700px){.ttt__content{gap:14px}.ttt__board{--ttt-gap:10px}}@media (width>=480px){.ttt__board{--ttt-cell:120px}.ttt__word-card{max-width:340px}}@media (width>=640px){.ttt__board{--ttt-cell:min(calc((100vh - 340px) / 3), 150px)}.ttt__word-img,.ttt__word-img-placeholder{width:80px;height:80px}}.wam{background:var(--wam-bg,linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%));z-index:100;background-position:50%;background-size:cover;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.wam__header{z-index:10;pointer-events:none;justify-content:space-between;align-items:center;padding:10px 14px;display:flex;position:absolute;top:0;left:0;right:0}.wam__exit,.wam__tinybucks{pointer-events:auto}.wam__exit{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:7px 14px;transition:box-shadow .15s,transform .1s}.wam__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.wam__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;display:flex}.wam__tinybucks-icon{font-size:18px;line-height:1}.wam__tinybucks-value{font-size:var(--text-md);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.wam__status{color:var(--neutral-0);font-size:var(--text-lg);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;display:flex}.wam__spinner{border:4px solid #ffffff4d;border-top-color:var(--neutral-0);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite wam-spin}@keyframes wam-spin{to{transform:rotate(360deg)}}.wam__error-msg{text-align:center;max-width:280px;line-height:1.5}.wam__exit-btn{background:var(--neutral-0);border-radius:var(--radius-md);font-size:var(--text-md);font-weight:var(--font-weight-medium);cursor:pointer;border:none;padding:10px 24px}.wam__content{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:52px 16px 12px;display:flex;overflow-y:auto}.wam__word-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);background:#fffffff2;flex-direction:column;flex-shrink:0;align-items:center;gap:6px;width:100%;max-width:320px;padding:10px 20px;display:flex}.wam__word-img-wrap{flex-shrink:0;width:80px;height:80px}.wam__word-img{object-fit:contain;border-radius:var(--radius-sm);width:80px;height:80px}.wam__word-img-placeholder{border-radius:var(--radius-sm);background:var(--neutral-100,#f5f5f5);width:80px;height:80px}.wam__word-text{font-size:clamp(20px,5vw,28px);font-weight:var(--font-weight-bold);color:var(--neutral-800);text-align:center;text-transform:capitalize}.wam__score-bar{flex-shrink:0;align-items:center;gap:8px;display:flex}.wam__score-label{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:#ffffffe6;white-space:nowrap}.wam__score-pips{gap:5px;display:flex}.wam__score-pip{background:#ffffff40;border:2px solid #ffffff80;border-radius:50%;width:16px;height:16px;transition:background .25s,border-color .25s,transform .15s}.wam__score-pip--filled{background:var(--brand-500);border-color:var(--brand-600);transform:scale(1.1);box-shadow:0 0 6px #667eea8c}.wam__grid{--wam-cell:min(calc((100vw - 48px) / 3), 110px);--wam-gap:8px;grid-template-columns:repeat(3, var(--wam-cell));gap:var(--wam-gap);flex-shrink:0;display:grid}.wam__hole{width:var(--wam-cell);height:var(--wam-cell);border-radius:var(--radius-lg);cursor:default;-webkit-user-select:none;user-select:none;background:#00000061;border:2px solid #ffffff1a;transition:transform .1s,border-color .15s;position:relative;overflow:hidden;box-shadow:inset 0 4px 10px #0000008c,0 2px 6px #0003}.wam__hole--clickable{cursor:pointer;border-color:#ffffff59;animation:.9s ease-in-out infinite wam-glow}.wam__hole--clickable:active{transform:scale(.93)}@keyframes wam-glow{0%,to{box-shadow:inset 0 4px 10px #0000008c, 0 0 0 3px var(--brand-500)}50%{box-shadow:inset 0 4px 10px #0000008c,0 0 0 10px #667eea14}}.wam__mole{pointer-events:none;justify-content:center;align-items:center;animation:.35s cubic-bezier(.34,1.56,.64,1) both wam-pop-in;display:flex;position:absolute;inset:4px}@keyframes wam-pop-in{0%{opacity:0;transform:scale(.15)translateY(15%)}65%{opacity:1;transform:scale(1.12)translateY(0)}to{opacity:1;transform:scale(1)translateY(0)}}.wam__mole--whacked{animation:.45s ease-out forwards wam-whack}@keyframes wam-whack{0%{opacity:1;transform:scale(1)rotate(0)}35%{opacity:1;transform:scale(1.45)rotate(18deg)}to{opacity:0;transform:scale(0)rotate(-30deg)}}.wam__mole-img{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%}.wam__mole-emoji{font-size:calc(var(--wam-cell) * .62);-webkit-user-select:none;user-select:none;pointer-events:none;line-height:1}.wam__prompt{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#ffffffe6;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-height:36px;padding:7px 20px;display:flex}.wam__prompt[data-voice=listening]{color:var(--neutral-0);background:#38a169eb;animation:.9s ease-in-out infinite wam-prompt-listening}@keyframes wam-prompt-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 9px #38a16914, var(--shadow-sm)}}.wam__prompt[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeae6,#764ba2e6);animation:1.6s ease-in-out infinite wam-prompt-processing}@keyframes wam-prompt-processing{0%,to{opacity:.85}50%{opacity:1}}.wam__tb-anim{font-size:22px;font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards wam-tb-float;position:fixed;top:48px;right:20px}@keyframes wam-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (width>=480px){.wam__grid{--wam-cell:120px}.wam__word-img-wrap,.wam__word-img,.wam__word-img-placeholder{width:96px;height:96px}}@media (width>=640px){.wam__grid{--wam-cell:min(calc((100vh - 380px) / 3), 150px)}.wam__content{gap:14px}}.select-game{max-width:720px;margin:0 auto;padding:24px 16px}.select-game__header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.select-game__title{font-size:var(--text-xl);font-weight:var(--font-weight-bold);color:var(--neutral-0);margin:0}.select-game__change-theme{border-radius:var(--radius-sm);color:var(--neutral-0);font-size:var(--text-sm);font-weight:var(--font-weight-medium);cursor:pointer;white-space:nowrap;background:#fff3;border:1px solid #fff6;padding:8px 14px}.select-game__change-theme:hover{background:#ffffff4d}.select-game__grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (width>=600px){.select-game__grid{grid-template-columns:repeat(3,1fr)}}.select-game__card{background:var(--neutral-0);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);cursor:pointer;text-align:center;border:none;flex-direction:column;align-items:center;gap:8px;padding:20px 12px;display:flex}.select-game__card:hover{box-shadow:var(--shadow-md);transform:scale(1.02)}.select-game__icon{font-size:40px;line-height:1}.select-game__name{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800)}.select-game__description{font-size:var(--text-sm);color:var(--neutral-600);line-height:1.4}.select-game__empty{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:48px 24px;display:flex}.select-game__empty-icon{font-size:48px;line-height:1}.select-game__empty-message{font-size:var(--text-md);color:#ffffffd9;max-width:300px;margin:0;line-height:1.5}.gw{background:var(--gw-bg,linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%));z-index:100;background-position:50%;background-size:cover;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.gw__header{z-index:10;pointer-events:none;justify-content:space-between;align-items:center;padding:10px 14px;display:flex;position:absolute;top:0;left:0;right:0}.gw__exit,.gw__tinybucks{pointer-events:auto}.gw__exit{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:7px 14px;transition:box-shadow .15s,transform .1s}.gw__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.gw__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;display:flex}.gw__tinybucks-icon{font-size:18px;line-height:1}.gw__tinybucks-value{font-size:var(--text-md);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.gw__status{color:var(--neutral-0);font-size:var(--text-lg);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;display:flex}.gw__spinner{border:4px solid #ffffff4d;border-top-color:var(--neutral-0);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite gw-spin}@keyframes gw-spin{to{transform:rotate(360deg)}}.gw__content{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:58px 16px 12px;display:flex;overflow:hidden}.gw__streak-bar{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;padding:6px 20px;display:flex}.gw__streak-label{font-size:10px;font-weight:var(--font-weight-medium);color:var(--neutral-500);text-transform:uppercase;letter-spacing:.06em}.gw__streak-pips{gap:5px;display:flex}.gw__streak-pip{background:var(--brand-500);opacity:.25;border-radius:50%;width:10px;height:10px;transition:opacity .2s,transform .2s}.gw__streak-pip--filled{opacity:1;transform:scale(1.15)}.gw__question{border-radius:var(--radius-lg);font-size:clamp(17px,4.5vw,24px);font-weight:var(--font-weight-bold);color:var(--neutral-800);box-shadow:var(--shadow-md);text-align:center;background:#ffffffed;flex-shrink:0;max-width:420px;padding:10px 22px;line-height:1.25}.gw__grid{--gw-card:min(calc((100vw - 60px) / 2), calc((100vh - 330px) / 2), 190px);grid-template-columns:repeat(2, var(--gw-card));flex-shrink:0;gap:14px;display:grid}.gw__card{width:var(--gw-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);cursor:default;-webkit-user-select:none;user-select:none;font:inherit;background:#ffffffed;border:none;flex-direction:column;align-items:center;gap:6px;padding:8px 8px 7px;transition:transform .1s,box-shadow .15s;display:flex}.gw__card--clickable{cursor:pointer}.gw__card--clickable:hover{box-shadow:var(--shadow-md);background:#fff;transform:scale(1.04)}.gw__card--clickable:active{transform:scale(.97)}.gw__card-img,.gw__card-img-placeholder{aspect-ratio:1;object-fit:cover;border-radius:var(--radius-md);width:100%}.gw__card-img-placeholder{background:#667eea1f}.gw__card-word{font-size:clamp(13px,3.5vw,17px);font-weight:var(--font-weight-bold);color:var(--neutral-800);text-transform:capitalize;line-height:1.1}.gw__card--shake{box-shadow:0 0 0 3px #e53e3e, var(--shadow-md);animation:.5s ease-in-out gw-shake}@keyframes gw-shake{0%,to{transform:translate(0)}15%{transform:translate(-8px)}30%{transform:translate(7px)}45%{transform:translate(-6px)}60%{transform:translate(5px)}75%{transform:translate(-3px)}90%{transform:translate(2px)}}.gw__card--correct{box-shadow:0 0 0 3px #38a169, var(--shadow-md);z-index:1;animation:.45s ease-in-out 2 gw-correct-pulse}@keyframes gw-correct-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.07)}}.gw__prompt{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#ffffffe6;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-height:36px;padding:7px 20px;display:flex}.gw__prompt[data-voice=listening]{color:var(--neutral-0);background:#38a169eb;animation:.9s ease-in-out infinite gw-listening}@keyframes gw-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 8px #38a16914, var(--shadow-sm)}}.gw__prompt[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeae6,#764ba2e6);animation:1.6s ease-in-out infinite gw-processing}@keyframes gw-processing{0%,to{opacity:.85}50%{opacity:1}}.gw__tb-anim{font-size:22px;font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards gw-tb-float;position:fixed;top:48px;right:20px}@keyframes gw-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (height>=700px){.gw__content{gap:14px}.gw__grid{gap:16px}}@media (width>=640px){.gw__grid{--gw-card:min(calc((100vh - 360px) / 2), 210px)}}.bow{background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);color:var(--neutral-800);z-index:100;-webkit-tap-highlight-color:transparent;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.bow__header{z-index:10;pointer-events:none;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex;position:absolute;top:0;left:0;right:0}.bow__exit,.bow__tinybucks{pointer-events:auto}.bow__exit{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:7px 14px;transition:box-shadow .15s,transform .1s}.bow__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.bow__title{font-weight:var(--font-weight-bold);color:var(--neutral-0);text-shadow:0 1px 4px #00000040;white-space:nowrap;text-overflow:ellipsis;font-size:clamp(15px,3.4vw,22px);overflow:hidden}.bow__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;display:flex}.bow__tinybucks-icon{font-size:18px;line-height:1}.bow__tinybucks-value{font-size:var(--text-md);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.bow__status{color:var(--neutral-0);font-size:var(--text-lg);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;display:flex}.bow__spinner{border:4px solid #ffffff4d;border-top-color:var(--neutral-0);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite bow-spin}@keyframes bow-spin{to{transform:rotate(360deg)}}.bow__stage{flex:1;min-height:0;position:relative}.bow__canvas{width:100%;height:100%;position:absolute;inset:0}.bow__play{pointer-events:none;flex-direction:column;justify-content:flex-start;align-items:center;gap:12px;padding:56px 16px 16px;display:flex;position:absolute;inset:0}.bow__progress{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;padding:6px 20px;display:flex}.bow__progress-label{font-size:10px;font-weight:var(--font-weight-medium);color:var(--neutral-500);text-transform:uppercase;letter-spacing:.06em}.bow__progress-pips{gap:5px;display:flex}.bow__progress-pip{background:var(--brand-500);opacity:.25;border-radius:50%;width:10px;height:10px;transition:opacity .2s,transform .2s}.bow__progress-pip--filled{opacity:1;transform:scale(1.15)}.bow__prompt{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;background:#fffffff2;flex-shrink:0;max-width:min(90vw,520px);padding:10px 22px}.bow__obj-name{font-weight:var(--font-weight-bold);color:var(--brand-500);font-size:clamp(20px,5vw,32px)}.bow__obj-hint{font-size:var(--text-sm);color:var(--neutral-600);margin-top:4px}.bow__obj-art{filter:drop-shadow(0 6px 10px #0000004d);flex-shrink:0;width:clamp(80px,18vw,130px);height:clamp(80px,18vw,130px);animation:2.4s ease-in-out infinite bow-bob}.bow__obj-art img{display:block}.bow__obj-art--flying{opacity:0;transition:opacity .1s}@keyframes bow-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.bow__hint{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#ffffffe6;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-height:36px;padding:7px 20px;display:flex}.bow__hint[data-voice=listening]{color:var(--neutral-0);background:#38a169eb;animation:.9s ease-in-out infinite bow-listening}@keyframes bow-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 8px #38a16914, var(--shadow-sm)}}.bow__hint[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeae6,#764ba2e6);animation:1.6s ease-in-out infinite bow-processing}@keyframes bow-processing{0%,to{opacity:.85}50%{opacity:1}}.bow__choices{pointer-events:auto;gap:16px;width:100%;max-width:720px;margin-top:auto;display:flex}.bow__choice{cursor:pointer;border-radius:var(--radius-lg);color:#fff;min-height:64px;font-weight:var(--font-weight-bold);box-shadow:var(--shadow-md);border:none;flex:1;justify-content:center;align-items:center;gap:10px;padding:16px;font-size:clamp(18px,4vw,26px);transition:transform .18s,box-shadow .18s;display:flex}.bow__choice:disabled{cursor:default}.bow__choice:disabled:not(.bow__choice--correct):not(.bow__choice--wrong){opacity:.5;filter:saturate(.7)}.bow__choice--beach{background:linear-gradient(135deg,#e0b968,#c99a3f)}.bow__choice--water{background:linear-gradient(135deg,#4bb4e0,#2b86bd)}.bow__choice:not(:disabled):hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.bow__choice:not(:disabled):active{transform:translateY(0)}.bow__choice--correct{box-shadow:0 0 0 3px #38a169, var(--shadow-md);animation:.4s cubic-bezier(.2,1.4,.4,1) bow-pop}.bow__choice--wrong{box-shadow:0 0 0 3px #e53e3e, var(--shadow-md);animation:.4s bow-shake}@keyframes bow-pop{0%{transform:scale(1)}40%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes bow-shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}}.bow__feedback{z-index:15;font-weight:var(--font-weight-bold);box-shadow:var(--shadow-md);pointer-events:none;border-radius:999px;padding:10px 22px;font-size:clamp(16px,4vw,22px);animation:.2s ease-out bow-feedback-in;position:absolute;top:60px;left:50%;transform:translate(-50%)}.bow__feedback--good{color:#fff;background:#2e9e5b}.bow__feedback--bad{color:#721c24;background:#f8d7da}@keyframes bow-feedback-in{0%{opacity:0;transform:translate(-50%)translateY(-6px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.bow__tb-anim{font-size:22px;font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards bow-tb-float;position:fixed;top:48px;right:20px}@keyframes bow-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (height>=700px){.bow__play{gap:16px;padding-top:64px}}@media (prefers-reduced-motion:reduce){.bow *,.bow__obj-art,.bow__feedback,.bow__tb-anim{transition:none!important;animation:none!important}}.ed{background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);z-index:100;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.ed__bg{filter:blur(8px);background-position:50%;background-size:cover;animation:.5s ease-out ed-bg-in;position:absolute;inset:0;transform:scale(1.08)}@keyframes ed-bg-in{0%{opacity:0}to{opacity:1}}.ed__fade{pointer-events:none;z-index:150;background:radial-gradient(circle,#fffdf0 30%,#fff 100%);animation:1.6s ease-in-out forwards ed-sunfade;position:fixed;inset:0}@keyframes ed-sunfade{0%{opacity:0}35%{opacity:1}to{opacity:0}}.ed__header{z-index:10;pointer-events:none;justify-content:space-between;align-items:center;padding:10px 14px;display:flex;position:absolute;top:0;left:0;right:0}.ed__exit,.ed__tinybucks{pointer-events:auto}.ed__exit{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:7px 14px;transition:box-shadow .15s,transform .1s}.ed__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.ed__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;display:flex}.ed__tinybucks-icon{font-size:18px;line-height:1}.ed__tinybucks-value{font-size:var(--text-md);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.ed__dialogue{z-index:5;cursor:pointer;font:inherit;-webkit-user-select:none;user-select:none;background:linear-gradient(#0000 45%,#00000047);border:none;flex-direction:column-reverse;align-items:center;padding:58px 16px 0;display:flex;position:absolute;inset:0}.ed__character{object-fit:contain;filter:drop-shadow(0 6px 16px #00000059);max-width:72vw;max-height:52vh;animation:.4s ease-out ed-character-in}@keyframes ed-character-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.ed__speech{border-radius:var(--radius-lg);max-width:440px;box-shadow:var(--shadow-md);background:#fffffff2;flex-direction:column;align-items:center;gap:6px;margin-bottom:10px;padding:14px 22px 10px;animation:.3s ease-out ed-speech-in;display:flex}@keyframes ed-speech-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ed__speech-name{font-size:11px;font-weight:var(--font-weight-bold);color:var(--brand-500);text-transform:uppercase;letter-spacing:.08em}.ed__speech-line{font-size:clamp(16px,4.2vw,22px);font-weight:var(--font-weight-bold);color:var(--neutral-800);text-align:center;line-height:1.3}.ed__speech-hint{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-500);animation:1.4s ease-in-out infinite ed-hint-pulse}@keyframes ed-hint-pulse{0%,to{opacity:.45}50%{opacity:1}}.ed__content{z-index:5;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:58px 16px 12px;display:flex;position:relative;overflow:hidden}.ed__progress{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;padding:6px 20px;display:flex}.ed__progress-label{font-size:10px;font-weight:var(--font-weight-medium);color:var(--neutral-500);text-transform:uppercase;letter-spacing:.06em}.ed__progress-pips{gap:5px;display:flex}.ed__progress-pip{background:var(--brand-500);opacity:.25;border-radius:50%;width:10px;height:10px;transition:opacity .2s,transform .2s}.ed__progress-pip--filled{opacity:1;transform:scale(1.15)}.ed__task{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;background:#ffffffed;flex-direction:column;flex-shrink:0;align-items:center;gap:3px;max-width:460px;padding:10px 22px;display:flex}.ed__task-title{font-size:clamp(15px,3.8vw,19px);font-weight:var(--font-weight-bold);color:var(--neutral-800);line-height:1.25}.ed__task-prompt{font-size:clamp(14px,3.5vw,17px);font-weight:var(--font-weight-medium);color:var(--brand-500);line-height:1.25}.ed__cards{--ed-card:min(calc((100vw - 76px) / 3), calc(100vh - 340px), 180px);grid-template-columns:repeat(3, var(--ed-card));flex-shrink:0;gap:14px;display:grid}.ed__card{width:var(--ed-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);cursor:default;-webkit-user-select:none;user-select:none;font:inherit;background:#ffffffed;border:none;flex-direction:column;align-items:center;gap:6px;padding:8px 8px 7px;transition:transform .1s,box-shadow .15s;display:flex}.ed__card--clickable{cursor:pointer}.ed__card--clickable:hover{box-shadow:var(--shadow-md);background:#fff;transform:scale(1.04)}.ed__card--clickable:active{transform:scale(.97)}.ed__card-img,.ed__card-img-placeholder{aspect-ratio:1;object-fit:cover;border-radius:var(--radius-md);width:100%}.ed__card-img-placeholder{background:#667eea1f}.ed__card-word{font-size:clamp(13px,3.5vw,17px);font-weight:var(--font-weight-bold);color:var(--neutral-800);text-transform:capitalize;line-height:1.1}.ed__card--shake{box-shadow:0 0 0 3px #e53e3e, var(--shadow-md);animation:.5s ease-in-out ed-shake}@keyframes ed-shake{0%,to{transform:translate(0)}15%{transform:translate(-8px)}30%{transform:translate(7px)}45%{transform:translate(-6px)}60%{transform:translate(5px)}75%{transform:translate(-3px)}90%{transform:translate(2px)}}.ed__card--correct{box-shadow:0 0 0 3px #38a169, var(--shadow-md);z-index:1;animation:.45s ease-in-out 2 ed-correct-pulse}@keyframes ed-correct-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.07)}}.ed__prompt{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#ffffffe6;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-height:36px;padding:7px 20px;display:flex}.ed__prompt[data-voice=listening]{color:var(--neutral-0);background:#38a169eb;animation:.9s ease-in-out infinite ed-listening}@keyframes ed-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 8px #38a16914, var(--shadow-sm)}}.ed__prompt[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeae6,#764ba2e6);animation:1.6s ease-in-out infinite ed-processing}@keyframes ed-processing{0%,to{opacity:.85}50%{opacity:1}}.ed__prompt--victory{font-size:var(--text-lg);font-weight:var(--font-weight-bold);padding:12px 28px}.ed__tb-anim{font-size:22px;font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards ed-tb-float;position:fixed;top:48px;right:20px}@keyframes ed-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (height>=700px){.ed__content{gap:14px}.ed__cards{gap:16px}}@media (width>=640px){.ed__cards{--ed-card:min(calc(100vh - 360px), 200px)}}.dta{background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);color:var(--neutral-800);z-index:100;-webkit-tap-highlight-color:transparent;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.dta__header{z-index:10;pointer-events:none;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex;position:absolute;top:0;left:0;right:0}.dta__exit,.dta__tinybucks{pointer-events:auto}.dta__exit{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:7px 14px;transition:box-shadow .15s,transform .1s}.dta__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.dta__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;display:flex}.dta__tinybucks-icon{font-size:18px;line-height:1}.dta__tinybucks-value{font-size:var(--text-md);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.dta__status{color:var(--neutral-0);font-size:var(--text-lg);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;display:flex}.dta__spinner{border:4px solid #ffffff4d;border-top-color:var(--neutral-0);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite dta-spin}@keyframes dta-spin{to{transform:rotate(360deg)}}.dta__stage{flex:1;min-height:0;position:relative}.dta__canvas{width:100%;height:100%;position:absolute;inset:0}.dta__play{pointer-events:none;flex-direction:column;justify-content:flex-start;align-items:center;gap:12px;padding:56px 16px 16px;display:flex;position:absolute;inset:0}.dta__play[hidden]{display:none}.dta__tutorial{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:5;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.dta__tutorial-panel{background:var(--neutral-0);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:18px;width:100%;max-width:380px;padding:26px 24px 22px;animation:.35s cubic-bezier(.34,1.56,.64,1) dta-tutorial-appear;display:flex;box-shadow:0 20px 60px #0000004d}@keyframes dta-tutorial-appear{0%{opacity:0;transform:scale(.8)translateY(14px)}to{opacity:1;transform:scale(1)translateY(0)}}.dta__tutorial-title{font-size:clamp(22px,5.6vw,28px);font-weight:var(--font-weight-bold);background:linear-gradient(135deg, var(--brand-500), var(--accent-500));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0}.dta__tutorial-steps{text-align:left;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.dta__tutorial-step{font-size:var(--text-md);color:var(--neutral-800);align-items:center;gap:12px;line-height:1.35;display:flex}.dta__tutorial-step--rule{font-weight:var(--font-weight-bold);color:var(--brand-500)}.dta__tutorial-icon{flex-shrink:0;font-size:28px;line-height:1}.dta__tutorial-start{background:linear-gradient(135deg, var(--brand-500), var(--accent-500));width:100%;color:var(--neutral-0);font-size:var(--text-lg);font-weight:var(--font-weight-bold);cursor:pointer;box-shadow:var(--shadow-md);border:none;border-radius:999px;padding:14px 24px;transition:transform .1s,box-shadow .15s}.dta__tutorial-start:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000040}.dta__tutorial-start:active{transform:translateY(0)}.dta__progress{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;padding:6px 20px;display:flex}.dta__progress-label{font-size:10px;font-weight:var(--font-weight-medium);color:var(--neutral-500);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.dta__progress-pips{gap:5px;display:flex}.dta__progress-pip{background:var(--brand-500);opacity:.25;border-radius:50%;width:10px;height:10px;transition:opacity .2s,transform .2s}.dta__progress-pip--done{opacity:1}.dta__progress-pip--active{opacity:.7;transform:scale(1.25)}.dta__prompt{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;background:#fffffff2;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;max-width:min(90vw,520px);padding:10px 22px;display:flex}.dta__prompt--reveal{animation:.45s cubic-bezier(.2,1.4,.4,1) dta-pop}@keyframes dta-pop{0%{transform:scale(.9)}55%{transform:scale(1.06)}to{transform:scale(1)}}.dta__question{font-weight:var(--font-weight-bold);color:var(--brand-500);font-size:clamp(18px,4.6vw,28px);line-height:1.2}.dta__question-hint{font-size:var(--text-sm);color:var(--neutral-600);line-height:1.35}.dta__hint{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#ffffffe6;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;max-width:92%;min-height:36px;margin-top:auto;padding:7px 20px;display:flex}.dta__hint[data-voice=listening]{color:var(--neutral-0);background:#38a169eb;animation:.9s ease-in-out infinite dta-listening}@keyframes dta-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 8px #38a16914, var(--shadow-sm)}}.dta__hint[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeae6,#764ba2e6);animation:1.6s ease-in-out infinite dta-processing}@keyframes dta-processing{0%,to{opacity:.85}50%{opacity:1}}.dta__hint[data-tone=good]{color:var(--neutral-0);background:#2e9e5b}.dta__hint[data-tone=soft]{color:#856404;background:#fff3cd}.dta__skip{pointer-events:auto;color:var(--neutral-600);font-size:var(--text-sm);font-weight:var(--font-weight-medium);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffbf;border:none;border-radius:999px;flex-shrink:0;padding:8px 16px;transition:background-color .15s,transform .1s}.dta__skip:hover{background:#fffffff2;transform:translateY(-1px)}.dta__tb-anim{font-size:22px;font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards dta-tb-float;position:fixed;top:48px;right:20px}@keyframes dta-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (height>=700px){.dta__play{gap:16px;padding-top:64px}}@media (prefers-reduced-motion:reduce){.dta *,.dta__prompt,.dta__tutorial-panel,.dta__tb-anim{transition:none!important;animation:none!important}}.dtp{background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);color:var(--neutral-800);z-index:100;-webkit-tap-highlight-color:transparent;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.dtp__header{z-index:10;pointer-events:none;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex;position:absolute;top:0;left:0;right:0}.dtp__exit,.dtp__tinybucks{pointer-events:auto}.dtp__exit{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:7px 14px;transition:box-shadow .15s,transform .1s}.dtp__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.dtp__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;display:flex}.dtp__tinybucks-icon{font-size:18px;line-height:1}.dtp__tinybucks-value{font-size:var(--text-md);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.dtp__status{color:var(--neutral-0);font-size:var(--text-lg);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;display:flex}.dtp__spinner{border:4px solid #ffffff4d;border-top-color:var(--neutral-0);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite dtp-spin}@keyframes dtp-spin{to{transform:rotate(360deg)}}.dtp__stage{flex:1;min-height:0;position:relative;overflow:hidden}.dtp__canvas{width:100%;height:100%;position:absolute;inset:0}.dtp__scrim{pointer-events:none;background:linear-gradient(#0c10206b 0%,#0c102000 34%),linear-gradient(#0c102000 76%,#0c102057 100%);position:absolute;inset:0}.dtp__play{pointer-events:none;flex-direction:column;justify-content:flex-start;align-items:center;gap:12px;padding:56px 16px 16px;display:flex;position:absolute;inset:0}.dtp__play[hidden]{display:none}.dtp__tutorial{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:5;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0;overflow-y:auto}.dtp__tutorial-panel{background:var(--neutral-0);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:18px;width:100%;max-width:380px;padding:26px 24px 22px;animation:.35s cubic-bezier(.34,1.56,.64,1) dtp-tutorial-appear;display:flex;box-shadow:0 20px 60px #0000004d}@keyframes dtp-tutorial-appear{0%{opacity:0;transform:scale(.8)translateY(14px)}to{opacity:1;transform:scale(1)translateY(0)}}.dtp__tutorial-title{font-size:clamp(22px,5.6vw,28px);font-weight:var(--font-weight-bold);background:linear-gradient(135deg, var(--brand-500), var(--accent-500));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0}.dtp__tutorial-steps{text-align:left;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.dtp__tutorial-step{font-size:var(--text-md);color:var(--neutral-800);align-items:center;gap:12px;line-height:1.35;display:flex}.dtp__tutorial-step--rule{font-weight:var(--font-weight-bold);color:var(--brand-500)}.dtp__tutorial-icon{flex-shrink:0;font-size:28px;line-height:1}.dtp__tutorial-start{background:linear-gradient(135deg, var(--brand-500), var(--accent-500));width:100%;color:var(--neutral-0);font-size:var(--text-lg);font-weight:var(--font-weight-bold);cursor:pointer;box-shadow:var(--shadow-md);border:none;border-radius:999px;padding:14px 24px;transition:transform .1s,box-shadow .15s}.dtp__tutorial-start:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000040}.dtp__tutorial-start:active{transform:translateY(0)}.dtp__progress{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;padding:6px 20px;display:flex}.dtp__progress-label{font-size:10px;font-weight:var(--font-weight-medium);color:var(--neutral-500);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.dtp__progress-pips{gap:5px;display:flex}.dtp__progress-pip{background:var(--brand-500);opacity:.25;border-radius:50%;width:10px;height:10px;transition:opacity .2s,transform .2s}.dtp__progress-pip--done{opacity:1}.dtp__progress-pip--active{opacity:.7;transform:scale(1.25)}.dtp__prompt{border-radius:var(--radius-lg);text-align:center;background:#fffffff2;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;max-width:min(90vw,520px);padding:10px 22px;display:flex;box-shadow:0 6px 22px #00000047}.dtp__prompt--reveal{animation:.45s cubic-bezier(.2,1.4,.4,1) dtp-pop}@keyframes dtp-pop{0%{transform:scale(.9)}55%{transform:scale(1.06)}to{transform:scale(1)}}.dtp__question{font-weight:var(--font-weight-bold);color:var(--brand-500);font-size:clamp(18px,4.6vw,28px);line-height:1.2}.dtp__question-hint{font-size:var(--text-sm);color:var(--neutral-600);line-height:1.35}.dtp__hint{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#ffffffe6;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;max-width:92%;min-height:36px;margin-top:auto;padding:7px 20px;display:flex}.dtp__hint[data-voice=listening]{color:var(--neutral-0);background:#38a169eb;animation:.9s ease-in-out infinite dtp-listening}@keyframes dtp-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 8px #38a16914, var(--shadow-sm)}}.dtp__hint[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeae6,#764ba2e6);animation:1.6s ease-in-out infinite dtp-processing}@keyframes dtp-processing{0%,to{opacity:.85}50%{opacity:1}}.dtp__hint[data-tone=good]{color:var(--neutral-0);background:#2e9e5b}.dtp__hint[data-tone=soft]{color:#856404;background:#fff3cd}.dtp__skip{pointer-events:auto;color:var(--neutral-600);font-size:var(--text-sm);font-weight:var(--font-weight-medium);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffbf;border:none;border-radius:999px;flex-shrink:0;padding:8px 16px;transition:background-color .15s,transform .1s}.dtp__skip:hover{background:#fffffff2;transform:translateY(-1px)}.dtp__tb-anim{font-size:22px;font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards dtp-tb-float;position:fixed;top:48px;right:20px}@keyframes dtp-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (height<=480px){.dtp__play{gap:6px;padding:44px 16px 10px}.dtp__progress{padding:4px 14px}.dtp__progress-label{display:none}.dtp__prompt{gap:2px;padding:6px 16px}.dtp__question{font-size:clamp(16px,3.4vh,22px)}.dtp__question-hint{font-size:12px}.dtp__hint{min-height:30px;font-size:var(--text-sm);padding:5px 16px}.dtp__tutorial-panel{gap:12px;padding:18px 20px 16px}.dtp__tutorial-steps{gap:8px}.dtp__tutorial-icon{font-size:22px}}@media (height>=700px){.dtp__play{gap:16px;padding-top:64px}}@media (width>=1800px) and (height>=900px){.dtp__play{gap:22px;padding:84px 32px 32px}.dtp__prompt{border-radius:28px;max-width:min(80vw,860px);padding:16px 36px}.dtp__question{font-size:clamp(28px,1.9vw,46px)}.dtp__question-hint{font-size:clamp(15px,.95vw,22px)}.dtp__progress{padding:10px 30px}.dtp__progress-label{font-size:13px}.dtp__progress-pip{width:14px;height:14px}.dtp__hint{min-height:52px;padding:12px 34px;font-size:clamp(17px,1.05vw,26px)}.dtp__tutorial-panel{gap:24px;max-width:560px;padding:40px 38px 34px}.dtp__tutorial-title{font-size:40px}.dtp__tutorial-step{font-size:22px}.dtp__tutorial-icon{font-size:38px}.dtp__tutorial-start{padding:18px 32px;font-size:26px}.dtp__exit,.dtp__tinybucks{padding:12px 22px;font-size:20px}.dtp__tinybucks-icon{font-size:26px}.dtp__tinybucks-value{font-size:22px}}@media (prefers-reduced-motion:reduce){.dtp *,.dtp__prompt,.dtp__tutorial-panel,.dtp__tb-anim{transition:none!important;animation:none!important}}.ptp{background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);color:var(--neutral-800);z-index:100;-webkit-tap-highlight-color:transparent;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.ptp__header{flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.ptp__exit{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:7px 14px;transition:box-shadow .15s,transform .1s}.ptp__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.ptp__title{font-size:var(--text-lg);font-weight:var(--font-weight-bold);color:var(--neutral-0);text-shadow:0 1px 4px #00000040;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ptp__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;display:flex}.ptp__tinybucks-icon{font-size:18px;line-height:1}.ptp__tinybucks-value{font-size:var(--text-md);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.ptp__play{flex-direction:column;flex:1;align-items:center;gap:10px;min-height:0;padding:0 12px 12px;display:flex}.ptp__progress{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;max-width:100%;padding:6px 20px;display:flex}.ptp__progress-label{font-size:10px;font-weight:var(--font-weight-medium);color:var(--neutral-500);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.ptp__progress-pips{gap:5px;display:flex}.ptp__progress-pip{background:var(--brand-500);opacity:.25;border-radius:50%;width:9px;height:9px;transition:opacity .2s,transform .2s}.ptp__progress-pip--done{opacity:1;transform:scale(1.1)}.ptp__prompt{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;background:#fffffff2;flex-direction:column;flex-shrink:0;align-items:center;gap:2px;max-width:min(94vw,560px);padding:10px 22px;display:flex}.ptp__prompt--finished{animation:.45s cubic-bezier(.2,1.4,.4,1) ptp-pop}@keyframes ptp-pop{0%{transform:scale(.9)}55%{transform:scale(1.06)}to{transform:scale(1)}}.ptp__direction{font-weight:var(--font-weight-bold);color:var(--brand-500);font-size:clamp(18px,4.4vw,28px);line-height:1.2}.ptp__direction-hint{font-size:var(--text-sm);color:var(--neutral-600);line-height:1.35}.ptp__stage-wrap{flex:1;justify-content:center;align-items:center;width:100%;min-height:0;display:flex}.ptp__stage{background:var(--neutral-0);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);touch-action:none;position:relative;overflow:hidden}.ptp__room{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.ptp__fx{pointer-events:none;z-index:3;width:100%;height:100%;position:absolute;inset:0}.ptp__zone{z-index:1;border-radius:var(--radius-md);pointer-events:none;background:#ffd16647;border:3px dashed #856404d9;justify-content:center;align-items:flex-end;padding-bottom:2px;transition:background-color .15s,border-color .15s,transform .15s;animation:1.4s ease-in-out infinite ptp-zone-pulse;display:flex;position:absolute}.ptp__zone--over{background:#ffd16680;border-color:#7a5c00;transform:scale(1.03)}@keyframes ptp-zone-pulse{0%,to{box-shadow:0 0 #ffd16680}50%{box-shadow:0 0 0 8px #ffd16600}}.ptp__zone-label{font-size:clamp(9px,1.7vmin,14px);font-weight:var(--font-weight-bold);color:#7a5c00;text-align:center;line-height:1.1}.ptp__drag{z-index:2;touch-action:none;-webkit-user-select:none;user-select:none;cursor:default;transition:left .22s,top .22s;position:absolute}.ptp__drag-svg{pointer-events:none;filter:drop-shadow(0 3px 4px #00000052);object-fit:contain;width:100%;height:100%;display:block}.ptp__drag--ready{cursor:grab;animation:1.8s ease-in-out infinite ptp-bob}@keyframes ptp-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.ptp__drag--dragging{cursor:grabbing;z-index:4;transition:none;animation:none}.ptp__drag--placed,.ptp__drag--inactive{cursor:default;animation:none}.ptp__drag--inactive .ptp__drag-svg{opacity:.9}.ptp__drag--wiggle{animation:.3s ease-in-out ptp-wiggle}@keyframes ptp-wiggle{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.ptp__drag:focus-visible{outline:3px solid var(--brand-500);outline-offset:3px;border-radius:var(--radius-sm)}.ptp__toast{z-index:5;border-radius:var(--radius-lg);background:var(--neutral-0);font-size:clamp(18px,4vw,24px);font-weight:var(--font-weight-bold);text-align:center;pointer-events:none;max-width:88%;padding:14px 28px;animation:.2s cubic-bezier(.34,1.56,.64,1) ptp-toast-in;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 10px 30px #00000040}@keyframes ptp-toast-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.8)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.ptp__toast--good{color:#2e9e5b}.ptp__toast--bad{color:#721c24;background:#f8d7da}.ptp__hint{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#ffffffe6;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;max-width:92%;min-height:36px;padding:7px 20px;display:flex}.ptp__hint[data-voice=listening]{color:var(--neutral-0);background:#38a169eb;animation:.9s ease-in-out infinite ptp-listening}@keyframes ptp-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 8px #38a16914, var(--shadow-sm)}}.ptp__hint[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeae6,#764ba2e6);animation:1.6s ease-in-out infinite ptp-processing}@keyframes ptp-processing{0%,to{opacity:.85}50%{opacity:1}}.ptp__hint[data-tone=good]{color:var(--neutral-0);background:#2e9e5b}.ptp__hint[data-tone=soft]{color:#856404;background:#fff3cd}.ptp__tutorial{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:20;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.ptp__tutorial-panel{background:var(--neutral-0);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:400px;padding:22px 24px;animation:.35s cubic-bezier(.34,1.56,.64,1) ptp-tutorial-appear;display:flex;box-shadow:0 20px 60px #0000004d}@keyframes ptp-tutorial-appear{0%{opacity:0;transform:scale(.8)translateY(14px)}to{opacity:1;transform:scale(1)translateY(0)}}.ptp__tutorial-puppy{flex-shrink:0;width:clamp(96px,26vw,150px);height:auto}.ptp__tutorial-title{font-size:clamp(22px,5.6vw,28px);font-weight:var(--font-weight-bold);background:linear-gradient(135deg, var(--brand-500), var(--accent-500));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0}.ptp__tutorial-steps{text-align:left;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.ptp__tutorial-step{font-size:var(--text-md);color:var(--neutral-800);align-items:center;gap:12px;line-height:1.35;display:flex}.ptp__tutorial-step--rule{font-weight:var(--font-weight-bold);color:var(--brand-500)}.ptp__tutorial-icon{flex-shrink:0;font-size:26px;line-height:1}.ptp__tutorial-start{background:linear-gradient(135deg, var(--brand-500), var(--accent-500));width:100%;color:var(--neutral-0);font-size:var(--text-lg);font-weight:var(--font-weight-bold);cursor:pointer;box-shadow:var(--shadow-md);border:none;border-radius:999px;padding:14px 24px;transition:transform .1s,box-shadow .15s}.ptp__tutorial-start:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000040}.ptp__tutorial-start:active{transform:translateY(0)}.ptp__tb-anim{font-size:22px;font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards ptp-tb-float;position:fixed;top:48px;right:20px}@keyframes ptp-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (orientation:landscape) and (height<=560px){.ptp__header{padding:6px 12px}.ptp__play{gap:6px;padding:0 8px 8px}.ptp__prompt{padding:6px 16px}.ptp__progress{padding:4px 16px}.ptp__hint{min-height:30px;font-size:var(--text-sm);padding:4px 16px}.ptp__tutorial-panel{gap:10px;padding:16px 20px}.ptp__tutorial-puppy{display:none}}@media (height>=800px){.ptp__play{gap:14px}}@media (prefers-reduced-motion:reduce){.ptp *,.ptp__prompt,.ptp__toast,.ptp__tutorial-panel,.ptp__tb-anim{transition:none!important;animation:none!important}}.dcg{background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);color:var(--neutral-800);z-index:100;-webkit-tap-highlight-color:transparent;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);box-sizing:border-box;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.dcg__header{flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:clamp(6px,.6vmin + 4px,16px) clamp(10px,1vmin + 6px,28px);display:flex}.dcg__exit{border-radius:var(--radius-sm);font-size:clamp(13px,.7vmin + 10px,20px);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:clamp(6px,.5vmin + 4px,12px) clamp(12px,1vmin + 8px,24px);transition:box-shadow .15s,transform .1s}.dcg__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.dcg__title{font-size:clamp(16px,1.1vmin + 12px,30px);font-weight:var(--font-weight-bold);color:var(--neutral-0);text-shadow:0 1px 4px #00000040;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dcg__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:clamp(5px,.4vmin + 3px,11px) clamp(10px,.9vmin + 7px,22px);display:flex}.dcg__tinybucks-icon{font-size:clamp(16px,.9vmin + 12px,26px);line-height:1}.dcg__tinybucks-value{font-size:clamp(14px,.8vmin + 11px,22px);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.dcg__play{flex-direction:column;flex:1;align-items:center;gap:clamp(6px,.8vmin + 3px,18px);min-height:0;padding:0 clamp(8px,1vmin + 5px,28px) clamp(8px,1vmin + 5px,28px);display:flex}.dcg__progress{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;max-width:100%;padding:clamp(4px,.4vmin + 3px,10px) clamp(14px,1.4vmin + 10px,34px);display:flex}.dcg__progress-label{font-size:clamp(10px,.5vmin + 8px,15px);font-weight:var(--font-weight-medium);color:var(--neutral-500);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.dcg__progress-pips{gap:clamp(4px,.3vmin + 3px,9px);display:flex}.dcg__progress-pip{background:var(--brand-500);opacity:.25;border-radius:50%;width:clamp(8px,.5vmin + 6px,14px);height:clamp(8px,.5vmin + 6px,14px);transition:opacity .2s,transform .2s}.dcg__progress-pip--done{opacity:1;transform:scale(1.1)}.dcg__prompt{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;background:#fffffff2;flex-direction:column;flex-shrink:0;align-items:center;gap:2px;max-width:min(94vw,900px);padding:clamp(8px,.8vmin + 5px,20px) clamp(16px,1.8vmin + 12px,44px);display:flex}.dcg__prompt--finished{animation:.45s cubic-bezier(.2,1.4,.4,1) dcg-pop}@keyframes dcg-pop{0%{transform:scale(.9)}55%{transform:scale(1.06)}to{transform:scale(1)}}.dcg__direction{font-weight:var(--font-weight-bold);color:var(--brand-500);font-size:clamp(18px,1.7vmin + 12px,42px);line-height:1.2}.dcg__direction-hint{color:var(--neutral-600);font-size:clamp(12px,.7vmin + 9px,20px);line-height:1.35}.dcg__stage-wrap{flex:1;justify-content:center;align-items:center;width:100%;min-height:0;display:flex}.dcg__stage{background:var(--neutral-0);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);touch-action:none;position:relative;overflow:hidden}.dcg__room{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.dcg__fx{pointer-events:none;z-index:3;width:100%;height:100%;position:absolute;inset:0}.dcg__zone{z-index:1;border-radius:var(--radius-md);pointer-events:none;background:#ffd16647;border:3px dashed #856404d9;justify-content:center;align-items:flex-end;padding-bottom:2px;transition:background-color .15s,border-color .15s,transform .15s;animation:1.4s ease-in-out infinite dcg-zone-pulse;display:flex;position:absolute}.dcg__zone--over{background:#ffd16680;border-color:#7a5c00;transform:scale(1.03)}@keyframes dcg-zone-pulse{0%,to{box-shadow:0 0 #ffd16680}50%{box-shadow:0 0 0 8px #ffd16600}}.dcg__zone-label{font-size:clamp(9px,1.7vmin,20px);font-weight:var(--font-weight-bold);color:#7a5c00;text-align:center;line-height:1.1}.dcg__drag{z-index:2;touch-action:none;-webkit-user-select:none;user-select:none;cursor:default;transition:left .22s,top .22s;position:absolute}.dcg__drag-svg{pointer-events:none;filter:drop-shadow(0 3px 4px #00000052);object-fit:contain;width:100%;height:100%;display:block}.dcg__drag--ready{cursor:grab;animation:1.8s ease-in-out infinite dcg-bob}@keyframes dcg-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.dcg__drag--dragging{cursor:grabbing;z-index:4;transition:none;animation:none}.dcg__drag--placed,.dcg__drag--inactive{cursor:default;animation:none}.dcg__drag--inactive .dcg__drag-svg{opacity:.9}.dcg__drag--wiggle{animation:.3s ease-in-out dcg-wiggle}@keyframes dcg-wiggle{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.dcg__drag:focus-visible{outline:3px solid var(--brand-500);outline-offset:3px;border-radius:var(--radius-sm)}.dcg__toast{z-index:5;border-radius:var(--radius-lg);background:var(--neutral-0);font-size:clamp(17px,1.6vmin + 12px,38px);font-weight:var(--font-weight-bold);text-align:center;pointer-events:none;max-width:88%;padding:clamp(10px,1.2vmin + 6px,24px) clamp(20px,2.4vmin + 14px,52px);animation:.2s cubic-bezier(.34,1.56,.64,1) dcg-toast-in;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 10px 30px #00000040}@keyframes dcg-toast-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.8)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.dcg__toast--good{color:#2e9e5b}.dcg__toast--bad{color:#721c24;background:#f8d7da}.dcg__hint{font-size:clamp(13px,.8vmin + 10px,22px);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#ffffffe6;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;max-width:92%;min-height:clamp(30px,2vmin + 24px,52px);padding:clamp(5px,.6vmin + 3px,14px) clamp(14px,1.6vmin + 10px,38px);display:flex}.dcg__hint[data-voice=listening]{color:var(--neutral-0);background:#38a169eb;animation:.9s ease-in-out infinite dcg-listening}@keyframes dcg-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 8px #38a16914, var(--shadow-sm)}}.dcg__hint[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeae6,#764ba2e6);animation:1.6s ease-in-out infinite dcg-processing}@keyframes dcg-processing{0%,to{opacity:.85}50%{opacity:1}}.dcg__hint[data-tone=good]{color:var(--neutral-0);background:#2e9e5b}.dcg__hint[data-tone=soft]{color:#856404;background:#fff3cd}.dcg__tutorial{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:20;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.dcg__tutorial-panel{background:var(--neutral-0);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:clamp(10px,1.2vmin + 6px,22px);width:100%;max-width:clamp(320px,34vmin + 260px,620px);padding:clamp(18px,2vmin + 12px,42px) clamp(20px,2.2vmin + 14px,48px);animation:.35s cubic-bezier(.34,1.56,.64,1) dcg-tutorial-appear;display:flex;box-shadow:0 20px 60px #0000004d}@keyframes dcg-tutorial-appear{0%{opacity:0;transform:scale(.8)translateY(14px)}to{opacity:1;transform:scale(1)translateY(0)}}.dcg__tutorial-dragon{flex-shrink:0;width:clamp(96px,16vmin + 40px,220px);height:auto}.dcg__tutorial-title{font-size:clamp(22px,2vmin + 15px,44px);font-weight:var(--font-weight-bold);background:linear-gradient(135deg, var(--brand-500), var(--accent-500));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0}.dcg__tutorial-steps{text-align:left;flex-direction:column;gap:clamp(8px,1vmin + 5px,20px);margin:0;padding:0;list-style:none;display:flex}.dcg__tutorial-step{color:var(--neutral-800);align-items:center;gap:12px;font-size:clamp(14px,.9vmin + 11px,24px);line-height:1.35;display:flex}.dcg__tutorial-step--rule{font-weight:var(--font-weight-bold);color:var(--brand-500)}.dcg__tutorial-icon{flex-shrink:0;font-size:clamp(22px,1.6vmin + 16px,40px);line-height:1}.dcg__tutorial-start{background:linear-gradient(135deg, var(--brand-500), var(--accent-500));width:100%;color:var(--neutral-0);font-size:clamp(16px,1.1vmin + 12px,28px);font-weight:var(--font-weight-bold);cursor:pointer;box-shadow:var(--shadow-md);border:none;border-radius:999px;padding:clamp(12px,1.2vmin + 8px,26px) clamp(20px,2vmin + 14px,44px);transition:transform .1s,box-shadow .15s}.dcg__tutorial-start:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000040}.dcg__tutorial-start:active{transform:translateY(0)}.dcg__tb-anim{font-size:clamp(20px,1.4vmin + 14px,34px);font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards dcg-tb-float;position:fixed;top:clamp(44px,5vmin + 28px,96px);right:clamp(16px,2vmin + 10px,48px)}@keyframes dcg-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (orientation:landscape) and (height<=560px){.dcg__header{padding:4px 10px}.dcg__play{gap:5px;padding:0 8px 8px}.dcg__prompt{padding:5px 16px}.dcg__progress{padding:3px 14px}.dcg__progress-label,.dcg__direction-hint{display:none}.dcg__hint{min-height:28px;padding:4px 16px;font-size:13px}.dcg__tutorial-panel{gap:8px;max-width:460px;padding:14px 20px}.dcg__tutorial-dragon{display:none}.dcg__tutorial-start{padding:10px 20px}}@media (orientation:portrait) and (width<=400px){.dcg__play{padding-left:6px;padding-right:6px}.dcg__header{padding-left:10px;padding-right:10px}}@media (orientation:portrait) and (height>=900px){.dcg__play{gap:clamp(12px,1.2vmin + 6px,22px)}}@media (prefers-reduced-motion:reduce){.dcg *,.dcg__prompt,.dcg__toast,.dcg__tutorial-panel,.dcg__tb-anim{transition:none!important;animation:none!important}}.av{background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);color:var(--neutral-800);z-index:100;-webkit-tap-highlight-color:transparent;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.av__header{flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.av__exit{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:7px 14px;transition:box-shadow .15s,transform .1s}.av__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.av__title{font-size:var(--text-lg);font-weight:var(--font-weight-bold);color:var(--neutral-0);text-shadow:0 1px 4px #00000040;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.av__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;display:flex}.av__tinybucks-icon{font-size:18px;line-height:1}.av__tinybucks-value{font-size:var(--text-md);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.av__play{flex-direction:column;flex:1;align-items:center;gap:10px;min-height:0;padding:0 12px 12px;display:flex}.av__progress{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;max-width:100%;padding:6px 20px;display:flex}.av__progress-label{font-size:10px;font-weight:var(--font-weight-medium);color:var(--neutral-500);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.av__progress-pips{gap:5px;display:flex}.av__progress-pip{background:var(--brand-500);opacity:.25;border-radius:50%;width:9px;height:9px;transition:opacity .2s,transform .2s}.av__progress-pip--done{opacity:1;transform:scale(1.1)}.av__grid{flex-direction:column;flex:1;gap:10px;width:100%;max-width:min(96vw,1200px);min-height:0;display:flex}.av__scene{background:var(--neutral-0);border-radius:var(--radius-lg);min-height:0;box-shadow:var(--shadow-md);flex-direction:column;flex:auto;transition:box-shadow .25s;display:flex;overflow:hidden}.av__scene--lit{box-shadow:0 0 0 3px var(--brand-500), var(--shadow-md)}.av__scene-art,.av__option-icon{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.av__scene-art{aspect-ratio:16/9;object-fit:contain;background:#bfe3f4;flex:0 auto;width:100%;min-height:0;display:block}.av__story{font-size:clamp(14px, 2.6vw, var(--text-lg));color:var(--neutral-800);flex-direction:column;flex:1 0 auto;gap:2px;min-height:0;padding:10px 16px 12px;line-height:1.45;display:flex;overflow-y:auto}.av__story-name{font-weight:var(--font-weight-bold);color:var(--brand-500)}.av__qa{background:var(--neutral-0);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);flex-direction:column;flex:none;gap:10px;padding:12px 14px 14px;display:flex;position:relative}.av__q-count{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-500);text-align:center}.av__question{font-size:clamp(18px,4.2vw,26px);font-weight:var(--font-weight-bold);color:var(--brand-500);text-align:center;line-height:1.2}.av__question--finished{animation:.45s cubic-bezier(.2,1.4,.4,1) av-pop}@keyframes av-pop{0%{transform:scale(.9)}55%{transform:scale(1.06)}to{transform:scale(1)}}.av__options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.av__option{background:var(--neutral-0);border:2px solid var(--neutral-200);border-radius:var(--radius-lg);min-width:0;min-height:44px;font-size:clamp(12px, 2.6vw, var(--text-md));font-weight:var(--font-weight-medium);color:var(--neutral-800);text-align:center;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:clamp(6px,2vw,12px);transition:transform .18s,border-color .18s,background .18s,box-shadow .18s;display:flex}.av__option:hover:not(:disabled){border-color:var(--brand-500);box-shadow:var(--shadow-sm);transform:translateY(-3px)}.av__option:focus-visible{outline:3px solid var(--brand-500);outline-offset:2px}.av__option:disabled{cursor:default}.av__option-icon{object-fit:contain;flex-shrink:0;width:clamp(40px,12vw,62px);height:clamp(40px,12vw,62px);display:block}.av__option-label{overflow-wrap:anywhere;line-height:1.2}.av__option--correct{color:#155724;background:#d4edda;border-color:#2e9e5b;animation:.45s cubic-bezier(.34,1.56,.64,1) av-option-pop}.av__option--wrong{color:#721c24;background:#f8d7da;border-color:#d9534f;animation:.35s av-option-shake}@keyframes av-option-pop{0%{transform:scale(1)}45%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes av-option-shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.av__celebrate{border-radius:var(--radius-lg);pointer-events:none;z-index:5;position:absolute;inset:0;overflow:hidden}.av__spark{opacity:0;border-radius:3px;width:12px;height:12px;animation:.8s ease-out forwards av-burst;position:absolute;top:50%;left:50%}@keyframes av-burst{0%{opacity:1;transform:translate(-50%,-50%)scale(.3)}to{transform:translate(var(--av-dx), var(--av-dy)) scale(1) rotate(var(--av-rot));opacity:0}}.av__hint{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#ffffffe6;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;max-width:92%;min-height:36px;padding:7px 20px;display:flex}.av__hint[data-voice=listening]{color:var(--neutral-0);background:#38a169eb;animation:.9s ease-in-out infinite av-listening}@keyframes av-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 8px #38a16914, var(--shadow-sm)}}.av__hint[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeae6,#764ba2e6);animation:1.6s ease-in-out infinite av-processing}@keyframes av-processing{0%,to{opacity:.85}50%{opacity:1}}.av__hint[data-tone=good]{color:var(--neutral-0);background:#2e9e5b}.av__hint[data-tone=soft]{color:#856404;background:#fff3cd}.av__tutorial{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:20;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0;overflow-y:auto}.av__tutorial-panel{background:var(--neutral-0);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:420px;padding:22px 24px;animation:.35s cubic-bezier(.34,1.56,.64,1) av-tutorial-appear;display:flex;box-shadow:0 20px 60px #0000004d}@keyframes av-tutorial-appear{0%{opacity:0;transform:scale(.8)translateY(14px)}to{opacity:1;transform:scale(1)translateY(0)}}.av__tutorial-badge{border-radius:var(--radius-lg);flex-shrink:0;width:clamp(160px,46vw,230px);height:auto;display:block}.av__tutorial-title{font-size:clamp(22px,5.6vw,28px);font-weight:var(--font-weight-bold);background:linear-gradient(135deg, var(--brand-500), var(--accent-500));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0}.av__tutorial-steps{text-align:left;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.av__tutorial-step{font-size:var(--text-md);color:var(--neutral-800);align-items:center;gap:12px;line-height:1.35;display:flex}.av__tutorial-step--rule{font-weight:var(--font-weight-bold);color:var(--brand-500)}.av__tutorial-icon{flex-shrink:0;font-size:26px;line-height:1}.av__tutorial-start{background:linear-gradient(135deg, var(--brand-500), var(--accent-500));width:100%;color:var(--neutral-0);font-size:var(--text-lg);font-weight:var(--font-weight-bold);cursor:pointer;box-shadow:var(--shadow-md);border:none;border-radius:999px;padding:14px 24px;transition:transform .1s,box-shadow .15s}.av__tutorial-start:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000040}.av__tutorial-start:active{transform:translateY(0)}.av__tb-anim{font-size:22px;font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards av-tb-float;position:fixed;top:48px;right:20px}@keyframes av-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (orientation:portrait){.av__scene-art{max-height:42vh}}@media (aspect-ratio>=13/10) and (width>=720px){.av__grid{flex-direction:row;align-items:stretch;gap:12px}.av__scene{flex:56%;min-width:0}.av__story{flex:1 0 auto}.av__qa{flex:44%;justify-content:center;min-width:0;min-height:0}.av__options{flex:0 auto;grid-template-columns:1fr;grid-auto-rows:minmax(76px,auto);gap:10px;min-height:0}.av__option{text-align:left;font-size:var(--text-lg);flex-direction:row;justify-content:flex-start;gap:16px;padding:10px 18px}.av__option-icon{width:54px;height:54px}}@media (orientation:landscape) and (height<=560px){.av__header{padding:6px 12px}.av__play{gap:6px;padding:0 8px 8px}.av__grid{gap:6px}.av__progress{padding:4px 16px}.av__qa{flex:auto;gap:6px;min-height:0;padding:8px 10px 10px}.av__options{flex:auto;grid-auto-rows:minmax(0,1fr);gap:6px;min-height:0}.av__option{font-size:var(--text-md);gap:12px;padding:4px 12px}.av__option-icon{width:38px;height:38px}.av__scene-art{max-height:40%}.av__story{padding:6px 12px 8px;font-size:13px;line-height:1.35}.av__q-count{font-size:11px}.av__question{font-size:clamp(16px,2.4vw,20px)}.av__hint{min-height:28px;font-size:var(--text-sm);padding:4px 16px}}@media (width>=1600px) and (height>=800px){.av__grid{flex:0 auto;gap:16px;max-width:min(94vw,1660px)}.av__play{justify-content:center;gap:14px;padding:0 20px 18px}.av__header{padding:16px 28px}.av__title{font-size:clamp(var(--text-lg), 1.5vw, 34px)}.av__exit{font-size:var(--text-md);padding:10px 20px}.av__tinybucks{padding:9px 18px}.av__tinybucks-icon{font-size:24px}.av__tinybucks-value{font-size:var(--text-lg)}.av__story{font-size:clamp(var(--text-lg), 1.15vw, 26px);padding:14px 22px 16px}.av__question{font-size:clamp(26px,1.9vw,38px)}.av__q-count{font-size:var(--text-md)}.av__option{font-size:clamp(var(--text-lg), 1.3vw, 28px);gap:22px;padding:14px 24px}.av__option-icon{width:clamp(54px,4.2vw,88px);height:clamp(54px,4.2vw,88px)}.av__options{grid-auto-rows:minmax(96px,auto);gap:14px}.av__hint{font-size:var(--text-lg);min-height:46px;padding:10px 28px}.av__progress-label{font-size:var(--text-sm)}.av__progress-pip{width:12px;height:12px}.av__tutorial-panel{gap:20px;max-width:560px;padding:32px 36px}.av__tutorial-badge{width:320px}.av__tutorial-step{font-size:var(--text-lg)}}@media (width>=2400px) and (height>=1200px){.av__grid{gap:26px;max-width:min(92vw,2800px)}.av__play{gap:20px;padding:0 28px 24px}.av__story{padding:20px 30px 24px;font-size:clamp(24px,1.15vw,34px)}.av__question{font-size:clamp(38px,2vw,54px)}.av__q-count{font-size:var(--text-lg)}.av__option{gap:30px;padding:18px 32px;font-size:clamp(28px,1.5vw,40px)}.av__option-icon{width:clamp(100px,4.6vw,150px);height:clamp(100px,4.6vw,150px)}.av__options{grid-auto-rows:minmax(160px,auto);gap:22px}.av__hint{min-height:62px;padding:14px 38px;font-size:clamp(24px,1.1vw,32px)}.av__progress{padding:10px 28px}.av__progress-label{font-size:var(--text-md)}.av__progress-pip{width:16px;height:16px}.av__title{font-size:clamp(34px,1.4vw,46px)}.av__tutorial-panel{gap:26px;max-width:760px;padding:40px 46px}.av__tutorial-badge{width:440px}.av__tutorial-title{font-size:40px}.av__tutorial-step{font-size:26px}.av__tutorial-icon{font-size:38px}.av__tutorial-start{padding:20px 32px;font-size:30px}}@media (prefers-reduced-motion:reduce){.av__option,.av__question--finished,.av__tutorial-panel,.av__hint,.av__tb-anim{transition:none;animation:none}.av__celebrate{display:none}}.ct{background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);color:var(--neutral-800);z-index:100;-webkit-tap-highlight-color:transparent;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.ct__header{flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.ct__exit{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:7px 14px;transition:box-shadow .15s,transform .1s}.ct__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.ct__title{font-size:var(--text-lg);font-weight:var(--font-weight-bold);color:var(--neutral-0);text-shadow:0 1px 4px #00000040;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ct__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;display:flex}.ct__tinybucks-icon{font-size:18px;line-height:1}.ct__tinybucks-value{font-size:var(--text-md);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.ct__play{flex-direction:column;flex:1;align-items:center;gap:10px;min-height:0;padding:0 12px 12px;display:flex}.ct__progress{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;max-width:100%;padding:6px 20px;display:flex}.ct__progress-label{font-size:10px;font-weight:var(--font-weight-medium);color:var(--neutral-500);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.ct__progress-pips{gap:5px;display:flex}.ct__progress-pip{background:var(--brand-500);opacity:.25;border-radius:50%;width:9px;height:9px;transition:opacity .2s,transform .2s}.ct__progress-pip--done{opacity:1;transform:scale(1.1)}.ct__grid{flex-direction:column;flex:1;gap:10px;width:100%;max-width:min(96vw,1200px);min-height:0;display:flex}.ct__scene{background:var(--neutral-0);border-radius:var(--radius-lg);min-height:0;box-shadow:var(--shadow-md);flex-direction:column;flex:auto;transition:box-shadow .25s;display:flex;overflow:hidden}.ct__scene--lit{box-shadow:0 0 0 3px var(--brand-500), var(--shadow-md)}.ct__scene-art,.ct__option-icon{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.ct__scene-art{aspect-ratio:16/9;object-fit:contain;background:var(--neutral-100);flex:0 auto;width:100%;min-height:0;display:block}.ct__scene-art[data-scene=campsite]{background:#a4a48b}.ct__scene-art[data-scene=lake]{background:#72b3b9}.ct__scene-art[data-scene=trail]{background:#799786}.ct__scene-art[data-scene=campfire]{background:#424455}.ct__scene-art[data-scene=hilltop]{background:#7bb6bb}.ct__story{font-size:clamp(14px, 2.6vw, var(--text-lg));color:var(--neutral-800);flex-direction:column;flex:1 0 auto;gap:2px;min-height:0;padding:10px 16px 12px;line-height:1.45;display:flex;overflow-y:auto}.ct__story-name{font-weight:var(--font-weight-bold);color:var(--brand-500)}.ct__qa{background:var(--neutral-0);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);flex-direction:column;flex:none;gap:10px;padding:12px 14px 14px;display:flex;position:relative}.ct__q-count{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-500);text-align:center}.ct__question{font-size:clamp(18px,4.2vw,26px);font-weight:var(--font-weight-bold);color:var(--brand-500);text-align:center;line-height:1.2}.ct__question--finished{animation:.45s cubic-bezier(.2,1.4,.4,1) ct-pop}@keyframes ct-pop{0%{transform:scale(.9)}55%{transform:scale(1.06)}to{transform:scale(1)}}.ct__options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.ct__option{background:var(--neutral-0);border:2px solid var(--neutral-200);border-radius:var(--radius-lg);min-width:0;min-height:44px;font-size:clamp(12px, 2.6vw, var(--text-md));font-weight:var(--font-weight-medium);color:var(--neutral-800);text-align:center;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:clamp(6px,2vw,12px);transition:transform .18s,border-color .18s,background .18s,box-shadow .18s;display:flex}.ct__option:hover:not(:disabled){border-color:var(--brand-500);box-shadow:var(--shadow-sm);transform:translateY(-3px)}.ct__option:focus-visible{outline:3px solid var(--brand-500);outline-offset:2px}.ct__option:disabled{cursor:default}.ct__option-icon{object-fit:contain;flex-shrink:0;width:clamp(40px,12vw,62px);height:clamp(40px,12vw,62px);display:block}.ct__option-label{overflow-wrap:anywhere;line-height:1.2}.ct__option--correct{color:#155724;background:#d4edda;border-color:#2e9e5b;animation:.45s cubic-bezier(.34,1.56,.64,1) ct-option-pop}.ct__option--wrong{color:#721c24;background:#f8d7da;border-color:#d9534f;animation:.35s ct-option-shake}@keyframes ct-option-pop{0%{transform:scale(1)}45%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes ct-option-shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.ct__celebrate{border-radius:var(--radius-lg);pointer-events:none;z-index:5;position:absolute;inset:0;overflow:hidden}.ct__spark{opacity:0;border-radius:3px;width:12px;height:12px;animation:.8s ease-out forwards ct-burst;position:absolute;top:50%;left:50%}@keyframes ct-burst{0%{opacity:1;transform:translate(-50%,-50%)scale(.3)}to{transform:translate(var(--ct-dx), var(--ct-dy)) scale(1) rotate(var(--ct-rot));opacity:0}}.ct__hint{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#ffffffe6;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;max-width:92%;min-height:36px;padding:7px 20px;display:flex}.ct__hint[data-voice=listening]{color:var(--neutral-0);background:#38a169eb;animation:.9s ease-in-out infinite ct-listening}@keyframes ct-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 8px #38a16914, var(--shadow-sm)}}.ct__hint[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeae6,#764ba2e6);animation:1.6s ease-in-out infinite ct-processing}@keyframes ct-processing{0%,to{opacity:.85}50%{opacity:1}}.ct__hint[data-tone=good]{color:var(--neutral-0);background:#2e9e5b}.ct__hint[data-tone=soft]{color:#856404;background:#fff3cd}.ct__tutorial{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:20;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0;overflow-y:auto}.ct__tutorial-panel{background:var(--neutral-0);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:420px;padding:22px 24px;animation:.35s cubic-bezier(.34,1.56,.64,1) ct-tutorial-appear;display:flex;box-shadow:0 20px 60px #0000004d}@keyframes ct-tutorial-appear{0%{opacity:0;transform:scale(.8)translateY(14px)}to{opacity:1;transform:scale(1)translateY(0)}}.ct__tutorial-badge{border-radius:var(--radius-lg);flex-shrink:0;width:clamp(160px,46vw,230px);height:auto;display:block}.ct__tutorial-title{font-size:clamp(22px,5.6vw,28px);font-weight:var(--font-weight-bold);background:linear-gradient(135deg, var(--brand-500), var(--accent-500));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0}.ct__tutorial-steps{text-align:left;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.ct__tutorial-step{font-size:var(--text-md);color:var(--neutral-800);align-items:center;gap:12px;line-height:1.35;display:flex}.ct__tutorial-step--rule{font-weight:var(--font-weight-bold);color:var(--brand-500)}.ct__tutorial-icon{flex-shrink:0;font-size:26px;line-height:1}.ct__tutorial-start{background:linear-gradient(135deg, var(--brand-500), var(--accent-500));width:100%;color:var(--neutral-0);font-size:var(--text-lg);font-weight:var(--font-weight-bold);cursor:pointer;box-shadow:var(--shadow-md);border:none;border-radius:999px;padding:14px 24px;transition:transform .1s,box-shadow .15s}.ct__tutorial-start:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000040}.ct__tutorial-start:active{transform:translateY(0)}.ct__tb-anim{font-size:22px;font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards ct-tb-float;position:fixed;top:48px;right:20px}@keyframes ct-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (orientation:portrait){.ct__scene-art{max-height:42vh}}@media (aspect-ratio>=13/10) and (width>=720px){.ct__grid{flex-direction:row;align-items:stretch;gap:12px}.ct__scene{flex:56%;min-width:0}.ct__story{flex:1 0 auto}.ct__qa{flex:44%;justify-content:center;min-width:0;min-height:0}.ct__options{flex:0 auto;grid-template-columns:1fr;grid-auto-rows:minmax(76px,auto);gap:10px;min-height:0}.ct__option{text-align:left;font-size:var(--text-lg);flex-direction:row;justify-content:flex-start;gap:16px;padding:10px 18px}.ct__option-icon{width:54px;height:54px}}@media (orientation:landscape) and (height<=560px){.ct__header{padding:6px 12px}.ct__play{gap:6px;padding:0 8px 8px}.ct__grid{gap:6px}.ct__progress{padding:4px 16px}.ct__qa{flex:auto;gap:6px;min-height:0;padding:8px 10px 10px}.ct__options{flex:auto;grid-auto-rows:minmax(0,1fr);gap:6px;min-height:0}.ct__option{font-size:var(--text-md);gap:12px;padding:4px 12px}.ct__option-icon{width:38px;height:38px}.ct__scene-art{max-height:40%}.ct__story{padding:6px 12px 8px;font-size:13px;line-height:1.35}.ct__q-count{font-size:11px}.ct__question{font-size:clamp(16px,2.4vw,20px)}.ct__hint{min-height:28px;font-size:var(--text-sm);padding:4px 16px}}@media (width>=1600px) and (height>=800px){.ct__grid{flex:0 auto;gap:16px;max-width:min(94vw,1660px)}.ct__play{justify-content:center;gap:14px;padding:0 20px 18px}.ct__header{padding:16px 28px}.ct__title{font-size:clamp(var(--text-lg), 1.5vw, 34px)}.ct__exit{font-size:var(--text-md);padding:10px 20px}.ct__tinybucks{padding:9px 18px}.ct__tinybucks-icon{font-size:24px}.ct__tinybucks-value{font-size:var(--text-lg)}.ct__story{font-size:clamp(var(--text-lg), 1.15vw, 26px);padding:14px 22px 16px}.ct__question{font-size:clamp(26px,1.9vw,38px)}.ct__q-count{font-size:var(--text-md)}.ct__option{font-size:clamp(var(--text-lg), 1.3vw, 28px);gap:22px;padding:14px 24px}.ct__option-icon{width:clamp(54px,4.2vw,88px);height:clamp(54px,4.2vw,88px)}.ct__options{grid-auto-rows:minmax(96px,auto);gap:14px}.ct__hint{font-size:var(--text-lg);min-height:46px;padding:10px 28px}.ct__progress-label{font-size:var(--text-sm)}.ct__progress-pip{width:12px;height:12px}.ct__tutorial-panel{gap:20px;max-width:560px;padding:32px 36px}.ct__tutorial-badge{width:320px}.ct__tutorial-step{font-size:var(--text-lg)}}@media (width>=2400px) and (height>=1200px){.ct__grid{gap:26px;max-width:min(92vw,2800px)}.ct__play{gap:20px;padding:0 28px 24px}.ct__story{padding:20px 30px 24px;font-size:clamp(24px,1.15vw,34px)}.ct__question{font-size:clamp(38px,2vw,54px)}.ct__q-count{font-size:var(--text-lg)}.ct__option{gap:30px;padding:18px 32px;font-size:clamp(28px,1.5vw,40px)}.ct__option-icon{width:clamp(100px,4.6vw,150px);height:clamp(100px,4.6vw,150px)}.ct__options{grid-auto-rows:minmax(160px,auto);gap:22px}.ct__hint{min-height:62px;padding:14px 38px;font-size:clamp(24px,1.1vw,32px)}.ct__progress{padding:10px 28px}.ct__progress-label{font-size:var(--text-md)}.ct__progress-pip{width:16px;height:16px}.ct__title{font-size:clamp(34px,1.4vw,46px)}.ct__tutorial-panel{gap:26px;max-width:760px;padding:40px 46px}.ct__tutorial-badge{width:440px}.ct__tutorial-title{font-size:40px}.ct__tutorial-step{font-size:26px}.ct__tutorial-icon{font-size:38px}.ct__tutorial-start{padding:20px 32px;font-size:30px}}@media (prefers-reduced-motion:reduce){.ct__option,.ct__question--finished,.ct__tutorial-panel,.ct__hint,.ct__tb-anim{transition:none;animation:none}.ct__celebrate{display:none}}.rfs{background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);color:var(--neutral-800);z-index:100;-webkit-tap-highlight-color:transparent;touch-action:none;position:fixed;inset:0;overflow:hidden}.rfs__overlay{z-index:10;pointer-events:none;flex-direction:column;align-items:center;padding:0 12px 12px;display:flex;position:absolute;inset:0}.rfs__top{flex-direction:column;flex-shrink:0;align-items:center;gap:10px;width:100%;display:flex}.rfs__header{flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:10px 2px;display:flex}.rfs__exit{pointer-events:auto;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:7px 14px;transition:box-shadow .15s,transform .1s}.rfs__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.rfs__title{box-shadow:var(--shadow-sm);font-size:var(--text-lg);font-weight:var(--font-weight-bold);color:var(--neutral-800);white-space:nowrap;text-overflow:ellipsis;background:#ffffffeb;border-radius:999px;padding:6px 14px;overflow:hidden}.rfs__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;display:flex}.rfs__tinybucks-icon{font-size:18px;line-height:1}.rfs__tinybucks-value{font-size:var(--text-md);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.rfs__progress{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;max-width:100%;padding:6px 20px;display:flex}.rfs__progress-label{font-size:10px;font-weight:var(--font-weight-medium);color:var(--neutral-500);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.rfs__progress-pips{gap:5px;display:flex}.rfs__progress-pip{background:var(--brand-500);opacity:.25;border-radius:50%;width:9px;height:9px;transition:opacity .2s,transform .2s}.rfs__progress-pip--done{opacity:1;transform:scale(1.1)}.rfs__prompt{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;background:#fffffff2;flex-direction:column;flex-shrink:0;align-items:center;gap:2px;max-width:min(94vw,620px);padding:10px 22px;transition:box-shadow .25s,background-color .25s;display:flex}.rfs__prompt--finished{animation:.45s cubic-bezier(.2,1.4,.4,1) rfs-pop}.rfs__prompt--lit{box-shadow:0 0 0 3px #ffd166cc, var(--shadow-md);background:#fff9e6}@keyframes rfs-pop{0%{transform:scale(.9)}55%{transform:scale(1.06)}to{transform:scale(1)}}.rfs__direction{font-weight:var(--font-weight-bold);color:var(--brand-500);font-size:clamp(17px,4.1vw,26px);line-height:1.25}.rfs__direction-hint{font-size:var(--text-sm);color:var(--neutral-600);line-height:1.35}.rfs__scene{background:linear-gradient(180deg, var(--rfs-sky-top) 0%, var(--rfs-sky-bottom) 100%);touch-action:none;position:absolute;inset:0;overflow:hidden}.rfs__scene--kitchen{--rfs-sky-top:#dff0ff;--rfs-sky-bottom:#c3e0f5}.rfs__scene--bedroom{--rfs-sky-top:#efe6ff;--rfs-sky-bottom:#d6c8f2}.rfs__room{object-fit:cover;object-position:center;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block;position:absolute;inset:0}.rfs__prop{z-index:1;pointer-events:none;transition:filter .15s;position:absolute}.rfs__prop--over{filter:drop-shadow(0 0 10px #ffd166f2)}.rfs__prop-art{transform-origin:50%;width:100%;height:100%}.rfs__prop-art--pulse{animation:.45s rfs-prop-pop}@keyframes rfs-prop-pop{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}.rfs__prop-img{object-fit:contain;filter:drop-shadow(0 4px 8px #00000038);width:100%;height:100%;display:block}.rfs__drag{z-index:2;touch-action:none;-webkit-user-select:none;user-select:none;cursor:default;transition:left .22s,top .22s,opacity .25s .18s;position:absolute}.rfs__drag-art{pointer-events:none;object-fit:contain;filter:drop-shadow(0 3px 5px #0000004d);width:100%;height:100%;display:block}.rfs__drag-label{color:var(--neutral-800);font-size:clamp(9px,1.7vmin,13px);font-weight:var(--font-weight-bold);white-space:nowrap;pointer-events:none;box-shadow:var(--shadow-sm);background:#fffffff0;border-radius:999px;padding:2px 9px;position:absolute;bottom:-19px;left:50%;transform:translate(-50%)}.rfs__drag--ready{cursor:grab;animation:1.8s ease-in-out infinite rfs-bob}@keyframes rfs-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.rfs__drag--dragging{cursor:grabbing;z-index:4;transition:none;animation:none}.rfs__drag--placed{opacity:0;pointer-events:none;animation:none}.rfs__drag--glow .rfs__drag-art{animation:1.2s ease-in-out infinite rfs-glow}@keyframes rfs-glow{0%,to{filter:drop-shadow(0 3px 5px #0000004d)drop-shadow(0 0 5px #ffd166e6)}50%{filter:drop-shadow(0 3px 5px #0000004d)drop-shadow(0 0 18px #ffd166)}}.rfs__drag:focus-visible{outline:3px solid var(--brand-500);outline-offset:3px;border-radius:var(--radius-sm)}.rfs__celebrate{pointer-events:none;z-index:3;position:absolute;inset:0}.rfs__spark{opacity:0;border-radius:3px;width:11px;height:11px;animation:.8s ease-out forwards rfs-burst;position:absolute;top:50%;left:50%}@keyframes rfs-burst{0%{opacity:1;transform:translate(-50%,-50%)scale(.3)}to{transform:translate(var(--rfs-dx), var(--rfs-dy)) scale(1) rotate(var(--rfs-rot));opacity:0}}.rfs__toast{background:var(--neutral-0);font-size:clamp(15px,3.2vw,20px);font-weight:var(--font-weight-bold);text-align:center;border-radius:999px;flex-shrink:0;max-width:92%;padding:8px 24px;transition:opacity .18s,transform .18s;box-shadow:0 8px 24px #00000038}.rfs__toast--empty{opacity:0;visibility:hidden;box-shadow:none;transform:scale(.9)}.rfs__toast--good{color:#2e9e5b}.rfs__toast--bad{color:#721c24;background:#f8d7da}.rfs__hint{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#ffffffe6;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;max-width:92%;min-height:36px;margin-top:auto;padding:7px 20px;display:flex}.rfs__hint[data-voice=listening]{color:var(--neutral-0);background:#38a169eb;animation:.9s ease-in-out infinite rfs-listening}@keyframes rfs-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 8px #38a16914, var(--shadow-sm)}}.rfs__hint[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeae6,#764ba2e6);animation:1.6s ease-in-out infinite rfs-processing}@keyframes rfs-processing{0%,to{opacity:.85}50%{opacity:1}}.rfs__hint[data-tone=good]{color:var(--neutral-0);background:#2e9e5b}.rfs__hint[data-tone=soft]{color:#856404;background:#fff3cd}.rfs__tutorial{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:20;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.rfs__tutorial-panel{background:var(--neutral-0);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:400px;padding:22px 24px;animation:.35s cubic-bezier(.34,1.56,.64,1) rfs-tutorial-appear;display:flex;box-shadow:0 20px 60px #0000004d}@keyframes rfs-tutorial-appear{0%{opacity:0;transform:scale(.8)translateY(14px)}to{opacity:1;transform:scale(1)translateY(0)}}.rfs__tutorial-badge{flex-shrink:0;width:clamp(84px,22vw,128px);height:auto}.rfs__tutorial-title{font-size:clamp(22px,5.6vw,28px);font-weight:var(--font-weight-bold);background:linear-gradient(135deg, var(--brand-500), var(--accent-500));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0}.rfs__tutorial-steps{text-align:left;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.rfs__tutorial-step{font-size:var(--text-md);color:var(--neutral-800);align-items:center;gap:12px;line-height:1.35;display:flex}.rfs__tutorial-step--rule{font-weight:var(--font-weight-bold);color:var(--brand-500)}.rfs__tutorial-icon{flex-shrink:0;font-size:26px;line-height:1}.rfs__tutorial-start{background:linear-gradient(135deg, var(--brand-500), var(--accent-500));width:100%;color:var(--neutral-0);font-size:var(--text-lg);font-weight:var(--font-weight-bold);cursor:pointer;box-shadow:var(--shadow-md);border:none;border-radius:999px;padding:14px 24px;transition:transform .1s,box-shadow .15s}.rfs__tutorial-start:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000040}.rfs__tutorial-start:active{transform:translateY(0)}.rfs__tb-anim{font-size:22px;font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards rfs-tb-float;position:fixed;top:48px;right:20px}@keyframes rfs-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (orientation:landscape) and (height<=560px){.rfs__header{padding:6px 2px}.rfs__overlay{padding:0 8px 8px}.rfs__top{gap:6px}.rfs__progress{padding:4px 16px}.rfs__progress-label{display:none}.rfs__prompt{max-width:96vw;padding:6px 16px}.rfs__direction{font-size:clamp(15px,2.6vw,20px)}.rfs__direction-hint{display:none}.rfs__toast{padding:5px 18px;font-size:15px}.rfs__hint{min-height:30px;font-size:var(--text-sm);padding:4px 16px}.rfs__tutorial-panel{gap:10px;padding:16px 20px}.rfs__tutorial-badge{display:none}}@media (height>=800px){.rfs__top{gap:14px}}@media (prefers-reduced-motion:reduce){.rfs *,.rfs__prompt,.rfs__toast,.rfs__tutorial-panel,.rfs__tb-anim{transition:none!important;animation:none!important}.rfs__celebrate{display:none}.rfs__drag--glow .rfs__drag-art{filter:drop-shadow(0 3px 5px #0000004d)drop-shadow(0 0 14px #ffd166)}}.pt{background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);color:var(--neutral-800);z-index:100;-webkit-tap-highlight-color:transparent;touch-action:none;position:fixed;inset:0;overflow:hidden}.pt__overlay{z-index:10;pointer-events:none;flex-direction:column;align-items:center;padding:0 clamp(8px,1.4vmin,28px) clamp(8px,1.4vmin,28px);display:flex;position:absolute;inset:0}.pt__top{flex-direction:column;flex-shrink:0;align-items:center;gap:clamp(6px,1.1vmin,18px);width:100%;display:flex}.pt__header{flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:clamp(6px,1.1vmin,18px) 2px;display:flex}.pt__exit{pointer-events:auto;border-radius:var(--radius-sm);font-size:clamp(13px,1.5vmin,22px);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:clamp(6px,.8vmin,12px) clamp(12px,1.6vmin,24px);transition:box-shadow .15s,transform .1s}.pt__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.pt__title{box-shadow:var(--shadow-sm);font-size:clamp(15px,1.9vmin,28px);font-weight:var(--font-weight-bold);color:var(--neutral-800);white-space:nowrap;text-overflow:ellipsis;background:#ffffffeb;border-radius:999px;padding:clamp(5px,.7vmin,11px) clamp(12px,1.6vmin,26px);overflow:hidden}.pt__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:clamp(5px,.7vmin,11px) clamp(10px,1.4vmin,22px);display:flex}.pt__tinybucks-icon{font-size:clamp(16px,1.9vmin,28px);line-height:1}.pt__tinybucks-value{font-size:clamp(14px,1.7vmin,26px);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.pt__progress{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;max-width:100%;padding:clamp(5px,.7vmin,11px) clamp(16px,2.2vmin,34px);display:flex}.pt__progress-label{font-size:clamp(10px,1.1vmin,16px);font-weight:var(--font-weight-medium);color:var(--neutral-500);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.pt__progress-pips{gap:clamp(5px,.6vmin,9px);display:flex}.pt__progress-pip{background:var(--brand-500);opacity:.25;border-radius:50%;width:clamp(9px,1vmin,15px);height:clamp(9px,1vmin,15px);transition:opacity .2s,transform .2s}.pt__progress-pip--done{opacity:1;transform:scale(1.1)}.pt__prompt{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;background:#fffffff2;flex-direction:column;flex-shrink:0;align-items:center;gap:2px;max-width:min(94vw,clamp(620px,58vw,1400px));padding:clamp(8px,1.1vmin,18px) clamp(18px,2.6vmin,40px);transition:box-shadow .25s,background-color .25s;display:flex}.pt__prompt--finished{animation:.45s cubic-bezier(.2,1.4,.4,1) pt-pop}.pt__prompt--lit{box-shadow:0 0 0 3px #ffd166cc, var(--shadow-md);background:#fff9e6}@keyframes pt-pop{0%{transform:scale(.9)}55%{transform:scale(1.06)}to{transform:scale(1)}}.pt__direction{font-weight:var(--font-weight-bold);color:var(--brand-500);font-size:clamp(17px,3.2vmin,40px);line-height:1.25}.pt__direction-hint{color:var(--neutral-600);font-size:clamp(13px,1.5vmin,22px);line-height:1.35}.pt__scene{background:linear-gradient(180deg, var(--pt-sky-top) 0%, var(--pt-sky-bottom) 100%);touch-action:none;position:absolute;inset:0;overflow:hidden}.pt__scene--party{--pt-sky-top:#fce3ec;--pt-sky-bottom:#f3c3d5}.pt__scene--kitchen{--pt-sky-top:#ddf4ea;--pt-sky-bottom:#b9e2d3}.pt__room{object-fit:cover;object-position:center;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block;position:absolute;inset:0}.pt__prop{z-index:1;pointer-events:none;transition:filter .15s;position:absolute}.pt__prop--over{filter:drop-shadow(0 0 10px #ffd166f2)}.pt__prop-art{transform-origin:50%;width:100%;height:100%}.pt__prop-art--pulse{animation:.45s pt-prop-pop}@keyframes pt-prop-pop{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}.pt__prop-img{object-fit:contain;filter:drop-shadow(0 4px 8px #00000038);width:100%;height:100%;display:block}.pt__drag{z-index:2;touch-action:none;-webkit-user-select:none;user-select:none;cursor:default;transition:left .22s,top .22s,opacity .25s .18s;position:absolute}.pt__drag-art{pointer-events:none;object-fit:contain;filter:drop-shadow(0 3px 5px #0000004d);width:100%;height:100%;display:block}.pt__drag-label{color:var(--neutral-800);font-size:clamp(9px,1.5vmin,22px);font-weight:var(--font-weight-bold);white-space:nowrap;pointer-events:none;box-shadow:var(--shadow-sm);background:#fffffff0;border-radius:999px;padding:2px clamp(8px,1.1vmin,16px);position:absolute;bottom:clamp(-26px,-2.2vmin,-17px);left:50%;transform:translate(-50%)}.pt__drag--ready{cursor:grab;animation:1.8s ease-in-out infinite pt-bob}@keyframes pt-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.pt__drag--dragging{cursor:grabbing;z-index:4;transition:none;animation:none}.pt__drag--placed{opacity:0;pointer-events:none;animation:none}.pt__drag--glow .pt__drag-art{animation:1.2s ease-in-out infinite pt-glow}@keyframes pt-glow{0%,to{filter:drop-shadow(0 3px 5px #0000004d)drop-shadow(0 0 5px #ffd166e6)}50%{filter:drop-shadow(0 3px 5px #0000004d)drop-shadow(0 0 18px #ffd166)}}.pt__drag:focus-visible{outline:3px solid var(--brand-500);outline-offset:3px;border-radius:var(--radius-sm)}.pt__celebrate{pointer-events:none;z-index:3;position:absolute;inset:0}.pt__spark{opacity:0;border-radius:3px;width:clamp(9px,1.1vmin,20px);height:clamp(9px,1.1vmin,20px);animation:.8s ease-out forwards pt-burst;position:absolute;top:50%;left:50%}@keyframes pt-burst{0%{opacity:1;transform:translate(-50%,-50%)scale(.3)}to{transform:translate(var(--pt-dx), var(--pt-dy)) scale(1) rotate(var(--pt-rot));opacity:0}}.pt__toast{background:var(--neutral-0);font-size:clamp(15px,2vmin,30px);font-weight:var(--font-weight-bold);text-align:center;border-radius:999px;flex-shrink:0;max-width:92%;padding:clamp(6px,.9vmin,14px) clamp(18px,2.6vmin,40px);transition:opacity .18s,transform .18s;box-shadow:0 8px 24px #00000038}.pt__toast--empty{opacity:0;visibility:hidden;box-shadow:none;transform:scale(.9)}.pt__toast--good{color:#2e9e5b}.pt__toast--bad{color:#721c24;background:#f8d7da}.pt__hint{font-size:clamp(14px,1.7vmin,26px);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#ffffffe6;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;max-width:92%;min-height:clamp(32px,4vmin,58px);margin-top:auto;padding:clamp(6px,.9vmin,14px) clamp(16px,2.2vmin,34px);display:flex}.pt__hint[data-voice=listening]{color:var(--neutral-0);background:#38a169eb;animation:.9s ease-in-out infinite pt-listening}@keyframes pt-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 8px #38a16914, var(--shadow-sm)}}.pt__hint[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeae6,#764ba2e6);animation:1.6s ease-in-out infinite pt-processing}@keyframes pt-processing{0%,to{opacity:.85}50%{opacity:1}}.pt__hint[data-tone=good]{color:var(--neutral-0);background:#2e9e5b}.pt__hint[data-tone=soft]{color:#856404;background:#fff3cd}.pt__tutorial{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:20;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.pt__tutorial-panel{background:var(--neutral-0);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:clamp(10px,1.6vmin,22px);width:100%;max-width:clamp(400px,42vmin,620px);padding:clamp(18px,2.6vmin,40px) clamp(20px,3vmin,46px);animation:.35s cubic-bezier(.34,1.56,.64,1) pt-tutorial-appear;display:flex;box-shadow:0 20px 60px #0000004d}@keyframes pt-tutorial-appear{0%{opacity:0;transform:scale(.8)translateY(14px)}to{opacity:1;transform:scale(1)translateY(0)}}.pt__tutorial-badge{flex-shrink:0;width:clamp(84px,20vmin,220px);height:auto}.pt__tutorial-title{font-size:clamp(22px,3.4vmin,44px);font-weight:var(--font-weight-bold);background:linear-gradient(135deg, var(--brand-500), var(--accent-500));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0}.pt__tutorial-steps{text-align:left;flex-direction:column;gap:clamp(10px,1.4vmin,20px);margin:0;padding:0;list-style:none;display:flex}.pt__tutorial-step{color:var(--neutral-800);align-items:center;gap:12px;font-size:clamp(15px,1.9vmin,28px);line-height:1.35;display:flex}.pt__tutorial-step--rule{font-weight:var(--font-weight-bold);color:var(--brand-500)}.pt__tutorial-icon{flex-shrink:0;font-size:clamp(22px,2.8vmin,40px);line-height:1}.pt__tutorial-start{background:linear-gradient(135deg, var(--brand-500), var(--accent-500));width:100%;color:var(--neutral-0);font-size:clamp(16px,2.2vmin,32px);font-weight:var(--font-weight-bold);cursor:pointer;box-shadow:var(--shadow-md);border:none;border-radius:999px;padding:clamp(12px,1.8vmin,24px) clamp(20px,3vmin,44px);transition:transform .1s,box-shadow .15s}.pt__tutorial-start:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000040}.pt__tutorial-start:active{transform:translateY(0)}.pt__tb-anim{font-size:clamp(20px,2.4vmin,36px);font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards pt-tb-float;position:fixed;top:clamp(44px,6vmin,110px);right:clamp(16px,2.4vmin,44px)}@keyframes pt-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (orientation:landscape) and (height<=560px){.pt__header{padding:6px 2px}.pt__overlay{padding:0 8px 8px}.pt__top{gap:6px}.pt__progress{padding:4px 16px}.pt__progress-label{display:none}.pt__prompt{max-width:96vw;padding:6px 16px}.pt__direction{font-size:clamp(15px,2.6vw,20px)}.pt__direction-hint{display:none}.pt__toast{padding:5px 18px;font-size:15px}.pt__hint{min-height:30px;font-size:var(--text-sm);padding:4px 16px}.pt__tutorial-panel{gap:10px;max-width:420px;padding:16px 20px}.pt__tutorial-badge{display:none}}@media (orientation:portrait) and (width<=420px){.pt__overlay{padding:0 6px 8px}.pt__prompt{max-width:98vw;padding:8px 14px}.pt__header{gap:6px}}@media (height>=800px){.pt__top{gap:clamp(10px,1.6vmin,24px)}}@media (prefers-reduced-motion:reduce){.pt *,.pt__prompt,.pt__toast,.pt__tutorial-panel,.pt__tb-anim{transition:none!important;animation:none!important}.pt__celebrate{display:none}.pt__drag--glow .pt__drag-art{filter:drop-shadow(0 3px 5px #0000004d)drop-shadow(0 0 14px #ffd166)}}.ss{background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);color:var(--neutral-800);z-index:100;-webkit-tap-highlight-color:transparent;--ss-pic-max:62vh;--ss-pic-w:16;--ss-pic-h:9;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.ss__header{z-index:10;pointer-events:none;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex;position:absolute;top:0;left:0;right:0}.ss__exit,.ss__tinybucks{pointer-events:auto}.ss__exit{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:7px 14px;transition:box-shadow .15s,transform .1s}.ss__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.ss__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;display:flex}.ss__tinybucks-icon{font-size:18px;line-height:1}.ss__tinybucks-value{font-size:var(--text-md);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.ss__status{color:var(--neutral-0);font-size:var(--text-lg);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;display:flex}.ss__spinner{border:4px solid #ffffff4d;border-top-color:var(--neutral-0);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite ss-spinner}@keyframes ss-spinner{to{transform:rotate(360deg)}}.ss__play{flex-direction:column;flex:1;align-items:center;gap:10px;min-height:0;padding:52px 12px 12px;display:flex;position:relative}.ss__progress{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;padding:6px 20px;display:flex}.ss__progress-label{font-size:10px;font-weight:var(--font-weight-medium);color:var(--neutral-500);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.ss__progress-pips{gap:5px;display:flex}.ss__progress-pip{background:var(--brand-500);opacity:.25;border-radius:50%;width:10px;height:10px;transition:opacity .2s,transform .2s}.ss__progress-pip--done{opacity:1}.ss__progress-pip--active{opacity:.7;transform:scale(1.25)}.ss__grid{flex-direction:column;flex:auto;justify-content:center;align-items:center;gap:10px;width:100%;max-width:3200px;min-height:0;display:flex}.ss__stage{flex:0 auto;justify-content:center;align-items:center;width:100%;min-height:0;display:flex;position:relative}.ss__scene{aspect-ratio:var(--ss-pic-w) / var(--ss-pic-h);width:min(100%, calc(var(--ss-pic-max) * var(--ss-pic-w) / var(--ss-pic-h)));border-radius:var(--radius-lg);box-shadow:var(--shadow-md);background:var(--neutral-0);line-height:0;transition:box-shadow .25s;display:block;position:relative;overflow:hidden}.ss__scene-bg{object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;width:100%;height:100%;display:block}.ss__stage--rewarding .ss__scene{box-shadow:0 0 0 4px #f6e05e, var(--shadow-md)}.ss__layer{transform:translateX(-50%) translateY(var(--ss-clip,0%));pointer-events:none;display:block;position:absolute}.ss__layer[data-clip=true]{clip-path:inset(-100% -50% var(--ss-clip,0%) -50%)}.ss__layer-art{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;width:100%;height:auto;display:block}.ss__layer-art[data-idle=true]{transform-origin:50% 100%;animation:3.6s ease-in-out infinite ss-breathe}@keyframes ss-breathe{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-1%)scale(1.008)}}.ss__scene[data-playing=true] .ss__layer-art[data-anim=bob]{animation:.5s ease-in-out infinite ss-bob}@keyframes ss-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4%)}}.ss__scene[data-playing=true] .ss__layer-art[data-anim=wobble]{transform-origin:50% 90%;animation:.45s ease-in-out infinite ss-wobble}@keyframes ss-wobble{0%,to{transform:rotate(-3.5deg)}50%{transform:rotate(3.5deg)}}.ss__scene[data-playing=true] .ss__layer-art[data-anim=spin]{transform-origin:50%;animation:.55s linear infinite ss-spin}@keyframes ss-spin{to{transform:rotate(360deg)}}.ss__scene[data-playing=true] .ss__layer-art[data-anim=flip]{animation:1.4s ease-in-out infinite ss-flip}@keyframes ss-flip{0%{transform:translateY(0)rotate(0)}25%{transform:translateY(-140%)rotate(120deg)}50%{transform:translateY(-180%)rotate(180deg)}75%{transform:translateY(-140%)rotate(240deg)}to{transform:translateY(0)rotate(360deg)}}.ss__scene[data-playing=true] .ss__layer-art[data-anim=rise]{animation:1.9s ease-out infinite ss-rise}@keyframes ss-rise{0%{opacity:0;transform:translateY(20%)scale(.5)}20%{opacity:1}to{opacity:0;transform:translateY(-320%)scale(1.05)}}.ss__scene[data-playing=true] .ss__layer-art[data-anim=scatter]{animation:1.6s ease-out infinite ss-scatter}@keyframes ss-scatter{0%{opacity:0;transform:translate(0)scale(.35)rotate(0)}15%{opacity:1}to{opacity:0;transform:translate(300%,-170%)scale(1)rotate(22deg)}}.ss__scene[data-playing=true] .ss__layer-art[data-anim=scatter-back]{animation:1.6s ease-out infinite ss-scatter-back}@keyframes ss-scatter-back{0%{opacity:0;transform:translate(0)scale(.35)rotate(0)}15%{opacity:1}to{opacity:0;transform:translate(-300%,-170%)scale(1)rotate(-22deg)}}.ss__scene[data-playing=true] .ss__layer-art[data-anim=grow]{transform-origin:50% 100%;animation:2.4s cubic-bezier(.34,1.3,.64,1) forwards ss-grow}@keyframes ss-grow{0%{opacity:0;transform:scale(.15)}20%{opacity:1;transform:scale(1)}70%{opacity:1;transform:scale(1.5)}to{opacity:1;transform:scale(1.65)}}.ss__scene[data-playing=true] .ss__layer-art[data-anim=shake]{transform-origin:50% 90%;animation:.28s ease-in-out infinite ss-shake}@keyframes ss-shake{0%,to{transform:translate(-2%)rotate(-1.5deg)}50%{transform:translate(2%)rotate(1.5deg)}}.ss__scene[data-playing=true] .ss__layer-art[data-anim=twirl]{transform-origin:50% 100%;animation:1.3s ease-in-out infinite ss-twirl}@keyframes ss-twirl{0%{transform:rotate(0)translateY(0)scale(1)}25%{transform:rotate(14deg)translateY(-9%)scale(1.03)}50%{transform:rotate(0)translateY(-15%)scale(1.06)}75%{transform:rotate(-14deg)translateY(-9%)scale(1.03)}to{transform:rotate(0)translateY(0)scale(1)}}.ss__scene[data-playing=true] .ss__layer-art[data-anim=pop]{animation:1.3s ease-out infinite ss-pop}@keyframes ss-pop{0%{opacity:0;transform:scale(0)}30%{opacity:1;transform:scale(1.15)}60%{opacity:1;transform:scale(.95)}to{opacity:0;transform:scale(1.1)}}.ss__qa{background:var(--neutral-0);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-md);flex-direction:column;flex:none;align-items:center;gap:10px;padding:12px 14px 14px;display:flex}.ss__prompt{text-align:center;flex-direction:column;align-items:center;gap:4px;max-width:100%;display:flex}.ss__prompt--reward{animation:.45s cubic-bezier(.2,1.4,.4,1) ss-prompt-pop}@keyframes ss-prompt-pop{0%{transform:scale(.92)}55%{transform:scale(1.05)}to{transform:scale(1)}}.ss__question{font-weight:var(--font-weight-bold);color:var(--brand-500);font-size:clamp(19px,4.6vw,30px);line-height:1.2}.ss__question-hint{font-size:var(--text-sm);color:var(--neutral-600);line-height:1.35}.ss__hint{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#f0f2f6f2;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;max-width:100%;min-height:36px;padding:7px 20px;display:flex}.ss__hint[data-voice=listening]{color:var(--neutral-0);background:#38a169eb;animation:.9s ease-in-out infinite ss-listening}@keyframes ss-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 8px #38a16914, var(--shadow-sm)}}.ss__hint[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeae6,#764ba2e6);animation:1.6s ease-in-out infinite ss-processing}@keyframes ss-processing{0%,to{opacity:.85}50%{opacity:1}}.ss__hint[data-tone=good]{color:var(--neutral-0);background:#2e9e5b}.ss__hint[data-tone=soft]{color:#856404;background:#fff3cd}.ss__skip{color:var(--neutral-600);font-size:var(--text-sm);font-weight:var(--font-weight-medium);cursor:pointer;box-shadow:var(--shadow-sm);background:#f0f2f6e6;border:none;border-radius:999px;flex-shrink:0;padding:8px 16px;transition:background-color .15s,transform .1s}.ss__skip:hover{background:var(--neutral-0);transform:translateY(-1px)}.ss__tutorial{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:5;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.ss__tutorial-panel{background:var(--neutral-0);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:400px;max-height:100%;padding:22px 24px 20px;animation:.35s cubic-bezier(.34,1.56,.64,1) ss-tutorial-appear;display:flex;overflow-y:auto;box-shadow:0 20px 60px #0000004d}@keyframes ss-tutorial-appear{0%{opacity:0;transform:scale(.8)translateY(14px)}to{opacity:1;transform:scale(1)translateY(0)}}.ss__tutorial-badge{flex-shrink:0;width:clamp(64px,18vw,92px);height:auto}.ss__tutorial-title{font-size:clamp(22px,5.6vw,28px);font-weight:var(--font-weight-bold);background:linear-gradient(135deg, var(--brand-500), var(--accent-500));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0}.ss__tutorial-steps{text-align:left;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.ss__tutorial-step{font-size:var(--text-md);color:var(--neutral-800);align-items:center;gap:12px;line-height:1.35;display:flex}.ss__tutorial-step--rule{font-weight:var(--font-weight-bold);color:var(--brand-500)}.ss__tutorial-icon{flex-shrink:0;font-size:28px;line-height:1}.ss__tutorial-start{background:linear-gradient(135deg, var(--brand-500), var(--accent-500));width:100%;color:var(--neutral-0);font-size:var(--text-lg);font-weight:var(--font-weight-bold);cursor:pointer;box-shadow:var(--shadow-md);border:none;border-radius:999px;padding:14px 24px;transition:transform .1s,box-shadow .15s}.ss__tutorial-start:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000040}.ss__tutorial-start:active{transform:translateY(0)}.ss__tb-anim{font-size:22px;font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards ss-tb-float;position:fixed;top:48px;right:20px}@keyframes ss-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (aspect-ratio>=13/10) and (width>=720px){.ss{--ss-pic-max:84vh}.ss__grid{flex-direction:row;align-items:stretch;gap:14px}.ss__stage{flex:auto;min-width:0}.ss__qa{flex:none;justify-content:center;align-self:center;width:clamp(260px,30%,520px);min-height:0}.ss__question{font-size:clamp(22px,2.4vw,34px)}}@media (orientation:landscape) and (height<=560px){.ss{--ss-pic-max:68vh}.ss__header{padding:6px 12px}.ss__play{gap:6px;padding:44px 8px 8px}.ss__grid{gap:8px}.ss__progress{padding:3px 14px}.ss__progress-label{font-size:9px}.ss__qa{gap:6px;padding:8px 10px 10px}.ss__question{font-size:clamp(16px,2.6vw,22px)}.ss__question-hint{font-size:12px}.ss__hint{min-height:28px;font-size:var(--text-sm);padding:4px 14px}.ss__tutorial-panel{gap:8px;max-width:520px;padding:14px 18px}.ss__tutorial-badge{display:none}.ss__tutorial-title{font-size:20px}.ss__tutorial-step{font-size:var(--text-sm)}.ss__tutorial-icon{font-size:22px}}@media (orientation:portrait) and (width<=600px){.ss{--ss-pic-w:9;--ss-pic-h:16;--ss-pic-max:58vh}}@media (orientation:landscape) and (height<=560px) and (width<=719px){.ss{--ss-pic-max:42vh}}@media (orientation:portrait) and (height>=720px){.ss__qa{gap:14px;padding:16px 18px 18px}.ss__play{gap:14px}}@media (prefers-reduced-motion:reduce){.ss__layer-art,.ss__scene[data-playing=true] .ss__layer-art,.ss__prompt,.ss__tutorial-panel,.ss__hint,.ss__tb-anim,.ss__spinner{transition:none!important;animation:none!important}.ss__exit,.ss__skip,.ss__tutorial-start{transition:none!important}}.bi{background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);color:var(--neutral-800);z-index:100;-webkit-tap-highlight-color:transparent;--bi-gap:clamp(6px, 1.4vmin, 20px);--bi-pad:clamp(8px, 1.6vmin, 24px);--bi-aspect:1;--bi-card-h:min(27vh, calc(42vw / var(--bi-aspect)));--bi-card-w:calc(var(--bi-card-h) * var(--bi-aspect));--bi-prop-h:min(30vh, calc(76vw / var(--bi-aspect)));--bi-prop-w:calc(var(--bi-prop-h) * var(--bi-aspect));--bi-target-h:calc(var(--bi-prop-h) * .62);--bi-target-w:calc(var(--bi-target-h) * var(--bi-aspect));flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}@media (aspect-ratio>=1){.bi{--bi-card-h:min(46vh, calc(22vw / var(--bi-aspect)));--bi-prop-h:min(58vh, calc(46vw / var(--bi-aspect)));--bi-target-h:calc(var(--bi-prop-h) * .7)}}.bi__bg{pointer-events:none;position:absolute;inset:0;overflow:hidden}.bi__bg-img{object-fit:cover;width:100%;height:100%;transition:opacity .5s;display:block}.bi__bg:after{content:"";background:radial-gradient(120% 90% at 50% 45%,#ffffff38 0%,#fff0 70%),linear-gradient(#201a3080 0%,#201a304d 45%,#201a308c 100%);position:absolute;inset:0}.bi__header{z-index:10;pointer-events:none;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex;position:absolute;top:0;left:0;right:0}.bi__exit,.bi__tinybucks{pointer-events:auto}.bi__exit{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:7px 14px;transition:box-shadow .15s,transform .1s}.bi__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.bi__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;display:flex}.bi__tinybucks-icon{font-size:18px;line-height:1}.bi__tinybucks-value{font-size:var(--text-md);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.bi__status{color:var(--neutral-0);font-size:var(--text-lg);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;display:flex}.bi__spinner{border:4px solid #ffffff4d;border-top-color:var(--neutral-0);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite bi-spinner}@keyframes bi-spinner{to{transform:rotate(360deg)}}.bi__play{align-items:center;gap:var(--bi-gap);min-height:0;padding:clamp(44px, 7vmin, 68px) var(--bi-pad) var(--bi-pad);flex-direction:column;flex:1;display:flex;position:relative}.bi__progress{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;flex-shrink:0;align-items:center;gap:10px;max-width:100%;padding:5px 16px;display:flex}.bi__progress-label{font-size:clamp(10px,1.5vmin,20px);font-weight:var(--font-weight-bold);color:var(--neutral-600);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.bi__progress-pips{gap:5px;display:flex}.bi__progress-pip{background:var(--brand-500);opacity:.25;border-radius:50%;width:9px;height:9px;transition:opacity .2s,transform .2s}.bi__progress-pip--done{opacity:1}.bi__progress-pip--active{opacity:.7;transform:scale(1.3)}.bi__prompt{text-align:center;flex-direction:column;flex-shrink:0;align-items:center;gap:2px;max-width:min(100%,900px);padding:0 4px;display:flex}.bi__question{font-weight:var(--font-weight-bold);color:var(--neutral-0);text-shadow:0 2px 10px #00000073;font-size:clamp(17px,3.2vmin,52px);line-height:1.2}.bi__question-hint{color:#ffffffe0;text-shadow:0 1px 6px #00000080;font-size:clamp(11px,1.8vmin,26px);line-height:1.3}.bi__cards{grid-template-columns:repeat(2, var(--bi-card-w));grid-template-rows:repeat(2, var(--bi-card-h));gap:var(--bi-gap);flex:auto;place-content:center;max-width:100%;min-height:0;display:grid}@media (aspect-ratio>=1){.bi__cards{grid-template-columns:repeat(4, var(--bi-card-w));grid-template-rows:var(--bi-card-h)}}.bi__card{background:var(--neutral-0);width:100%;min-width:0;height:100%;min-height:0;box-shadow:var(--shadow-md);cursor:pointer;-webkit-user-select:none;user-select:none;outline-offset:-3px;border:none;border-radius:clamp(12px,1.8vmin,24px);outline:3px solid #0000;justify-content:center;align-items:center;padding:clamp(6px,1.4vmin,20px);transition:transform .15s,box-shadow .15s,outline-color .15s;display:flex;position:relative}.bi__card:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 10px 26px #0000004d}.bi__card:active:not(:disabled){transform:translateY(0)scale(.985)}.bi__card:disabled{cursor:default}.bi__card-art{object-fit:contain;filter:drop-shadow(0 3px 6px #00000029);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;pointer-events:none;width:100%;height:100%;display:block}.bi__card-num{background:linear-gradient(135deg, var(--brand-500), var(--accent-500));width:clamp(28px,5vmin,72px);height:clamp(28px,5vmin,72px);color:var(--neutral-0);font-size:clamp(15px,2.8vmin,38px);font-weight:var(--font-weight-bold);border-radius:50%;justify-content:center;align-items:center;line-height:1;animation:.28s cubic-bezier(.34,1.56,.64,1) bi-badge-pop;display:flex;position:absolute;top:clamp(-6px,-.8vmin,-4px);left:clamp(-6px,-.8vmin,-4px);box-shadow:0 3px 10px #00000059}@keyframes bi-badge-pop{0%{opacity:0;transform:scale(.2)}to{opacity:1;transform:scale(1)}}.bi__card[data-state=picked]{outline-color:var(--brand-500)}.bi__card[data-state=locked]{outline-color:#2e9e5b}.bi__card[data-state=locked] .bi__card-num{background:#2e9e5b}.bi__card[data-state=correct]{outline-color:#2e9e5b;animation:.5s cubic-bezier(.2,1.4,.4,1) bi-card-cheer}.bi__card[data-state=correct] .bi__card-num{background:#2e9e5b}@keyframes bi-card-cheer{0%{transform:scale(1)}45%{transform:scale(1.06)}to{transform:scale(1)}}.bi__card[data-state=revealed]{outline-color:#d69e2e}.bi__card[data-state=revealed] .bi__card-num{background:#d69e2e}.bi__card[data-state=cleared]{animation:.5s ease-out bi-card-clear}@keyframes bi-card-clear{0%{transform:translate(0)}25%{transform:translate(-5px)}60%{transform:translate(4px)}to{transform:translate(0)}}.bi__build{justify-content:center;align-items:center;gap:var(--bi-gap);flex-direction:column;flex:auto;max-width:100%;min-height:0;display:flex}@media (aspect-ratio>=1){.bi__build{flex-direction:row}}.bi__prop{width:var(--bi-prop-w);height:var(--bi-prop-h);flex:none;justify-content:center;align-items:center;max-width:100%;max-height:100%;display:flex}.bi__build[data-finished=true]{--bi-prop-h:min(48vh, calc(82vw / var(--bi-aspect)))}@media (aspect-ratio>=1){.bi__build[data-finished=true]{--bi-prop-h:min(70vh, calc(64vw / var(--bi-aspect)))}}.bi__prop-img{object-fit:contain;filter:drop-shadow(0 8px 18px #0006);-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.bi__prop-img[data-changed=true]{animation:.6s cubic-bezier(.2,1.5,.45,1) bi-prop-land}@keyframes bi-prop-land{0%{transform:translateY(-6%)scale(1.04)}55%{transform:translateY(1%)scale(.99)}to{transform:translateY(0)scale(1)}}.bi__arrow{color:var(--neutral-0);text-shadow:0 2px 8px #00000080;flex:none;font-size:clamp(20px,4vmin,46px);line-height:1;animation:1.8s ease-in-out infinite bi-arrow-down}@keyframes bi-arrow-down{0%,to{opacity:.75;transform:rotate(90deg)translate(-14%)}50%{opacity:1;transform:rotate(90deg)translate(14%)}}@keyframes bi-arrow-right{0%,to{opacity:.75;transform:translate(-14%)}50%{opacity:1;transform:translate(14%)}}@media (aspect-ratio>=1){.bi__arrow{animation-name:bi-arrow-right}}.bi__target{width:var(--bi-target-w);height:var(--bi-target-h);background:var(--neutral-0);max-width:100%;max-height:100%;box-shadow:var(--shadow-md);outline:3px solid var(--brand-500);outline-offset:-3px;border-radius:clamp(12px,1.8vmin,24px);flex:none;justify-content:center;align-items:center;padding:clamp(6px,1.4vmin,20px);display:flex;position:relative}.bi__target-art{object-fit:contain;filter:drop-shadow(0 3px 6px #00000029);-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.bi__target-num{background:linear-gradient(135deg, var(--brand-500), var(--accent-500));width:clamp(26px,4.4vmin,64px);height:clamp(26px,4.4vmin,64px);color:var(--neutral-0);font-size:clamp(14px,2.5vmin,34px);font-weight:var(--font-weight-bold);border-radius:50%;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;top:clamp(-6px,-.8vmin,-4px);left:clamp(-6px,-.8vmin,-4px);box-shadow:0 3px 10px #00000059}.bi__sentence{background:var(--neutral-0);width:100%;max-width:min(100%,1000px);box-shadow:var(--shadow-md);text-align:center;border-radius:clamp(14px,2vmin,26px);flex-shrink:0;justify-content:center;align-items:baseline;gap:.35em;padding:clamp(8px,1.6vmin,20px) clamp(14px,2.4vmin,32px);display:flex}.bi__lead{font-size:clamp(20px,4vmin,64px);font-weight:var(--font-weight-bold);color:var(--brand-500);white-space:nowrap;line-height:1.15}.bi__blank{background:var(--neutral-300,#cbd2dc);border-radius:999px;flex:0 min(46%,320px);align-self:center;height:clamp(3px,.5vmin,6px)}.bi__said{font-size:clamp(18px,3.4vmin,56px);font-weight:var(--font-weight-bold);color:#2e9e5b;line-height:1.15;animation:.35s ease-out bi-said-in}@keyframes bi-said-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.bi__said[data-given=true]{color:#b7791f}.bi__sentence[data-tone=good]{outline-offset:-3px;outline:3px solid #2e9e5b}.bi__sentence[data-tone=soft]{outline-offset:-3px;outline:3px solid #f6c451}.bi__hint{font-size:clamp(12px,1.9vmin,28px);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#fffffff0;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;max-width:100%;min-height:clamp(28px,4vmin,40px);padding:6px 20px;display:flex}.bi__hint[data-voice=listening]{color:var(--neutral-0);background:#38a169f0;animation:.9s ease-in-out infinite bi-listening}@keyframes bi-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 8px #38a16914, var(--shadow-sm)}}.bi__hint[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeaf0,#764ba2f0);animation:1.6s ease-in-out infinite bi-processing}@keyframes bi-processing{0%,to{opacity:.85}50%{opacity:1}}.bi__hint[data-tone=good]{color:var(--neutral-0);background:#2e9e5b}.bi__hint[data-tone=soft]{color:#856404;background:#fff3cd}.bi__skip{color:var(--neutral-600);font-size:var(--text-sm);font-weight:var(--font-weight-medium);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffd9;border:none;border-radius:999px;flex-shrink:0;padding:7px 16px;transition:background-color .15s,transform .1s}.bi__skip:hover{background:var(--neutral-0);transform:translateY(-1px)}.bi__tutorial{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:5;background:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.bi__tutorial-panel{background:var(--neutral-0);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:420px;max-height:100%;padding:22px 24px 20px;animation:.35s cubic-bezier(.34,1.56,.64,1) bi-tutorial-appear;display:flex;overflow-y:auto;box-shadow:0 20px 60px #00000059}@keyframes bi-tutorial-appear{0%{opacity:0;transform:scale(.8)translateY(14px)}to{opacity:1;transform:scale(1)translateY(0)}}.bi__tutorial-badge{flex-shrink:0;width:clamp(64px,18vw,96px);height:auto}.bi__tutorial-title{font-size:clamp(22px,5.6vw,28px);font-weight:var(--font-weight-bold);background:linear-gradient(135deg, var(--brand-500), var(--accent-500));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0}.bi__tutorial-steps{text-align:left;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.bi__tutorial-step{font-size:var(--text-md);color:var(--neutral-800);align-items:center;gap:12px;line-height:1.35;display:flex}.bi__tutorial-step--rule{font-weight:var(--font-weight-bold);color:var(--brand-500)}.bi__tutorial-icon{flex-shrink:0;font-size:28px;line-height:1}.bi__tutorial-start{background:linear-gradient(135deg, var(--brand-500), var(--accent-500));width:100%;color:var(--neutral-0);font-size:var(--text-lg);font-weight:var(--font-weight-bold);cursor:pointer;box-shadow:var(--shadow-md);border:none;border-radius:999px;padding:14px 24px;transition:transform .1s,box-shadow .15s}.bi__tutorial-start:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000040}.bi__tutorial-start:active{transform:translateY(0)}.bi__tb-anim{font-size:22px;font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards bi-tb-float;position:fixed;top:48px;right:20px}@keyframes bi-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (orientation:landscape) and (height<=560px){.bi{--bi-card-h:min(50vh, calc(22vw / var(--bi-aspect)));--bi-prop-h:min(62vh, calc(46vw / var(--bi-aspect)))}.bi__build[data-finished=true]{--bi-prop-h:min(60vh, calc(64vw / var(--bi-aspect)))}.bi__header{padding:5px 10px}.bi__play{padding:clamp(36px,8vmin,46px) 8px 8px}.bi__progress{padding:3px 12px}.bi__progress-label{font-size:9px}.bi__question{font-size:clamp(15px,3.4vmin,22px)}.bi__question-hint{display:none}.bi__sentence{padding:5px 14px}.bi__lead{font-size:clamp(17px,4.4vmin,26px)}.bi__said{font-size:clamp(15px,3.8vmin,23px)}.bi__hint{min-height:24px;padding:3px 14px;font-size:12px}.bi__tutorial-panel{gap:8px;max-width:540px;padding:14px 18px}.bi__tutorial-badge{display:none}.bi__tutorial-title{font-size:20px}.bi__tutorial-step{font-size:var(--text-sm)}.bi__tutorial-icon{font-size:22px}}@media (orientation:portrait) and (height>=720px){.bi__play{gap:clamp(10px,2vmin,22px)}}@media (prefers-reduced-motion:reduce){.bi__prop-img,.bi__prop-img[data-changed=true],.bi__arrow,.bi__card,.bi__card[data-state=correct],.bi__card[data-state=cleared],.bi__card-num,.bi__said,.bi__hint,.bi__tutorial-panel,.bi__tb-anim,.bi__spinner,.bi__bg-img{transition:none!important;animation:none!important}.bi__exit,.bi__skip,.bi__tutorial-start{transition:none!important}}.st{background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);color:var(--neutral-800);z-index:100;-webkit-tap-highlight-color:transparent;--st-strip-max:60vh;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.st__header{z-index:10;pointer-events:none;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex;position:absolute;top:0;left:0;right:0}.st__exit,.st__tinybucks{pointer-events:auto}.st__exit{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:7px 14px;transition:box-shadow .15s,transform .1s}.st__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.st__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;display:flex}.st__tinybucks-icon{font-size:18px;line-height:1}.st__tinybucks-value{font-size:var(--text-md);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.st__status{color:var(--neutral-0);font-size:var(--text-lg);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;display:flex}.st__spinner{border:4px solid #ffffff4d;border-top-color:var(--neutral-0);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite st-spinner}@keyframes st-spinner{to{transform:rotate(360deg)}}.st__play{flex-direction:column;flex:1;align-items:center;gap:10px;min-height:0;padding:52px 12px 12px;display:flex;position:relative}.st__progress{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;padding:6px 20px;display:flex}.st__progress-label{font-size:10px;font-weight:var(--font-weight-medium);color:var(--neutral-500);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.st__progress-sep{opacity:.45}.st__progress-pips{gap:5px;display:flex}.st__progress-pip{background:var(--brand-500);opacity:.25;border-radius:50%;width:10px;height:10px;transition:opacity .2s,transform .2s}.st__progress-pip--done{opacity:1}.st__progress-pip--active{opacity:.7;transform:scale(1.25)}.st__grid{flex-direction:column;flex:auto;justify-content:center;align-items:center;gap:10px;width:100%;max-width:3200px;min-height:0;display:flex}.st__stage{flex:0 auto;justify-content:center;align-items:center;width:100%;min-height:0;display:flex;position:relative}.st__strip{aspect-ratio:1;width:min(100%, var(--st-strip-max), 2050px);grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:clamp(6px,1.1vmin,16px);display:grid;position:relative}.st__panel{aspect-ratio:1;border-radius:var(--radius-lg);background:var(--neutral-0);min-width:0;box-shadow:var(--shadow-md);line-height:0;position:relative;overflow:hidden}.st__panel-art{object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;width:100%;height:100%;display:block}.st__panel-badge{width:clamp(20px,4.4vmin,38px);height:clamp(20px,4.4vmin,38px);color:var(--brand-500);font-size:clamp(11px,2.4vmin,20px);font-weight:var(--font-weight-bold);box-shadow:var(--shadow-sm);background:#fffffff0;border-radius:50%;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;top:clamp(4px,1vmin,10px);left:clamp(4px,1vmin,10px)}.st__strip[data-celebrating=true] .st__panel{animation:2.2s ease-in-out infinite st-panel-glow;animation-delay:calc(var(--st-panel-index,0) * .55s)}@keyframes st-panel-glow{0%,to{box-shadow:var(--shadow-md);transform:scale(1)}45%{box-shadow:0 0 0 4px #f6e05e, var(--shadow-md);transform:scale(1.025)}}.st__qa{background:var(--neutral-0);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-md);flex-direction:column;flex:none;align-items:center;gap:10px;padding:12px 14px 14px;display:flex}.st__prompt{text-align:center;flex-direction:column;align-items:center;gap:4px;max-width:100%;display:flex}.st__prompt--recap{animation:.45s cubic-bezier(.2,1.4,.4,1) st-prompt-pop}@keyframes st-prompt-pop{0%{transform:scale(.92)}55%{transform:scale(1.05)}to{transform:scale(1)}}.st__question{font-weight:var(--font-weight-bold);color:var(--brand-500);font-size:clamp(19px,4.6vw,30px);line-height:1.2}.st__question-hint{font-size:var(--text-sm);color:var(--neutral-600);line-height:1.35}.st__told{flex-direction:column;gap:4px;width:100%;max-width:460px;margin:0;padding:0;list-style:none;display:flex}.st__told-part{border-radius:var(--radius-sm);font-size:var(--text-sm);text-align:left;background:#f0f2f6d9;align-items:baseline;gap:8px;padding:5px 12px;line-height:1.3;animation:.3s ease-out st-told-in;display:flex}@keyframes st-told-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.st__told-slot{font-size:10px;font-weight:var(--font-weight-bold);color:var(--brand-500);text-transform:uppercase;letter-spacing:.06em;flex-shrink:0}.st__told-answer{color:var(--neutral-800);overflow-wrap:anywhere}.st__told-part--supplied{background:#fff3cdf2}.st__told-part--supplied .st__told-slot{color:#856404}.st__told-tag{color:#856404;font-size:9px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;background:#85640424;border-radius:999px;flex-shrink:0;margin-left:auto;padding:1px 7px}.st__hint{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#f0f2f6f2;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;max-width:100%;min-height:36px;padding:7px 20px;display:flex}.st__hint[data-voice=listening]{color:var(--neutral-0);background:#38a169eb;animation:.9s ease-in-out infinite st-listening}@keyframes st-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 8px #38a16914, var(--shadow-sm)}}.st__hint[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeae6,#764ba2e6);animation:1.6s ease-in-out infinite st-processing}@keyframes st-processing{0%,to{opacity:.85}50%{opacity:1}}.st__hint[data-tone=good]{color:var(--neutral-0);background:#2e9e5b}.st__hint[data-tone=soft]{color:#856404;background:#fff3cd}.st__skip{color:var(--neutral-600);font-size:var(--text-sm);font-weight:var(--font-weight-medium);cursor:pointer;box-shadow:var(--shadow-sm);background:#f0f2f6e6;border:none;border-radius:999px;flex-shrink:0;padding:8px 16px;transition:background-color .15s,transform .1s}.st__skip:hover{background:var(--neutral-0);transform:translateY(-1px)}.st__tutorial{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:5;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.st__tutorial-panel{background:var(--neutral-0);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:400px;max-height:100%;padding:22px 24px 20px;animation:.35s cubic-bezier(.34,1.56,.64,1) st-tutorial-appear;display:flex;overflow-y:auto;box-shadow:0 20px 60px #0000004d}@keyframes st-tutorial-appear{0%{opacity:0;transform:scale(.8)translateY(14px)}to{opacity:1;transform:scale(1)translateY(0)}}.st__tutorial-title{font-size:clamp(22px,5.6vw,28px);font-weight:var(--font-weight-bold);background:linear-gradient(135deg, var(--brand-500), var(--accent-500));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0}.st__tutorial-steps{text-align:left;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.st__tutorial-step{font-size:var(--text-md);color:var(--neutral-800);align-items:center;gap:12px;line-height:1.35;display:flex}.st__tutorial-step--rule{font-weight:var(--font-weight-bold);color:var(--brand-500)}.st__tutorial-icon{flex-shrink:0;font-size:28px;line-height:1}.st__tutorial-start{background:linear-gradient(135deg, var(--brand-500), var(--accent-500));width:100%;color:var(--neutral-0);font-size:var(--text-lg);font-weight:var(--font-weight-bold);cursor:pointer;box-shadow:var(--shadow-md);border:none;border-radius:999px;padding:14px 24px;transition:transform .1s,box-shadow .15s}.st__tutorial-start:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000040}.st__tutorial-start:active{transform:translateY(0)}.st__tb-anim{font-size:22px;font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards st-tb-float;position:fixed;top:48px;right:20px}@keyframes st-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (aspect-ratio>=13/10) and (width>=720px){.st{--st-strip-max:84vh}.st__grid{flex-direction:row;align-items:stretch;gap:14px}.st__stage{flex:auto;min-width:0}.st__qa{flex:none;justify-content:center;align-self:center;width:clamp(280px,32%,560px);min-height:0}.st__question{font-size:clamp(22px,2.4vw,34px)}.st__told-part{font-size:var(--text-md)}}@media (orientation:landscape) and (height<=560px){.st{--st-strip-max:70vh}.st__header{padding:6px 12px}.st__play{gap:6px;padding:44px 8px 8px}.st__grid{gap:8px}.st__progress{padding:3px 14px}.st__progress-label{font-size:9px}.st__qa{gap:6px;padding:8px 10px 10px}.st__question{font-size:clamp(16px,2.6vw,22px)}.st__question-hint{font-size:12px}.st__told-part{padding:3px 10px;font-size:12px}.st__hint{min-height:28px;font-size:var(--text-sm);padding:4px 14px}.st__tutorial-panel{gap:8px;max-width:520px;padding:14px 18px}.st__tutorial-title{font-size:20px}.st__tutorial-step{font-size:var(--text-sm)}.st__tutorial-icon{font-size:22px}}@media (orientation:landscape) and (height<=560px) and (width<=719px){.st{--st-strip-max:46vh}.st__told{display:none}}@media (orientation:portrait) and (height>=720px){.st__qa{gap:14px;padding:16px 18px 18px}.st__play{gap:14px}}@media (prefers-reduced-motion:reduce){.st__prompt,.st__tutorial-panel,.st__told-part,.st__hint,.st__tb-anim,.st__spinner{transition:none!important;animation:none!important}.st__strip[data-celebrating=true] .st__panel{animation-name:st-panel-glow-still}@keyframes st-panel-glow-still{0%,to{box-shadow:var(--shadow-md)}45%{box-shadow:0 0 0 4px #f6e05e, var(--shadow-md)}}.st__exit,.st__skip,.st__tutorial-start{transition:none!important}}.isp{background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);color:var(--neutral-800);z-index:100;-webkit-tap-highlight-color:transparent;touch-action:manipulation;position:fixed;inset:0;overflow:hidden}.isp__overlay{z-index:10;pointer-events:none;flex-direction:column;align-items:center;padding:0 12px 12px;display:flex;position:absolute;inset:0}.isp__top{flex-direction:column;flex-shrink:0;align-items:center;gap:10px;width:100%;display:flex}.isp__header{flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:10px 2px;display:flex}.isp__exit{pointer-events:auto;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:7px 14px;transition:box-shadow .15s,transform .1s}.isp__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.isp__title{box-shadow:var(--shadow-sm);font-size:var(--text-lg);font-weight:var(--font-weight-bold);color:var(--neutral-800);white-space:nowrap;text-overflow:ellipsis;background:#ffffffeb;border-radius:999px;padding:6px 14px;overflow:hidden}.isp__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;display:flex}.isp__tinybucks-icon{font-size:18px;line-height:1}.isp__tinybucks-value{font-size:var(--text-md);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.isp__progress{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;max-width:100%;padding:6px 20px;display:flex}.isp__progress-label{font-size:10px;font-weight:var(--font-weight-medium);color:var(--neutral-500);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.isp__progress-pips{gap:5px;display:flex}.isp__progress-pip{background:var(--brand-500);opacity:.25;border-radius:50%;width:9px;height:9px;transition:opacity .2s,transform .2s}.isp__progress-pip--done{opacity:1;transform:scale(1.15)}.isp__prompt{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;background:#fffffff2;flex-direction:column;flex-shrink:0;align-items:center;gap:2px;max-width:min(94vw,620px);padding:10px 22px;transition:box-shadow .25s,background-color .25s;display:flex}.isp__prompt--finished{animation:.45s cubic-bezier(.2,1.4,.4,1) isp-pop}.isp__prompt--lit{box-shadow:0 0 0 3px #ffd166cc, var(--shadow-md);background:#fff9e6}@keyframes isp-pop{0%{transform:scale(.9)}55%{transform:scale(1.06)}to{transform:scale(1)}}.isp__clue{font-weight:var(--font-weight-bold);color:var(--brand-500);font-size:clamp(16px,3.9vw,25px);line-height:1.25}.isp__clue-hint{font-size:var(--text-sm);color:var(--neutral-600);line-height:1.35}.isp__scene{background:linear-gradient(180deg, var(--isp-wash-top) 0%, var(--isp-wash-bottom) 100%);position:absolute;inset:0;overflow:hidden}.isp__scene--kitchen{--isp-wash-top:#fdf3d8;--isp-wash-bottom:#ecd9b4}.isp__scene--park{--isp-wash-top:#a9dcff;--isp-wash-bottom:#74b854}.isp__scene--beach{--isp-wash-top:#a5dcff;--isp-wash-bottom:#f2e3ba}.isp__scene--bedroom{--isp-wash-top:#e6dcfa;--isp-wash-bottom:#c69a63}.isp__scene--farm{--isp-wash-top:#a9dcff;--isp-wash-bottom:#7cb84e}.isp__scene--party{--isp-wash-top:#fce4ef;--isp-wash-bottom:#d29c5e}.isp__scene--garden{--isp-wash-top:#a9dcff;--isp-wash-bottom:#6bbd47}.isp__scene--bath{--isp-wash-top:#dff1fb;--isp-wash-bottom:#dbe4ec}.isp__plate{object-fit:cover;object-position:center;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block;position:absolute;inset:0}.isp__thing{z-index:2;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:opacity .25s,filter .2s,transform .2s;display:flex;position:absolute}.isp__thing-art{object-fit:contain;pointer-events:none;filter:drop-shadow(0 4px 6px #00000047);transition:filter .2s;display:block}.isp__thing:first-of-type .isp__thing-art{animation:3.1s ease-in-out infinite isp-bob}.isp__thing:nth-of-type(2) .isp__thing-art{animation:3.4s ease-in-out .4s infinite isp-bob}.isp__thing:nth-of-type(3) .isp__thing-art{animation:3.2s ease-in-out .8s infinite isp-bob}.isp__thing:nth-of-type(4) .isp__thing-art{animation:3.5s ease-in-out 1.2s infinite isp-bob}@keyframes isp-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.isp__thing:hover .isp__thing-art{filter:drop-shadow(0 4px 6px #00000047)drop-shadow(0 0 10px #fffffff2)}.isp__thing:active{transform:scale(.94)}.isp__thing--ruled-out{opacity:.4;cursor:default}.isp__thing--ruled-out .isp__thing-art{filter:grayscale(.85)drop-shadow(0 2px 4px #0003);animation:none}.isp__thing--faded{opacity:.22;cursor:default}.isp__thing--faded .isp__thing-art{animation:none}.isp__thing--glow{opacity:1;z-index:3}.isp__thing--glow .isp__thing-art{animation:1.2s ease-in-out infinite isp-glow}@keyframes isp-glow{0%,to{filter:drop-shadow(0 4px 6px #00000047)drop-shadow(0 0 6px #ffd166f2);transform:scale(1)}50%{filter:drop-shadow(0 4px 6px #00000047)drop-shadow(0 0 22px #ffd166);transform:scale(1.06)}}.isp__thing--found{z-index:3}.isp__thing--found .isp__thing-art{filter:drop-shadow(0 4px 6px #00000047)drop-shadow(0 0 16px #5ac878f2);animation:.55s cubic-bezier(.2,1.5,.4,1) isp-found}@keyframes isp-found{0%{transform:scale(1)}45%{transform:scale(1.22)}to{transform:scale(1.08)}}.isp__thing:focus-visible{outline:3px solid var(--brand-500);outline-offset:3px;border-radius:var(--radius-sm)}.isp__celebrate{pointer-events:none;z-index:4;width:0;height:0;position:absolute}.isp__spark{opacity:0;border-radius:3px;width:11px;height:11px;animation:.8s ease-out forwards isp-burst;position:absolute;top:0;left:0}@keyframes isp-burst{0%{opacity:1;transform:translate(-50%,-50%)scale(.3)}to{transform:translate(var(--isp-dx), var(--isp-dy)) scale(1) rotate(var(--isp-rot));opacity:0}}.isp__toast{background:var(--neutral-0);font-size:clamp(15px,3.2vw,20px);font-weight:var(--font-weight-bold);text-align:center;border-radius:999px;flex-shrink:0;max-width:92%;padding:8px 24px;transition:opacity .18s,transform .18s;box-shadow:0 8px 24px #00000038}.isp__toast--empty{opacity:0;visibility:hidden;box-shadow:none;transform:scale(.9)}.isp__toast--good{color:#2e9e5b}.isp__toast--bad{color:#721c24;background:#f8d7da}.isp__hint{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#ffffffe6;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;max-width:92%;min-height:36px;margin-top:auto;padding:7px 20px;display:flex}.isp__hint[data-voice=listening]{color:var(--neutral-0);background:#38a169eb;animation:.9s ease-in-out infinite isp-listening}@keyframes isp-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 8px #38a16914, var(--shadow-sm)}}.isp__hint[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeae6,#764ba2e6);animation:1.6s ease-in-out infinite isp-processing}@keyframes isp-processing{0%,to{opacity:.85}50%{opacity:1}}.isp__hint[data-tone=good]{color:var(--neutral-0);background:#2e9e5b}.isp__hint[data-tone=soft]{color:#856404;background:#fff3cd}.isp__tutorial{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:20;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.isp__tutorial-panel{background:var(--neutral-0);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:400px;padding:22px 24px;animation:.35s cubic-bezier(.34,1.56,.64,1) isp-tutorial-appear;display:flex;box-shadow:0 20px 60px #0000004d}@keyframes isp-tutorial-appear{0%{opacity:0;transform:scale(.8)translateY(14px)}to{opacity:1;transform:scale(1)translateY(0)}}.isp__tutorial-badge{flex-shrink:0;width:clamp(84px,22vw,128px);height:auto}.isp__tutorial-title{font-size:clamp(22px,5.6vw,28px);font-weight:var(--font-weight-bold);background:linear-gradient(135deg, var(--brand-500), var(--accent-500));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0}.isp__tutorial-steps{text-align:left;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.isp__tutorial-step{font-size:var(--text-md);color:var(--neutral-800);align-items:center;gap:12px;line-height:1.35;display:flex}.isp__tutorial-step--rule{font-weight:var(--font-weight-bold);color:var(--brand-500)}.isp__tutorial-icon{flex-shrink:0;font-size:26px;line-height:1}.isp__tutorial-start{background:linear-gradient(135deg, var(--brand-500), var(--accent-500));width:100%;color:var(--neutral-0);font-size:var(--text-lg);font-weight:var(--font-weight-bold);cursor:pointer;box-shadow:var(--shadow-md);border:none;border-radius:999px;padding:14px 24px;transition:transform .1s,box-shadow .15s}.isp__tutorial-start:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000040}.isp__tutorial-start:active{transform:translateY(0)}.isp__tb-anim{font-size:22px;font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards isp-tb-float;position:fixed;top:48px;right:20px}@keyframes isp-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (orientation:landscape) and (height<=560px){.isp__header{padding:6px 2px}.isp__overlay{padding:0 8px 8px}.isp__top{gap:6px}.isp__progress{padding:4px 16px}.isp__progress-label{display:none}.isp__prompt{max-width:96vw;padding:6px 16px}.isp__clue{font-size:clamp(15px,2.6vw,20px)}.isp__clue-hint{display:none}.isp__toast{padding:5px 18px;font-size:15px}.isp__hint{min-height:30px;font-size:var(--text-sm);padding:4px 16px}.isp__tutorial-panel{gap:10px;padding:16px 20px}.isp__tutorial-badge{display:none}}@media (height>=800px){.isp__top{gap:14px}}@media (prefers-reduced-motion:reduce){.isp *,.isp__prompt,.isp__toast,.isp__tutorial-panel,.isp__tb-anim{transition:none!important;animation:none!important}.isp__celebrate{display:none}.isp__thing--glow .isp__thing-art{filter:drop-shadow(0 4px 6px #00000047)drop-shadow(0 0 18px #ffd166)}.isp__thing--found .isp__thing-art{filter:drop-shadow(0 4px 6px #00000047)drop-shadow(0 0 16px #5ac878f2)}}.col{background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);color:var(--neutral-800);z-index:100;-webkit-tap-highlight-color:transparent;touch-action:manipulation;position:fixed;inset:0;overflow:hidden}.col__overlay{z-index:10;pointer-events:none;flex-direction:column;align-items:center;padding:0 12px 12px;display:flex;position:absolute;inset:0}.col__top{flex-direction:column;flex-shrink:0;align-items:center;gap:10px;width:100%;display:flex}.col__header{flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:10px 2px;display:flex}.col__exit{pointer-events:auto;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);cursor:pointer;box-shadow:var(--shadow-sm);background:#ffffffeb;border:none;padding:7px 14px;transition:box-shadow .15s,transform .1s}.col__exit:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.col__title{box-shadow:var(--shadow-sm);font-size:var(--text-lg);font-weight:var(--font-weight-bold);color:var(--neutral-800);white-space:nowrap;text-overflow:ellipsis;background:#ffffffeb;border-radius:999px;padding:6px 14px;overflow:hidden}.col__tinybucks{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;display:flex}.col__tinybucks-icon{font-size:18px;line-height:1}.col__tinybucks-value{font-size:var(--text-md);font-weight:var(--font-weight-bold);color:var(--neutral-800);min-width:24px}.col__progress{box-shadow:var(--shadow-sm);background:#ffffffeb;border-radius:999px;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;max-width:100%;padding:6px 20px;display:flex}.col__progress-label{font-size:10px;font-weight:var(--font-weight-medium);color:var(--neutral-500);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.col__progress-pips{gap:5px;display:flex}.col__progress-pip{background:var(--brand-500);opacity:.25;border-radius:50%;width:9px;height:9px;transition:opacity .2s,transform .2s}.col__progress-pip--done{opacity:1;transform:scale(1.15)}.col__prompt{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;background:#fffffff2;flex-direction:column;flex-shrink:0;align-items:center;gap:2px;max-width:min(94vw,620px);padding:10px 22px;transition:box-shadow .25s,background-color .25s;display:flex}.col__prompt--finished{animation:.45s cubic-bezier(.2,1.4,.4,1) col-pop}@keyframes col-pop{0%{transform:scale(.9)}55%{transform:scale(1.06)}to{transform:scale(1)}}.col__ask{font-weight:var(--font-weight-bold);color:var(--brand-500);font-size:clamp(16px,3.9vw,25px);line-height:1.25}.col__ask-hint{font-size:var(--text-sm);color:var(--neutral-600);line-height:1.35}.col__slots{box-shadow:var(--shadow-sm);background:#ffffffe6;border-radius:999px;flex-shrink:0;gap:10px;padding:8px 14px;display:flex}.col__slot{background:#667eea1a;border:2px dashed #667eea73;border-radius:50%;justify-content:center;align-items:center;width:clamp(38px,9vw,54px);height:clamp(38px,9vw,54px);transition:background-color .25s,border-color .25s,transform .25s;display:flex}.col__slot--filled{background:#5ac87829;border-style:solid;border-color:#2e9e5bbf;animation:.4s cubic-bezier(.2,1.5,.4,1) col-slot-fill}@keyframes col-slot-fill{0%{transform:scale(.6)}60%{transform:scale(1.14)}to{transform:scale(1)}}.col__slot-art{object-fit:contain;width:78%;height:78%;display:block}.col__slot-dot{background:#667eea66;border-radius:50%;width:9px;height:9px}.col__scene{background:linear-gradient(180deg, var(--col-wash-top) 0%, var(--col-wash-bottom) 100%);position:absolute;inset:0;overflow:hidden}.col__scene--cart{--col-wash-top:#fdf3e0;--col-wash-bottom:#e6dac4}.col__scene--closet{--col-wash-top:#ece0fa;--col-wash-bottom:#c99a63}.col__scene--barn{--col-wash-top:#a9dcff;--col-wash-bottom:#6fb84a}.col__scene--aquarium{--col-wash-top:#cadcec;--col-wash-bottom:#a9825c}.col__plate{object-fit:cover;object-position:center;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block;position:absolute;inset:0}.col__target{z-index:1;pointer-events:none;opacity:0;border-radius:18px;transition:opacity .4s;position:absolute}.col__target--wanting{opacity:1;animation:2.6s ease-in-out infinite col-target;box-shadow:inset 0 0 0 3px #ffffff8c,inset 0 0 26px #ffd16659,0 0 22px #ffd16673}@keyframes col-target{0%,to{box-shadow:inset 0 0 0 3px #ffffff80,inset 0 0 22px #ffd16647,0 0 16px #ffd16659}50%{box-shadow:inset 0 0 0 3px #ffffffbf,inset 0 0 34px #ffd16673,0 0 30px #ffd16699}}.col__item{z-index:2;justify-content:center;align-items:center;display:flex;position:absolute}.col__item-art{object-fit:contain;pointer-events:none;filter:drop-shadow(0 4px 6px #00000047);width:100%;height:100%;display:block}.col__item:first-of-type .col__item-art{animation:3.1s ease-in-out infinite col-bob}.col__item:nth-of-type(2) .col__item-art{animation:3.4s ease-in-out .5s infinite col-bob}.col__item:nth-of-type(3) .col__item-art{animation:3.2s ease-in-out 1s infinite col-bob}@keyframes col-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.col__item--landing{animation:.55s cubic-bezier(.2,1.35,.4,1) col-drop}.col__item--landing .col__item-art{filter:drop-shadow(0 4px 6px #00000047)drop-shadow(0 0 16px #5ac878f2);animation:none}@keyframes col-drop{0%{opacity:0;transform:translateY(-90px)scale(.7)}55%{opacity:1;transform:translateY(6px)scale(1.1)}to{opacity:1;transform:translateY(0)scale(1)}}.col__celebrate{pointer-events:none;z-index:4;width:0;height:0;position:absolute}.col__spark{opacity:0;border-radius:3px;width:11px;height:11px;animation:.8s ease-out forwards col-burst;position:absolute;top:0;left:0}@keyframes col-burst{0%{opacity:1;transform:translate(-50%,-50%)scale(.3)}to{transform:translate(var(--col-dx), var(--col-dy)) scale(1) rotate(var(--col-rot));opacity:0}}.col__toast{background:var(--neutral-0);font-size:clamp(15px,3.2vw,20px);font-weight:var(--font-weight-bold);text-align:center;border-radius:999px;flex-shrink:0;max-width:92%;padding:8px 24px;transition:opacity .18s,transform .18s;box-shadow:0 8px 24px #00000038}.col__toast--empty{opacity:0;visibility:hidden;box-shadow:none;transform:scale(.9)}.col__toast--good{color:#2e9e5b}.col__toast--bad{color:#856404;background:#fff3cd}.col__hint{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800);box-shadow:var(--shadow-sm);text-align:center;background:#ffffffe6;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;max-width:92%;min-height:36px;margin-top:auto;padding:7px 20px;display:flex}.col__hint[data-voice=listening]{color:var(--neutral-0);background:#38a169eb;animation:.9s ease-in-out infinite col-listening}@keyframes col-listening{0%,to{box-shadow:0 0 0 3px #38a16959, var(--shadow-sm)}50%{box-shadow:0 0 0 8px #38a16914, var(--shadow-sm)}}.col__hint[data-voice=processing]{color:var(--neutral-0);background:linear-gradient(90deg,#667eeae6,#764ba2e6);animation:1.6s ease-in-out infinite col-processing}@keyframes col-processing{0%,to{opacity:.85}50%{opacity:1}}.col__hint[data-tone=good]{color:var(--neutral-0);background:#2e9e5b}.col__hint[data-tone=soft]{color:#856404;background:#fff3cd}.col__tutorial{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:20;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.col__tutorial-panel{background:var(--neutral-0);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:400px;padding:22px 24px;animation:.35s cubic-bezier(.34,1.56,.64,1) col-tutorial-appear;display:flex;box-shadow:0 20px 60px #0000004d}@keyframes col-tutorial-appear{0%{opacity:0;transform:scale(.8)translateY(14px)}to{opacity:1;transform:scale(1)translateY(0)}}.col__tutorial-badge{flex-shrink:0;font-size:clamp(48px,14vw,72px);line-height:1}.col__tutorial-title{font-size:clamp(22px,5.6vw,28px);font-weight:var(--font-weight-bold);background:linear-gradient(135deg, var(--brand-500), var(--accent-500));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0}.col__tutorial-steps{text-align:left;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.col__tutorial-step{font-size:var(--text-md);color:var(--neutral-800);align-items:center;gap:12px;line-height:1.35;display:flex}.col__tutorial-step--rule{font-weight:var(--font-weight-bold);color:var(--brand-500)}.col__tutorial-icon{flex-shrink:0;font-size:26px;line-height:1}.col__tutorial-start{background:linear-gradient(135deg, var(--brand-500), var(--accent-500));width:100%;color:var(--neutral-0);font-size:var(--text-lg);font-weight:var(--font-weight-bold);cursor:pointer;box-shadow:var(--shadow-md);border:none;border-radius:999px;padding:14px 24px;transition:transform .1s,box-shadow .15s}.col__tutorial-start:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000040}.col__tutorial-start:active{transform:translateY(0)}.col__tb-anim{font-size:22px;font-weight:var(--font-weight-bold);color:#f6e05e;text-shadow:0 1px 4px #0006;pointer-events:none;z-index:200;animation:1.4s ease-out forwards col-tb-float;position:fixed;top:48px;right:20px}@keyframes col-tb-float{0%{opacity:1;transform:translateY(0)}70%{opacity:.9;transform:translateY(-48px)}to{opacity:0;transform:translateY(-72px)}}@media (orientation:landscape) and (height<=560px){.col__header{padding:6px 2px}.col__overlay{padding:0 8px 8px}.col__top{gap:6px}.col__progress{padding:4px 16px}.col__progress-label{display:none}.col__prompt{max-width:96vw;padding:6px 16px}.col__ask{font-size:clamp(15px,2.6vw,20px)}.col__ask-hint{display:none}.col__slots{gap:6px;padding:5px 10px}.col__slot{width:34px;height:34px}.col__toast{padding:5px 18px;font-size:15px}.col__hint{min-height:30px;font-size:var(--text-sm);padding:4px 16px}.col__tutorial-panel{gap:10px;padding:16px 20px}.col__tutorial-badge{display:none}}@media (height>=800px){.col__top{gap:14px}}@media (prefers-reduced-motion:reduce){.col *,.col__prompt,.col__toast,.col__tutorial-panel,.col__tb-anim{transition:none!important;animation:none!important}.col__celebrate{display:none}.col__target--wanting{opacity:1;box-shadow:inset 0 0 0 3px #ffffffb3,inset 0 0 30px #ffd16666,0 0 24px #ffd16680}.col__item--landing .col__item-art{filter:drop-shadow(0 4px 6px #00000047)drop-shadow(0 0 16px #5ac878f2)}}.select-theme{max-width:720px;margin:0 auto;padding:24px 16px}.select-theme__title{font-size:var(--text-xl);font-weight:var(--font-weight-bold);color:var(--neutral-0);text-align:center;margin:0 0 20px}.select-theme__grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (width>=600px){.select-theme__grid{grid-template-columns:repeat(3,1fr)}}.select-theme__card{background:var(--neutral-0);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);cursor:pointer;text-align:center;border:none;flex-direction:column;align-items:center;gap:8px;padding:20px 12px;display:flex}.select-theme__card:hover{box-shadow:var(--shadow-md);transform:scale(1.02)}.select-theme__icon{font-size:40px;line-height:1}.select-theme__name{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800)}.select-theme__description{font-size:var(--text-sm);color:var(--neutral-600);line-height:1.4}.start-up{flex:1;justify-content:center;align-items:center;display:flex}.start-up__card{background:var(--neutral-0);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);flex-direction:column;align-items:center;gap:12px;width:320px;padding:40px 32px;display:flex}.start-up__icon{font-size:48px;line-height:1}.start-up__title{font-size:var(--text-xl);font-weight:var(--font-weight-bold);color:var(--neutral-800);margin:0}.start-up__subtext{font-size:var(--text-sm);color:var(--neutral-600);text-align:center;margin:0}.start-up__button{border-radius:var(--radius-sm);background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);color:var(--neutral-0);font-size:var(--text-md);font-weight:var(--font-weight-medium);cursor:pointer;box-shadow:var(--shadow-sm);border:none;margin-top:8px;padding:10px 32px}.start-up__button:hover{box-shadow:var(--shadow-md);transform:scale(1.02)}.gcm{z-index:300;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.gcm__overlay{cursor:pointer;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0000008c;border:none;position:absolute;inset:0}.gcm__panel{background:var(--neutral-0);border-radius:24px;flex-direction:column;align-items:center;gap:20px;width:calc(100% - 40px);max-width:360px;padding:36px 32px 28px;animation:.35s cubic-bezier(.34,1.56,.64,1) gcm-appear;display:flex;position:relative;box-shadow:0 20px 60px #0000004d}@keyframes gcm-appear{0%{opacity:0;transform:scale(.72)translateY(16px)}to{opacity:1;transform:scale(1)translateY(0)}}.gcm__hero{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.gcm__emoji{font-size:64px;line-height:1;animation:.7s cubic-bezier(.34,1.56,.64,1) .1s both gcm-bounce}@keyframes gcm-bounce{0%{opacity:0;transform:scale(.4)rotate(-10deg)}to{opacity:1;transform:scale(1)rotate(0)}}.gcm__title{font-size:clamp(28px,7vw,36px);font-weight:var(--font-weight-bold);color:var(--neutral-800);margin:0}.gcm__hero[data-outcome=win] .gcm__title{background:linear-gradient(135deg, var(--brand-500), var(--accent-500));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.gcm__subtitle{font-size:var(--text-md);color:var(--neutral-600);max-width:260px;margin:0;line-height:1.45}.gcm__tinybucks{border-radius:var(--radius-lg);background:linear-gradient(135deg,#fffbeb 0%,#fef3c7 100%);border:2px solid #f6d860;align-items:center;gap:12px;width:100%;padding:12px 20px;display:flex}.gcm__tb-icon{font-size:36px;line-height:1;animation:.6s ease-out .35s both gcm-tb-spin}@keyframes gcm-tb-spin{0%{transform:rotate(-30deg)scale(.6)}to{transform:rotate(0)scale(1)}}.gcm__tb-label{font-size:var(--text-sm);color:var(--neutral-600);margin:0 0 2px}.gcm__tb-amount{font-size:26px;font-weight:var(--font-weight-bold);color:#92400e;margin:0}.gcm__bonus{border-radius:var(--radius-lg);background:linear-gradient(135deg,#f5f3ff 0%,#ede9fe 100%);border:2px solid #c4b5fd;align-items:center;gap:12px;width:100%;padding:12px 20px;display:flex}.gcm__bonus-icon{font-size:36px;line-height:1}.gcm__bonus-label{font-size:var(--text-sm);color:var(--neutral-600);margin:0 0 2px}.gcm__bonus-amount{font-size:26px;font-weight:var(--font-weight-bold);color:#5b21b6;margin:0}.gcm__cta{background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);width:100%;color:var(--neutral-0);border-radius:var(--radius-md);font-size:var(--text-lg);font-weight:var(--font-weight-bold);cursor:pointer;border:none;padding:14px;transition:transform .12s,box-shadow .12s;box-shadow:0 4px 14px #667eea73}.gcm__cta:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea8c}.gcm__cta:active{transform:translateY(0)}.gem{z-index:300;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.gem__overlay{cursor:pointer;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0000008c;border:none;position:absolute;inset:0}.gem__panel{background:var(--neutral-0);border-radius:24px;flex-direction:column;align-items:center;gap:20px;width:calc(100% - 40px);max-width:360px;padding:36px 32px 28px;animation:.35s cubic-bezier(.34,1.56,.64,1) gem-appear;display:flex;position:relative;box-shadow:0 20px 60px #0000004d}@keyframes gem-appear{0%{opacity:0;transform:scale(.72)translateY(16px)}to{opacity:1;transform:scale(1)translateY(0)}}.gem__hero{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.gem__emoji{transform-origin:70% 80%;font-size:64px;line-height:1;animation:.7s cubic-bezier(.34,1.56,.64,1) .1s both gem-wave}@keyframes gem-wave{0%{opacity:0;transform:rotate(0)scale(.4)}40%{opacity:1;transform:rotate(-20deg)scale(1.1)}60%{transform:rotate(15deg)scale(1)}80%{transform:rotate(-10deg)scale(1)}to{transform:rotate(0)scale(1)}}.gem__title{font-size:clamp(28px,7vw,36px);font-weight:var(--font-weight-bold);color:var(--neutral-700);margin:0}.gem__subtitle{font-size:var(--text-md);color:var(--neutral-600);max-width:260px;margin:0;line-height:1.45}.gem__tinybucks{border-radius:var(--radius-lg);background:linear-gradient(135deg,#fffbeb 0%,#fef3c7 100%);border:2px solid #f6d860;align-items:center;gap:12px;width:100%;padding:12px 20px;display:flex}.gem__tb-icon{font-size:36px;line-height:1;animation:.6s ease-out .35s both gem-tb-spin}@keyframes gem-tb-spin{0%{transform:rotate(-30deg)scale(.6)}to{transform:rotate(0)scale(1)}}.gem__tb-label{font-size:var(--text-sm);color:var(--neutral-600);margin:0 0 2px}.gem__tb-amount{font-size:26px;font-weight:var(--font-weight-bold);color:#92400e;margin:0}.gem__cta{background:var(--neutral-700);width:100%;color:var(--neutral-0);border-radius:var(--radius-md);font-size:var(--text-lg);font-weight:var(--font-weight-bold);cursor:pointer;border:none;padding:14px;transition:transform .12s,box-shadow .12s;box-shadow:0 4px 14px #0003}.gem__cta:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000047}.gem__cta:active{transform:translateY(0)}.my-room-modal{z-index:1300;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.my-room-modal__overlay{background:#0000008c;border:none;position:absolute;inset:0}.my-room-modal__panel{background:var(--neutral-0);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);flex-direction:column;width:min(960px,100%);max-height:min(90vh,800px);margin:0 20px;display:flex;position:relative;overflow:hidden}.my-room-modal__header{font-size:var(--text-lg);font-weight:var(--font-weight-bold);border-bottom:1px solid var(--neutral-200);color:var(--neutral-800);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.my-room-modal__header-actions{align-items:center;gap:10px;display:flex}.my-room-modal__store-btn{border:1.5px solid var(--brand-500);border-radius:var(--radius-md);color:var(--brand-500);font-size:var(--text-sm);font-weight:var(--font-weight-bold);cursor:pointer;background:0 0;align-items:center;padding:6px 14px;font-family:inherit;transition:background .15s,color .15s;display:inline-flex}.my-room-modal__store-btn:hover,.my-room-modal__store-btn:active{background:var(--brand-500);color:var(--neutral-0)}.my-room-modal__inv-btn{display:none}.my-room-modal__close{cursor:pointer;color:var(--neutral-500);background:0 0;border:none;padding:0 2px;font-size:26px;line-height:1;transition:color .15s}.my-room-modal__close:hover{color:var(--neutral-800)}.my-room-modal__body{flex-direction:row;flex:1;min-height:0;display:flex;overflow:hidden}.my-room-modal__inventory{border-right:1px solid var(--neutral-200);flex-shrink:0;width:200px;padding:12px 8px;overflow-y:auto}.my-room-modal__inv-label{font-size:var(--text-xs,12px);font-weight:var(--font-weight-bold);color:var(--neutral-500);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;padding:0 4px}.my-room-modal__status{text-align:center;font-size:var(--text-sm);color:var(--neutral-500);padding:24px 8px;line-height:1.6}.my-room-modal__inv-grid{grid-template-columns:repeat(2,1fr);gap:6px;display:grid}.my-room-inv-card{border:1px solid var(--neutral-200);border-radius:var(--radius-md);background:var(--neutral-50);cursor:pointer;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;gap:4px;padding:8px 4px 6px;font-family:inherit;transition:box-shadow .12s,background .12s;display:flex;position:relative}.my-room-inv-card:hover:not(:disabled){background:var(--neutral-100);box-shadow:var(--shadow-sm)}.my-room-inv-card:active:not(:disabled){background:var(--neutral-200)}.my-room-inv-card--placed{opacity:.45;cursor:default}.my-room-inv-card__img{object-fit:contain;width:48px;height:48px}.my-room-inv-card__name{color:var(--neutral-700);text-align:center;word-break:break-word;font-size:10px;line-height:1.3}.my-room-inv-card__badge{font-size:9px;font-weight:var(--font-weight-bold);background:var(--brand-500);color:var(--neutral-0);pointer-events:none;border-radius:999px;padding:1px 5px;line-height:1.4;position:absolute;top:4px;right:4px}.my-room-modal__canvas-wrap{background:var(--neutral-100);flex:1;justify-content:center;align-items:center;min-width:0;padding:8px;display:flex;overflow:hidden}.my-room-modal__canvas{aspect-ratio:5/7;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;max-width:100%;height:100%;position:relative;overflow:hidden}.my-room-modal__canvas-bg{object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.room-item{cursor:grab;touch-action:none;position:absolute}.room-item:active{cursor:grabbing}.room-item__img{pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 2px 6px #00000059);width:100%;height:auto;transition:filter .12s;display:block}.room-item:hover .room-item__img{filter:drop-shadow(0 3px 10px #00000080)}.room-item__tooltip{border-radius:var(--radius-sm);pointer-events:auto;white-space:nowrap;background:#141414d1;gap:3px;padding:4px 5px;animation:.1s ease-out tooltip-pop;display:flex;position:absolute;transform:translate(-50%,calc(-50% - 32px))}@keyframes tooltip-pop{0%{opacity:0;transform:translate(-50%,calc(-50% - 24px))scale(.92)}to{opacity:1;transform:translate(-50%,calc(-50% - 32px))scale(1)}}.room-item__action{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--neutral-0);cursor:pointer;background:#ffffff1f;border:none;justify-content:center;align-items:center;font-size:16px;line-height:1;transition:background .1s;display:flex}.room-item__action:hover{background:#ffffff40}.room-item__action--delete{color:#faa;background:#d9404059}.room-item__action--delete:hover{color:var(--neutral-0);background:#d94040b3}@media (width<=639px){.my-room-modal{align-items:flex-start}.my-room-modal__panel{border-radius:0;width:100%;min-width:360px;height:100dvh;max-height:none;margin:0}.my-room-modal__body{flex-direction:column;flex:1;min-height:0;overflow:hidden}.my-room-modal__inventory{display:none}.my-room-modal__canvas-wrap{background:var(--neutral-200);flex:1;justify-content:center;align-items:center;min-height:0;padding:0;display:flex;container-type:size}.my-room-modal__canvas{aspect-ratio:5/7;width:min(100cqw,71.4286cqh);height:auto}.my-room-modal__inv-btn{border:1.5px solid var(--brand-500);border-radius:var(--radius-md);color:var(--brand-500);font-size:var(--text-sm);font-weight:var(--font-weight-bold);cursor:pointer;background:0 0;align-items:center;padding:6px 14px;font-family:inherit;transition:background .15s,color .15s;display:inline-flex}.my-room-modal__inv-btn:active{background:var(--brand-500);color:var(--neutral-0)}.room-item__tooltip{display:none}}.my-room-inv-sheet{z-index:1400;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.my-room-inv-sheet__overlay{background:#00000073;border:none;position:absolute;inset:0}.my-room-inv-sheet__panel{background:var(--neutral-0);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow-md);flex-direction:column;width:100%;max-height:70dvh;display:flex;position:relative;overflow:hidden}.my-room-inv-sheet__header{font-size:var(--text-lg);font-weight:var(--font-weight-bold);border-bottom:1px solid var(--neutral-200);color:var(--neutral-800);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.my-room-inv-sheet__body{flex:1;padding:12px;overflow-y:auto}.my-room-inv-sheet__grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}.my-room-confirm{z-index:1500;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.my-room-confirm__overlay{background:#00000080;border:none;position:absolute;inset:0}.my-room-confirm__panel{background:var(--neutral-0);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);flex-direction:column;align-items:center;gap:16px;width:min(320px,100%);padding:28px 24px 20px;display:flex;position:relative}.my-room-confirm__img{object-fit:contain;filter:drop-shadow(0 2px 6px #0003);width:72px;height:72px}.my-room-confirm__message{font-size:var(--text-base);color:var(--neutral-700);text-align:center;margin:0;line-height:1.5}.my-room-confirm__actions{gap:10px;width:100%;display:flex}.my-room-confirm__btn{border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-weight-bold);cursor:pointer;border:none;flex:1;padding:10px 0;font-family:inherit;transition:opacity .15s}.my-room-confirm__btn:active{opacity:.8}.my-room-confirm__btn--cancel{background:var(--neutral-100);color:var(--neutral-700)}.my-room-confirm__btn--remove{color:var(--neutral-0);background:#d94040}.toast-container{z-index:1400;flex-direction:column;gap:12px;max-width:min(360px,100vw - 32px);display:flex;position:fixed;bottom:24px;right:24px}.toast{border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:var(--neutral-0);border:1px solid var(--neutral-100);color:var(--neutral-800);justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.toast__content{flex-direction:column;gap:4px;display:flex}.toast__title{font-size:var(--text-sm);font-weight:var(--font-weight-medium)}.toast__description{color:var(--neutral-600);font-size:12px}.toast__actions{align-items:center;gap:8px;display:inline-flex}.toast__action{background:var(--neutral-100);color:var(--neutral-800);border-radius:var(--radius-sm);cursor:pointer;border:none;padding:6px 10px;font-size:12px}.toast__action:hover{background:var(--neutral-200)}.toast__close{color:var(--neutral-600);cursor:pointer;background:0 0;border:none;font-size:18px}.toast__close:hover{color:var(--neutral-800)}.toast--success{border-left:4px solid var(--success-500,#48bb78)}.toast--error{border-left:4px solid #f56565}.toast--info{border-left:4px solid #4299e1}.toast--warning{border-left:4px solid #ed8936}@media (width<=600px){.toast-container{width:min(360px,100vw - 32px);bottom:20px;left:50%;right:auto;transform:translate(-50%)}}.store-modal{z-index:1300;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.store-modal__overlay{cursor:pointer;background:#0000008c;border:none;position:absolute;inset:0}.store-modal__panel{background:var(--neutral-0);border-radius:var(--radius-lg);width:min(900px,100%);max-height:min(90vh,700px);box-shadow:var(--shadow-md);flex-direction:column;display:flex;position:relative;overflow:hidden}.store-modal__header{border-bottom:1px solid var(--neutral-200);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.store-modal__title{font-size:var(--text-lg);font-weight:var(--font-weight-bold);color:var(--neutral-800)}.store-modal__header-right{align-items:center;gap:12px;display:flex}.store-modal__my-room-btn{border:1.5px solid var(--brand-500);border-radius:var(--radius-md);color:var(--brand-500);font-size:var(--text-sm);font-weight:var(--font-weight-bold);cursor:pointer;background:0 0;align-items:center;padding:6px 14px;font-family:inherit;transition:background .15s,color .15s;display:inline-flex}.store-modal__my-room-btn:hover,.store-modal__my-room-btn:active{background:var(--brand-500);color:var(--neutral-0)}.store-modal__balance{font-size:var(--text-md);font-weight:var(--font-weight-bold);color:var(--neutral-800);background:var(--neutral-100);border-radius:999px;align-items:center;gap:5px;padding:4px 12px;display:flex}.store-modal__balance-icon{font-size:16px;line-height:1}.store-modal__close{cursor:pointer;color:var(--neutral-500);background:0 0;border:none;padding:0 2px;font-size:26px;line-height:1;transition:color .15s}.store-modal__close:hover{color:var(--neutral-800)}.store-modal__body{flex:1;padding:20px;overflow-y:auto}.store-modal__loading,.store-modal__empty{text-align:center;font-size:var(--text-md);color:var(--neutral-500);padding:48px 0}.store-modal__grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}@media (width>=560px){.store-modal__grid{grid-template-columns:repeat(3,1fr)}}@media (width>=760px){.store-modal__grid{grid-template-columns:repeat(4,1fr)}}.store-card{background:var(--neutral-50);border:1px solid var(--neutral-200);border-radius:var(--radius-md);flex-direction:column;align-items:center;gap:8px;padding:12px 10px 10px;transition:box-shadow .15s;display:flex}.store-card:hover{box-shadow:var(--shadow-sm)}.store-card__image-wrap{justify-content:center;align-items:center;width:72px;height:72px;display:flex}.store-card__image{object-fit:contain;width:100%;height:100%}.store-card__info{text-align:center;flex-direction:column;align-items:center;gap:3px;width:100%;display:flex}.store-card__name{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800);line-height:1.3}.store-card__cost{font-size:var(--text-sm);color:var(--neutral-600);align-items:center;gap:3px;display:flex}.store-card__cost-icon{font-size:14px;line-height:1}.store-card__btn{border-radius:var(--radius-sm);width:100%;font-size:var(--text-sm);font-weight:var(--font-weight-medium);cursor:pointer;background:var(--brand-500);color:var(--neutral-0);border:none;padding:7px 0;transition:background .15s}.store-card__btn:hover:not(:disabled){background:var(--brand-600)}.store-card__btn--owned{background:var(--neutral-200);color:var(--neutral-600);cursor:default}.store-confirm{z-index:10;border-radius:var(--radius-lg);background:#00000073;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.store-confirm__dialog{background:var(--neutral-0);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);flex-direction:column;align-items:center;gap:10px;width:min(320px,100% - 32px);padding:28px 24px 20px;display:flex}.store-confirm__title{font-size:var(--text-lg);font-weight:var(--font-weight-bold);color:var(--neutral-800);margin:0}.store-confirm__image{object-fit:contain;width:80px;height:80px}.store-confirm__item-name{font-size:var(--text-md);font-weight:var(--font-weight-medium);color:var(--neutral-800);margin:0}.store-confirm__cost{font-size:var(--text-md);color:var(--neutral-600);align-items:center;gap:4px;margin:0;display:flex}.store-confirm__actions{gap:10px;width:100%;margin-top:6px;display:flex}.store-confirm__btn{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);cursor:pointer;border:none;flex:1;padding:10px 0;transition:background .15s}.store-confirm__btn:disabled{opacity:.6;cursor:default}.store-confirm__btn--cancel{background:var(--neutral-200);color:var(--neutral-800)}.store-confirm__btn--cancel:hover:not(:disabled){background:var(--neutral-300)}.store-confirm__btn--confirm{background:var(--brand-500);color:var(--neutral-0)}.store-confirm__btn--confirm:hover:not(:disabled){background:var(--brand-600)}.support-modal{z-index:1300;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.support-modal__overlay{background:#0000008c;border:none;position:absolute;inset:0}.support-modal__panel{background:var(--neutral-0);border-radius:var(--radius-lg);width:min(560px,100%);box-shadow:var(--shadow-md);position:relative;overflow:hidden}.support-modal__header{font-size:var(--text-lg);font-weight:var(--font-weight-medium);border-bottom:1px solid var(--neutral-100);background:linear-gradient(135deg, var(--brand-500) 0%, var(--accent-500) 100%);color:var(--neutral-0);justify-content:space-between;align-items:center;padding:20px;display:flex}.support-modal__close{width:32px;height:32px;color:var(--neutral-0);cursor:pointer;background:#ffffff40;border:none;border-radius:999px;font-size:20px}.support-modal__body{flex-direction:column;gap:12px;padding:20px;display:flex}.support-modal__label{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--neutral-800)}.support-modal__input,.support-modal__textarea{border:2px solid var(--neutral-200);border-radius:var(--radius-sm);font-size:var(--text-sm);font-family:var(--font-sans);padding:10px}.support-modal__input:focus,.support-modal__textarea:focus{border-color:var(--brand-500);outline:none}.support-modal__error{color:#721c24;border-radius:var(--radius-sm);font-size:var(--text-sm);background:#f8d7da;padding:10px 12px}.support-modal__footer{justify-content:flex-end;gap:12px;display:flex}.support-modal__button{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-weight-medium);cursor:pointer;border:none;padding:10px 20px;transition:all .2s}.support-modal__button--primary{background:var(--brand-500);color:var(--neutral-0)}.support-modal__button--primary:hover{background:var(--brand-600)}.support-modal__button--secondary{background:var(--neutral-200);color:var(--neutral-700)}.support-modal__button--secondary:hover{background:var(--neutral-300)}@media (width<=360px){.support-modal{padding:12px}.support-modal__header,.support-modal__body{padding:16px}.support-modal__footer{flex-direction:column-reverse;align-items:stretch}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;tab-size:4;font-family:system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;line-height:1.15}body{margin:0}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{border-color:currentColor}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:100%;line-height:1.15}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}
