*{box-sizing:border-box}:root{--bg: linear-gradient(160deg, #1a0a2e 0%, #16213e 40%, #0f3460 100%);--card: rgba(255,255,255,.08);--card-border: rgba(255,255,255,.15);--accent: #e94560;--accent2: #f9a826;--success: #00d26a;--text: #f0f0f0;--radius: 16px;--font-title: system-ui, -apple-system, "Segoe UI", sans-serif;--font-body: system-ui, -apple-system, "Segoe UI", sans-serif}body{margin:0;font-family:var(--font-body);background:var(--bg);background-attachment:fixed;color:var(--text);min-height:100vh}#root{min-height:100vh}input,select{font-family:var(--font-body);border-radius:12px;border:2px solid var(--card-border);background:#0000004d;color:var(--text)}button{font-family:var(--font-body);font-weight:700;cursor:pointer;border:none;border-radius:12px;transition:transform .1s,box-shadow .2s}button:active:not(:disabled){transform:scale(.97)}button:disabled{opacity:.5;cursor:not-allowed}.shop-item-tooltip{position:fixed;transform:translate(-50%,calc(-100% - 12px));z-index:99999;background:linear-gradient(180deg,#1e2332fa,#161a24fa);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:14px 16px;min-width:200px;max-width:280px;box-shadow:0 8px 24px #00000080,0 0 0 1px #0003;pointer-events:none}.shop-item-tooltip-arrow{position:absolute;left:50%;bottom:-6px;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid rgba(22,26,36,.98)}.shop-item-tooltip-name{font-size:.75rem;font-weight:700;color:var(--accent2);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.shop-item-tooltip-desc{font-size:.9rem;line-height:1.4;color:var(--text);opacity:.95;margin-bottom:10px}.shop-item-tooltip-price{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;background:#00000059;border-radius:8px}.shop-item-tooltip-price span{font-weight:700;font-size:.95rem}.shop-item-sprite-img{width:36px;height:36px;object-fit:contain;cursor:pointer;border-radius:6px}.shop-item-sprite-emoji{font-size:28px;cursor:pointer}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:100;padding:24px}.modal-content{background:#1a1a2ee6;border:2px solid var(--card-border);border-radius:16px;padding:24px;max-width:320px;width:100%}.admin-page{min-height:100vh;padding:32px;max-width:1280px;margin:0 auto}.admin-page-centered{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px}.admin-card{background:var(--card);border:2px solid var(--card-border);border-radius:var(--radius);padding:28px;margin-bottom:24px;width:100%;max-width:520px}.admin-title{font-family:var(--font-title);font-size:1.75rem;margin:0 0 8px;text-align:center}.admin-subtitle{opacity:.9;margin-bottom:20px;text-align:center}.admin-step-label{font-size:.85rem;font-weight:700;color:var(--accent2);margin-bottom:8px;text-transform:uppercase}.admin-field-label{display:block;margin-bottom:6px;font-weight:600}.admin-input{padding:14px;border-radius:12px;margin-bottom:16px;border:2px solid var(--card-border);background:#0000004d;color:var(--text);width:100%}.admin-select{padding:14px;border-radius:12px;margin-bottom:16px;border:2px solid var(--card-border);background:#0000004d;color:var(--text);width:100%;min-width:200px}.admin-btn{background:var(--card-border);color:#fff;padding:14px 20px;border-radius:12px;font-weight:700;margin-right:8px;margin-bottom:8px}.admin-btn-primary{background:var(--accent);color:#fff;padding:14px 20px;border-radius:12px;font-weight:700;margin-right:8px;margin-bottom:8px}.admin-btn-danger{background:#c0392b;color:#fff;padding:12px 20px;border-radius:12px;font-weight:700;margin-right:8px}.admin-btn-success{background:var(--success);color:#1a1a2e;padding:14px 28px;border-radius:12px;font-weight:700;margin-right:8px}.admin-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px}.admin-team-row{display:flex;align-items:center;flex-wrap:nowrap;gap:12px;padding:14px 0;border-bottom:1px solid var(--card-border)}.admin-create-section{margin-top:24px;padding-top:24px;border-top:2px dashed var(--card-border)}.admin-modules-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:24px;align-items:stretch}.admin-modules-grid>.admin-module-card{height:100%}.admin-module-card{background:var(--card);border:2px solid var(--card-border);border-radius:var(--radius);padding:24px;width:100%;display:flex;flex-direction:column;min-height:0}.admin-question-prompt{margin:8px 0 16px;padding:12px 18px;font-size:1.25rem;line-height:1.5;font-weight:700;text-align:center;background:#00000059;border-radius:14px}@keyframes screen-refused-shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.screen-team-card-refused{animation:screen-refused-shake .4s ease-in-out}@keyframes screen-coin-toss{0%{transform:rotateY(0) scale(1)}50%{transform:rotateY(1800deg) scale(1.15)}to{transform:rotateY(3600deg) scale(1)}}.screen-coin-toss-coin{display:inline-block;animation:screen-coin-toss 1.8s ease-out forwards;transform-style:preserve-3d}@keyframes screen-dice-roll{0%{transform:rotate(0) scale(.8);opacity:.9}25%{transform:rotate(90deg) scale(1.2);opacity:1}50%{transform:rotate(180deg) scale(.9);opacity:1}75%{transform:rotate(270deg) scale(1.1);opacity:1}to{transform:rotate(360deg) scale(1);opacity:1}}.screen-dice-roll-die{display:inline-block;animation:screen-dice-roll 1.8s ease-in-out forwards}.tutorial-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;height:100dvh;z-index:320;display:flex;align-items:center;justify-content:center;padding:0;background:var(--bg);overflow:hidden;overscroll-behavior:none}@supports (-webkit-touch-callout: none){.tutorial-overlay{height:-webkit-fill-available}}.tutorial-orientation-guard{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;align-items:center;justify-content:center;padding:16px;background:#040a16f0}.tutorial-orientation-card{width:min(440px,100%);border-radius:14px;border:1px solid rgba(255,255,255,.22);background:#070e20f5;padding:16px;text-align:center}.tutorial-orientation-card h3{margin:0 0 8px;font-size:1.1rem}.tutorial-orientation-card p{margin:0;opacity:.92}.tutorial-page{width:min(1120px,100%);height:min(92vh,920px);border-radius:20px;border:1px solid rgba(255,255,255,.22);background:#0c122ad1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 24px 55px #00000073;padding:16px;display:flex;flex-direction:column;gap:10px}.tutorial-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.tutorial-header p{margin:0;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;opacity:.78}.tutorial-header h2{margin:5px 0 0;font-family:var(--font-title);font-size:1.35rem}.tutorial-close-btn{width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.33);background:#ffffff1a;color:#fff}.tutorial-progress{height:8px;border-radius:999px;background:#ffffff1f;overflow:hidden}.tutorial-progress span{display:block;height:100%;background:linear-gradient(90deg,#23b6ff,#f9a826);transition:width .2s ease}.tutorial-stage-zone{position:relative;flex:1;min-height:0;border-radius:16px;border:1px solid rgba(255,255,255,.14);background:#ffffff0a;overflow:hidden}.tutorial-stage-zone-full{width:100%;height:100%;border:0;border-radius:0;background:transparent;--tutorial-top-band: 130px;--tutorial-bottom-panel-height: 102px}.tutorial-content-frame{position:absolute;left:0;right:0;top:var(--tutorial-top-band);bottom:calc(var(--tutorial-bottom-panel-height) + env(safe-area-inset-bottom));overflow:hidden}.tutorial-stage-shell{width:100%;height:100%;position:relative}.tutorial-stage-screen,.tutorial-stage-shop{width:100%;height:100%;overflow:hidden}.tutorial-stage-screen>div,.tutorial-stage-shop>div{transform:scale(.43);transform-origin:top left;width:233%;height:233%}.tutorial-stage-shop>div{transform:scale(.52);width:193%;height:193%}.tutorial-stage-shop-large .tutorial-stage-shop>div{transform:none;width:100%;height:100%}.tutorial-player-stage{height:100%;display:flex;flex-direction:column;justify-content:space-between;padding:10px 12px;gap:12px;background:#070e2099;overflow:hidden}.tutorial-player-scorebar{width:max-content;padding:8px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.17);background:#00000059}.tutorial-player-buzz-zone{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.tutorial-player-inventory{border-radius:12px;border:1px solid rgba(255,255,255,.14);background:#00000040}.tutorial-items-stage{height:100%;overflow:hidden;padding:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-content:center}.tutorial-flow-stage{height:100%;padding:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}.tutorial-flow-step{width:min(100%,360px);display:flex;flex-direction:column;align-items:center;gap:10px}.tutorial-flow-card{width:100%;min-height:108px}.tutorial-flow-line{display:block;color:#fff;font-weight:800;font-size:1.02rem;line-height:1.25;text-align:center}.tutorial-flow-arrow{color:#fffc;font-size:1.6rem;line-height:1}.tutorial-item-card{border-radius:12px;border:2px solid rgba(35,182,255,.78);background:#23b6ff14;box-shadow:0 0 0 2px #23b6ff38 inset;padding:10px;min-height:118px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:box-shadow .12s ease,border-color .12s ease,background-color .12s ease}.tutorial-item-card.is-active{background:#23b6ff33;border-color:#23b6fff2;box-shadow:0 0 0 2px #23b6ff4d inset,0 0 0 3px #23b6ff4d,0 0 26px #23b6ff59}.tutorial-item-head{display:flex;align-items:center;gap:8px;margin-bottom:6px}.tutorial-item-head img,.tutorial-item-head span{width:22px;height:22px;font-size:22px;object-fit:contain}.tutorial-item-head-only img,.tutorial-item-head-only span{width:72px;height:72px;font-size:72px}.tutorial-item-head strong,.tutorial-item-head small{display:block}.tutorial-item-head small{opacity:.78}.tutorial-item-card p{margin:0;font-size:.74rem;line-height:1.25;opacity:.92}.tutorial-inline-coin{width:18px;height:18px;vertical-align:middle}.tutorial-item-info{width:100%;display:grid;gap:4px}.tutorial-item-info-title{font-weight:800;font-size:1rem;color:#fff}.tutorial-item-info-desc{opacity:.95}.tutorial-item-info-price{display:inline-flex;align-items:center;gap:6px;width:max-content;margin-top:2px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:#00000038;padding:2px 10px;font-weight:700}.tutorial-item-info-price strong{color:#ffd769}.tutorial-green-star-pop{position:absolute;top:40%;left:58%;transform:translate(-50%,-50%);width:82px;height:82px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at center,#91ff7359,#91ff7305);box-shadow:0 0 26px #91ff7373}.tutorial-green-star-pop img{width:62px;height:62px;animation:tutorial-star-pop 1.4s ease-in-out infinite}@keyframes tutorial-star-pop{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.12) rotate(180deg)}}.tutorial-green-star-stage{position:relative}.tutorial-starroad-stage{height:100%;overflow-y:auto;overflow-x:hidden;padding:8px 10px;display:flex;flex-direction:column;justify-content:flex-start;-webkit-overflow-scrolling:touch;touch-action:pan-y}.tutorial-starroad-fit{width:100%;min-height:max-content;display:flex;flex-direction:column;gap:10px}.tutorial-bonus-card{margin-top:0;border-radius:12px;border:1px solid rgba(255,255,255,.15);background:#0000004d;padding:10px;flex:0 0 auto}.tutorial-bonus-card h4{margin:0 0 8px}.tutorial-bonus-tags{display:flex;flex-wrap:wrap;gap:8px}.tutorial-bonus-tags span{border-radius:999px;border:1px solid rgba(249,168,38,.38);background:#f9a82629;padding:4px 10px;font-size:.84rem}.tutorial-end-stage{height:100%;position:relative}.tutorial-bonus-single-stage{grid-template-columns:repeat(2,minmax(0,260px));justify-content:center;align-content:center}.tutorial-bonus-single-card{min-height:160px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:1.22rem;font-weight:800;color:#fff}.tutorial-bonus-single-title{font-weight:800;font-size:1.1rem;margin-bottom:8px}.tutorial-bonus-single-sub{opacity:.9;font-size:.9rem;line-height:1.35}.tutorial-end-banner{position:absolute;left:50%;bottom:16px;transform:translate(-50%);border-radius:999px;border:1px solid rgba(145,255,115,.5);background:#0c2a16d1;color:#ddffe4;padding:8px 16px;font-weight:700}.tutorial-hint-bubble{position:absolute;transform:translate(-50%,-50%);border-radius:12px;border:1px solid rgba(35,182,255,.45);background:#051e38e6;color:#d7f1ff;padding:9px 10px;font-size:.82rem;line-height:1.3;z-index:4;box-shadow:0 6px 24px #00000052}.tutorial-hotspot{position:absolute;transform:translate(-50%,-50%);border-radius:14px;border:2px solid rgba(35,182,255,.78);background:#23b6ff14;box-shadow:0 0 0 2px #23b6ff38 inset;cursor:pointer;z-index:5;animation:tutorial-hotspot-pulse 1.6s ease-in-out infinite}.tutorial-hotspot.is-active{background:#23b6ff33;border-color:#23b6fff2}@keyframes tutorial-hotspot-pulse{0%,to{box-shadow:0 0 0 2px #23b6ff38 inset,0 0 #23b6ff00}50%{box-shadow:0 0 0 2px #23b6ff4d inset,0 0 0 10px #23b6ff14}}.tutorial-info-panel{position:absolute;left:0;right:0;bottom:env(safe-area-inset-bottom);height:var(--tutorial-bottom-panel-height);border-radius:12px 12px 0 0;border:1px solid rgba(72,201,255,.7);background:#02162cf7;color:#f4fbff;padding:10px 14px;display:flex;align-items:stretch;text-shadow:0 1px 0 rgba(0,0,0,.45);box-shadow:0 10px 34px #00000073;overflow:hidden;z-index:7}.tutorial-info-content{width:100%;height:100%;display:flex;align-items:center;line-height:1.45;font-weight:600;letter-spacing:.01em}.tutorial-arrow-btn{position:absolute;top:20px;z-index:7;width:44px;height:44px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:#070e20e0;color:#fff;font-size:1.8rem;line-height:1;display:inline-flex;align-items:center;justify-content:center}.tutorial-arrow-btn:disabled{opacity:.4}.tutorial-arrow-left{left:12px}.tutorial-arrow-right{right:12px}.tutorial-arrow-text{width:64px;font-size:1rem;font-weight:800}.tutorial-skip-btn{position:absolute;top:20px;right:64px;z-index:7;min-height:36px;border-radius:10px;border:1px solid rgba(255,255,255,.25);background:#f9a82642;color:#fff;font-weight:700;padding:6px 10px}.tutorial-skip-btn.armed{background:#e9456085}.tutorial-hud-top{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:6;border-radius:12px;border:1px solid rgba(255,255,255,.2);background:#070e20d1;padding:8px 10px;text-align:center}.tutorial-hud-top p{margin:0;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;opacity:.78}.tutorial-hud-top h2{margin:4px 0 0;font-size:.95rem}.tutorial-progress-floating{position:absolute;left:12px;right:12px;top:102px;z-index:6}.tutorial-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tutorial-actions-floating{position:absolute;left:12px;right:12px;bottom:12px;z-index:7;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-auto-rows:minmax(40px,auto);border-radius:12px;border:1px solid rgba(255,255,255,.16);background:#070e20d1;padding:8px;min-height:calc(var(--tutorial-bottom-panel-height) - 16px);align-content:start}.tutorial-btn{min-height:40px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:#23b6ff40;color:#fff;font-weight:700}.tutorial-btn:disabled{opacity:.45}.tutorial-btn.ghost{background:#ffffff1a}.tutorial-btn.success{background:#00d26a4d}.tutorial-btn.warning{grid-column:span 1;background:#f9a82642}.tutorial-btn.warning.armed{background:#e9456080}.tutorial-resume-btn{position:fixed;right:14px;bottom:14px;z-index:210;border-radius:999px;border:1px solid rgba(255,255,255,.28);background:#0c142cd9;color:#fff;padding:10px 14px;font-weight:700}.tutorial-confirm-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:12;display:flex;align-items:center;justify-content:center;background:#040a1699}.tutorial-confirm-modal{width:min(420px,calc(100% - 28px));border-radius:14px;border:1px solid rgba(255,255,255,.2);background:#070e20f2;padding:16px;box-shadow:0 14px 36px #00000073}.tutorial-confirm-modal h3{margin:0 0 8px;font-size:1.06rem}.tutorial-confirm-modal p{margin:0;opacity:.92;line-height:1.4}.tutorial-confirm-actions{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:8px}@media (max-width: 920px){.tutorial-page{height:96vh}.tutorial-stage-screen>div,.tutorial-stage-shop>div{transform:scale(.31);width:323%;height:323%}.tutorial-stage-shop-large .tutorial-stage-shop>div{transform:none;width:100%;height:100%}.tutorial-items-stage{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.tutorial-header h2{font-size:1.1rem}.tutorial-stage-screen>div,.tutorial-stage-shop>div{transform:scale(.27);width:371%;height:371%}.tutorial-stage-shop-large .tutorial-stage-shop>div{transform:none;width:100%;height:100%}.tutorial-items-stage{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px}.tutorial-bonus-single-stage{grid-template-columns:1fr;justify-content:stretch;align-content:start}.tutorial-hint-bubble{font-size:.76rem;max-width:220px}.tutorial-actions-floating{grid-template-columns:1fr 1fr}.tutorial-stage-zone-full{--tutorial-top-band: 128px;--tutorial-bottom-panel-height: 110px}.tutorial-arrow-btn{width:40px;height:40px;top:18px}.tutorial-skip-btn{right:58px;top:18px;max-width:150px;font-size:.86rem;padding:6px 8px}}
