button,a[role=button],input[type=button],input[type=submit],.clickable:not(.app-title-image),.hero-cta,.home-chip,.hero-abandon{min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center}@media (max-width: 640px){button,a[role=button],input[type=button],input[type=submit],.clickable:not(.app-title-image){padding:.75rem 1rem}}@media (max-width: 640px){.hero-cta{width:100%;padding:1.25rem 1rem}.hero-cta-group{flex-wrap:nowrap;gap:.5rem}.hero-cta-group .hero-cta{flex:1;min-height:48px}.hero-abandon{width:48px;min-width:48px;min-height:48px}.hero-cta .cta-label{font-size:1rem;font-weight:600}.hero-cta .cta-sublabel{font-size:.85rem;opacity:.85}}@media (max-width: 768px){.image-viewer,.game-image,img.species-image{width:100%;max-width:100%;height:auto;object-fit:contain;border-radius:12px}.image-container{width:100%;max-height:60vh;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:12px}}@media (max-width: 768px){.stats-grid,.profile-stats,.end-stats{display:flex;flex-direction:column;gap:1rem;width:100%}.stats-grid>*,.profile-stats>*,.end-stats>*{width:100%}.stat-item,.profile-stat-card,.end-stat-card{padding:1rem;border-radius:12px;display:flex;align-items:center;justify-content:space-between;min-height:60px}.stat-label{font-size:.9rem}.stat-value{font-size:1.4rem;font-weight:700}}@media (max-width: 768px){.badge-container,.achievement-grid,.badge-grid{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-start}.badge,.badge-item,.achievement-badge{flex:0 1 calc(50% - .375rem);min-height:80px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem}.badge-icon{font-size:1.8rem}.badge-label{font-size:.75rem;text-align:center;max-width:100%}}@media (max-width: 768px){.modal-content,.popover,.bottom-sheet{max-height:90vh;max-width:100%;border-radius:16px 16px 0 0;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-header{position:sticky;top:0;z-index:10;background:inherit}.modal-close{padding:.75rem;font-size:1.5rem}}@media (max-width: 768px){input,select,textarea{font-size:16px;padding:.75rem;border-radius:8px;width:100%}label{display:block;margin-bottom:.5rem;font-weight:600;font-size:.95rem}.form-group{margin-bottom:1.5rem}.toggle-switch{height:32px;width:56px}}@media (max-width: 640px){h1{font-size:clamp(1.5rem,5vw,2rem);line-height:1.2}h2{font-size:clamp(1.25rem,4vw,1.75rem);line-height:1.3}h3{font-size:clamp(1.1rem,3vw,1.3rem);line-height:1.4}p,.body-text{font-size:clamp(.95rem,2.5vw,1rem);line-height:1.5}.small-text,.caption,.helper-text{font-size:max(.8rem,10px);line-height:1.4}}@media (min-width: 641px) and (max-width: 1023px){h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.25rem}}@media (max-width: 640px){.container,.screen,main{padding:1rem}.gap-lg{gap:1rem}.gap-md{gap:.75rem}.gap-sm{gap:.5rem}section{margin-bottom:1.5rem}}@media (max-width: 768px){html{scroll-behavior:smooth;-webkit-tap-highlight-color:rgba(0,0,0,.1)}.scrollable,.overflow-scroll{-webkit-overflow-scrolling:touch;overflow-y:auto}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}}@media (max-width: 768px){main,.screen-content{padding-bottom:calc(1rem + var(--nav-height-mobile, 75px))}.bottom-nav,.mobile-nav{position:fixed;bottom:0;left:0;right:0;z-index:100}.nav-item{min-height:44px;display:flex;align-items:center;justify-content:center;flex:1;gap:.5rem}}@media (max-width: 768px){.card,.section,.panel{border-radius:12px;padding:1rem;width:100%}.card-grid,.section-grid{display:flex;flex-direction:column;gap:1rem}.card-header,.section-header{margin-bottom:1rem}}@media (min-width: 641px) and (max-width: 1023px){.card-grid,.section-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}}@media (min-width: 1024px){.card-grid,.section-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}}@media (max-height: 600px) and (orientation: landscape){.container,.screen{padding:.75rem}h1,h2,h3{margin-bottom:.5rem}.gap-lg{gap:.5rem}main{max-height:100vh;overflow-y:auto;-webkit-overflow-scrolling:touch}}@supports (padding: max(0px)){.safe-top{padding-top:max(1rem,env(safe-area-inset-top))}.safe-bottom{padding-bottom:max(1rem,env(safe-area-inset-bottom))}.safe-left{padding-left:max(1rem,env(safe-area-inset-left))}.safe-right{padding-right:max(1rem,env(safe-area-inset-right))}}@media print{body{background:#fff;color:#000}.no-print{display:none!important}a{text-decoration:underline}}@media (max-width: 640px){.hero-cta{padding:1.25rem 1rem;min-height:48px;font-size:1rem;gap:.75rem}.hero-cta--play{width:100%;border-radius:var(--radius-large, 16px)}.hero-cta .cta-label{font-size:1rem;font-weight:600;line-height:1.3}.hero-cta .cta-sublabel{font-size:.8rem;opacity:.8;line-height:1.2}.hero-cta-group{width:100%;flex-wrap:nowrap;gap:.5rem}.hero-cta-group .hero-cta{flex:1;border-radius:var(--radius, 14px) 0 0 var(--radius, 14px)}.hero-abandon{flex:0 0 48px;min-width:48px;border-radius:0 var(--radius, 14px) var(--radius, 14px) 0}}@media (max-width: 768px){.image-wrapper{aspect-ratio:4 / 3;max-height:50vh;border-radius:12px}.image-wrapper.portrait{aspect-ratio:3 / 4;max-height:70vh}.image-box{min-height:180px;width:100%}.image-main,.image-lqip{object-fit:contain}.image-viewer-container .nav-button{width:44px;height:44px;min-width:44px;min-height:44px;padding:0}.image-viewer-container .nav-button__icon{width:22px;height:22px;flex-basis:22px}.dots{gap:.5rem;padding:.75rem}.dot{width:8px;height:8px}}@media (max-width: 768px){.stats-section,.stats-container,.profile-stats,.end-stats{display:flex;flex-direction:column;gap:1rem;width:100%}.stat-item,.stat-card,.profile-stat-card,.end-stat-card{padding:1rem;border-radius:12px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1rem;min-height:60px}.stat-label,.stat-name{font-size:.9rem;font-weight:500}.stat-value{font-size:1.4rem;font-weight:700;text-align:right}.xp-progress-unified-section{padding:1.25rem;border-radius:12px}.level-up-header{gap:.75rem}.level-up-icon{width:2rem;height:2rem}.result-display{font-size:2rem;font-weight:700;line-height:1.2}.xp-gained-display{font-size:1.25rem}}@media (max-width: 768px){.achievement-grid,.badge-grid,.badge-container{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;width:100%}.achievement-badge,.badge-item,.profile-badge{aspect-ratio:1;border-radius:12px;padding:1rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;min-height:100px}.badge-icon,.achievement-icon{font-size:2rem}.badge-label,.badge-name,.achievement-name{font-size:.75rem;text-align:center;font-weight:600;line-height:1.2;max-width:100%;word-break:break-word}.badge-sublabel,.achievement-date{font-size:.65rem;opacity:.7}@media (min-width: 480px) and (max-width: 768px){.achievement-grid,.badge-grid{grid-template-columns:repeat(3,1fr)}}}@media (max-width: 768px){.choice-button,.answer-option,.selection-button{min-height:48px;padding:1rem;border-radius:12px;font-size:1rem;font-weight:600;line-height:1.3;word-break:break-word;white-space:normal;width:100%}.choices-container,.answer-options,.selection-options{display:flex;flex-direction:column;gap:.75rem;width:100%}.choice-button span,.answer-option span{overflow-wrap:break-word;word-break:break-word}}@media (max-width: 768px){.modal-content,.modal-body{max-height:90vh;border-radius:16px 16px 0 0;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-header{position:sticky;top:0;z-index:10;padding:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.modal-close{padding:.75rem;min-height:44px;min-width:44px;font-size:1.5rem}.modal-footer{position:sticky;bottom:0;padding:1rem;background:inherit;border-top:1px solid rgba(255,255,255,.1)}.bottom-sheet{max-height:85vh;border-radius:16px 16px 0 0}}@media (max-width: 768px){.carousel{overflow-x:auto;-webkit-overflow-scrolling:touch;gap:.75rem;padding:.5rem 0}.carousel-item,.pack-card{min-width:140px;aspect-ratio:1;border-radius:12px;padding:1rem}.carousel-item-label,.pack-label{font-size:.85rem;font-weight:600;line-height:1.2}.carousel-scroll-container{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}}@media (max-width: 768px){.tab-container,.tabs{display:flex;gap:.5rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.tab,.tab-button{min-height:44px;padding:.75rem 1rem;font-size:.9rem;font-weight:600;white-space:nowrap;border-radius:8px}.tab:first-child{margin-left:0}.tab:last-child{margin-right:0}}@media (max-width: 768px){.profile-hero,.profile-header{flex-direction:column;gap:1rem;text-align:center;padding:1.5rem 1rem}.profile-avatar{width:80px;height:80px;margin:0 auto}.profile-info{text-align:center}.profile-name{font-size:1.4rem;font-weight:700;word-break:break-word}.profile-subtitle{font-size:.9rem;opacity:.7}.profile-stats-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:1rem}.profile-stats-mini-item{text-align:center}}@media (max-width: 768px){.pagination,.page-nav{display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap;padding:1rem 0}.page-nav-button,.pagination-button{min-height:40px;min-width:40px;padding:.5rem;border-radius:8px}}@media (max-width: 640px){h1,h2,h3,h4,h5,h6,p,span,label{word-break:break-word;overflow-wrap:break-word}.species-name,.taxon-name{max-width:100%;white-space:normal;overflow-wrap:break-word}}@media (max-width: 768px){footer,.footer{padding:1.5rem 1rem;font-size:.85rem;line-height:1.5}.footer-content{display:flex;flex-direction:column;gap:1rem}.footer-section{width:100%}.footer-link{display:inline-block;padding:.5rem 0}.footer-attribution{font-size:.8rem;opacity:.7}}@media (max-width: 768px){.bottom-nav,.mobile-nav{position:fixed;bottom:0;left:0;right:0;z-index:100;height:var(--nav-height-mobile, 75px);padding-bottom:max(.75rem,env(safe-area-inset-bottom))}main,.screen-content,.page-content{padding-bottom:var(--nav-height-mobile, 75px)}.nav-item{min-height:48px;display:flex;align-items:center;justify-content:center;flex:1;gap:.5rem}.nav-label{font-size:.7rem;font-weight:600}.nav-icon{font-size:1.5rem}}@media (max-width: 540px){.container,.screen,main{padding:.75rem}h1{font-size:clamp(1.25rem,5vw,1.75rem)}h2{font-size:clamp(1.1rem,4vw,1.5rem)}.gap-lg{gap:.75rem}.card,.section{padding:.75rem}}@media (max-height: 500px) and (orientation: landscape){.page-title,h1{display:none}main{max-height:calc(100vh - var(--nav-height-mobile, 75px));overflow-y:auto;-webkit-overflow-scrolling:touch}.card{padding:.5rem}button,.clickable{min-height:40px}}.page-transition-enter{opacity:0;transform:translateY(12px)}.page-transition-enter-active{opacity:1;transform:translateY(0);transition:all .3s cubic-bezier(.16,1,.3,1)}.page-transition-exit{opacity:1;transform:translateY(0)}.page-transition-exit-active{opacity:0;transform:translateY(-8px);transition:all .2s cubic-bezier(.7,0,.84,0)}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.skeleton{background:linear-gradient(90deg,#ffffff0d,#ffffff26,#ffffff0d);background-size:1000px 100%;animation:shimmer 2s infinite;border-radius:8px}.skeleton-block{height:72px;margin-bottom:.75rem;border-radius:12px}.skeleton-line{height:12px;margin-bottom:.5rem;border-radius:4px;width:100%}.skeleton-line.short{width:60%}.skeleton-avatar{width:48px;height:48px;border-radius:50%}button:not(:disabled),a[role=button],.clickable{transition:all .15s cubic-bezier(.4,0,.2,1)}button:hover:not(:disabled),a[role=button]:hover,.clickable:not(.app-title-image):hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000040}.app-title-image.clickable:hover{box-shadow:none}button:active:not(:disabled),a[role=button]:active,.clickable:active{transform:translateY(0);box-shadow:0 4px 12px #00000026}button:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(var(--accent-rgb),.24)}@keyframes float-up{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes float-away{to{opacity:0;transform:translateY(-40px) scale(.8)}}.float-in{animation:float-up .4s cubic-bezier(.16,1,.3,1)}.float-away{animation:float-away .6s cubic-bezier(.35,0,.65,1) forwards}@keyframes xp-float{0%{opacity:1;transform:translateY(0) translate(0)}to{opacity:0;transform:translateY(-60px) translate(20px)}}.xp-indicator{animation:xp-float 1.5s cubic-bezier(.25,.46,.45,.94) forwards;font-weight:700;font-size:1.4rem;color:#4ade80;pointer-events:none}@keyframes toast-slide-in{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}@keyframes toast-slide-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-100%)}}.toast{animation:toast-slide-in .3s cubic-bezier(.16,1,.3,1) forwards}.toast.exit{animation:toast-slide-out .2s cubic-bezier(.7,0,.84,0) forwards}@keyframes level-up-bounce{0%{transform:scale(.3) translateY(50px);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1) translateY(0);opacity:1}}@keyframes achievement-glow{0%,to{box-shadow:0 0 20px #ffc8324d,0 0 40px #ffc8321a}50%{box-shadow:0 0 30px #ffc83299,0 0 60px #ffc8324d}}.level-up-notification{animation:level-up-bounce .6s cubic-bezier(.34,1.56,.64,1) forwards}.achievement-badge{animation:achievement-glow 2s ease-in-out infinite}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-slide-up{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.modal-overlay{animation:modal-fade-in .2s ease-out forwards}.modal-content{animation:modal-slide-up .3s cubic-bezier(.16,1,.3,1) forwards}@keyframes carousel-slide{0%{opacity:.6;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.carousel-item{animation:carousel-slide .3s ease-out forwards;scroll-behavior:smooth}.carousel{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes pulse-scale{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.7}}.pulse{animation:pulse 2s ease-in-out infinite}.pulse-scale{animation:pulse-scale 2s ease-in-out infinite}.attention{animation:pulse-scale 1s ease-in-out 3}input:focus,textarea:focus,select:focus{animation:input-focus .2s ease-out forwards}@keyframes input-focus{0%{box-shadow:0 0 0 2px rgba(var(--accent-rgb),0)}to{box-shadow:0 0 0 2px rgba(var(--accent-rgb),.24)}}@keyframes icon-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes icon-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.icon-spin{animation:icon-spin 1s linear infinite}.icon-bounce{animation:icon-bounce 1.5s ease-in-out infinite}@keyframes ripple{to{transform:scale(4);opacity:0}}.ripple{position:absolute;border-radius:50%;background:#fff9;transform:scale(0);animation:ripple .6s ease-out;pointer-events:none}@keyframes scale-fade-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes scale-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}.scale-in{animation:scale-fade-in .2s cubic-bezier(.4,0,.2,1)}.scale-out{animation:scale-fade-out .15s cubic-bezier(.4,0,.2,1)}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (hover: hover){.nav-item:hover{background:#ffffff1a;transition:background .15s ease-out}}html.smooth-scroll{scroll-behavior:smooth}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.lazy-load{animation:fade-in .4s ease-out forwards}.stagger-item{animation:float-up .4s cubic-bezier(.16,1,.3,1);animation-timeline:view();animation-range:entry 0% cover 30%}.stagger-item:nth-child(1){animation-delay:0ms}.stagger-item:nth-child(2){animation-delay:50ms}.stagger-item:nth-child(3){animation-delay:.1s}.stagger-item:nth-child(4){animation-delay:.15s}.stagger-item:nth-child(5){animation-delay:.2s}.stagger-item:nth-child(n+6){animation-delay:.25s}.game-screen{width:100%;display:flex;flex-direction:column;align-items:center;gap:1.5rem;flex-grow:1;min-height:0}@media (max-width: 768px){.game-screen{gap:.75rem;padding:0}.game-header{position:fixed;top:.5rem;left:.5rem;right:.5rem;width:calc(100% - 1rem);max-width:100%;z-index:35;background:#141914d9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 8px 24px #00000059;border:1px solid rgba(255,255,255,.1);padding:.75rem 1rem;margin:0;border-radius:12px}.game-header .header-stats{gap:.4rem}.game-header .stat-pill{padding:.4rem .7rem;font-size:.85rem}.game-header .pill-value{font-size:1rem}.game-header .header-actions{gap:.5rem}.card{padding:.75rem;border-radius:12px;max-width:100%}.game-screen .card{width:100%}}.game-main{display:flex;flex-direction:column;gap:.75rem;flex-grow:1;min-height:0;width:100%}.image-section{display:flex;flex-direction:column;gap:.5rem;flex-grow:1;min-height:0;max-height:100%;justify-content:center;align-items:center;overflow:hidden}@media (max-width: 768px){.image-section{flex-grow:1;min-height:280px;max-height:calc(100dvh - 280px);margin-bottom:.5rem}}.audio-panel{width:100%;display:flex;justify-content:center;align-items:center;padding:.65rem .85rem;background:linear-gradient(135deg,#34422df2,#1a2015f2);border-radius:var(--radius);border:1px solid var(--border-color);box-shadow:var(--shadow-1)}.audio-player{width:100%;min-height:40px}.image-viewer{width:100%;height:100%;display:flex;align-items:center;justify-content:center;border-radius:10px;overflow:hidden;background:#0003}.image-viewer img{width:100%;height:100%;object-fit:cover;display:block}.choices{display:flex;flex-direction:column;gap:.5rem;flex-shrink:0;width:100%}@media (max-width: 768px){.choices{gap:.4rem;padding-top:.5rem}}.choices button{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:.75rem;min-height:44px;padding:.75rem 1rem;background:var(--surface-color);border:2px solid var(--border-color);border-radius:10px;color:var(--text-color);cursor:pointer;font-weight:500;transition:all .25s cubic-bezier(.4,0,.2,1);text-align:left;word-break:break-word}.choice-number{display:flex;align-items:center;justify-content:center;min-width:32px;min-height:32px;width:32px;height:32px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:50%;font-weight:700;font-size:.95rem;color:var(--text-color);flex-shrink:0}.choices button:hover:not(:disabled) .choice-number{background:var(--accent-color);border-color:var(--accent-color);color:#fff}.choices button.correct .choice-number{background:var(--success-color);border-color:var(--success-color);color:#fff}.choices button.incorrect .choice-number{background:var(--error-color);border-color:var(--error-color);color:#fff}.choices button.disabled .choice-number{opacity:.4}.choices button:hover:not(:disabled){border-color:var(--accent-color);background:var(--surface-2);transform:translateY(-2px)}.choices button:active:not(:disabled){transform:translateY(0)}.choices button:disabled{cursor:not-allowed;opacity:.6}.choices button.correct{border-color:var(--success-color);background:#4caf6a26;color:var(--success-color)}.choices button.incorrect{border-color:var(--error-color);background:#c94a4826;color:var(--error-color)}.choices button.disabled{opacity:.4;background:var(--surface-color);border-color:var(--border-color)}.choice-label{display:flex;flex-direction:column;gap:.25rem;width:100%}.choice-primary{font-weight:600;font-size:.95rem}.choice-secondary{font-size:.8rem;opacity:.75;font-style:italic}.game-screen.easy-mode,.game-screen.riddle-mode{gap:1rem}.game-screen.easy-mode .game-header,.game-screen.riddle-mode .game-header{width:min(100%,900px);max-width:900px;margin-left:auto;margin-right:auto}@media (max-width: 768px){.game-screen.easy-mode .game-header,.game-screen.riddle-mode .game-header{width:calc(100% - 1rem)}.game-screen.easy-mode .card,.game-screen.riddle-mode .card{width:100%;padding:.75rem}}.fab-container{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end;width:100%}.fab{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-width:44px;min-height:44px;padding:.5rem .75rem;border-radius:24px;border:1px solid var(--border-color);background:var(--surface-2);color:var(--text-color);font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #00000040}.fab:hover:not(:disabled){background:var(--primary-color);border-color:var(--accent-color);transform:translateY(-2px);box-shadow:0 6px 16px #0000004d}.fab:active:not(:disabled){transform:translateY(0)}.fab:disabled{opacity:.5;cursor:not-allowed}.feedback-overlay{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:50;padding:1rem 1.5rem;border-radius:12px;background:#000000e6;border:1px solid var(--border-color);color:var(--text-color);font-weight:600;text-align:center;animation:fadeInOut .3s ease-in,slideUp .3s ease-out;max-width:80%}.feedback-overlay.success{border-color:var(--success-color);color:var(--success-color)}.feedback-overlay.error{border-color:var(--error-color);color:var(--error-color)}@keyframes fadeInOut{0%{opacity:0}10%,90%{opacity:1}to{opacity:0}}button,.choices button,.fab,[role=button]{min-width:44px;min-height:44px;touch-action:manipulation}.choices,.tree-column,.left-stack{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}@supports (padding: max(0px)){.bottom-nav{padding-bottom:max(.5rem,env(safe-area-inset-bottom))}.card{padding-bottom:max(1rem,env(safe-area-inset-bottom))}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}.answer-reveal{animation:slideUp .4s cubic-bezier(.4,0,.2,1)}@media (min-width: 769px) and (max-width: 1024px){.game-header{position:static!important;margin:0 auto;width:100%}.card{margin-top:0!important;padding:1rem}.game-main{gap:1rem}.image-section{min-height:320px;max-height:400px}}.choices button,.fab,.game-header button{user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.nav-pill,.bottom-nav-item{font-feature-settings:"norm"}@media (max-width: 768px){.hard-mode-container{width:100%;max-width:100%;padding:0;margin:0;gap:0;display:block}.hard-mode-layout{display:flex;flex-direction:column;grid-template-columns:unset;gap:0;align-items:stretch;min-height:0;height:auto;padding-top:3.5rem}.media-column{position:static!important;top:auto!important;align-self:unset!important;max-width:100%!important;height:auto!important;flex-grow:1;min-height:280px;max-height:calc(100dvh - 400px)}.left-stack{flex-direction:column;gap:.5rem;max-height:100%!important;overflow:visible!important;width:100%}.media-panel{width:100%;max-width:100%!important;max-height:100%!important;flex:1;padding:.75rem}.tree-column{display:none;min-height:0!important;max-height:unset!important}.proposition-panel,.guess-panel{width:100%;max-width:100%;padding:.75rem;border-radius:12px 12px 0 0;margin:0;gap:.5rem;flex-shrink:0}.guess-bar{display:flex;flex-direction:column;gap:.5rem;width:100%}.guess-row{display:flex;gap:.5rem;width:100%;align-items:stretch}.guess-row input,.guess-row [role=combobox]{flex:1;min-height:44px}.guess-actions-inline{display:flex;gap:.5rem;align-items:stretch}.guess-actions-inline button{min-width:44px;min-height:44px;padding:.5rem;flex-shrink:0}.action-button.hint{white-space:nowrap;font-size:.85rem}.feedback-bar{padding:.75rem;border-radius:8px;font-size:.9rem;text-align:center;background:#ffffff1a;border:1px solid var(--border-color)}.feedback-bar.success{border-color:var(--success-color);background:#4caf6a26;color:var(--success-color)}.feedback-bar.error{border-color:var(--error-color);background:#c94a4826;color:var(--error-color)}}@media (max-width: 768px){.game-screen.easy-mode,.game-screen.riddle-mode{gap:0;padding:0}.game-screen.easy-mode .card,.game-screen.riddle-mode .card{display:flex;flex-direction:column;gap:0;padding:0;border-radius:0;max-width:100%;height:auto;min-height:calc(100dvh - 140px);padding-top:3.5rem}.game-main{display:flex;flex-direction:column;gap:0;width:100%;height:100%;min-height:0}.image-section{flex:1.2;gap:0;padding:0;overflow:hidden;border-radius:0}.audio-panel{padding:.6rem .85rem;margin:0}.image-viewer{width:100%;height:100%;border-radius:0}.choices{flex:.8;gap:.4rem;padding:.75rem;background:var(--surface-color);border-top:1px solid var(--border-color);border-radius:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.choices button{min-height:48px;padding:.75rem 1rem;font-size:.95rem;border-radius:8px}.choice-label{gap:.2rem}.choice-primary{font-size:.9rem}.choice-secondary{font-size:.75rem}}@media (min-width: 769px) and (max-width: 1024px){.hard-mode-layout{grid-template-columns:1fr .8fr}.media-column,.tree-column{max-height:calc(100dvh - 180px)!important}.guess-bar{gap:.5rem}.guess-row{display:flex;flex-direction:column;gap:.5rem}.guess-actions-inline{width:100%;gap:.5rem}.guess-actions-inline button{flex:1}}@keyframes answerReveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.choices button.correct,.choices button.incorrect{animation:answerReveal .3s cubic-bezier(.4,0,.2,1)}@keyframes panelShake{0%{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}to{transform:translate(0)}}.proposition-panel.panel-shake,.guess-panel.panel-shake{animation:panelShake .4s cubic-bezier(.36,0,.66,1)}@keyframes feedbackPulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.02)}to{transform:scale(1);opacity:1}}.feedback-bar{animation:feedbackPulse .4s ease-out}.choices button:active:not(:disabled){transform:scale(.98)}.action-button:active:not(:disabled){transform:scale(.96)}.fab:active:not(:disabled){transform:scale(.95)}.choices button:focus-visible,.action-button:focus-visible,.fab:focus-visible{outline:2px solid var(--accent-color);outline-offset:-2px}@supports (scroll-behavior: smooth){.choices{scroll-behavior:smooth}}.choices,.tree-column,.left-stack{-webkit-overflow-scrolling:touch}.choices button,.action-button,.fab{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.game-header{position:sticky!important;top:0;z-index:35}@media (max-width: 768px){.game-header{position:fixed!important;top:.5rem;left:.5rem;right:.5rem;width:calc(100% - 1rem)}}.choices button{color:var(--text-color);background:var(--surface-color)}.choices button:hover:not(:disabled){color:var(--text-color);background:var(--surface-2)}@media (max-width: 600px){.stat-pill{padding:.4rem .65rem;font-size:.85rem}.pill-label{font-size:.7rem}.pill-value{font-size:1rem}.header-stats{gap:.3rem}.guess-row{flex-wrap:wrap}.guess-actions-inline{width:100%}.guess-actions-inline button{flex:1;min-width:50%}}.choices{padding-bottom:max(.75rem,env(safe-area-inset-bottom))}.choices button{margin-bottom:.1rem}.choices button:last-child{margin-bottom:0}@media (prefers-color-scheme: dark){.feedback-bar{background:#0009}.choices{background:var(--surface-color)}}@media (max-width: 768px){.streak-count .flame,.mobile-streak .streak-flame{animation:none!important}.in-game-streak.tier-active{animation:none!important;box-shadow:0 4px 16px #ff6b3566}.shield.permanent{animation:none!important;filter:drop-shadow(0 0 8px gold)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}}@media (max-width: 768px){button,[role=button],a.btn,input[type=submit],input[type=button],.fab,.action-button,.choices button{min-width:48px;min-height:48px;touch-action:manipulation}.choices button{min-height:52px;padding:.75rem 1rem;margin-bottom:.25rem}.choices button:last-child{margin-bottom:max(.25rem,env(safe-area-inset-bottom))}.header-actions button,.action-button{min-width:48px;min-height:48px;padding:.5rem 1rem}.fab{min-width:56px;min-height:56px;padding:.75rem 1rem}.header-actions{gap:max(.5rem,8px)}.header-stats,.choices{gap:max(.4rem,6px)}input,select,textarea,[role=combobox]{min-height:48px;padding:.75rem;font-size:16px}a{min-height:44px;display:inline-flex;align-items:center;padding:.5rem}.external-link{min-height:48px;padding:.75rem 1rem;display:inline-flex;align-items:center;justify-content:center}button,[role=button],.choices button,.fab,.action-button{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}*{-webkit-tap-highlight-color:rgba(102,126,234,.2)}@supports (padding: max(0px)){.choices,.bottom-nav,.game-main{padding-bottom:max(.75rem,env(safe-area-inset-bottom))}.game-header-mobile{left:max(.5rem,env(safe-area-inset-left));right:max(.5rem,env(safe-area-inset-right))}}}@media (min-width: 769px) and (max-width: 1024px){button,[role=button]{min-width:44px;min-height:44px}}@media (max-width: 768px){.game-screen,.game-main,.image-section,.choices{touch-action:manipulation}.image-viewer img{touch-action:pinch-zoom}}@media (max-width: 768px){button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:3px solid var(--accent-color, #eebb4d);outline-offset:2px}}.choices button{transition:transform .1s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease}.choices button:active:not(:disabled){transform:scale(.98);background:var(--surface-2, rgba(255, 255, 255, .08))}.action-button,.fab,button{transition:transform .1s ease,background .15s ease,border-color .15s ease}.action-button:active:not(:disabled),.fab:active:not(:disabled),button:active:not(:disabled){transform:scale(.96)}.choices button.correct{animation:successPulse .4s ease-out}@keyframes successPulse{0%{transform:scale(1);box-shadow:0 0 #4caf6ab3}50%{transform:scale(1.02);box-shadow:0 0 0 10px #4caf6a00}to{transform:scale(1);box-shadow:0 0 #4caf6a00}}.choices button.incorrect{animation:errorShake .4s ease-out}@keyframes errorShake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}@media (max-width: 768px){button,.choices button,.action-button,.fab{position:relative;overflow:hidden}button:after,.choices button:after,.action-button:after,.fab:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);pointer-events:none}button:active:after,.choices button:active:after,.action-button:active:after,.fab:active:after{width:100px;height:100px;opacity:0;transition:width .3s ease,height .3s ease,opacity .3s ease}}@media (hover: hover) and (pointer: fine){.choices button:hover:not(:disabled){border-color:var(--accent-color);background:var(--surface-2);transform:translateY(-2px);box-shadow:0 4px 12px #0003}.action-button:hover:not(:disabled),.fab:hover:not(:disabled){background:var(--surface-2);border-color:var(--primary-color)}}button[disabled],.choices button[disabled],.action-button[disabled]{opacity:.5;cursor:not-allowed;pointer-events:none}button:focus-visible,.choices button:focus-visible,.action-button:focus-visible{outline:3px solid var(--accent-color);outline-offset:2px;z-index:1}@media (max-width: 768px){.mobile-quit-button:active{transform:scale(.9);background:#ff48484d}.stat-pill:active{transform:scale(.98)}}.haptic-feedback{animation:hapticPulse .2s ease-out}@keyframes hapticPulse{0%{opacity:1}50%{opacity:.7;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.feedback-flash{position:fixed;inset:0;pointer-events:none;z-index:9999}.feedback-flash.success{background:#4caf6a1a;animation:flashSuccess .4s ease-out}.feedback-flash.error{background:#c94a481a;animation:flashError .4s ease-out}@keyframes flashSuccess{0%{opacity:0}50%{opacity:1}to{opacity:0}}@keyframes flashError{0%{opacity:0}50%{opacity:1}to{opacity:0}}@media (max-width: 768px){button,.choices button,.action-button,.fab{transform:translateZ(0);-webkit-transform:translateZ(0);will-change:transform}}.avatar-ring{position:relative;width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--surface-color, #263321);transition:all .3s ease;isolation:isolate}.avatar-ring:before{content:"";position:absolute;inset:-4px;border-radius:50%;background:var(--border-color, rgba(255, 255, 255, .1));z-index:-1;transition:all .3s ease;pointer-events:none}.avatar-ring .avatar-letter,.avatar-ring .preview-letter{position:relative;z-index:2}.border-silver{--silver-bright: #FFFFFF;--silver-light: #E8E8E8;--silver-mid: #B8B8B8;--silver-dark: #888888;--silver-glow: rgba(255, 255, 255, .8)}.border-silver:before{inset:-6px;background:conic-gradient(from 0deg,var(--silver-bright) 0deg,var(--silver-light) 60deg,var(--silver-mid) 120deg,var(--silver-dark) 180deg,var(--silver-mid) 240deg,var(--silver-light) 300deg,var(--silver-bright) 360deg);animation:silver-spin 6s linear infinite;box-shadow:0 0 25px #fff9,0 0 50px #c8c8c866,inset 0 0 10px #ffffff80}.border-silver:after{content:"🌙";position:absolute;top:-14px;right:-10px;font-size:1.3rem;z-index:10;animation:moon-glow 3s ease-in-out infinite;filter:drop-shadow(0 0 10px var(--silver-glow))}.border-silver .avatar-letter:before{content:"✦";position:absolute;top:-20px;left:-15px;font-size:.8rem;color:var(--silver-bright);animation:star-twinkle 1.5s ease-in-out infinite;text-shadow:0 0 8px var(--silver-glow)}.border-silver .avatar-letter:after{content:"✧";position:absolute;bottom:-18px;right:-12px;font-size:.7rem;color:var(--silver-light);animation:star-twinkle 2s ease-in-out infinite .5s;text-shadow:0 0 6px var(--silver-glow)}@keyframes silver-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes moon-glow{0%,to{transform:translateY(0) scale(1);filter:drop-shadow(0 0 10px var(--silver-glow))}50%{transform:translateY(-4px) scale(1.1);filter:drop-shadow(0 0 20px var(--silver-glow)) brightness(1.3)}}@keyframes star-twinkle{0%,to{opacity:.4;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}.border-gold-book{--gold-light: #FFF176;--gold-mid: #FFD54F;--gold-dark: #FFB300;--gold-deep: #FF6F00;--gold-glow: rgba(255, 193, 7, .8)}.border-gold-book:before{inset:-6px;background:conic-gradient(from 45deg,var(--gold-light) 0deg,var(--gold-mid) 45deg,var(--gold-deep) 90deg,var(--gold-dark) 135deg,var(--gold-light) 180deg,var(--gold-mid) 225deg,var(--gold-deep) 270deg,var(--gold-dark) 315deg,var(--gold-light) 360deg);animation:gold-blaze 5s linear infinite;box-shadow:0 0 30px var(--gold-glow),0 0 60px #ff8f0080,0 0 90px #ff6f004d,inset 0 0 15px #ff06}.border-gold-book:after{content:"📚";position:absolute;top:-16px;right:-14px;font-size:1.5rem;z-index:10;animation:book-float 2.5s ease-in-out infinite;filter:drop-shadow(0 0 12px var(--gold-glow))}.border-gold-book .avatar-letter:before{content:"🔥";position:absolute;bottom:-22px;left:50%;transform:translate(-50%);font-size:1rem;animation:flame-dance .8s ease-in-out infinite alternate;filter:hue-rotate(-20deg) saturate(1.5)}.border-gold-book .avatar-letter:after{content:"";position:absolute;inset:-20px;border-radius:50%;border:2px solid transparent;border-top-color:var(--gold-light);border-right-color:var(--gold-mid);animation:orbit-ring 4s linear infinite;pointer-events:none}@keyframes gold-blaze{0%{transform:rotate(0);filter:brightness(1)}50%{filter:brightness(1.2)}to{transform:rotate(360deg);filter:brightness(1)}}@keyframes book-float{0%,to{transform:translateY(0) rotate(-10deg)}50%{transform:translateY(-8px) rotate(10deg)}}@keyframes flame-dance{0%{transform:translate(-50%) scale(1) rotate(-5deg)}to{transform:translate(-50%) scale(1.2) rotate(5deg)}}@keyframes orbit-ring{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.border-steel{--steel-bright: #CFD8DC;--steel-light: #90A4AE;--steel-mid: #607D8B;--steel-dark: #455A64;--steel-deep: #263238;--steel-ember: #FF5722;--steel-glow: rgba(96, 125, 139, .7)}.border-steel:before{inset:-6px;background:linear-gradient(135deg,var(--steel-bright) 0%,var(--steel-mid) 25%,var(--steel-deep) 50%,var(--steel-mid) 75%,var(--steel-bright) 100%);background-size:400% 400%;animation:steel-forge 4s ease-in-out infinite;box-shadow:0 0 20px var(--steel-glow),0 0 40px #455a6480,inset 0 0 10px #fff3,inset 0 3px 6px #0006;border:2px solid var(--steel-light)}.border-steel:after{content:"⚔️";position:absolute;top:-18px;right:-14px;font-size:1.5rem;z-index:10;animation:sword-ready 2s ease-in-out infinite;filter:drop-shadow(0 0 8px var(--steel-ember))}.border-steel .avatar-letter:before{content:"✦";position:absolute;top:-15px;left:10%;font-size:.6rem;color:var(--steel-ember);animation:spark-fly 1.2s ease-out infinite;text-shadow:0 0 6px var(--steel-ember)}.border-steel .avatar-letter:after{content:"✦";position:absolute;top:-12px;right:15%;font-size:.5rem;color:#ff9800;animation:spark-fly 1.5s ease-out infinite .3s;text-shadow:0 0 4px #FF9800}@keyframes steel-forge{0%,to{background-position:0% 50%;filter:brightness(1)}25%{filter:brightness(1.15)}50%{background-position:100% 50%;filter:brightness(1.3)}75%{filter:brightness(1.15)}}@keyframes sword-ready{0%,to{transform:rotate(-15deg) scale(1)}50%{transform:rotate(15deg) scale(1.1)}}@keyframes spark-fly{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-25px) translate(10px) scale(.3)}}.border-platinum{--platinum-white: #FFFFFF;--platinum-light: #E8E8FF;--platinum-violet: #B388FF;--platinum-purple: #7C4DFF;--platinum-deep: #651FFF;--platinum-pink: #FF80AB;--platinum-cyan: #80DEEA;--platinum-glow: rgba(124, 77, 255, .8)}.border-platinum:before{inset:-8px;background:conic-gradient(from 0deg,var(--platinum-white) 0deg,var(--platinum-cyan) 40deg,var(--platinum-violet) 80deg,var(--platinum-purple) 120deg,var(--platinum-deep) 160deg,var(--platinum-pink) 200deg,var(--platinum-violet) 240deg,var(--platinum-purple) 280deg,var(--platinum-cyan) 320deg,var(--platinum-white) 360deg);animation:platinum-hyperspin 3s linear infinite;box-shadow:0 0 30px var(--platinum-glow),0 0 60px #b388ff99,0 0 100px #7c4dff66,0 0 150px #651fff33,inset 0 0 20px #ffffff80}.border-platinum:after{content:"💎";position:absolute;top:-18px;right:-16px;font-size:1.7rem;z-index:10;animation:diamond-shine 2s ease-in-out infinite;filter:drop-shadow(0 0 15px var(--platinum-glow))}.border-platinum .avatar-letter:before{content:"";position:absolute;inset:-30px;border-radius:50%;background:conic-gradient(from 180deg,transparent 0deg,var(--platinum-violet) 30deg,transparent 60deg,var(--platinum-cyan) 90deg,transparent 120deg,var(--platinum-pink) 150deg,transparent 180deg,var(--platinum-purple) 210deg,transparent 240deg,var(--platinum-violet) 270deg,transparent 300deg,var(--platinum-cyan) 330deg,transparent 360deg);animation:cosmic-halo 4s linear infinite reverse;opacity:.6;pointer-events:none;z-index:-1}.border-platinum .avatar-letter:after{content:"⭐";position:absolute;top:-25px;left:-20px;font-size:.9rem;animation:star-orbit 3s linear infinite;filter:drop-shadow(0 0 8px var(--platinum-glow))}@keyframes platinum-hyperspin{0%{transform:rotate(0);filter:hue-rotate(0deg)}to{transform:rotate(360deg);filter:hue-rotate(30deg)}}@keyframes diamond-shine{0%,to{transform:scale(1) rotate(0);filter:drop-shadow(0 0 15px var(--platinum-glow)) brightness(1)}25%{transform:scale(1.15) rotate(-10deg)}50%{transform:scale(1.2) rotate(0);filter:drop-shadow(0 0 25px var(--platinum-glow)) brightness(1.4)}75%{transform:scale(1.15) rotate(10deg)}}@keyframes cosmic-halo{0%{transform:rotate(0) scale(1);opacity:.4}50%{transform:rotate(180deg) scale(1.1);opacity:.7}to{transform:rotate(360deg) scale(1);opacity:.4}}@keyframes star-orbit{0%{transform:rotate(0) translate(35px) rotate(0)}to{transform:rotate(360deg) translate(35px) rotate(-360deg)}}.border-preview{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--surface-color, #263321);cursor:pointer;transition:transform .2s,box-shadow .2s}.border-preview:hover{transform:scale(1.1)}.border-preview.selected{box-shadow:0 0 0 3px var(--accent-color, #eebb4d)}.border-preview .preview-letter{font-size:1.25rem;font-weight:600;color:var(--text-color, #f1f5e9)}.customization-modal{max-width:400px;width:100%}.customization-section{margin-bottom:1.5rem}.customization-section h4{font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-color-muted, #c4c9bf);margin-bottom:.75rem}.options-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:.75rem}.option-item{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.75rem;border-radius:var(--radius, 12px);background:var(--surface-2, #34422d);cursor:pointer;transition:all .2s;border:2px solid transparent}.option-item:hover:not(.locked){background:var(--surface-highlight, #45523e);transform:translateY(-2px)}.option-item.selected{border-color:var(--accent-color, #eebb4d);background:var(--surface-highlight, #45523e)}.option-item.locked{opacity:.5;cursor:not-allowed}.option-item .option-label{font-size:.75rem;text-align:center;color:var(--text-color, #f1f5e9);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.option-item.locked .option-label:after{content:" 🔒"}.title-preview{font-size:.875rem;font-weight:600;color:var(--primary-color, #7b8c48);padding:.5rem 1rem;border-radius:var(--radius-pill, 9999px);background:var(--surface-color, #263321)}.equipped-title{font-size:.75rem;font-weight:600;color:var(--accent-color, #eebb4d);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.25rem;display:flex;align-items:center;gap:.25rem}.equipped-title:before{content:"✦";font-size:.625rem}.equipped-title:after{content:"✦";font-size:.625rem}@media (max-width: 480px){.avatar-ring{width:64px;height:64px}.options-grid{grid-template-columns:repeat(3,1fr)}.border-preview{width:48px;height:48px}}@media (prefers-reduced-motion: reduce){.border-silver:before,.border-silver:after,.border-gold-book:before,.border-gold-book:after,.border-steel:after,.border-platinum:before,.border-platinum:after,.border-diamond:before,.border-diamond:after{animation:none}}.border-diamond{--diamond-white: #FFFFFF;--diamond-ice: #E0F7FA;--diamond-blue: #4DD0E1;--diamond-purple: #CE93D8;--diamond-pink: #F8BBD9;--diamond-glow: rgba(77, 208, 225, .8)}.border-diamond:before{inset:-8px;background:conic-gradient(from 0deg,var(--diamond-white) 0deg,var(--diamond-ice) 30deg,var(--diamond-blue) 60deg,var(--diamond-purple) 90deg,var(--diamond-pink) 120deg,var(--diamond-white) 150deg,var(--diamond-ice) 180deg,var(--diamond-blue) 210deg,var(--diamond-purple) 240deg,var(--diamond-pink) 270deg,var(--diamond-ice) 300deg,var(--diamond-white) 330deg,var(--diamond-ice) 360deg);animation:diamond-refract 2.5s linear infinite;box-shadow:0 0 35px var(--diamond-glow),0 0 70px #ce93d880,0 0 100px #f8bbd94d,inset 0 0 20px #fffc}.border-diamond:after{content:"💎";position:absolute;top:-18px;right:-16px;font-size:1.7rem;z-index:10;animation:diamond-sparkle 1.5s ease-in-out infinite;filter:drop-shadow(0 0 12px var(--diamond-glow))}.border-diamond .avatar-letter:before{content:"✦";position:absolute;top:-15px;left:-10px;font-size:.8rem;color:var(--diamond-white);animation:crystal-twinkle 1s ease-in-out infinite;text-shadow:0 0 10px var(--diamond-glow)}.border-diamond .avatar-letter:after{content:"✧";position:absolute;bottom:-12px;right:-8px;font-size:.7rem;color:var(--diamond-ice);animation:crystal-twinkle 1.2s ease-in-out infinite .3s;text-shadow:0 0 8px var(--diamond-purple)}@keyframes diamond-refract{0%{transform:rotate(0);filter:hue-rotate(0deg)}to{transform:rotate(360deg);filter:hue-rotate(15deg)}}@keyframes diamond-sparkle{0%,to{transform:scale(1) rotate(0);filter:drop-shadow(0 0 12px var(--diamond-glow)) brightness(1)}25%{transform:scale(1.1) rotate(-5deg)}50%{transform:scale(1.2) rotate(0);filter:drop-shadow(0 0 20px var(--diamond-glow)) brightness(1.4)}75%{transform:scale(1.1) rotate(5deg)}}@keyframes crystal-twinkle{0%,to{opacity:.4;transform:scale(.8)}50%{opacity:1;transform:scale(1.3)}}.avatar-emoji{font-size:2rem;line-height:1;position:relative;z-index:2}.avatar-image{width:100%;height:100%;border-radius:50%;object-fit:cover;position:relative;z-index:2}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/poppins-400.woff2) format("woff2")}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/poppins-500.woff2) format("woff2")}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/poppins-600.woff2) format("woff2")}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/poppins-700.woff2) format("woff2")}:root{--font-family-main: "Poppins", system-ui, Avenir, Helvetica, Arial, sans-serif;--type-xxl: 2.2rem;--type-xl: 1.6rem;--type-lg: 1.25rem;--type-md: 1rem;--type-sm: .875rem;--type-xs: .75rem;--type-body: var(--type-md);--leading-tight: 1.1;--leading-snug: 1.25;--leading-normal: 1.4;--leading-relaxed: 1.6;--bg-color: #1a2015;--surface-color: #263321;--surface-2: #34422d;--surface-highlight: #45523e;--primary-color: #7b8c48;--primary-dark: #606c38;--accent-color: #eebb4d;--accent-strong: #ffb86b;--accent-glow: rgba(238, 187, 77, .4);--success-color: #4caf6a;--error-color: #e05550;--success-rgb: 76, 175, 106;--error-rgb: 224, 85, 80;--text-color: #f1f5e9;--text-color-muted: #c4c9bf;--text-primary: var(--text-color);--text-secondary: var(--text-color-muted);--text-muted: var(--text-color-muted);--text-color-light: var(--text-color);--border-color: rgba(255,255,255,.08);--primary-color-rgb: 123, 140, 72;--accent-rgb: 238, 187, 77;--accent-color-transparent: rgba(var(--accent-rgb), .18);--surface: var(--surface-color);--surface-3: #1f2a1b;--surface-accent: rgba(var(--accent-rgb), .1);--card-bg: var(--surface-color);--space-1: .25rem;--space-2: .5rem;--space-3: 1rem;--space-4: 1.5rem;--space-5: 2rem;--space-6: 2.5rem;--radius-1: 4px;--radius-small: 6px;--radius: 12px;--radius-medium: var(--radius);--radius-large: 16px;--radius-full: 9999px;--radius-pill: 9999px;--shadow: var(--shadow-1);--shadow-1: 0 4px 12px rgba(0,0,0,.25);--shadow-2: 0 10px 30px rgba(0,0,0,.32);--shadow-3: 0 20px 50px rgba(0,0,0,.45);--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.32, .72, 0, 1);--duration-fast: .12s;--duration-normal: .25s;--duration-slow: .4s;--button-secondary-bg: rgba(255, 255, 255, .08);--button-secondary-text: var(--text-color);--button-secondary-hover-bg: rgba(255, 255, 255, .14);--button-secondary-hover-text: var(--text-color);--z-dropdown: 100;--z-nav: 200;--z-tooltip: 500;--z-modal: 1000;--z-toast: 1200;--z-offline-indicator: 1300;--bp-xs: 480px;--bp-sm: 600px;--bp-md: 768px;--bp-lg: 1024px;--bp-xl: 1400px;--mastery-0: #555;--mastery-1-start: #CD7F32;--mastery-1-end: #E8A35D;--mastery-2-start: #C0C0C0;--mastery-2-end: #E8E8E8;--mastery-3-start: #FFD700;--mastery-3-end: #FFF44F;--mastery-4-start: #b9f2ff;--mastery-4-end: #E0F7FF;--accent-blue: #5b9bd5;--rarity-legendary: #f29f3d;--rarity-epic: #8e5de8;--rarity-rare: #4aa3ff;--rarity-uncommon: #63b56a;--rarity-common: #9aa0a6;--rarity-unknown: #7f8c8d;--color-streak: #ff9500;--color-rare: var(--rarity-epic);--full-height: 100dvh;--nav-height-mobile: 70px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;min-height:var(--full-height);width:100%;font-family:var(--font-family-main);font-size:var(--type-body);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-color);color:var(--text-color);overflow-x:hidden}body{padding-top:var(--space-2)}#root{width:100%}h1,h2,h3,h4,h5,h6{font-weight:600;color:var(--text-color)}h1{font-size:var(--type-xxl);font-weight:700;line-height:var(--leading-tight);color:var(--text-color);text-align:center}h2{font-size:var(--type-xl);font-weight:600;line-height:var(--leading-snug);color:var(--text-color);text-align:center}h3{font-size:var(--type-lg);font-weight:600;line-height:var(--leading-snug);color:var(--text-color)}button{font-family:var(--font-family-main)}:focus{outline:2px solid var(--accent-color);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.preferences-menu{position:relative;display:inline-flex}.preferences-trigger{background:#0000004d;border-color:#ffffff1f;color:var(--text-color);transition:border-color .14s ease,box-shadow .18s ease,transform .12s ease,color .14s ease}.preferences-trigger:hover,.preferences-trigger:focus-visible{border-color:var(--accent-color);box-shadow:0 12px 32px #00000052;transform:translateY(-1px)}.preferences-trigger[aria-expanded=true]{border-color:var(--accent-color);box-shadow:0 12px 32px #0000005c,0 0 0 1px #dda15e52;color:var(--accent-color);background:#0000005c}.preferences-language-icon{width:20px;height:20px}.preferences-popover{position:absolute;top:115%;right:0;min-width:220px;padding:.85rem 1rem;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(140deg,#222a22f2,#1c201ad9,#222a22eb),#00000059;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 18px 48px #0000008c,0 0 0 1px #ffffff08;z-index:15;animation:preferences-fade-in .14s ease-out}@keyframes preferences-fade-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.preferences-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.preferences-title{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-color)}.preferences-section{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.preferences-language-options{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.language-chip{border-radius:999px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:var(--text-color);padding:.45rem .6rem;min-width:52px;text-align:center;font-weight:700;letter-spacing:.05em;transition:transform .12s ease,box-shadow .16s ease,border-color .12s ease,background .14s ease}.language-chip:hover,.language-chip:focus-visible{border-color:var(--accent-color);box-shadow:0 8px 24px #00000052;transform:translateY(-1px)}.language-chip.active{background:linear-gradient(130deg,#dda15e47,#606c3880);border-color:var(--accent-color);box-shadow:0 0 0 1px #dda15e59,0 12px 30px #00000061;color:var(--text-color)}.preferences-format-toggle{display:flex;flex-direction:column;gap:.4rem;background:#ffffff05;padding:.35rem;border-radius:12px;border:1px solid rgba(255,255,255,.06)}.format-option{border-radius:10px;border:1px solid rgba(255,255,255,.06);background:#00000026;color:var(--text-color);padding:.55rem .7rem;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;font-weight:600;transition:transform .12s ease,border-color .14s ease,box-shadow .16s ease,background .16s ease,color .16s ease}.format-option .format-icon{font-size:.95rem;display:inline-flex}.format-option .format-icon svg{width:18px;height:18px}.format-option:hover,.format-option:focus-visible{border-color:var(--accent-color);box-shadow:0 10px 28px #00000052;transform:translateY(-1px)}.format-option.active{background:linear-gradient(120deg,#dda15e42,#606c3880);border-color:var(--accent-color);color:var(--text-color);box-shadow:0 0 0 1px #dda15e59,0 16px 36px #0006}@media (max-width: 640px){.preferences-popover{right:0;width:min(92vw,320px)}.preferences-language-options{justify-content:space-between}}@media (max-width: 768px){.preferences-popover{position:fixed;top:auto;bottom:calc(env(safe-area-inset-bottom) + 70px);right:1rem;left:1rem;max-width:none;width:auto}}@media (min-width: 769px){.preferences-menu:has(.preferences-popover):not(:has(.preferences-trigger)){display:none}}@media (prefers-reduced-motion: reduce){.preferences-popover{animation:none}.preferences-trigger,.language-chip,.format-option{transition:none}}.toast-container{position:fixed;bottom:20px;right:20px;display:flex;flex-direction:column;gap:var(--space-2);z-index:var(--z-toast);max-width:320px;pointer-events:none}.toast{pointer-events:auto;background:var(--surface-color);color:var(--text-color);border-radius:var(--radius);padding:10px 14px;box-shadow:var(--shadow-1);border-left:4px solid var(--accent-color);font-size:var(--type-sm);animation:toast-in .2s ease;display:flex;gap:.6rem;align-items:center}.toast.info{border-left-color:var(--primary-color)}.toast.success{border-left-color:var(--success-color)}.toast.error{border-left-color:var(--error-color)}.toast .toast-message{display:block;line-height:var(--leading-normal);flex:1 1 auto}.toast .toast-close{background:transparent;border:none;color:var(--text-color-muted);font-size:1rem;padding:.35rem;cursor:pointer;border-radius:var(--radius-small)}.toast:focus{outline:2px solid var(--accent-color);outline-offset:2px}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 480px){.toast-container{right:12px;left:12px;bottom:12px;max-width:none}}@media (prefers-reduced-motion: reduce){.toast{animation:none!important}}.bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:40;height:auto;background:#141914eb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(255,255,255,.1);box-shadow:0 -10px 30px #0006;padding-bottom:max(.5rem,env(safe-area-inset-bottom));padding-top:.6rem;animation:slideUp .3s cubic-bezier(.4,0,.2,1)}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 768px){.bottom-nav{display:block}}.bottom-nav-container{display:flex;justify-content:space-around;align-items:stretch;max-width:100%;padding:0 .5rem;gap:.25rem}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;flex:1;min-height:56px;padding:.5rem;background:transparent;border:none;color:var(--text-color-muted);cursor:pointer;font-size:.7rem;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;border-radius:8px}.bottom-nav-item svg{width:24px;height:24px;display:block}.bottom-nav-label{font-size:.65rem;font-weight:500;line-height:1;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.bottom-nav-item.active{color:var(--accent-color)}.bottom-nav-item.active:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:24px;height:3px;background-color:var(--accent-color);border-radius:2px;animation:expandUnderline .3s cubic-bezier(.4,0,.2,1)}@keyframes expandUnderline{0%{width:0;opacity:0}to{width:24px;opacity:1}}.bottom-nav-item:not(.active):hover{color:var(--text-color);background-color:#ffffff14}.bottom-nav-item:active{transform:scale(.95)}.bottom-nav-item:focus-visible{outline:2px solid var(--accent-color);outline-offset:-2px}@media (max-width: 600px){.bottom-nav-item{min-width:44px;min-height:44px}}.app-footer{width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;margin-top:auto;margin-bottom:calc(-1 * (var(--space-3) + env(safe-area-inset-bottom,0px)));padding:.75rem .9rem calc(.75rem + env(safe-area-inset-bottom,0px));border-top:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#00000029,#0000003d)}.footer-inner{max-width:980px;margin:0 auto;display:flex;flex-direction:column;gap:.55rem}.footer-main-row{display:grid;grid-template-columns:1fr auto;gap:.6rem;align-items:center}.footer-credit{margin:0;font-size:.72rem;line-height:1.35;color:var(--text-color-muted, rgba(241, 245, 233, .75))}.footer-credit-label{color:#ffc846eb;font-weight:700;margin-right:.35rem}.footer-credit-text{color:var(--text-color-muted, rgba(241, 245, 233, .7))}.footer-inat-link{color:var(--accent-color, #dda15e);font-weight:600;text-decoration:none;border-radius:4px;padding:0 .2rem}.footer-inat-link:hover,.footer-inat-link:focus-visible{color:#ffc846;text-decoration:underline;background:#dda15e24}.footer-links{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.footer-link{font-size:.68rem;font-weight:600;color:var(--text-color-muted, rgba(241, 245, 233, .68));text-decoration:none;border:1px solid rgba(255,255,255,.12);background:#ffffff05;border-radius:999px;padding:.2rem .55rem;min-height:auto;min-width:auto;transition:all .15s ease}.footer-link:hover,.footer-link:focus-visible{color:var(--text-color, #f1f5e9);border-color:#dda15e80;background:#dda15e24}.footer-report-btn{border:1px solid rgba(221,161,94,.5);background:#dda15e1f;color:var(--text-color, #f1f5e9);border-radius:999px;padding:.3rem .65rem;font-size:.68rem;font-weight:700;cursor:pointer;min-width:auto;min-height:auto;white-space:nowrap;transition:border-color .15s ease,background .15s ease,transform .12s ease}.footer-report-btn:hover,.footer-report-btn:focus-visible{border-color:var(--accent-color, #dda15e);background:#dda15e33;transform:translateY(-1px)}.footer-copy{margin:0;font-size:.62rem;color:#ffffff57;letter-spacing:.02em}.app-footer--compact{padding:.55rem .8rem calc(.55rem + env(safe-area-inset-bottom,0px))}.app-footer--compact .footer-inner{gap:.38rem}.app-footer--compact .footer-credit{font-size:.66rem;line-height:1.28}.app-footer--compact .footer-link{font-size:.62rem;padding:.16rem .48rem}.app-footer--compact .footer-report-btn{font-size:.64rem;padding:.24rem .58rem}.app-footer--compact .footer-copy{display:none}@media (max-width: 768px){.app-footer{margin-bottom:calc(-1 * (5rem + var(--space-2) + env(safe-area-inset-bottom,0px)));padding:.65rem .75rem calc(4.5rem + env(safe-area-inset-bottom,0px))}.footer-main-row{grid-template-columns:1fr;align-items:start}.footer-report-btn{justify-self:start}.footer-credit{font-size:.68rem}.footer-link{font-size:.64rem}.app-footer .footer-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;column-gap:.42rem;row-gap:.36rem;margin-top:.12rem}.app-footer .footer-link{display:inline-flex;align-items:center;white-space:nowrap;margin:0;padding:.2rem .52rem}.app-footer--compact{display:none}.app-footer--compact .footer-main-row{grid-template-columns:1fr auto;align-items:center;gap:.45rem}.app-footer--compact .footer-credit{font-size:.62rem}.app-footer--compact .footer-links{column-gap:.3rem;row-gap:.28rem}.app-footer--compact .footer-link{font-size:.6rem;padding:.14rem .44rem}.app-footer--compact .footer-report-btn{justify-self:end;padding:.2rem .5rem;font-size:.61rem}}@media (max-width: 560px){.app-footer--compact .footer-main-row{grid-template-columns:1fr;align-items:start}.app-footer--compact .footer-report-btn{justify-self:start}}@media (max-width: 420px){.footer-inner{gap:.45rem}.footer-credit{font-size:.64rem}.footer-copy{font-size:.58rem}}.offline-banner{position:fixed;top:0;left:0;right:0;z-index:var(--z-offline-indicator);padding:var(--space-2) var(--space-3);text-align:center;font-weight:600;font-size:var(--type-sm);transition:transform .3s ease,opacity .3s ease;box-shadow:var(--shadow-1);animation:slideDown .3s ease}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.offline-banner.offline{background-color:var(--error-color);color:#fff}.offline-banner.online{background-color:var(--success-color);color:#fff}.offline-banner-content{display:flex;align-items:center;justify-content:center;gap:var(--space-2);max-width:600px;margin:0 auto}.offline-icon{font-size:var(--type-lg);display:inline-flex;align-items:center}@media (max-width: 768px){.offline-banner{font-size:var(--type-xs);padding:var(--space-1) var(--space-2)}}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:2rem}.error-boundary__card{text-align:center;padding:2.5rem 2rem;border-radius:1rem;background:var(--surface, #fff);box-shadow:0 2px 12px #0000001a;max-width:360px;width:100%}.error-boundary__icon{font-size:3rem;display:block;margin-bottom:.75rem}.error-boundary__title{font-size:1.5rem;margin:0 0 .5rem;color:var(--text-primary, #333)}.error-boundary__message{margin:0 0 1.5rem;color:var(--text-secondary, #666);font-size:.95rem}.error-boundary__button{display:inline-block;padding:.65rem 1.75rem;border:none;border-radius:.5rem;background:var(--primary-color, #7b8c48);color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.error-boundary__button:hover{background:var(--primary-dark, #388e3c)}em{font-style:italic}.main-nav{position:fixed;top:1.5rem;right:1.5rem;z-index:100;display:flex;gap:.75rem;align-items:center}.main-nav.desktop-nav{display:flex}.main-nav .main-nav-items{display:inline-flex;align-items:center;gap:.6rem}@media (max-width: 768px){.main-nav.desktop-nav{display:none}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.nav-pill{border-radius:999px;border:1px solid var(--border-color);background-color:#00000040;color:var(--text-color);padding:var(--space-2) var(--space-3);font-weight:600;letter-spacing:.04em;text-transform:uppercase;line-height:1.2;display:inline-flex;align-items:center;gap:.4rem;min-height:38px;cursor:pointer}.nav-pill.nav-elevated{background-color:#0000004d;border-color:#ffffff1f;box-shadow:0 12px 30px #00000047}.nav-pill.nav-icon{width:34px;height:34px;padding:0;border-radius:50%;justify-content:center;font-size:1.05rem;line-height:1}.nav-pill-label{font-size:.72rem;font-weight:600;letter-spacing:.03em;white-space:nowrap}.main-nav .nav-pill:not(.nav-icon) svg{width:18px;height:18px;flex-shrink:0}.nav-pill.nav-icon svg{width:20px;height:20px;display:block}.main-nav .help-icon{width:30px;height:30px}select.nav-pill{appearance:none;-webkit-appearance:none;font-size:.9rem;min-width:78px;padding-right:calc(var(--space-3) + 1.5rem);padding-left:var(--space-3)}.nav-pill:hover,.nav-pill:focus-visible{border-color:var(--accent-color);background-color:#00000059;color:var(--text-color)}.main-nav .profile-icon{width:20px;height:20px;display:block}.main-nav .profile-button{justify-content:center;background:#0000004d;border-color:#ffffff1f;color:var(--text-color);transition:border-color .14s ease,box-shadow .18s ease,transform .12s ease,color .14s ease}.main-nav .nav-pill.nav-icon{transition:border-color .14s ease,box-shadow .18s ease,transform .12s ease,color .14s ease}.main-nav .nav-pill.nav-icon:not(.profile-button):hover,.main-nav .nav-pill.nav-icon:not(.profile-button):focus-visible{border-color:var(--accent-color);box-shadow:0 12px 32px #00000052;transform:translateY(-1px)}.main-nav .profile-button:hover,.main-nav .profile-button:focus-visible{border-color:var(--accent-color);box-shadow:0 12px 32px #00000052;transform:translateY(-1px)}@media (max-width: 600px){.main-nav .main-nav-items .nav-pill{padding:var(--space-2)}}.skip-to-main{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;z-index:10000;padding:.75rem 1.5rem;background:var(--primary, #2563eb);color:#fff;font-weight:600;border-radius:0 0 .5rem;text-decoration:none}.skip-to-main:focus{position:fixed;left:0;top:0;width:auto;height:auto;overflow:visible}.App{position:relative;width:100%;min-height:var(--full-height);height:100%;max-width:1400px;margin:0 auto;display:flex;flex-direction:column;padding:var(--space-3);padding-bottom:calc(var(--space-3) + env(safe-area-inset-bottom));overflow:visible}.App .main-nav .help-icon,.nav-pill.nav-icon .help-icon{width:27px;height:27px}@media (max-width: 768px){.App{padding:var(--space-2);padding-top:.5rem;padding-bottom:calc(5rem + var(--space-2) + env(safe-area-inset-bottom))}}.app-header{position:fixed;top:0;left:0;z-index:60;display:flex;justify-content:flex-start;align-items:center;padding:.5rem;flex-shrink:0}.app-title-image{max-width:180px;width:auto;height:auto}.app-title-wide{display:block;margin-left:0}.app-title-image.clickable{cursor:pointer;transition:transform .2s ease-in-out;outline:none;border:none}.app-title-image.clickable:hover{transform:scale(1.03)}.app-title-image.clickable:focus{outline:none}@media (max-width: 768px){.app-header{position:fixed;top:0;left:0;justify-content:flex-start;padding:.25rem;flex-shrink:0}.app-title-wide{display:none}.app-title-image{max-width:60px}}@media (max-width: 640px){.app-title-image{max-width:45px}}@media (max-width: 480px){.app-title-image{max-width:40px}}.screen-container{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden;padding-top:0}.screen{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:1rem;gap:1.5rem;flex-grow:1;min-height:0}.card{width:100%;max-width:800px;background-color:var(--surface-color);border-radius:var(--radius);padding:var(--space-5);box-sizing:border-box;box-shadow:var(--shadow);border:1px solid var(--border-color);display:flex;flex-direction:column;min-height:0;transition:transform .18s ease,box-shadow .18s ease}button{border-radius:var(--radius);border:1px solid var(--border-color);padding:.8em var(--space-4);font-size:1em;font-weight:500;font-family:inherit;background-color:var(--surface-color);cursor:pointer;transition:background-color .2s ease,border-color .2s ease,transform .2s ease;color:var(--text-color)}button:hover{border-color:var(--accent-color);background-color:var(--primary-color);color:var(--bg-color)}button:focus,button:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.6rem 1rem;min-height:44px;border-radius:var(--radius);border:1px solid var(--border-color);background:var(--surface-color);color:var(--text-color);font-weight:600;cursor:pointer;transition:transform .12s ease,background .18s ease,box-shadow .18s ease}.btn--primary{background:linear-gradient(180deg,var(--primary-color),var(--primary-color));border-color:var(--primary-color);color:var(--bg-color)}.btn--primary:hover{transform:translateY(-2px);filter:brightness(1.06)}.btn--secondary{background:transparent;border-color:#ffffff14;color:var(--text-color)}.btn--secondary:hover,.btn--secondary:focus-visible{background:var(--button-secondary-hover-bg);border-color:var(--accent-color);color:var(--button-secondary-hover-text)}.btn--ghost{background:none;border:none;color:var(--text-color-muted)}button:active:not(:disabled),.nav-pill:active,.preferences-trigger:active,.action-button:active,.help-button:active{transform:scale(.98)}.action-button{padding:calc(var(--space-2) + var(--space-1)) var(--space-3);border-radius:var(--radius);border:1px solid var(--border-color);background-color:var(--surface-color);color:var(--text-color);font-weight:600;display:inline-flex;justify-content:center;align-items:center;gap:.4rem;transition:transform .2s ease,background-color .2s ease,border-color .2s ease}.action-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.action-button.btn--loading,.btn--loading{position:relative;color:transparent!important;pointer-events:none}.action-button.btn--loading:after,.btn--loading:after{content:"";position:absolute;width:16px;height:16px;top:50%;left:50%;margin-left:-8px;margin-top:-8px;border:2px solid currentColor;border-color:var(--text-color) transparent var(--text-color) transparent;border-radius:50%;animation:btn-spin .8s linear infinite}@keyframes btn-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.action-button:not(:disabled):hover{transform:translateY(-2px)}.action-button.quit{border-color:var(--error-color);color:var(--error-color);background-color:transparent}.action-button.quit:not(:disabled):hover{background-color:var(--error-color);border-color:var(--error-color);color:#fff}.action-button.hint{border-color:var(--accent-color);color:var(--accent-color);background-color:transparent}.action-button.hint:not(:disabled):hover{background-color:#dda15e26;color:var(--bg-color)}.start-button{background-color:var(--primary-color);border-color:var(--primary-color);font-size:1.2rem;width:100%;border-radius:var(--radius)}.start-button:hover{filter:brightness(1.15)}.choices button{min-height:44px}.choices button.correct,.choices button.correct:hover{background-color:var(--success-color);border-color:var(--success-color);color:#fff}.choices button.incorrect,.choices button.incorrect:hover{background-color:var(--error-color);border-color:var(--error-color);color:#fff}.choices button.disabled,.choices button.disabled:hover{opacity:.6;cursor:not-allowed}.choice-label{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-1)}.choice-primary{font-weight:600;font-size:1rem}.choice-secondary{font-size:.9rem;font-style:italic;color:var(--text-color-muted);opacity:.75}.spinner-container{width:100%;flex-grow:1;display:flex;align-items:center;justify-content:center}.spinner{width:56px;height:56px;border:7px solid var(--border-color);border-bottom-color:var(--accent-color);border-radius:50%;animation:rotation 1s linear infinite}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes skeleton-sheen{0%{background-position:100% 0}to{background-position:-100% 0}}.game-screen{width:100%;flex:1;min-height:0;display:flex;align-items:stretch}.game-screen.easy-mode,.game-screen.riddle-mode,.game-screen.centered-screen{align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-3) 0}.game-screen .card{flex:1;min-height:0}.game-screen.easy-mode .card,.game-screen.riddle-mode .card{flex:0 1 auto;min-height:0;width:min(100%,940px);margin:0 auto}.game-screen.centered-screen .card{min-height:0;width:min(100%,940px);margin:0 auto}.game-screen.easy-mode .game-main,.game-screen.riddle-mode .game-main{flex:0 1 auto;min-height:0}.game-screen.easy-mode .image-section,.game-screen.riddle-mode .image-section{align-items:center;justify-content:center}.game-header{width:100%;display:flex;justify-content:space-between;align-items:center;font-size:1.1rem;font-weight:600;flex-shrink:0}.score{color:var(--accent-color);font-weight:700}.game-header .header-right{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;justify-content:flex-end}.game-main{display:flex;flex-direction:column;gap:1rem;width:100%;flex:1;min-height:0}.dashboard-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.dashboard-actions{display:inline-flex;align-items:center;gap:.6rem;margin-left:auto}.hero-chips{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:var(--space-2)}.stat-chip{background:#ffffff0f;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:var(--space-2) var(--space-3);box-shadow:0 10px 30px #0003;display:grid;gap:.1rem;min-width:120px}.stat-chip .chip-label{font-size:.85rem;color:var(--text-color-muted);letter-spacing:.03em}.stat-chip .chip-value{font-weight:800;font-size:1.3rem;color:var(--text-color)}.review-card{display:grid;grid-template-columns:1fr auto;gap:var(--space-3);align-items:center;padding:var(--space-4);border-radius:var(--radius);background:linear-gradient(135deg,#dda15e33,#dda15e0d);border:1px solid rgba(221,161,94,.4);box-shadow:0 14px 34px #00000040}.review-copy h3{margin:0}.review-meta{margin:var(--space-1) 0 0 0;color:var(--text-color-muted)}.review-chip{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3);background:#0003;border-radius:var(--radius-small);border:1px solid rgba(255,255,255,.1)}.review-count{font-size:2rem;font-weight:800;margin:0;line-height:1}.review-label{text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--text-color-muted)}@media (max-width: 768px){.review-card{grid-template-columns:1fr}.dashboard-actions{width:100%;justify-content:flex-end}.hero-chips{width:100%}}.review-actions{display:flex;gap:var(--space-2);justify-content:flex-end;align-items:center;flex-wrap:wrap}.image-section{display:flex;flex-direction:column;gap:.75rem;flex:1;min-height:0;overflow:hidden;align-items:stretch}.audio-panel{width:100%;display:flex;align-items:center;justify-content:center;padding:.6rem .9rem;border-radius:var(--radius);border:1px solid var(--border-color);background:linear-gradient(135deg,#34422df2,#1a2015f2);box-shadow:var(--shadow-1)}.audio-player{width:100%;min-height:42px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background-color:var(--surface-2);color-scheme:dark;accent-color:var(--accent-color)}.audio-player::-webkit-media-controls-panel{background-color:var(--surface-2)}.audio-player::-webkit-media-controls-timeline{background-color:#ffffff26;border-radius:999px}.audio-player::-webkit-media-controls-current-time-display,.audio-player::-webkit-media-controls-time-remaining-display{color:var(--text-color)}.choices{width:100%;display:grid;grid-template-columns:1fr;gap:.75rem;flex-shrink:0;margin-top:auto}@media (min-width: 768px){.game-main{flex-direction:row;align-items:flex-start}.choices{width:40%;margin-top:0}.image-section{width:60%}}@media (max-width: 768px){.game-screen.easy-mode .game-main{gap:.35rem}.game-screen.easy-mode .image-section{margin-bottom:0;min-height:clamp(180px,36vh,250px);max-height:42vh}.game-screen.easy-mode .choices{margin-top:0;gap:.4rem;padding-top:.25rem}.game-screen.easy-mode .choices button{padding:.6rem .8rem}}@media (max-width: 600px){.game-screen.easy-mode .image-section{min-height:clamp(160px,34vh,220px);max-height:40vh}.game-screen.easy-mode .choices button{min-height:44px;padding:.52rem .7rem;gap:.55rem}.game-screen.easy-mode .choice-number{width:28px;height:28px;min-width:28px;min-height:28px;font-size:.82rem}.game-screen.easy-mode .choice-primary{font-size:.88rem;line-height:1.2}.game-screen.easy-mode .choice-secondary{font-size:.72rem;line-height:1.2}}.inat-link{display:inline-flex;align-self:center;gap:8px;padding:var(--space-2) calc(var(--space-2) + var(--space-1));background-color:#0003;border-radius:var(--radius-small);color:var(--text-color-muted);text-decoration:none;font-size:.9rem;font-weight:500;transition:all .2s}.inat-link:hover{background-color:var(--primary-color);color:var(--text-color)}.mode-selector{display:flex;align-items:center;gap:1rem;padding:var(--space-3);background-color:#0000001a;border-radius:var(--radius-small);justify-content:center}.mode-selector h3{margin:0;font-size:1rem;font-weight:500}.mode-selector button.active{border-color:var(--accent-color);background-color:var(--accent-color);color:var(--bg-color)}.hint-button-easy{padding:6px calc(var(--space-2) + var(--space-1));font-size:.8rem;background-color:var(--accent-color);color:var(--bg-color);border:none;border-radius:6px;margin-left:var(--space-3)}.hint-button-easy:disabled{opacity:.5;cursor:not-allowed}.choices button.removed{opacity:.4;text-decoration:line-through;cursor:not-allowed;background-color:var(--surface-color)!important;border-color:var(--border-color)!important;color:var(--text-color-muted)!important}.game-header .header-left{display:flex;align-items:center}.help-button{background-color:transparent;border:1px solid var(--border-color);color:var(--text-color);font-weight:700;font-size:1rem;border-radius:50%;width:40px;height:40px;padding:0;display:inline-flex;align-items:center;justify-content:center;transition:all .2s}.help-button:hover,.help-button:focus-visible{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff;transform:scale(1.05);outline:none}.tooltip{position:relative;display:inline-block}.tooltip:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + .5rem);left:50%;transform:translate(-50%);background-color:var(--surface-color);color:var(--text-color);padding:.4rem .6rem;border-radius:var(--radius-small);border:1px solid var(--border-color);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s ease-in-out;z-index:10}.tooltip:hover:after,.tooltip:focus:after,.tooltip:focus-within:after{opacity:1}@keyframes slideInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
