@import"https://fonts.googleapis.com/css2?family=Nunito:wght@400;500;600;700;800;900&family=Quicksand:wght@600;700;800&display=swap";:root{--primary: #FF4757;--primary-gradient: linear-gradient(135deg, #FF6B81 0%, #FF4757 100%);--secondary: #2ED573;--secondary-gradient: linear-gradient(135deg, #7BED9F 0%, #2ED573 100%);--accent: #FFA502;--accent-gradient: linear-gradient(135deg, #ECCC68 0%, #FFA502 100%);--blue: #1E90FF;--blue-gradient: linear-gradient(135deg, #70A1FF 0%, #1E90FF 100%);--purple: #9B59B6;--purple-gradient: linear-gradient(135deg, #A29BFE 0%, #6C5CE7 100%);--rainbow-gradient: linear-gradient(135deg, #FF4757 0%, #FFA502 25%, #2ED573 50%, #1E90FF 75%, #9B59B6 100%);--bg-dark: #2F3542;--card-bg: rgba(255, 255, 255, .94);--card-shadow: 0 12px 36px rgba(0, 0, 0, .18), 0 4px 12px rgba(0, 0, 0, .08);--border-radius-lg: 28px;--border-radius-md: 18px;--border-radius-sm: 12px}*{box-sizing:border-box;margin:0;padding:0;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}html,body{width:100%;height:100%;overflow:hidden;font-family:Nunito,Quicksand,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background-color:#70a1ff;color:#2f3542}#canvas-container{width:100%;height:100%;position:absolute;top:0;left:0;z-index:1}.hud-overlay{position:absolute;top:0;left:0;right:0;padding:10px 14px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;z-index:20;pointer-events:none}.hud-top-bar{display:flex;justify-content:space-between;align-items:center;width:100%;pointer-events:none;gap:8px}.hud-left,.hud-right,.hud-center{pointer-events:auto;display:flex;align-items:center;gap:6px;flex-wrap:nowrap}.hud-left{flex-shrink:0}.hud-right{flex-shrink:0;justify-content:flex-end}.hud-badge{background:#ffffffeb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:5px 10px;border-radius:var(--border-radius-lg);box-shadow:0 4px 14px #0000001a;border:2px solid rgba(255,255,255,.95);display:inline-flex;align-items:center;gap:5px;font-size:.85rem;font-weight:700;color:#2f3542;flex-shrink:0;white-space:nowrap;height:36px;box-sizing:border-box;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.hud-badge:hover{transform:translateY(-2px) scale(1.02)}.hud-badge span,.btn-hud-action span{white-space:nowrap}.stage-selector-badge{background:linear-gradient(135deg,#fffffff2,#f0f8fff2);border-color:#70a1ff}.stage-dropdown{background:transparent;border:none;font-family:inherit;font-weight:700;font-size:.85rem;color:#1e90ff;cursor:pointer;outline:none;white-space:nowrap}.stage-dropdown option{background:#fff;color:#2f3542;font-weight:600}.star-icon{font-size:1.15rem;animation:pulseStar 1.8s infinite ease-in-out}@keyframes pulseStar{0%,to{transform:scale(1)}50%{transform:scale(1.2) rotate(12deg)}}.letter-tracker-container{pointer-events:auto;display:flex;align-items:center;gap:6px;max-width:min(1080px,calc(100vw - 28px));margin:0;padding:0;transition:max-width .25s ease;position:relative}.tracker-nav-btn{width:30px;height:30px;border-radius:50%;background:#fffffff2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1.5px solid rgba(255,255,255,.95);box-shadow:0 3px 10px #00000029;display:inline-flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:800;color:#2f3542;cursor:pointer;flex-shrink:0;transition:all .2s cubic-bezier(.34,1.56,.64,1);user-select:none;-webkit-user-select:none;z-index:5}.tracker-nav-btn:hover{transform:scale(1.14);background:#fff;color:#1e90ff;box-shadow:0 4px 14px #1e90ff59}.tracker-nav-btn:active{transform:scale(.92)}.tracker-nav-btn:disabled,.tracker-nav-btn.disabled{opacity:.3;cursor:default;pointer-events:none}.tracker-nav-btn.hidden{display:none}.letter-tracker{display:flex;gap:5px;background:#ffffffe6;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:4px 8px;border-radius:16px;box-shadow:0 4px 16px #0000001f;border:2px solid rgba(255,255,255,.95);max-width:100%;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;cursor:grab}.letter-tracker.is-dragging{cursor:grabbing;scroll-behavior:auto}.letter-tracker::-webkit-scrollbar{display:none}.letter-chip{min-width:42px;height:42px;border-radius:10px;background:#dfe4ea;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all .25s cubic-bezier(.34,1.56,.64,1);box-shadow:0 2px 5px #00000014;flex-shrink:0;padding:0 5px}.letter-chip .chip-letter{font-weight:800;font-size:.76rem;color:#747d8c;line-height:1.1;white-space:nowrap}.letter-chip .chip-emoji{font-size:.88rem;line-height:1.1}.letter-chip.unlocked{background:var(--secondary-gradient);color:#fff;transform:translateY(-2px);box-shadow:0 6px 14px #2ed57366}.letter-chip.unlocked .chip-letter{color:#fff}.letter-chip.mastered{background:linear-gradient(135deg,#ffa502,#ffd32a);color:#fff;border:2px solid #FFFFFF;box-shadow:0 6px 16px #ffa50299;position:relative;transform:translateY(-2px)}.letter-chip.mastered .chip-letter{color:#fff;font-weight:900}.letter-chip.mastered:after{content:"⭐";position:absolute;top:-7px;right:-6px;font-size:.72rem;line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.35))}.lighthouse-hud-badge{background:linear-gradient(135deg,#ffa502,#ff7675);color:#fff;font-size:.72rem;font-weight:800;padding:2px 7px;border-radius:12px;margin-left:5px;box-shadow:0 2px 6px #ffa50266;letter-spacing:.3px;display:inline-block;vertical-align:middle}.letter-chip:active{transform:scale(.92)}.btn-hud-action{background:#ffffffeb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:2px solid rgba(255,255,255,.95);border-radius:var(--border-radius-lg);padding:5px 9px;font-family:inherit;font-size:.82rem;font-weight:700;color:#2f3542;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:4px;box-shadow:0 4px 12px #0000001a;transition:all .25s cubic-bezier(.34,1.56,.64,1);flex-shrink:0;white-space:nowrap;height:36px;box-sizing:border-box}.btn-hud-action:hover{transform:translateY(-2px) scale(1.03);background:#fff;box-shadow:0 8px 18px #00000026}.btn-hud-action:active{transform:scale(.95)}.btn-hud-action.btn-island{background:var(--rainbow-gradient);color:#fff;border-color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}.btn-hud-action.btn-quiz{background:var(--accent-gradient);color:#fff;border-color:#ffa502}.btn-hud-action.btn-char{background:var(--purple-gradient);color:#fff;border-color:#a29bfe}.boost-banner{position:absolute;top:118px;left:50%;transform:translate(-50%);background:var(--rainbow-gradient);color:#fff;padding:8px 24px;border-radius:20px;font-size:1.1rem;font-weight:700;box-shadow:0 8px 24px #ff475780;border:2px solid #FFFFFF;z-index:95;animation:boostPulse .6s infinite alternate;pointer-events:none;transition:opacity .3s ease}.boost-banner.hidden{opacity:0;transform:translate(-50%) translateY(-20px)}@keyframes boostPulse{0%{transform:translate(-50%) scale(1)}to{transform:translate(-50%) scale(1.08)}}.instruction-banner{position:absolute;bottom:24px;left:50%;transform:translate(-50%);background:#2f3542d1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;padding:10px 24px;border-radius:var(--border-radius-lg);font-size:.92rem;font-weight:500;z-index:10;pointer-events:none;box-shadow:0 6px 20px #00000040;display:flex;align-items:center;gap:8px;animation:fadeIn .8s ease-out}.touch-controls{position:absolute;bottom:28px;left:24px;right:24px;display:flex;justify-content:space-between;align-items:flex-end;z-index:15;pointer-events:none}#joystick-zone{width:120px;height:120px;border-radius:50%;background:#ffffff59;border:3px solid rgba(255,255,255,.65);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);position:relative;display:flex;align-items:center;justify-content:center;pointer-events:auto;touch-action:none;box-shadow:0 8px 24px #00000026}#joystick-knob{width:54px;height:54px;border-radius:50%;background:var(--blue-gradient);border:3px solid #FFFFFF;box-shadow:0 4px 12px #1e90ff80;pointer-events:none}.btn-touch-action{width:76px;height:76px;border-radius:50%;background:var(--primary-gradient);border:4px solid #FFFFFF;color:#fff;font-size:1.8rem;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #ff475773;cursor:pointer;pointer-events:auto;transition:transform .15s ease}.btn-touch-action:active{transform:scale(.88)}.modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#00000073;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:100;padding:16px;transition:opacity .25s ease;overflow-y:auto;-webkit-overflow-scrolling:touch}.hidden:not(.modal-overlay):not(.mobile-menu-drawer){display:none!important}.modal-overlay.hidden{opacity:0;pointer-events:none;visibility:hidden}.modal-card{background:#fff;background:#fffffff7;border-radius:var(--border-radius-lg);box-shadow:0 16px 48px #00000038;border:4px solid #FFFFFF;width:100%;max-width:480px;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;margin:auto;padding:24px;text-align:center;position:relative;transform:translateY(0);transition:transform .3s cubic-bezier(.34,1.56,.64,1);animation:popIn .35s cubic-bezier(.34,1.56,.64,1)}.modal-close-btn{position:absolute;top:14px;right:14px;width:38px;height:38px;border-radius:50%;background:#f1f2f6;border:2px solid #ced6e0;font-size:1.15rem;font-weight:800;color:#747d8c;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 8px #0000001a;transition:all .22s cubic-bezier(.34,1.56,.64,1);z-index:25}.modal-close-btn:hover{background:#ff4757;color:#fff;border-color:#ff4757;transform:scale(1.12) rotate(90deg);box-shadow:0 6px 16px #ff475766}.modal-close-btn:active{transform:scale(.92)}#flashcard-modal{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;pointer-events:none;align-items:flex-start;padding-top:50px}.flashcard-flip-container{perspective:1200px;max-width:440px;width:100%;pointer-events:auto}.flashcard-card-3d{position:relative;width:100%;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.34,1.56,.64,1);cursor:pointer}.flashcard-flip-container.enter-3d .flashcard-card-3d:not(.is-flipped){animation:cardEntranceFlip .65s cubic-bezier(.175,.885,.32,1.275)}@keyframes cardEntranceFlip{0%{transform:perspective(1000px) rotateY(-90deg) scale(.6) translateY(-40px);opacity:0}60%{transform:perspective(1000px) rotateY(15deg) scale(1.05) translateY(0);opacity:1}85%{transform:perspective(1000px) rotateY(-6deg) scale(.98)}to{transform:perspective(1000px) rotateY(0) scale(1);opacity:1}}.flashcard-card-3d.is-flipped{transform:rotateY(180deg)}.fc-face{background:#fffffffa;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:var(--border-radius-lg);box-shadow:0 18px 48px #00000047,0 4px 14px #00000014;border:4px solid #FFFFFF;padding:20px 24px;backface-visibility:hidden;-webkit-backface-visibility:hidden;text-align:center;width:100%;box-sizing:border-box;overflow:hidden;position:relative}.fc-corner-close{position:absolute;top:10px;right:10px;width:34px;height:34px;border-radius:50%;background:#f1f2f6;border:2px solid #CED6E0;font-size:1rem;font-weight:800;color:#747d8c;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:20;box-shadow:0 2px 8px #00000014;transition:all .2s cubic-bezier(.34,1.56,.64,1)}.fc-corner-close:hover{background:#ff4757;color:#fff;border-color:#ff4757;transform:scale(1.1) rotate(90deg)}.fc-corner-close:active{transform:scale(.92)}.fc-front{position:relative;z-index:2}.fc-back{position:absolute;top:0;left:0;height:100%;display:flex;flex-direction:column;justify-content:space-between;transform:rotateY(180deg);z-index:1}.fc-flip-hint{display:inline-flex;align-items:center;gap:6px;background:#fff9e6;color:#d35400;font-size:.82rem;font-weight:700;padding:6px 14px;border-radius:12px;margin:6px 0 10px;border:1.5px dashed #FFA502;cursor:pointer;transition:transform .2s,background-color .2s}.fc-flip-hint:hover{transform:scale(1.04);background:#ffeaa7}.fc-modal-actions{display:flex;gap:10px;width:100%;margin-top:14px;align-items:stretch}.fc-modal-actions .btn-fc-action,.btn-flip-action{flex:1 1 0;min-width:0;height:48px;min-height:48px;max-height:48px;border-radius:16px;border:2px solid rgba(255,255,255,.4);font-family:inherit;font-size:.95rem;font-weight:800;color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;box-sizing:border-box;padding:0 8px;transition:all .22s cubic-bezier(.34,1.56,.64,1);overflow:hidden;text-overflow:ellipsis}.fc-modal-actions .btn-fc-action span,.btn-flip-action span{white-space:nowrap}.fc-modal-actions .btn-fc-speak{background:linear-gradient(135deg,#70a1ff,#1e90ff);box-shadow:0 4px 14px #1e90ff59}.fc-modal-actions .btn-fc-flip,.btn-flip-action{background:linear-gradient(135deg,#a29bfe,#6c5ce7)!important;box-shadow:0 4px 14px #6c5ce759}.fc-modal-actions .btn-fc-close{background:linear-gradient(135deg,#ff6b81,#ff4757);box-shadow:0 4px 14px #ff475759}.fc-modal-actions .btn-fc-action:hover,.btn-flip-action:hover{transform:translateY(-2px) scale(1.03);border-color:#fff;box-shadow:0 6px 18px #00000038}.fc-modal-actions .btn-fc-action:active,.btn-flip-action:active{transform:scale(.95)}.fc-modal-actions .btn-fc-action:focus,.btn-flip-action:focus{outline:none}.fc-modal-actions .btn-fc-action:focus-visible,.btn-flip-action:focus-visible{outline:3px solid #FFA502;outline-offset:2px}.fc-back-header{display:flex;align-items:center;justify-content:center;gap:12px;margin:4px 0 8px}.fc-word-back{font-size:2rem;font-weight:700;color:#2f3542;max-width:100%;word-break:break-word;overflow-wrap:break-word;line-height:1.25}.fc-emoji-back{font-size:2.8rem}@keyframes popIn{0%{transform:scale(.8) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.fc-badge{display:inline-block;background:#fff0f2;color:var(--primary);padding:6px 16px;border-radius:20px;font-size:.9rem;font-weight:700;margin-bottom:10px}.character-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:14px 0}.char-card{background:#fff;border:3px solid #E4E7EB;border-radius:var(--border-radius-md);padding:14px 10px;display:flex;flex-direction:column;align-items:center;cursor:pointer;transition:all .25s cubic-bezier(.34,1.56,.64,1);position:relative;box-shadow:0 4px 12px #0000000d}.char-card:hover{transform:translateY(-4px) scale(1.02);border-color:#a29bfe;box-shadow:0 8px 20px #6c5ce733}.char-card.active{border-color:#6c5ce7;background:#f8f7ff;box-shadow:0 8px 24px #6c5ce747;transform:translateY(-2px)}.char-avatar{width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2.2rem;margin-bottom:8px;box-shadow:0 4px 12px #0000001f;border:3px solid #FFFFFF}.char-name{font-size:1.15rem;font-weight:700;color:#2f3542;margin-bottom:2px}.char-role{font-size:.8rem;font-weight:600;color:#747d8c;margin-bottom:8px}.char-stats{display:flex;flex-direction:column;gap:2px;font-size:.75rem;font-weight:600;color:#57606f;background:#f1f2f6;padding:6px 10px;border-radius:8px;width:100%}.char-selected-tag{font-size:.72rem;font-weight:700;color:#a4b0be;margin-top:8px}.char-card.active .char-selected-tag{color:#6c5ce7;font-weight:700}.fc-big-visual{display:flex;align-items:center;justify-content:center;gap:16px;margin:10px 0}.fc-emoji{font-size:4.6rem;filter:drop-shadow(0 6px 12px rgba(0,0,0,.15));animation:bounceVisual 2s infinite ease-in-out}@keyframes bounceVisual{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.fc-letter{font-size:3.8rem;font-weight:700;line-height:1;max-width:100%}.fc-phonetic{font-size:1.15rem;color:#747d8c;font-weight:500;margin-bottom:4px}.fc-word{font-size:2.3rem;font-weight:700;color:#2f3542;letter-spacing:.5px;max-width:100%;word-break:break-word;overflow-wrap:break-word;line-height:1.25}.fc-meaning{font-size:1.2rem;color:#57606f;font-weight:600;margin-bottom:14px}.fc-sentence-box{background:#f1f2f6;border-radius:var(--border-radius-md);padding:12px 16px;margin-bottom:14px;text-align:left;border-left:5px solid var(--blue)}.fc-sentence{font-size:1.05rem;font-weight:600;color:#2f3542;margin-bottom:4px}.fc-sentence-vi{font-size:.9rem;color:#747d8c}.fc-funfact{font-size:.88rem;color:#ffa502;font-weight:600;margin-bottom:18px}.modal-actions{display:flex;gap:8px}.btn-primary-action,.btn-secondary-action{flex:1;height:44px;min-height:44px;box-sizing:border-box;padding:0 16px;border-radius:var(--border-radius-md);font-family:inherit;font-size:.95rem;font-weight:800;border:none;cursor:pointer;box-shadow:0 6px 16px #0000001f;transition:all .2s cubic-bezier(.34,1.56,.64,1);display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.btn-primary-action{background:var(--primary-gradient);color:#fff}.btn-primary-action:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 20px #ff475766}.btn-secondary-action{background:var(--blue-gradient);color:#fff}.btn-secondary-action:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 20px #1e90ff66}.quiz-options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.quiz-opt-btn{background:#fff;border:3px solid #CED6E0;border-radius:var(--border-radius-md);padding:14px 8px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:8px;font-family:inherit;font-weight:700;font-size:1rem;transition:all .25s cubic-bezier(.34,1.56,.64,1);box-shadow:0 4px 10px #0000000f}.quiz-opt-btn:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 8px 18px #ffa50240}.quiz-opt-btn .quiz-emoji{font-size:2.6rem}.quiz-feedback{min-height:28px;font-size:1.1rem;font-weight:700;margin-bottom:14px}.parent-word-list{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:16px 0;max-height:280px;overflow-y:auto;padding-right:6px}.parent-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#f1f2f6;border-radius:var(--border-radius-sm);font-size:.88rem}.parent-item.done{background:#e8f8f5;border-left:4px solid var(--secondary)}.title-screen-overlay{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:9999;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at center,#70a1fff5,#1e3799fa);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:16px;overflow-y:auto;-webkit-overflow-scrolling:touch;transition:opacity .5s ease,visibility .5s ease}.title-screen-overlay.fade-out{opacity:0;visibility:hidden;pointer-events:none}.title-card{background:#fffffffa;border:4px solid #FFFFFF;border-radius:36px;box-shadow:0 24px 60px #00000059,0 0 0 10px #ffffff4d;padding:28px 36px;max-width:580px;width:95%;max-height:calc(100vh - 32px);overflow-y:auto;margin:auto;text-align:center;animation:titleCardPop .5s cubic-bezier(.175,.885,.32,1.275);box-sizing:border-box}@keyframes titleCardPop{0%{transform:scale(.7) translateY(40px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.title-badge{display:inline-block;background:linear-gradient(135deg,#ffeaa7,#fdcb6e);color:#d63031;font-size:.9rem;font-weight:700;padding:6px 18px;border-radius:20px;letter-spacing:.5px;margin-bottom:12px;box-shadow:0 4px 10px #fdcb6e66}.title-main{font-size:2.6rem;font-weight:700;line-height:1.15;color:#2f3542;margin-bottom:8px}.title-highlight{background:linear-gradient(135deg,#ff4757,#ffa502,#2ed573,#1e90ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.title-subtitle{font-size:1.05rem;font-weight:600;color:#57606f;margin-bottom:24px;line-height:1.45}.title-profile-section{margin:14px 0 16px;background:linear-gradient(180deg,#f8fafc,#edf2f7);border:2px solid #E2E8F0;border-radius:24px;padding:14px 16px;box-shadow:inset 0 2px 4px #00000005}.title-profile-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.title-profile-label{font-size:.95rem;font-weight:800;color:#2f3542;display:flex;align-items:center;gap:6px}.btn-title-add-child{background:linear-gradient(135deg,#2ed573,#10ac84);color:#fff;border:none;border-radius:12px;padding:5px 12px;font-size:.8rem;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;gap:4px;box-shadow:0 3px 8px #2ed5734d;transition:all .2s cubic-bezier(.34,1.56,.64,1)}.btn-title-add-child:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 5px 12px #2ed57366}.title-profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(115px,1fr));gap:10px;max-height:220px;min-height:80px;overflow-y:auto;padding:4px 2px}.title-child-card{background:#fff;border:2.5px solid #E4E7EB;border-radius:18px;padding:12px 8px 10px;display:flex;flex-direction:column;align-items:center;text-align:center;cursor:pointer;transition:all .22s cubic-bezier(.34,1.56,.64,1);box-shadow:0 3px 8px #0000000a;box-sizing:border-box;position:relative}.title-child-card:hover{transform:translateY(-2px) scale(1.03);border-color:#70a1ff;box-shadow:0 6px 16px #70a1ff38}.title-child-card.active-child{border-color:#2ed573;background:linear-gradient(180deg,#f0fff4,#fff);box-shadow:0 6px 18px #2ed5734d;transform:translateY(-2px) scale(1.03)}.title-child-card.locked-child{opacity:.65;background:#f8f9fa!important;border-color:#ced6e0!important;cursor:not-allowed!important;box-shadow:none!important;transform:none!important}.child-card-tools{position:absolute;top:6px;right:6px;display:flex;gap:4px;z-index:5}.btn-card-tool{width:24px;height:24px;border-radius:50%;border:1px solid #CBD5E1;background:#fffffff2;font-size:.72rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .18s ease;padding:0;line-height:1;box-shadow:0 2px 6px #0000001a}.btn-card-tool:hover{transform:scale(1.15);background:#fff}.btn-tool-avatar:hover{border-color:#1e90ff;background:#e8f4fd}.btn-tool-delete:hover{border-color:#ff4757;background:#ffeaea}.title-child-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#ffeaa7,#ffa502);display:flex;align-items:center;justify-content:center;font-size:1.8rem;margin-bottom:6px;box-shadow:0 3px 8px #0000001a;overflow:hidden;position:relative}.avatar-img-circle{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}.title-child-name{font-size:.92rem;font-weight:800;color:#2f3542;margin-bottom:2px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.title-child-level{font-size:.72rem;font-weight:700;color:#1e90ff;background:#e8f4fd;padding:2px 7px;border-radius:8px;margin-bottom:6px;white-space:nowrap}.title-child-tag{font-size:.68rem;font-weight:800;padding:2px 8px;border-radius:8px;display:inline-block;white-space:nowrap}.title-child-tag.active-tag{background:#2ed573;color:#fff}.title-child-tag.locked-tag{background:#ffeaa7;color:#d63031;border:1px solid #FFA502}.title-child-tag.select-tag{background:#f1f2f6;color:#747d8c}.title-child-card:hover .title-child-tag.select-tag{background:#70a1ff;color:#fff}.title-features-mini{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;font-size:.82rem;font-weight:700;color:#57606f;margin-bottom:16px}.title-features-mini span{white-space:nowrap}.title-features{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:26px;text-align:left}.title-feat-item{display:flex;align-items:center;gap:10px;background:#f8f9fa;border:1px solid #E4E7EB;border-radius:14px;padding:10px 12px;font-size:.82rem;color:#2f3542}.title-feat-item .feat-icon{font-size:1.4rem;flex-shrink:0}.btn-start-adventure{width:100%;padding:16px 28px;font-size:1.35rem;font-weight:700;font-family:inherit;color:#fff;background:linear-gradient(135deg,#ff4757,#ffa502);border:none;border-radius:22px;cursor:pointer;box-shadow:0 10px 24px #ff475773;transition:transform .2s,box-shadow .2s;display:flex;align-items:center;justify-content:center;gap:10px}.btn-start-adventure:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 14px 30px #ff47578c}.btn-start-adventure:active{transform:translateY(1px)}.title-tip{margin-top:14px;font-size:.84rem;color:#747d8c}.btn-mobile-menu{display:none!important;background:linear-gradient(135deg,#70a1ff,#1e90ff);color:#fff;border-color:#fff;font-weight:800;box-shadow:0 4px 14px #1e90ff66}@media (max-width: 1400px){.btn-hud-secondary{display:none!important}.btn-mobile-menu{display:inline-flex!important;padding:5px 11px;font-size:.82rem;gap:4px;height:36px;box-sizing:border-box}.hud-right{gap:5px}}@media (max-width: 1200px){.btn-hud-secondary{display:none!important}.btn-mobile-menu{display:inline-flex!important;padding:5px 11px;font-size:.82rem;gap:4px;height:36px;box-sizing:border-box}.hud-overlay{padding:8px 12px;gap:6px}.hud-badge{padding:5px 9px;font-size:.82rem;height:34px}.btn-hud-action{padding:5px 9px;font-size:.8rem;height:34px}.letter-tracker-container{max-width:min(860px,calc(100vw - 24px))}}@media (max-width: 850px),(max-height: 520px){.btn-desktop-only,.instruction-banner{display:none!important}.btn-mobile-menu{display:inline-flex!important;padding:5px 10px;font-size:.8rem;gap:4px;height:34px}.hud-overlay{padding:6px 10px;gap:6px}.hud-left{gap:5px;overflow-x:auto;max-width:calc(100vw - 110px);scrollbar-width:none;-webkit-overflow-scrolling:touch}.hud-left::-webkit-scrollbar{display:none}.hud-right{flex-shrink:0;gap:5px}.hud-badge{padding:4px 8px;font-size:.8rem;gap:4px;border-radius:12px;height:32px}.btn-hud-action{padding:4px 8px;font-size:.8rem;height:32px}.btn-hud-action.btn-island{max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stage-selector-badge{max-width:130px}.stage-dropdown{font-size:.78rem;max-width:100px;overflow:hidden;text-overflow:ellipsis}.exp-badge .exp-text{display:none}.exp-bar-track{width:36px;height:7px}.letter-tracker-container{max-width:calc(100vw - 20px)}.letter-chip{min-width:38px;height:38px;padding:0 4px;border-radius:8px}.letter-chip .chip-letter{font-size:.72rem}.letter-chip .chip-emoji{font-size:.82rem}.combo-banner,.boost-banner{top:100px;font-size:.95rem;padding:5px 16px}}@media (max-width: 768px){.character-grid{grid-template-columns:repeat(2,1fr);gap:10px}.parent-word-list{grid-template-columns:1fr}.instruction-banner{display:none!important}.minimap-container{bottom:142px!important;left:16px!important;transform:scale(.65)!important;transform-origin:bottom left!important}.title-screen-overlay{padding:max(8px,env(safe-area-inset-top,8px)) 8px max(12px,env(safe-area-inset-bottom,12px)) 8px;display:flex;align-items:center;justify-content:center;overflow-y:auto;-webkit-overflow-scrolling:touch;box-sizing:border-box}.title-card{padding:14px 12px 12px;max-width:440px;width:min(94%,440px);max-height:calc(100vh - 16px);max-height:calc(100svh - 16px);max-height:calc(100dvh - 16px);border-radius:22px;border-width:3px;overflow-y:auto;-webkit-overflow-scrolling:touch;margin:auto;box-sizing:border-box;animation:titleCardPop .4s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 12px 32px #00000059;display:flex;flex-direction:column}.title-badge{margin-bottom:4px;font-size:.72rem;padding:2px 10px;letter-spacing:.3px;max-width:100%;box-sizing:border-box}.title-main{font-size:clamp(1.2rem,4.8vw,1.55rem);margin-bottom:2px;line-height:1.15;word-break:keep-all}.title-subtitle{font-size:clamp(.72rem,2.6vw,.82rem);margin-bottom:6px;line-height:1.25;padding:0 4px}.title-features{grid-template-columns:1fr;gap:6px;margin-bottom:8px}.title-feat-item{padding:5px 8px;font-size:.72rem;border-radius:10px}.title-feat-item .feat-icon{font-size:1rem}.btn-start-adventure{padding:10px 14px;font-size:clamp(.92rem,3.8vw,1.05rem);min-height:44px;border-radius:16px;gap:6px;width:100%;white-space:normal;word-break:break-word;flex-shrink:0;box-sizing:border-box;box-shadow:0 6px 18px #ff475773}.title-tip{margin-top:4px;font-size:.68rem;line-height:1.25}.title-profile-section{padding:6px 8px;margin:4px 0 6px;border-radius:14px}.title-profile-header{margin-bottom:4px}.title-profile-label{font-size:.78rem;gap:4px}.btn-title-add-child{padding:2px 8px;font-size:.7rem;border-radius:8px}.title-profile-grid{grid-template-columns:repeat(2,1fr)!important;gap:5px;max-height:115px;min-height:65px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:2px 1px}.title-child-card{padding:6px 4px 5px;border-radius:12px;border-width:2px;min-width:0;box-sizing:border-box}.title-child-avatar{width:28px;height:28px;font-size:1.15rem;margin-bottom:2px}.title-child-name{font-size:.78rem;margin-bottom:1px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.title-child-level{font-size:.62rem;padding:1px 4px;margin-bottom:2px;border-radius:6px}.title-child-tag{font-size:.58rem;padding:1px 5px;border-radius:6px}.title-features-mini{font-size:.66rem;gap:4px;margin-bottom:6px;line-height:1.2}#flashcard-modal{align-items:flex-start;padding:48px 10px 16px}.flashcard-flip-container{max-width:375px;width:100%;margin:0 auto}.fc-face{padding:16px 12px 14px;border-width:3px;border-radius:24px}.fc-badge{font-size:.78rem;padding:4px 10px;margin-bottom:6px;max-width:calc(100% - 44px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fc-big-visual{margin:2px 0 6px;gap:12px}.fc-letter,.fc-emoji{font-size:3.2rem;line-height:1}.fc-phonetic{font-size:.95rem;margin-bottom:2px}.fc-word{font-size:2rem;line-height:1.1;margin-bottom:2px;word-break:break-word}.fc-meaning{font-size:1.1rem;margin-bottom:6px}.fc-flip-hint{font-size:.75rem;padding:4px 10px;margin:2px 0 8px;max-width:100%;box-sizing:border-box}.fc-modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;width:100%}.fc-modal-actions .btn-fc-action,.btn-flip-action{height:44px;min-height:44px;max-height:44px;font-size:.88rem;padding:0 6px;border-radius:14px;gap:4px;white-space:nowrap}.fc-modal-actions .btn-fc-close{grid-column:1 / -1;height:46px;min-height:46px;max-height:46px;font-size:.95rem}.fc-sentence-box{padding:8px 10px;margin-bottom:6px;border-radius:12px}.fc-sentence{font-size:.95rem;line-height:1.35;margin-bottom:3px}.fc-sentence-vi{font-size:.84rem;line-height:1.35}.fc-funfact-box{padding:8px 10px;margin-bottom:8px;border-radius:12px}.fc-funfact-title{font-size:.8rem;margin-bottom:2px}.fc-funfact{font-size:.8rem;line-height:1.3}}@media (max-width: 600px){.hud-overlay{padding:5px 6px;gap:4px}.hud-left{gap:3px;max-width:calc(100vw - 95px)}.hud-badge,.btn-hud-action{padding:3px 6px;font-size:.75rem;gap:3px;border-radius:10px;height:28px}.btn-hud-action.btn-island{max-width:100px;font-size:.72rem}.stage-selector-badge{max-width:95px}.stage-dropdown{font-size:.72rem;max-width:72px}.exp-bar-track{width:28px;height:6px}.letter-tracker-container{max-width:calc(100vw - 12px)}.letter-tracker{padding:2px 5px;gap:3px;border-radius:12px}.letter-chip{min-width:32px;height:34px;padding:0 2px;border-radius:6px}.letter-chip .chip-letter{font-size:.68rem}.letter-chip .chip-emoji{font-size:.74rem}.combo-banner,.boost-banner{top:85px;font-size:.88rem;padding:4px 12px}.story-card{padding:14px 12px;max-height:calc(100dvh - 20px)}.lighthouse-overview{flex-direction:column;gap:8px;padding:8px 10px}.lighthouse-tower-column{flex-direction:row;width:100%;justify-content:center;gap:8px}.lighthouse-tower-visual{flex-direction:row;height:10px;width:170px}.tower-tier{width:8px;height:100%}.map-pieces-grid{grid-template-columns:repeat(2,1fr);max-height:180px}.title-card{width:min(95%,400px);padding:12px 10px 10px}.title-main{font-size:clamp(1.15rem,5vw,1.45rem)}.btn-start-adventure{font-size:clamp(.9rem,3.6vw,1rem);padding:9px 12px}}@media (max-height: 460px),(max-height: 520px) and (orientation: landscape){.btn-desktop-only,.instruction-banner{display:none!important}.hud-overlay{padding:2px 8px!important;gap:2px!important}.hud-top-bar{gap:4px!important}.hud-left{gap:3px!important;max-width:calc(100vw - 80px)!important}.hud-badge,.btn-hud-action{padding:2px 6px!important;font-size:.72rem!important;height:26px!important;border-radius:8px!important}.btn-hud-action.btn-island{max-width:105px!important}.stage-selector-badge{max-width:100px!important}.stage-dropdown{font-size:.7rem!important;max-width:75px!important}.exp-badge .exp-text{display:none!important}.exp-bar-track{width:24px!important;height:5px!important}.btn-mobile-menu{height:26px!important;padding:2px 8px!important;font-size:.72rem!important}.letter-tracker-container{max-width:calc(100vw - 16px)!important;margin-top:0!important;transform:none!important;transform-origin:top left!important}.letter-tracker{padding:2px 5px!important;gap:3px!important;border-radius:8px!important}.letter-chip{min-width:26px!important;height:26px!important;padding:0 3px!important;border-radius:5px!important}.letter-chip .chip-letter{font-size:.64rem!important}.letter-chip .chip-emoji{font-size:.7rem!important}.tracker-nav-btn{width:20px!important;height:20px!important;font-size:.6rem!important}.combo-banner,.boost-banner{top:60px!important;font-size:.8rem!important;padding:2px 10px!important}.minimap-container{bottom:12px!important;left:124px!important;transform:scale(.52)!important;transform-origin:bottom left!important;border-radius:14px!important;padding:4px!important}.minimap-label{display:none!important}#joystick-zone{bottom:12px!important;left:12px!important;width:96px!important;height:96px!important}#joystick-knob{width:42px!important;height:42px!important}#btn-jump-touch{bottom:14px!important;right:14px!important;width:62px!important;height:62px!important;font-size:1.45rem!important}.camera-zoom-controls{flex-direction:row!important;bottom:16px!important;right:86px!important;padding:4px 8px!important;border-radius:20px!important;gap:5px!important}.btn-zoom{width:32px!important;height:32px!important;font-size:.85rem!important}.btn-zoom-reset{font-size:.72rem!important}.drawer-panel{max-height:92vh!important;overflow-y:auto!important;padding:10px 14px 18px!important}.drawer-pill{margin:2px auto 8px!important}.drawer-header{margin-bottom:8px!important}.drawer-grid{grid-template-columns:repeat(5,1fr)!important;gap:8px!important}.drawer-item-btn{padding:8px 4px!important;font-size:.75rem!important;gap:3px!important;border-radius:12px!important}.drawer-icon{font-size:1.35rem!important}.title-screen-overlay{padding:6px;align-items:center}.title-card{padding:8px 14px;max-height:calc(100svh - 12px);max-height:calc(100% - 12px);border-radius:18px;max-width:480px;width:min(96%,480px);margin:auto}.title-badge{display:none}.title-main{font-size:1.25rem;margin-bottom:2px}.title-subtitle{display:none}.title-profile-section{margin:4px 0 6px;padding:6px 8px;border-radius:14px}.title-profile-header{margin-bottom:4px}.title-profile-label{font-size:.75rem}.btn-title-add-child{padding:2px 6px;font-size:.68rem}.title-profile-grid{grid-template-columns:repeat(3,1fr)!important;max-height:95px;gap:4px}.title-child-card{padding:4px}.title-child-avatar{width:26px;height:26px;font-size:1.1rem;margin-bottom:1px}.title-child-name{font-size:.72rem}.title-child-level{font-size:.58rem;padding:0 4px;margin-bottom:2px}.title-child-tag{font-size:.56rem;padding:0 4px}.title-features-mini{display:none}.btn-start-adventure{padding:7px 14px;font-size:.95rem;min-height:36px;height:36px;border-radius:12px;white-space:normal;word-break:break-word;width:100%}.title-tip{display:none}}.minimap-container{position:absolute;bottom:22px;left:20px;z-index:100;background:#0f172acc;border:3px solid rgba(255,255,255,.35);border-radius:20px;padding:6px;box-shadow:0 10px 28px #00000059;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;flex-direction:column;align-items:center;transition:transform .2s ease,opacity .2s ease}.minimap-container:hover{transform:scale(1.05)}#minimap-canvas{border-radius:14px;display:block}.minimap-label{font-size:.68rem;font-weight:700;color:#a4b0be;letter-spacing:.6px;margin-top:4px}.camera-zoom-controls{position:fixed;right:20px;bottom:115px;z-index:100;display:flex;flex-direction:column;gap:8px;background:#0f172ac7;padding:8px;border-radius:28px;border:2px solid rgba(255,255,255,.35);box-shadow:0 8px 24px #00000059;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);user-select:none;-webkit-user-select:none;touch-action:manipulation;transition:all .25s ease}.btn-zoom{width:44px;height:44px;border-radius:50%;border:2px solid rgba(255,255,255,.65);background:linear-gradient(135deg,#ffffff38,#ffffff14);color:#fff;font-size:1.15rem;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0003;transition:all .2s cubic-bezier(.34,1.56,.64,1);font-family:inherit}.btn-zoom:hover{transform:scale(1.12);background:linear-gradient(135deg,#70a1ff,#1e90ff);border-color:#fff;box-shadow:0 6px 16px #1e90ff8c}.btn-zoom:active{transform:scale(.92)}.btn-zoom-reset{font-size:.85rem;font-weight:900;letter-spacing:.5px;background:linear-gradient(135deg,#ffeaa74d,#ffa50233);color:#ffeaa7;border-color:#ffeaa799}.btn-zoom-reset:hover{background:linear-gradient(135deg,#ffa502,#ff7675);color:#fff;border-color:#fff;box-shadow:0 6px 16px #ffa5028c}@media (min-width: 1025px){.camera-zoom-controls{bottom:24px;right:24px;flex-direction:row;border-radius:30px;padding:6px 10px}}@media (max-width: 480px){.camera-zoom-controls{right:14px;bottom:110px;gap:6px;padding:6px}.btn-zoom{width:38px;height:38px;font-size:1rem}.btn-zoom-reset{font-size:.78rem}}#flashcard-modal.theme-colors .fc-badge{background:linear-gradient(135deg,#ff6b81,#ffa502,#2ed573,#1e90ff)!important;color:#fff!important}#flashcard-modal.theme-numbers .fc-badge{background:linear-gradient(135deg,#fdcb6e,#e17055)!important;color:#fff!important}#flashcard-modal.theme-animals .fc-badge{background:linear-gradient(135deg,#55efc4,#00b894)!important;color:#2d3436!important}#flashcard-modal.theme-letters .fc-badge{background:linear-gradient(135deg,#a29bfe,#6c5ce7)!important;color:#fff!important}.exp-badge{display:inline-flex;align-items:center;gap:8px;background:#ffffffe6;padding:6px 14px}.level-icon{font-weight:800;color:#d35400;font-size:.95rem;display:flex;align-items:center;gap:2px}.exp-bar-track{width:74px;height:10px;background:#dfe4ea;border-radius:6px;overflow:hidden;position:relative;box-shadow:inset 0 1px 3px #00000026}.exp-bar-fill{height:100%;background:linear-gradient(90deg,#fdcb6e,#ffa502);border-radius:6px;transition:width .45s cubic-bezier(.34,1.56,.64,1);box-shadow:0 0 8px #ffa50299}.exp-text{font-size:.8rem;font-weight:700;color:#747d8c}.btn-spelling{background:linear-gradient(135deg,#fdcb6e,#e17055)!important;color:#fff!important;font-weight:700}.btn-quests{background:linear-gradient(135deg,#00cec9,#0984e3)!important;color:#fff!important;font-weight:700;position:relative}.quest-dot{position:absolute;top:-4px;right:-4px;width:18px;height:18px;background:#ff4757;color:#fff;border-radius:50%;font-size:.72rem;font-weight:900;display:flex;align-items:center;justify-content:center;border:2px solid #FFFFFF;animation:pulseDot 1.2s infinite}@keyframes pulseDot{0%,to{transform:scale(1)}50%{transform:scale(1.25)}}.combo-banner{position:absolute;top:118px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#ff4757,#ffa502);color:#fff;padding:8px 24px;border-radius:20px;font-size:1.15rem;font-weight:800;letter-spacing:.8px;z-index:95;box-shadow:0 8px 24px #ff475780,0 0 15px #ffa50299;border:3px solid #FFFFFF;animation:popCombo .35s cubic-bezier(.34,1.56,.64,1);pointer-events:none}@keyframes popCombo{0%{transform:translate(-50%) scale(.6);opacity:0}70%{transform:translate(-50%) scale(1.15);opacity:1}to{transform:translate(-50%) scale(1);opacity:1}}.spelling-visual{display:flex;align-items:center;justify-content:center;gap:16px;margin:12px 0 16px}.spelling-emoji{font-size:4.2rem;filter:drop-shadow(0 6px 12px rgba(0,0,0,.12))}.spelling-word-info{text-align:left}.spelling-meaning{font-size:1.25rem;font-weight:700;color:#2f3542;margin-bottom:6px}.spelling-slots-container{display:flex;gap:10px;justify-content:center;margin:14px 0 16px}.spelling-slot{width:50px;height:56px;border:2.5px dashed #CED6E0;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.9rem;font-weight:800;color:#2f3542;background:#f8f9fa;transition:all .2s cubic-bezier(.34,1.56,.64,1)}.spelling-slot.filled{border-style:solid;border-color:#6c5ce7;background:#f1f0ff;color:#6c5ce7;box-shadow:0 4px 12px #6c5ce740;animation:slotPop .25s cubic-bezier(.34,1.56,.64,1)}@keyframes slotPop{0%{transform:scale(.7)}60%{transform:scale(1.15)}to{transform:scale(1)}}.spelling-hint-text{font-size:.92rem;font-weight:600;color:#747d8c;margin-bottom:10px}.spelling-pool-container{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-bottom:16px;min-height:58px}.spelling-tile{width:50px;height:56px;border:2.5px solid #FFA502;border-radius:12px;background:linear-gradient(135deg,#fff9e6,#ffeaa7);display:flex;align-items:center;justify-content:center;font-size:1.9rem;font-weight:800;color:#d35400;cursor:pointer;box-shadow:0 5px 12px #ffa50240;transition:all .2s cubic-bezier(.34,1.56,.64,1);-webkit-user-select:none;user-select:none}.spelling-tile:hover{transform:translateY(-4px) scale(1.06);border-color:#ff7675;box-shadow:0 8px 18px #ff767559}.spelling-tile.used{opacity:.25;pointer-events:none;transform:scale(.85);box-shadow:none}.spelling-feedback{min-height:28px;font-size:1.15rem;font-weight:700;margin-top:4px}.quests-list{display:flex;flex-direction:column;gap:12px;margin:10px 0;text-align:left}.quest-item{background:#f8f9fa;border:2px solid #E4E7EB;border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:6px;transition:border-color .25s,background-color .25s}.quest-item.completed{background:#e8f8f5;border-color:#2ed573}.quest-header{display:flex;justify-content:space-between;align-items:center}.quest-title{font-size:.98rem;font-weight:700;color:#2f3542;display:flex;align-items:center;gap:6px}.quest-reward{font-size:.85rem;font-weight:700;color:#ffa502;background:#fff9e6;padding:2px 8px;border-radius:8px}.quest-bar-row{display:flex;align-items:center;gap:8px}.quest-bar-track{flex:1;height:8px;background:#dfe4ea;border-radius:4px;overflow:hidden}.quest-bar-fill{height:100%;background:#2ed573;border-radius:4px;transition:width .35s ease}.quest-count{font-size:.82rem;font-weight:700;color:#747d8c}.levelup-card{position:relative;background:radial-gradient(circle at center,#fff 60%,#fff9e6);border:4px solid #FFA502;box-shadow:0 16px 50px #ffa50266}.levelup-crown-anim{font-size:4.8rem;margin-bottom:4px;filter:drop-shadow(0 8px 16px rgba(255,165,2,.45));animation:floatCrown 1.6s infinite ease-in-out}@keyframes floatCrown{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(8deg)}}.levelup-title{font-size:1.9rem;font-weight:800;color:#d35400;margin-bottom:6px}.levelup-level-display{display:inline-block;background:linear-gradient(135deg,#ffa502,#ff4757);color:#fff;font-size:1.35rem;font-weight:800;padding:6px 20px;border-radius:20px;box-shadow:0 6px 18px #ff475759;margin-bottom:10px}.levelup-rank-title{font-size:1.35rem;font-weight:800;color:#2f3542;margin-bottom:10px}.levelup-rewards{display:flex;justify-content:center;gap:16px;font-size:1.05rem;font-weight:700;color:#2ed573;background:#e8f8f5;padding:10px 16px;border-radius:12px;margin-bottom:14px}button:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #70A1FF!important;outline-offset:2px!important}button.char-card{font-family:inherit;width:100%;border:3px solid #E4E7EB;background:#fff;border-radius:var(--border-radius-md);padding:14px 10px;display:flex;flex-direction:column;align-items:center;cursor:pointer;transition:all .25s cubic-bezier(.34,1.56,.64,1);position:relative;box-shadow:0 4px 12px #0000000d}.touch-controls{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:25}#joystick-zone{position:absolute;bottom:24px;left:24px;width:112px;height:112px;border-radius:50%;background:radial-gradient(circle,#ffffff47,#ffffff14);border:2.5px solid rgba(255,255,255,.5);box-shadow:0 8px 32px #00000040,inset 0 0 16px #70a1ff59;pointer-events:auto;touch-action:none;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}#joystick-knob{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#70a1ff,#1e90ff);border:2.5px solid #FFFFFF;box-shadow:0 4px 14px #1e90ff99;pointer-events:none;will-change:transform}#btn-jump-touch{position:absolute;bottom:28px;right:24px;width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#ff6b81,#ff4757);border:3px solid #FFFFFF;box-shadow:0 8px 24px #ff475773;pointer-events:auto;touch-action:none;display:flex;align-items:center;justify-content:center;font-size:1.85rem;color:#fff;cursor:pointer;user-select:none;-webkit-user-select:none;transition:transform .1s cubic-bezier(.34,1.56,.64,1)}#btn-jump-touch:active{transform:scale(.92)}@media (hover: hover) and (pointer: fine) and (min-width: 1025px){.touch-controls{display:none}}.mobile-menu-drawer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:flex-end;justify-content:center;visibility:visible;transition:visibility .3s ease}.mobile-menu-drawer.hidden{visibility:hidden;pointer-events:none}.drawer-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a80;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:1;transition:opacity .3s ease}.mobile-menu-drawer.hidden .drawer-backdrop{opacity:0}.drawer-panel{position:relative;width:100%;max-width:520px;background:#fffffff5;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-top-left-radius:28px;border-top-right-radius:28px;padding:12px 18px 28px;box-shadow:0 -12px 40px #00000040;border-top:2px solid rgba(255,255,255,.95);transform:translateY(0);transition:transform .32s cubic-bezier(.16,1,.3,1)}.mobile-menu-drawer.hidden .drawer-panel{transform:translateY(100%)}.drawer-pill{width:44px;height:5px;background:#ced6e0;border-radius:4px;margin:4px auto 14px}.drawer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.drawer-title{font-size:1.15rem;font-weight:800;color:#2f3542;letter-spacing:.5px}.btn-drawer-close{background:#f1f2f6;border:none;width:32px;height:32px;border-radius:50%;font-size:1.1rem;font-weight:700;color:#747d8c;cursor:pointer;display:flex;align-items:center;justify-content:center}.drawer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.drawer-item-btn{background:#fff;border:2px solid #E4E7EB;border-radius:18px;padding:14px 8px;display:flex;flex-direction:column;align-items:center;gap:6px;font-family:inherit;font-size:.85rem;font-weight:700;color:#2f3542;cursor:pointer;position:relative;box-shadow:0 4px 12px #0000000d;transition:all .2s cubic-bezier(.34,1.56,.64,1)}.drawer-item-btn:hover,.drawer-item-btn:active{transform:scale(1.04);background:#f8f9fa;border-color:#70a1ff}.drawer-icon{font-size:1.8rem}.quiz-mode-tag{display:inline-block;background:#fff0f2;color:#ff4757;padding:4px 12px;border-radius:16px;font-size:.82rem;font-weight:700;margin-bottom:6px}.quiz-visual-prompt{font-size:4rem;margin:8px 0;animation:popIn .3s ease}.parent-gate-challenge{font-size:2.2rem;font-weight:800;color:#ff4757;background:#fff0f2;padding:12px 20px;border-radius:16px;margin-bottom:14px}.parent-gate-input-row{display:flex;gap:10px;justify-content:center;margin-bottom:10px}.parent-gate-input{width:120px;text-align:center;font-size:1.5rem;font-weight:800;padding:8px;border-radius:12px;border:2px solid #CED6E0;outline:none}.parent-gate-error{color:#ff4757;font-weight:700;font-size:.9rem;margin-top:6px}.profile-bar{display:flex;justify-content:space-between;align-items:center;background:#f1f2f6;padding:8px 12px;border-radius:14px;margin-bottom:14px}.profile-select-wrap{display:flex;align-items:center;gap:8px}.parent-profile-select{border:1px solid #CED6E0;background:#fff;border-radius:8px;padding:4px 8px;font-weight:700;font-size:.9rem;color:#2f3542;outline:none}.mastery-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}.mastery-box{border-radius:12px;padding:8px 4px;text-align:center;display:flex;flex-direction:column;gap:2px}.mastery-box .m-val{font-size:1.4rem;font-weight:800}.mastery-box .m-lbl{font-size:.72rem;font-weight:700}.box-mastered{background:#e8f8f5;color:#2ed573;border:1.5px solid #2ED573}.box-learning{background:#fff9e6;color:#ffa502;border:1.5px solid #FFA502}.box-new{background:#f1f2f6;color:#747d8c;border:1.5px solid #CED6E0}.box-review{background:#fff0f2;color:#ff4757;border:1.5px solid #FF4757}.parent-filter-tabs{display:flex;gap:6px;margin-bottom:12px;overflow-x:auto;scrollbar-width:none}.parent-filter-tabs .tab-btn{background:#f1f2f6;border:none;border-radius:20px;padding:5px 12px;font-size:.8rem;font-weight:700;color:#57606f;cursor:pointer;white-space:nowrap}.parent-filter-tabs .tab-btn.active{background:#70a1ff;color:#fff}.parent-data-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:14px;padding-top:10px;border-top:1px solid #E4E7EB}.btn-danger-action{background:#ff4757;color:#fff;border:none;border-radius:10px;font-weight:700;cursor:pointer;box-shadow:0 4px 12px #ff47574d}.status-badge{display:inline-block;font-size:.72rem;font-weight:700;padding:3px 8px;border-radius:10px}.status-badge.status-mastered{background:#e8f8f5;color:#2ed573}.status-badge.status-learning{background:#fff9e6;color:#ffa502}.status-badge.status-new{background:#f1f2f6;color:#747d8c}.story-card{background:radial-gradient(circle at center,#fff 60%,#fff9e6);border:3px solid #FFA502;max-width:620px;width:100%;max-height:min(90vh,700px);max-height:min(90dvh,700px);display:flex;flex-direction:column;padding:20px 22px;overflow-y:auto;box-sizing:border-box}.lighthouse-overview{display:flex;align-items:center;justify-content:center;gap:16px;background:linear-gradient(135deg,#fff9e6,#fff3cd);border:2px solid rgba(255,165,2,.35);border-radius:18px;padding:10px 14px;margin-bottom:10px;box-sizing:border-box}.lighthouse-tower-column{display:flex;flex-direction:column;align-items:center;gap:2px;flex-shrink:0;width:90px;padding:6px 8px;background:#ffffffe0;border-radius:14px;border:1.5px solid #CED6E0;box-shadow:0 4px 10px #0000000f}.lighthouse-lantern{font-size:1.15rem;animation:pulseStar 1.8s infinite ease-in-out;line-height:1}.lighthouse-tower-base{font-size:1.05rem;line-height:1}.lighthouse-tower-visual{display:flex;flex-direction:column-reverse;gap:2px;align-items:center;width:100%}.tower-tier{width:100%;height:6px;border-radius:3px;background:#e4e7eb;border:1px solid #CED6E0;transition:all .3s ease}.tower-tier.lit{background:linear-gradient(90deg,#ffa502,#ffd32a);box-shadow:0 0 8px #ffa502cc;border-color:#ffa502}.lighthouse-info-column{flex:1;display:flex;flex-direction:column;gap:8px;text-align:left;min-width:0}.lighthouse-story-banner{display:flex;align-items:center;gap:10px;background:#fffffff2;border-radius:14px;padding:8px 12px;margin:0;text-align:left;border:1.5px solid rgba(255,165,2,.25)}.owl-avatar{font-size:2rem;animation:pulseStar 2s infinite ease-in-out;flex-shrink:0}.owl-bubble{font-size:.82rem;font-weight:600;color:#795548;line-height:1.35}.lighthouse-stats-badge{display:inline-flex;align-items:center;gap:8px;background:#fff;padding:5px 12px;border-radius:12px;border:1.5px solid #2ED573;color:#2f3542;font-size:.82rem;font-weight:700;box-shadow:0 2px 6px #2ed57326}.stats-icon{font-size:1rem}.map-pieces-section-header{display:flex;justify-content:space-between;align-items:center;margin:6px 0 4px}.map-pieces-section-header h4{font-size:.92rem;color:#2f3542;margin:0;font-weight:800}.map-pieces-hint{font-size:.72rem;color:#747d8c;font-weight:600}.map-pieces-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-height:220px;overflow-y:auto;padding:6px;background:#f8f9fabf;border-radius:14px;border:1.5px solid #E4E7EB;overscroll-behavior:contain}.map-pieces-grid::-webkit-scrollbar{width:6px}.map-pieces-grid::-webkit-scrollbar-track{background:#f1f2f6;border-radius:4px}.map-pieces-grid::-webkit-scrollbar-thumb{background:#ffa502;border-radius:4px}.map-piece-card{background:#fff;border:2px dashed #CED6E0;border-radius:12px;padding:8px 6px;text-align:center;font-size:.78rem;font-weight:700;color:#747d8c;transition:all .25s ease;box-shadow:0 2px 5px #0000000a}.map-piece-card.unlocked{background:#e8f8f5;border:2px solid #2ED573;color:#2f3542;box-shadow:0 4px 12px #2ed57333}.lighthouse-actions{margin-top:12px}.boss-card{background:radial-gradient(circle at center,#fff 60%,#fff0f2);border:3px solid #FF4757}.boss-quiz-header{display:flex;justify-content:space-between;align-items:center;font-weight:800;font-size:1.1rem;margin-top:8px}.due-badge{position:absolute;top:-4px;right:-4px;background:#ff4757;color:#fff;border-radius:50%;font-size:.72rem;font-weight:800;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;border:2px solid #FFFFFF;animation:pulseDot 1.2s infinite}.btn-journey{background:linear-gradient(135deg,#ffa502,#ff7675)!important;color:#fff!important;font-weight:700;position:relative}.due-badge.badge-done{background:#2ed573!important;animation:none!important;font-weight:900}.btn-review{background:linear-gradient(135deg,#2ed573,#1e90ff)!important;color:#fff!important;font-weight:700;position:relative}.journey-card{background:radial-gradient(circle at center,#fff 65%,#fff9e6);border:3px solid #FFA502}.journey-step{width:32px;height:32px;border-radius:50%;background:#f1f2f6;border:2.5px solid #CED6E0;color:#747d8c;font-weight:800;font-size:.95rem;display:flex;align-items:center;justify-content:center;transition:all .25s ease}.journey-step.active{background:#ffa502;border-color:#d35400;color:#fff;transform:scale(1.15);box-shadow:0 4px 12px #ffa50266}.journey-step.completed{background:#2ed573;border-color:#26af5f;color:#fff}.journey-step-line{width:24px;height:4px;background:#ced6e0;border-radius:2px;transition:background .25s ease}.journey-step-line.completed{background:#2ed573}#app-dialog-modal{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;z-index:10002!important}.dialog-card{background:#fff;border:3.5px solid #70A1FF;border-radius:28px;box-shadow:0 20px 50px #00000047;animation:popIn .25s cubic-bezier(.175,.885,.32,1.275)}.dialog-actions{display:flex;gap:12px;justify-content:center;align-items:center;margin-top:18px}.dialog-action-btn,.dialog-actions .btn-primary-action,.dialog-actions .btn-secondary-action{flex:1;min-width:120px;height:44px;min-height:44px;box-sizing:border-box;padding:0 16px;border-radius:14px;font-family:inherit;font-size:.95rem;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;transition:all .25s cubic-bezier(.34,1.56,.64,1);box-shadow:0 4px 14px #0000001a}.dialog-actions .btn-secondary-action,.modal-actions .btn-secondary-action{background:#f1f5f9;color:#334155;border:2px solid #CBD5E1;box-shadow:0 4px 12px #0000000d}.dialog-actions .btn-secondary-action:hover,.modal-actions .btn-secondary-action:hover{background:#e2e8f0;border-color:#94a3b8;color:#1e293b;transform:translateY(-2px);box-shadow:0 6px 16px #0000001a}.dialog-actions .btn-primary-action,.modal-actions .btn-primary-action{background:linear-gradient(135deg,#ff6b81,#ff4757);color:#fff;border:none;box-shadow:0 4px 16px #ff475766}.dialog-actions .btn-primary-action:hover,.modal-actions .btn-primary-action:hover{background:linear-gradient(135deg,#ff4757,#e84118);transform:translateY(-2px) scale(1.02);box-shadow:0 8px 22px #ff47578c}.boss-remediation-card{animation:popIn .3s ease}body.calm-mode{filter:contrast(.96) saturate(.92)}body.calm-mode .pulseDot,body.calm-mode .owl-avatar,body.calm-mode .quest-dot,body.calm-mode .levelup-crown-anim{animation:none!important}body.calm-mode *{transition-duration:.15s!important}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.island-travel-grid{display:flex;flex-direction:column;gap:12px;max-height:380px;overflow-y:auto;padding:4px 6px}.island-travel-card{display:flex;align-items:center;gap:14px;padding:12px 16px;background:#f8f9fa;border:2px solid #E2E8F0;border-radius:16px;transition:all .25s cubic-bezier(.34,1.56,.64,1)}.island-travel-card:hover{transform:translateY(-2px);border-color:#00cec9;background:#fff;box-shadow:0 6px 18px #00cec92e}.island-travel-card.active-island{border-color:#2ed573;background:#eafbf2}.island-travel-icon{font-size:2.2rem;flex-shrink:0}.island-travel-info{flex:1;text-align:left}.island-travel-info h4{margin:0 0 3px;font-size:1.05rem;font-weight:800;color:#2d3436}.island-travel-info p{margin:0;font-size:.82rem;color:#636e72}.btn-travel-jump{padding:8px 16px;background:linear-gradient(135deg,#00cec9,#0984e3);color:#fff;border:none;border-radius:20px;font-size:.88rem;font-weight:800;cursor:pointer;box-shadow:0 4px 10px #0984e34d;transition:all .2s ease;flex-shrink:0}.btn-travel-jump:hover{transform:scale(1.08);box-shadow:0 6px 14px #0984e373}.btn-travel-jump:active{transform:scale(.96)}.island-travel-card.island-locked{opacity:.68;filter:grayscale(.4);background:#f1f2f6;border-color:#ced6e0}.island-travel-card.island-locked:hover{transform:none;border-color:#ced6e0;box-shadow:none;background:#f1f2f6}.island-lock-badge{font-size:.78rem;font-weight:700;color:#d63031;background:#ffeaa7;padding:3px 8px;border-radius:8px;margin-top:5px;display:inline-block}.btn-travel-jump.btn-locked{background:#a4b0be!important;color:#fff!important;cursor:not-allowed!important;box-shadow:none!important;transform:none!important}.switch-toggle input{opacity:0;width:0;height:0}.switch-toggle .slider-round{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#cbd5e1;transition:.3s cubic-bezier(.4,0,.2,1);border-radius:34px}.switch-toggle .slider-round:before{position:absolute;content:"";height:22px;width:22px;left:3px;bottom:3px;background-color:#fff;transition:.3s cubic-bezier(.4,0,.2,1);border-radius:50%;box-shadow:0 2px 4px #00000026}.switch-toggle input:checked+.slider-round{background:linear-gradient(135deg,#2ed573,#26af5f)}.switch-toggle input:checked+.slider-round:before{transform:translate(22px)}.btn-profile-chip{background:linear-gradient(135deg,#fff0f5,#ffe4e1)!important;color:#d63031!important;border:2px solid #FFB8C6!important;font-weight:800!important;display:inline-flex!important;align-items:center!important;gap:6px!important;box-shadow:0 4px 12px #ff6b8133!important;transition:all .25s cubic-bezier(.34,1.56,.64,1)!important}.btn-profile-chip:hover{transform:translateY(-2px) scale(1.03)!important;border-color:#ff4757!important;box-shadow:0 6px 16px #ff47574d!important}#hud-child-avatar{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;overflow:hidden;vertical-align:middle;flex-shrink:0}#hud-child-avatar .avatar-img-circle{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}.btn-leaderboard{background:linear-gradient(135deg,#fff9e6,#ffeaa7)!important;color:#b7791f!important;border:2px solid #F6E05E!important;font-weight:800!important;box-shadow:0 4px 12px #f6e05e40!important}.btn-leaderboard:hover{transform:translateY(-2px) scale(1.03)!important;background:linear-gradient(135deg,#fefcbf,#f6e05e)!important;box-shadow:0 6px 18px #f6ad5566!important}.btn-lan{background:#ffffffe6!important;border:2px solid #70A1FF!important;color:#1e90ff!important;font-weight:700!important;display:inline-flex;align-items:center!important;gap:5px!important}.btn-lan.lan-offline{border-color:#ffa502!important;color:#e67e22!important}.leaderboard-card{background:#fff;border-radius:28px;box-shadow:0 20px 50px #00000040;padding:24px;position:relative;overflow:hidden}.podium-container{display:flex;align-items:flex-end;justify-content:center;gap:16px;margin:18px 0 22px;padding:0 10px}.podium-pillar{display:flex;flex-direction:column;align-items:center;text-align:center;border-radius:18px 18px 12px 12px;padding:12px 10px 8px;position:relative;transition:transform .3s ease;box-shadow:0 8px 20px #00000014}.podium-pillar:hover{transform:translateY(-4px)}.pillar-rank-1{width:140px;height:210px;background:linear-gradient(180deg,#fff9db,#ffe066 40%,#fcc419);border:3px solid #F59F00;order:2;box-shadow:0 12px 28px #f59f0059}.pillar-rank-2{width:125px;height:175px;background:linear-gradient(180deg,#f1f3f5,#dee2e6 40%,#ced4da);border:3px solid #ADB5BD;order:1;box-shadow:0 8px 20px #adb5bd4d}.pillar-rank-3{width:120px;height:155px;background:linear-gradient(180deg,#fff4e6,#ffd8a8 40%,#ffa94d);border:3px solid #F76707;order:3;box-shadow:0 8px 20px #f7670740}.podium-crown{font-size:2.2rem;margin-top:-30px;margin-bottom:2px;animation:floatBounce 2s infinite ease-in-out}@keyframes floatBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.podium-avatar-bubble{width:54px;height:54px;border-radius:50%;background:#fff;border:3px solid #FFFFFF;box-shadow:0 4px 10px #00000026;display:flex;align-items:center;justify-content:center;font-size:2rem;margin-bottom:6px;overflow:hidden;position:relative}.pillar-rank-1 .podium-avatar-bubble{width:62px;height:62px;font-size:2.3rem;border-color:#ffd43b}.podium-child-name{font-size:1rem;font-weight:800;color:#2f3542;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.podium-level-chip{font-size:.78rem;font-weight:800;padding:2px 8px;border-radius:12px;background:#ffffffd9;color:#2f3542;margin:4px 0}.podium-medal{font-size:1.8rem;margin-top:auto;line-height:1}.leaderboard-table-container{max-height:200px;overflow-y:auto;border:1.5px solid #E4E7EB;border-radius:16px;background:#fafafa}.leaderboard-table{width:100%;border-collapse:collapse;text-align:center;font-size:.88rem}.leaderboard-table th{background:#edf2f7;color:#4a5568;font-weight:800;padding:10px 8px;position:sticky;top:0;z-index:1}.leaderboard-table td{padding:8px;border-bottom:1px solid #E2E8F0;color:#2d3748}.leaderboard-table tr:hover{background:#fff9e6}.leaderboard-table tr.active-child-row{background:#fff0f5;font-weight:800}.rank-badge-cell{font-weight:800;font-size:1rem}.leaderboard-cheer-box{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1.5px solid #86EFAC;border-radius:14px;padding:10px 14px;display:flex;align-items:center;gap:10px;color:#166534;font-weight:700;font-size:.9rem}.quick-profile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:14px;max-height:320px;overflow-y:auto;padding:4px}.quick-child-card{background:#fff;border:2.5px solid #E2E8F0;border-radius:20px;padding:16px 12px;display:flex;flex-direction:column;align-items:center;text-align:center;cursor:pointer;transition:all .25s cubic-bezier(.34,1.56,.64,1);box-shadow:0 4px 12px #0000000d;position:relative}.quick-child-card:hover{transform:translateY(-4px) scale(1.03);border-color:#70a1ff;box-shadow:0 8px 20px #70a1ff40}.quick-child-card.active-child{border-color:#2ed573;background:linear-gradient(180deg,#f0fff4,#fff);box-shadow:0 8px 22px #2ed5734d}.quick-child-avatar{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#ffeaa7,#ffa502);display:flex;align-items:center;justify-content:center;font-size:2.2rem;margin-bottom:8px;overflow:hidden;position:relative}.quick-child-name{font-size:1.05rem;font-weight:800;color:#2f3542;margin-bottom:4px}.quick-child-level{font-size:.8rem;font-weight:700;color:#1e90ff;background:#e8f4fd;padding:2px 8px;border-radius:10px;margin-bottom:8px}.quick-child-status{font-size:.76rem;font-weight:700;color:#2ed573}.quick-child-card.locked-child{opacity:.75;background:#f8f9fa!important;border-color:#ced6e0!important;cursor:not-allowed!important;box-shadow:none!important}.quick-child-card.locked-child:hover{transform:none!important;border-color:#ced6e0!important;box-shadow:none!important}.quick-child-locked-tag{font-size:.72rem;font-weight:800;color:#d63031;background:#ffeaa7;border:1px solid #FFA502;padding:3px 8px;border-radius:8px;display:inline-block;white-space:nowrap}.lan-status-pill.connected{background:#dcfce7;color:#15803d;border:1.5px solid #86EFAC}.lan-status-pill.offline{background:#fef3c7;color:#b45309;border:1.5px solid #FCD34D}.status-dot{width:9px;height:9px;border-radius:50%;background:#22c55e;display:inline-block;animation:pulseGreen 1.5s infinite}.lan-status-pill.offline .status-dot{background:#f59e0b;animation:none}@keyframes pulseGreen{0%{transform:scale(.95);opacity:.8}50%{transform:scale(1.3);opacity:1}to{transform:scale(.95);opacity:.8}}.tutorial-modal-card{max-width:880px;width:min(96vw,880px);background:#fffffffa;border-radius:28px;padding:20px 24px 18px;box-shadow:0 20px 60px #00000047;border:3.5px solid #FFFFFF;position:relative;overflow:hidden;box-sizing:border-box}.tutorial-header{text-align:center;margin-bottom:8px}.tutorial-top-badge{display:inline-block;background:linear-gradient(135deg,#ffeaa7,#fdcb6e);color:#d35400;padding:3px 14px;border-radius:20px;font-weight:800;font-size:.78rem;letter-spacing:.5px;box-shadow:0 2px 8px #fdcb6e66}.tutorial-modal-title{font-size:1.45rem;font-weight:900;color:#2f3542;margin:4px 0 0;letter-spacing:.3px}.tutorial-body{margin:10px 0 12px;min-height:360px;display:flex;align-items:stretch}.tutorial-slide{display:grid;grid-template-columns:1.05fr 1fr;gap:22px;align-items:center;width:100%;animation:fadeIn .3s ease-out}.tutorial-media{position:relative;border-radius:20px;overflow:hidden;box-shadow:0 12px 32px #0000002e;border:3.5px solid #FFFFFF;outline:1.5px solid #E2E8F0;background:linear-gradient(135deg,#f8fafc,#e2e8f0);aspect-ratio:1200 / 896;width:100%;max-width:100%;display:flex;align-items:center;justify-content:center}.tutorial-media img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;border-radius:16px;transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.tutorial-media:hover img{transform:scale(1.03)}.tutorial-media-badge{position:absolute;top:10px;left:10px;background:#0f172ad1;color:#fff;font-size:.72rem;font-weight:800;padding:3px 10px;border-radius:12px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.3)}.tutorial-content{display:flex;flex-direction:column;justify-content:center;min-width:0}.tutorial-step-tag{align-self:flex-start;background:linear-gradient(135deg,#70a1ff,#1e90ff);color:#fff;font-weight:800;font-size:.74rem;padding:3px 10px;border-radius:12px;margin-bottom:6px;letter-spacing:.5px;box-shadow:0 2px 8px #1e90ff59}.tutorial-step-title{font-size:1.25rem;font-weight:900;color:#2f3542;margin:0 0 8px;line-height:1.3}.tutorial-points-list{display:flex;flex-direction:column;gap:7px;margin-bottom:8px}.tutorial-point-item{display:flex;align-items:flex-start;gap:8px;background:#f8fafc;border:1.5px solid #E2E8F0;border-radius:13px;padding:7px 11px;font-size:.84rem;line-height:1.4;color:#334155;box-shadow:0 2px 6px #00000008}.tutorial-point-icon{font-size:1.2rem;flex-shrink:0;margin-top:1px}.tutorial-point-text strong{color:#1e293b}.tutorial-tip-box{background:#fff9e6;border:1.5px dashed #FFA502;border-radius:12px;padding:6px 11px;font-size:.78rem;color:#b45309;line-height:1.35;display:flex;align-items:center;gap:6px}.tutorial-footer{display:flex;justify-content:space-between;align-items:center;border-top:1.5px solid #F1F5F9;padding-top:12px;margin-top:4px}.tutorial-dots{display:flex;align-items:center;gap:8px}.tutorial-dot{width:10px;height:10px;border-radius:50%;background:#cbd5e1;border:none;cursor:pointer;transition:all .25s cubic-bezier(.34,1.56,.64,1);padding:0}.tutorial-dot.active{width:28px;border-radius:10px;background:linear-gradient(135deg,#70a1ff,#1e90ff);box-shadow:0 2px 8px #1e90ff73}.tutorial-actions{display:flex;align-items:center;gap:10px}.btn-tutorial-nav{height:42px;min-height:42px;min-width:105px;padding:0 18px;border-radius:14px;font-family:inherit;font-size:.92rem;font-weight:800;cursor:pointer;border:none;transition:all .2s cubic-bezier(.34,1.56,.64,1);display:inline-flex;align-items:center;justify-content:center;gap:6px;box-sizing:border-box;white-space:nowrap}.btn-tutorial-prev{background:#f1f5f9;color:#475569;border:1.5px solid #CBD5E1}.btn-tutorial-prev:hover:not(:disabled){background:#e2e8f0;color:#1e293b;transform:translate(-2px);box-shadow:0 4px 12px #00000014}.btn-tutorial-prev:disabled{opacity:.35;cursor:not-allowed;transform:none}.btn-tutorial-next{background:linear-gradient(135deg,#70a1ff,#1e90ff);color:#fff;box-shadow:0 4px 14px #1e90ff59}.btn-tutorial-next:hover{background:linear-gradient(135deg,#1e90ff,#0056b3);transform:translate(2px) scale(1.02);box-shadow:0 6px 18px #1e90ff80}.btn-tutorial-start{background:linear-gradient(135deg,#ff6b81,#ff4757);color:#fff;box-shadow:0 4px 16px #ff475773;animation:pulseBtn 1.8s infinite}.btn-tutorial-start:hover{transform:scale(1.04);box-shadow:0 6px 20px #ff475799}@media (max-width: 680px){.tutorial-modal-card{padding:14px 12px;max-height:calc(100dvh - 20px);overflow-y:auto;border-radius:20px}.tutorial-modal-title{font-size:1.15rem}.tutorial-body{min-height:0;margin:8px 0}.tutorial-slide{grid-template-columns:1fr;gap:12px}.tutorial-media{aspect-ratio:1200 / 896;width:100%;max-width:340px;max-height:220px;margin:0 auto}.tutorial-step-title{font-size:1.1rem;margin-bottom:6px}.tutorial-points-list{gap:6px;margin-bottom:8px}.tutorial-point-item{padding:6px 10px;font-size:.78rem}.tutorial-point-icon{font-size:1.05rem}.tutorial-tip-box{padding:6px 10px;font-size:.74rem}.tutorial-footer{padding-top:10px}.btn-tutorial-nav{height:38px;min-height:38px;min-width:90px;padding:0 12px;font-size:.82rem;border-radius:12px}}@media (max-height: 520px) and (orientation: landscape),(max-height: 480px){.tutorial-modal-card{padding:8px 16px 10px;max-height:calc(100svh - 10px);max-width:760px;overflow-y:auto;border-radius:18px}.tutorial-top-badge{display:none}.tutorial-modal-title{font-size:1.05rem;margin:0}.tutorial-body{min-height:0;margin:4px 0 6px}.tutorial-slide{grid-template-columns:1fr 1.15fr;gap:12px}.tutorial-media{aspect-ratio:1200 / 896;max-height:190px;border-radius:14px}.tutorial-step-tag{font-size:.68rem;padding:2px 8px;margin-bottom:4px}.tutorial-step-title{font-size:.98rem;margin-bottom:4px}.tutorial-points-list{gap:4px;margin-bottom:5px}.tutorial-point-item{padding:4px 8px;font-size:.73rem;border-radius:10px}.tutorial-point-icon{font-size:.95rem}.tutorial-tip-box{padding:4px 8px;font-size:.7rem;border-radius:8px}.tutorial-footer{padding-top:6px}.btn-tutorial-nav{height:32px;min-height:32px;min-width:80px;padding:0 10px;font-size:.74rem;border-radius:10px}.tutorial-dot{width:8px;height:8px}.tutorial-dot.active{width:22px}}#sticker-album-modal{z-index:105}.sticker-album-card{max-width:680px;width:min(95vw,680px);background:#fffffffa;border-radius:28px;padding:22px 24px 20px;box-shadow:0 20px 60px #00000047;border:3.5px solid #FFFFFF;position:relative;overflow:hidden;box-sizing:border-box}.sticker-album-header{text-align:center;margin-bottom:12px}.sticker-top-badge{display:inline-block;background:linear-gradient(135deg,#ffeaa7,#fdcb6e);color:#d35400;padding:3px 14px;border-radius:20px;font-weight:800;font-size:.78rem;letter-spacing:.5px;box-shadow:0 2px 8px #fdcb6e66}.sticker-album-title{font-size:1.45rem;font-weight:900;color:#2f3542;margin:6px 0 2px}.sticker-album-subtitle{font-size:.88rem;color:#747d8c;margin:0}.sticker-progress-wrap{background:#f8fafc;border:1.5px solid #E2E8F0;border-radius:16px;padding:10px 16px;margin:12px 0 16px}.sticker-progress-info{display:flex;justify-content:space-between;align-items:center;font-size:.86rem;margin-bottom:6px}.sticker-progress-label{color:#64748b;font-weight:700}.sticker-progress-text{color:#1e293b;font-weight:900}.sticker-progress-track{width:100%;height:12px;background:#e2e8f0;border-radius:10px;overflow:hidden;position:relative}.sticker-progress-bar{height:100%;border-radius:10px;background:linear-gradient(90deg,#ff6b81,#ffa502,#2ed573);transition:width .5s cubic-bezier(.34,1.56,.64,1);box-shadow:0 2px 6px #2ed57366}.sticker-album-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:12px;max-height:380px;overflow-y:auto;padding:4px 2px 8px}.sticker-card-item{border-radius:18px;padding:12px 10px;text-align:center;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;transition:all .25s cubic-bezier(.34,1.56,.64,1);-webkit-user-select:none;user-select:none}.sticker-card-item.unlocked{background:linear-gradient(135deg,#fffdf5,#fff9e6);border:2px solid #FFA502;box-shadow:0 6px 16px #ffa5022e;cursor:pointer}.sticker-card-item.unlocked:hover{transform:translateY(-4px) scale(1.04);box-shadow:0 10px 24px #ffa5024d;border-color:#ff7675}.sticker-card-item.unlocked:active{transform:scale(.96)}.sticker-card-item.unlocked .sticker-icon-wrap{font-size:3rem;line-height:1;margin-bottom:6px;filter:drop-shadow(0 4px 8px rgba(0,0,0,.15));animation:bounceSticker 2.5s infinite ease-in-out}.sticker-card-item.unlocked .sticker-name{font-size:.86rem;font-weight:800;color:#2f3542;margin-bottom:2px}.sticker-card-item.unlocked .sticker-status-pill{font-size:.68rem;font-weight:800;color:#2ed573;background:#2ed57324;padding:2px 8px;border-radius:10px;margin-top:4px}.sticker-card-item.unlocked .sticker-desc{font-size:.72rem;color:#64748b;line-height:1.3;margin-top:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sticker-card-item.locked{background:#f8fafc;border:2px dashed #CBD5E1;opacity:.72}.sticker-card-item.locked .sticker-icon-wrap{font-size:2.4rem;line-height:1;margin-bottom:6px;filter:grayscale(1) opacity(.45)}.sticker-card-item.locked .sticker-lock-badge{font-size:1.1rem;margin-top:-12px;margin-bottom:4px}.sticker-card-item.locked .sticker-name{font-size:.82rem;font-weight:700;color:#94a3b8;margin-bottom:2px}.sticker-card-item.locked .sticker-desc{font-size:.7rem;color:#94a3b8;line-height:1.25;margin-top:4px}.sticker-album-footer{margin-top:12px;border-top:1.5px solid #F1F5F9;padding-top:10px}.sticker-tap-hint{text-align:center;font-size:.78rem;color:#ffa502;font-weight:700}@keyframes bounceSticker{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@media (max-width: 600px){.sticker-album-card{padding:16px 14px 14px;max-height:calc(100dvh - 20px);overflow-y:auto}.sticker-album-title{font-size:1.2rem}.sticker-album-grid{grid-template-columns:repeat(2,1fr);gap:10px;max-height:320px}.sticker-card-item.unlocked .sticker-icon-wrap{font-size:2.5rem}}
