:root{color-scheme:light;--ink: #10243f;--ink-soft: #496174;--ink-muted: #6f8191;--cream: #fff8ea;--cream-deep: #ffe8c2;--surface: #ffffff;--surface-warm: #fff3d8;--surface-cool: #e9fbff;--line: #dfe8ea;--line-strong: #b7cad0;--navy: #071b33;--navy-lift: #0f2f52;--cyan: #19bdf2;--cyan-strong: #0589c4;--teal: #14b8a6;--leaf: #2fd180;--leaf-strong: #108650;--sun: #ffd34e;--sun-strong: #c77700;--coral: #ff5f7e;--coral-strong: #ca254f;--violet: #8757e6;--violet-strong: #5f35b8;--cacao: #7a4424;--danger-strong: #c93737;--bg-top: var(--cream);--bg-bottom: var(--surface-cool);--panel: var(--surface);--text-main: var(--ink);--text-soft: var(--ink-soft);--accent: var(--cyan);--accent-strong: var(--cyan-strong);--accent-soft: #d8f7ff;--pink: var(--coral);--pink-soft: #ff8ca2;--pink-bg: #fff0f2;--purple: var(--violet);--purple-soft: #a98af0;--purple-deep: var(--violet-strong);--green: var(--leaf);--green-soft: #96f0c1;--orange: #ffb347;--orange-warm: #ff9f1c;--red: #ff5d5d;--yellow: var(--sun);--yellow-soft: #ffe68f;--blue: #2d8cff;--blue-soft: #74b7ff;--blue-deep: var(--navy-lift);--success: var(--green);--warning: var(--orange);--danger: var(--danger-strong);--rarity-legendary: var(--sun);--rarity-legendary-glow: rgba(255, 211, 78, .38);--rarity-epic: var(--violet);--rarity-epic-glow: rgba(135, 87, 230, .28);--rarity-rare: var(--cyan);--rarity-rare-glow: rgba(25, 189, 242, .28);--rarity-common: #8795a1;--rarity-common-glow: rgba(135, 149, 161, .18);--shadow-soft: 0 10px 24px rgba(16, 36, 63, .08);--shadow-card: 0 16px 32px rgba(16, 36, 63, .14);--shadow-pop: 0 18px 38px rgba(16, 36, 63, .18);--shadow-rarity: 0 20px 46px rgba(7, 27, 51, .2);--shadow-sm: var(--shadow-soft);--shadow: var(--shadow-card);--shadow-lg: 0 24px 58px rgba(7, 27, 51, .5);--shadow-glow-accent: 0 14px 30px rgba(25, 189, 242, .28);--shadow-glow-pink: 0 14px 30px rgba(255, 95, 126, .28);--focus-ring: rgba(255, 211, 78, .95);--z-base: 1;--z-scanner-overlay: 5;--z-scanner-guide: 6;--z-scanner-effects: 10;--z-bottom-nav: 100;--z-forge: 200;--z-reveal: 300;--z-modal: 400;--z-quiz: 500;--z-toast: 600;--text: var(--ink);--text-bright: #071b33;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 2rem;--space-8: 2.5rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--radius-xs: 8px;--radius-md: 20px;--radius-xl: 34px;--radius-full: 999px;--radius-sm: 14px;--radius-lg: 28px;--font-main: "Nunito", system-ui, sans-serif;--font-fun: "Fredoka", system-ui, sans-serif;--ease-out: cubic-bezier(.2, .8, .2, 1);--ease-pop: cubic-bezier(.18, .89, .32, 1.28)}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(180deg,var(--bg-top),var(--bg-bottom));font-family:var(--font-main);color:var(--text-main)}.voxel-warning{display:none;margin:.75rem 0 0;padding:.8rem 1rem;border-radius:var(--radius-sm);background:#0f35571f;color:#0c3c60;font-weight:600;font-size:.9rem;text-align:center;border:1px solid rgba(12,60,96,.2);line-height:1.4}.voxel-warning.is-visible{display:block}.app-shell{max-width:520px;margin:0 auto;padding:1.25rem 1.1rem 1.5rem;display:flex;flex-direction:column;gap:1.2rem;min-height:100vh;box-sizing:border-box}.btn{border:none;cursor:pointer;padding:.6rem 1rem;border-radius:16px;font-weight:600;font-family:var(--font-main);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.btn:focus-visible{outline:3px solid var(--yellow-soft);outline-offset:2px}.btn.primary{background:var(--accent);color:#0c2540;box-shadow:var(--shadow-glow-accent)}.btn.primary:disabled{opacity:.4;box-shadow:none}.btn.accent{background:linear-gradient(135deg,var(--pink-soft),var(--pink));color:#3c1030;box-shadow:var(--shadow-glow-pink)}.btn.ghost{background:#0a2f5114;color:var(--text-main)}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 22px #123c5c29}.btn:active{transform:translateY(1px) scale(.97);box-shadow:0 2px 6px #123c5c1f;transition-duration:.08s}.main-stack{display:flex;flex-direction:column;gap:1.2rem;flex:1;min-height:0}.panel{background:var(--panel);border-radius:var(--radius-lg);padding:1.2rem 1.4rem;box-shadow:var(--shadow)}.scan-hub{display:flex;flex-direction:column;gap:1.1rem;flex-shrink:0}.camera-frame{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:4 / 3;background:#031a2f;max-height:45vh}#camera-feed{width:100%;height:100%;object-fit:cover}.scan-overlay{position:absolute;inset:1.2rem;pointer-events:none}.scan-overlay span{position:absolute;width:64px;height:64px;border:6px solid rgba(255,255,255,.9);border-radius:22px;animation:glow 2s ease-in-out infinite alternate}.scan-overlay span:nth-child(1){top:0;left:0;border-right:none;border-bottom:none}.scan-overlay span:nth-child(2){top:0;right:0;border-left:none;border-bottom:none}.scan-overlay span:nth-child(3){bottom:0;left:0;border-right:none;border-top:none}.scan-overlay span:nth-child(4){bottom:0;right:0;border-left:none;border-top:none}@keyframes glow{0%{opacity:.45;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.scanner-status{position:absolute;left:1.2rem;bottom:1.1rem;margin:0;padding:.35rem .8rem;border-radius:999px;background:#041423bf;color:#f1fbff;font-weight:600;font-size:.9rem;transition:background .2s ease,color .2s ease}.scanner-status[data-tone=success]{background:#2fd180e6;color:#022915}.scanner-status[data-tone=warning]{background:#ffb347e6;color:#4a2600}.scan-feedback{position:absolute;top:1.1rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.6rem;padding:.55rem .9rem;border-radius:18px;background:#041627bf;color:#e5f9ff;font-weight:600;font-size:.9rem;box-shadow:0 12px 24px #04162740;opacity:.95;transition:transform .2s ease,background .2s ease,color .2s ease}.scan-feedback.success{background:#2fd180eb;color:#01321a;transform:translate(-50%) scale(1.03)}.scan-feedback.warning{background:#ffb347eb;color:#4a2600}.scan-feedback.error{background:#ff6b6beb;color:#3f0909}.camera-frame.scanning-active{box-shadow:0 0 0 4px #3cc2f259}.camera-frame.scanning-success{box-shadow:0 0 0 6px #2fd18080}.camera-frame.scanning-warning{box-shadow:0 0 0 6px #ffb34773}.camera-frame.scanning-active:before{content:"";position:absolute;inset:0;border-radius:inherit;animation:pulse-ring 2s cubic-bezier(.4,0,.6,1) infinite;pointer-events:none}@keyframes pulse-ring{0%{box-shadow:0 0 #3cc2f299}70%{box-shadow:0 0 0 12px #3cc2f200}to{box-shadow:0 0 #3cc2f200}}.scan-guide{position:absolute;top:50%;left:10%;right:10%;transform:translateY(-50%);pointer-events:none;z-index:var(--z-scanner-overlay)}.scan-guide-line{height:100px;border:4px solid transparent;border-left:none;border-right:none;border-radius:12px;background:linear-gradient(90deg,transparent 0%,rgba(60,194,242,.1) 20%,rgba(47,209,128,.15) 50%,rgba(255,113,177,.1) 80%,transparent 100%);box-shadow:0 0 30px #3cc2f266,inset 0 0 20px #2fd18033;animation:magical-scan 3s ease-in-out infinite;position:relative;overflow:hidden}.scan-guide-line:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:scan-sweep 2s ease-in-out infinite}.scan-guide-line:after{content:"";position:absolute;top:0;left:0;right:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#3cc2f24d,#2fd18033,#ff71b14d);animation:magical-pulse 2s ease-in-out infinite}@keyframes magical-scan{0%,to{opacity:.7;transform:scaleY(.9);box-shadow:0 0 30px #3cc2f266,inset 0 0 20px #2fd18033}50%{opacity:1;transform:scaleY(1.1);box-shadow:0 0 50px #3cc2f299,inset 0 0 30px #2fd18066}}@keyframes scan-sweep{0%{left:-100%}50%{left:100%}to{left:100%}}@keyframes magical-pulse{0%,to{opacity:.3}50%{opacity:.6}}.scan-guide-hint{margin:.8rem 0 0;text-align:center;font-size:.9rem;font-weight:600;color:#fffffff2;text-shadow:0 2px 8px rgba(0,0,0,.5),0 0 20px rgba(60,194,242,.4);animation:magical-hint 3s ease-in-out infinite;background:#0000004d;padding:.5rem 1rem;border-radius:20px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border:1px solid rgba(255,255,255,.1)}@keyframes magical-hint{0%,to{opacity:.7;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}.camera-frame:before,.camera-frame:after{content:"";position:absolute;width:40px;height:40px;border:3px solid rgba(60,194,242,.6);border-radius:50%;pointer-events:none;z-index:var(--z-scanner-guide)}.camera-frame:before{top:20px;left:20px;--glow-color: rgba(60, 194, 242, .6);--glow-color-strong: rgba(47, 209, 128, .8);animation:corner-glow 3s ease-in-out infinite}.camera-frame:after{bottom:20px;right:20px;--glow-color: rgba(255, 113, 177, .6);--glow-color-strong: rgba(255, 113, 177, .8);animation:corner-glow 3s ease-in-out infinite}@keyframes corner-glow{0%,to{opacity:.4;transform:scale(.9);box-shadow:0 0 15px var(--glow-color, rgba(60, 194, 242, .6))}50%{opacity:.8;transform:scale(1.1);box-shadow:0 0 25px var(--glow-color-strong, rgba(47, 209, 128, .8))}}.api-progress{position:absolute;bottom:0;left:0;right:0;height:4px;background:#0003;overflow:hidden;z-index:var(--z-scanner-effects)}.api-progress-bar{height:100%;background:linear-gradient(90deg,#3cc2f2cc,#2fd180cc,#3cc2f2cc);background-size:200% 100%;animation:progress-shimmer 1.5s ease-in-out infinite;width:100%}@keyframes progress-shimmer{0%{transform:translate(-100%);background-position:200% 0}to{transform:translate(100%);background-position:-200% 0}}.result-panel{display:flex;flex-direction:column;gap:1rem;flex-shrink:0;max-height:35vh;overflow-y:auto}.result-placeholder{text-align:center;color:var(--text-soft);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem 0}.result-placeholder img{width:200px;max-width:100%}.product-placeholder{text-align:center;color:var(--text-soft);padding:2rem 1rem}.product-placeholder h3{margin:0 0 .5rem;font-family:var(--font-fun);font-size:1.5rem;color:var(--text-main)}.product-placeholder p{margin:.5rem 0;font-size:.95rem}.placeholder-hint{font-size:.85rem!important;color:var(--accent-strong);font-weight:600;margin-top:1rem!important}.product-card{display:flex;flex-direction:column;gap:1rem}.product-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.product-meta h3{margin:0;font-family:var(--font-fun);font-size:1.6rem}.product-brand{margin:.2rem 0 0;color:var(--text-soft);font-size:.95rem}.power-score{background:linear-gradient(140deg,var(--green),var(--green-soft));color:#04321a;padding:.8rem 1rem;border-radius:20px;text-align:center;min-width:108px}.power-label{display:block;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase}.power-value{font-size:2.4rem;font-family:var(--font-fun);display:block;margin-top:.25rem}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem}.stat-card{background:#f3fcffe6;border-radius:18px;padding:.75rem;display:flex;flex-direction:column;gap:.4rem;box-shadow:inset 0 0 0 1px #10527a14}.stat-header{display:flex;align-items:center;justify-content:space-between;font-weight:700;font-size:.95rem}.stat-bar{height:10px;border-radius:999px;background:#0c34521f;overflow:hidden}.stat-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(135deg,var(--green),var(--green-soft));transform-origin:left center}.stat-card[data-type=toxins] .stat-bar span{background:linear-gradient(135deg,var(--red),#ffb6b6)}.stat-card[data-type=sugar] .stat-bar span{background:linear-gradient(135deg,#ffd166,var(--orange-warm))}.stat-note{margin:0;font-size:.8rem;color:var(--text-soft)}.product-actions{display:flex;gap:.7rem;flex-wrap:wrap}#show-more{flex:1}#reveal-monster{flex:2}.product-details{background:#f3fafff2;border-radius:20px;padding:1rem;color:var(--text-soft);font-size:.95rem;line-height:1.5}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.1);opacity:1}}@media(max-width:380px){.product-actions{flex-direction:column}#reveal-monster,#show-more{width:100%}}.monster-forge{position:fixed;inset:0;z-index:var(--z-forge);display:flex;align-items:center;justify-content:center;padding:1.5rem;background:radial-gradient(circle at 30% 20%,rgba(60,194,242,.18),transparent 55%),radial-gradient(circle at 70% 80%,rgba(47,209,128,.16),transparent 50%),#060c1cc7;-webkit-backdrop-filter:blur(22px) saturate(120%);backdrop-filter:blur(22px) saturate(120%);opacity:0;pointer-events:none;transition:opacity .28s ease}.food-analysis-overlay{position:fixed;inset:0;z-index:calc(var(--z-forge) + 10);display:flex;align-items:center;justify-content:center;padding:max(1.25rem,env(safe-area-inset-top)) 1.25rem max(1.25rem,env(safe-area-inset-bottom));color:#fff8e8}.food-analysis-overlay.hidden{display:none}.food-analysis-scrim{position:absolute;inset:0;background:radial-gradient(circle at 50% 38%,rgba(25,189,242,.2),transparent 34%),radial-gradient(circle at 48% 62%,rgba(47,209,128,.16),transparent 42%),#071b33d1;-webkit-backdrop-filter:blur(14px) saturate(116%);backdrop-filter:blur(14px) saturate(116%)}.food-analysis-panel{position:relative;z-index:1;width:min(100%,360px);display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center;transform:translateY(0);animation:foodAnalysisEnter .24s var(--ease-out)}.food-analysis-orb{position:relative;width:96px;height:96px;display:grid;place-items:center;border-radius:50%;color:#fff8e8;background:radial-gradient(circle at 34% 24%,rgba(255,255,255,.5),transparent 32%),linear-gradient(145deg,#19bdf2,#2fd180 58%,#ffd34e);box-shadow:0 0 0 8px #fff8ea1f,0 22px 44px #19bdf247,inset 0 -5px #071b3324}.food-analysis-orb:after{content:"";position:absolute;inset:-12px;border-radius:inherit;border:2px solid rgba(255,248,234,.36);animation:foodAnalysisPulse 1.6s ease-in-out infinite}.food-analysis-copy{display:flex;flex-direction:column;gap:.45rem}.food-analysis-eyebrow{margin:0;color:#fff8eac2;font-family:var(--font-fun);font-size:.88rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.food-analysis-copy h2{margin:0;color:#fff8e8;font-family:var(--font-fun);font-size:clamp(2rem,9vw,3.1rem);line-height:.96;font-weight:900;text-wrap:balance;text-shadow:0 12px 26px rgba(7,27,51,.28)}.food-analysis-copy p:last-child{margin:0 auto;max-width:18rem;color:#fff8ead1;font-weight:800;line-height:1.3;text-wrap:balance}.food-analysis-close{min-height:52px;padding:.78rem 1.2rem;border:2px solid rgba(255,255,255,.52);border-radius:var(--radius-full);background:linear-gradient(180deg,rgba(255,255,255,.34),transparent 48%),linear-gradient(135deg,#18c8f6,#86f0c7);color:#08233b;font-family:var(--font-fun);font-weight:900;box-shadow:0 16px 28px #19bdf23d,inset 0 -3px #071b331f;cursor:pointer}.food-analysis-overlay[data-state=failed] .food-analysis-orb{background:radial-gradient(circle at 34% 24%,rgba(255,255,255,.46),transparent 32%),linear-gradient(145deg,#ffd34e,#ff9f1c);color:#4a2c08}.food-analysis-overlay[data-state=failed] .food-analysis-orb:after{animation:none;border-color:#ffd34e7a}@keyframes foodAnalysisEnter{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes foodAnalysisPulse{0%,to{opacity:.52;transform:scale(.96)}50%{opacity:1;transform:scale(1.08)}}.monster-forge.visible{opacity:1;pointer-events:auto}.monster-forge-panel{position:relative;width:min(420px,100%);padding:2rem 1.8rem 2.2rem;border-radius:30px;background:linear-gradient(160deg,#12224ce6,#193f61d9,#167884c7);border:1px solid rgba(255,255,255,.18);box-shadow:0 30px 90px #071020a6,inset 0 0 0 1px #ffffff0a;overflow:hidden;color:#f6fbff}.monster-forge-panel>*{position:relative;z-index:1}.monster-forge-orb{position:absolute;inset:-40% -20% 20%;background:radial-gradient(circle at center,rgba(60,194,242,.45),transparent 65%);filter:blur(14px);opacity:.9;animation:forgePulse 4s ease-in-out infinite alternate,forgeColorCycle 8s ease-in-out infinite}@keyframes forgePulse{0%{transform:scale(.9) rotate(-3deg);opacity:.7}to{transform:scale(1.15) rotate(3deg);opacity:1}}@keyframes forgeColorCycle{0%,to{background:radial-gradient(circle at center,rgba(60,194,242,.45),transparent 65%)}33%{background:radial-gradient(circle at center,rgba(168,85,247,.45),transparent 65%)}66%{background:radial-gradient(circle at center,rgba(255,113,177,.45),transparent 65%)}}.monster-forge-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.monster-forge-pill{font-size:.75rem;text-transform:uppercase;letter-spacing:.16em;padding:.35rem .8rem;border-radius:999px;background:#ffffff1f;border:1px solid rgba(255,255,255,.25)}.monster-forge-spinner{width:46px;height:46px;border-radius:50%;border:4px solid rgba(255,255,255,.18);border-top-color:var(--accent-strong);animation:forgeSpin 1.05s linear infinite}@keyframes forgeSpin{to{transform:rotate(360deg)}}.monster-forge-visual{position:relative;width:100%;aspect-ratio:4 / 3;margin-bottom:1.4rem;border-radius:22px;overflow:hidden;background:radial-gradient(circle at 50% 15%,rgba(255,255,255,.2),transparent 65%),linear-gradient(180deg,#0d1f36eb,#102d48c7);box-shadow:inset 0 0 20px #00000047,0 22px 45px #050c1966}.monster-forge-viewer{position:absolute;inset:0;display:none}.monster-forge-viewer.voxel-fallback{display:flex;align-items:center;justify-content:center;text-align:center;padding:1rem;color:#f6fbfff2;font-weight:600;background:linear-gradient(180deg,#0d1f36eb,#102d48c7)}.monster-forge-viewer.voxel-fallback .voxel-fallback-message{max-width:220px;line-height:1.45}.monster-forge-viewer.active{display:block}.monster-forge-viewer canvas{display:block;width:100%;height:100%}.monster-forge-name{margin:0;font-family:var(--font-fun);font-size:2rem;letter-spacing:.01em}.monster-forge-product{margin:.1rem 0 .5rem;color:#eff7ffd9;font-size:.95rem}.monster-forge-rarity{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;margin:0 auto .8rem;padding:.35rem .9rem;border-radius:999px;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;min-width:120px;box-shadow:0 8px 20px #00000059}.monster-forge-rarity[data-rarity=common]{background:linear-gradient(135deg,var(--rarity-common),#d1d5db);color:#1f2937}.monster-forge-rarity[data-rarity=rare]{background:linear-gradient(135deg,var(--rarity-rare),var(--blue-soft));color:#f1f9ff}.monster-forge-rarity[data-rarity=epic]{background:linear-gradient(135deg,var(--rarity-epic),var(--purple-soft));color:#faf5ff}.monster-forge-rarity[data-rarity=legendary]{background:linear-gradient(135deg,var(--rarity-legendary),#ffa500);color:#3f2b00}.monster-forge-message{margin:0 0 1.2rem;font-size:1rem;font-weight:600;color:#eff7ffe6}.monster-forge-progress-wrap{position:relative;width:100%;height:8px;border-radius:999px;background:#ffffff1f;overflow:hidden;margin-bottom:1.4rem}.monster-forge-progress-bar{position:absolute;inset:0;background:linear-gradient(90deg,var(--green),var(--accent),var(--purple),var(--pink));background-size:300% 100%;animation:forgeProgressGlow 3s ease-in-out infinite;transform-origin:left;transform:scaleX(0);transition:transform 1.6s cubic-bezier(.4,0,.2,1)}@keyframes forgeProgressGlow{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.monster-forge-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem;margin-bottom:1.6rem}.monster-forge-stat{display:flex;flex-direction:column;gap:.35rem;padding:.4rem .35rem;background:#ffffff14;border-radius:var(--radius-sm);box-shadow:inset 0 0 0 1px #ffffff14}.forge-stat-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#eff7ffbf}.forge-stat-meter{position:relative;width:100%;height:6px;border-radius:999px;background:#ffffff2e;overflow:hidden}.forge-stat-fill{position:absolute;inset:0;background:linear-gradient(90deg,#3cc2f2f2,#2fd180f2);transform-origin:left;transform:scaleX(0);transition:transform .6s ease}.forge-stat-value{font-size:1.1rem;font-weight:700;color:#fff}.monster-forge-power{display:flex;flex-direction:column;gap:.1rem;align-items:center}.monster-forge-hint{margin-top:1.4rem;font-size:.85rem;color:#eff7ffb8}@media(max-width:460px){.monster-forge-panel{padding:1.6rem 1.2rem 1.8rem}.monster-forge-stats{gap:.6rem}}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid rgba(60,194,242,.2);padding:.5rem 0 calc(.5rem + env(safe-area-inset-bottom));display:flex;justify-content:space-around;align-items:center;z-index:var(--z-bottom-nav);box-shadow:0 -8px 32px #123c5c1f;width:100%;max-width:520px}@media(min-width:768px){.bottom-nav{max-width:520px;border-radius:20px 20px 0 0;box-shadow:0 -4px 20px #123c5c26}}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;background:none;border:none;padding:.5rem .8rem;min-height:44px;cursor:pointer;transition:all .2s ease;flex:1;max-width:80px;color:var(--text-soft);border-radius:12px}.nav-item:hover{background:#3cc2f214}.nav-item:focus-visible{outline:3px solid var(--yellow-soft);outline-offset:2px}.nav-item.active{color:var(--accent-strong)}.nav-item.active .nav-icon{animation:navBounce .4s cubic-bezier(.34,1.56,.64,1)}.nav-item:active{transform:scale(.92);transition-duration:.08s}.nav-icon{display:flex;align-items:center;justify-content:center;transition:transform .2s ease}@keyframes navBounce{0%{transform:scale(1)}40%{transform:scale(1.25)}70%{transform:scale(.95)}to{transform:scale(1.1)}}.nav-label{font-size:.7rem;font-weight:600;text-align:center}.nav-item-main{position:relative;width:64px;height:64px;min-height:64px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-strong));box-shadow:0 8px 24px #3cc2f266;margin:-20px 0 0;padding:0;flex:0 0 auto}.nav-item-main:hover{background:linear-gradient(135deg,var(--accent),var(--accent-strong));transform:scale(1.1) translateY(-2px);box-shadow:0 12px 32px #3cc2f280}.nav-item-main:active{transform:scale(1.05) translateY(-1px)}.nav-icon-main{display:flex;align-items:center;justify-content:center;color:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.nav-item-main:before{content:"";position:absolute;inset:-4px;border-radius:inherit;background:inherit;filter:blur(8px);opacity:.5;z-index:-1}.nav-item-main.scanning:after{content:"";position:absolute;inset:-8px;border-radius:inherit;border:3px solid var(--accent);opacity:0;animation:navPulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes navPulse{0%{transform:scale(.8);opacity:.8}70%{transform:scale(1.2);opacity:0}to{transform:scale(1.2);opacity:0}}.magic-effects{position:absolute;inset:0;pointer-events:none;z-index:var(--z-scanner-effects);opacity:0;transition:opacity .3s ease}.magic-effects.active{opacity:1}.magic-portal{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:160px;height:160px;border-radius:50%;background:radial-gradient(circle at center,rgba(60,194,242,.12) 0%,rgba(47,209,128,.08) 40%,transparent 70%);animation:portalPulse 2.5s ease-in-out infinite}@keyframes portalPulse{0%,to{transform:translate(-50%,-50%) scale(.92);opacity:.5}50%{transform:translate(-50%,-50%) scale(1.08);opacity:.9}}.magic-sparks{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:160px;height:160px}.spark{position:absolute;width:6px;height:6px;border-radius:50%;animation:sparkFloat 2.5s ease-in-out infinite}.spark-1{top:15%;left:50%;animation-delay:0s;background:var(--yellow)}.spark-2{top:30%;left:85%;animation-delay:.5s;background:var(--pink)}.spark-3{top:75%;left:20%;animation-delay:1s;background:var(--accent)}.spark-4{top:80%;left:70%;animation-delay:1.5s;background:var(--green)}@keyframes sparkFloat{0%,to{transform:translateY(0) scale(.8);opacity:.4}50%{transform:translateY(-15px) scale(1.2);opacity:1}}.view-scanner .scan-overlay,.view-scanner .scan-guide,.view-scanner .scan-feedback,.view-scanner .scanner-status{display:block!important}body:not(.view-scanner) .scan-overlay,body:not(.view-scanner) .scan-guide,body:not(.view-scanner) .scan-feedback,body:not(.view-scanner) .scanner-status{display:none!important}.app-shell{padding-bottom:calc(4.5rem + env(safe-area-inset-bottom))}@media(min-width:481px){.bottom-nav{max-width:520px}}.stat-info-modal{position:fixed;inset:0;z-index:var(--z-quiz);display:flex;align-items:center;justify-content:center;padding:1.25rem}.stat-info-backdrop{position:absolute;inset:0;background:#0c1226b8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.stat-info-content{position:relative;width:100%;max-width:420px;background:#fffffff7;border-radius:24px;padding:1.75rem;box-shadow:0 22px 45px #141e3c40;z-index:1;color:var(--text-main);animation:modalSlideIn .28s cubic-bezier(.34,1.56,.64,1)}.stat-info-close{position:absolute;top:.75rem;right:.75rem;width:34px;height:34px;border-radius:50%;border:none;background:#0000000f;color:var(--text-main);font-size:1.5rem;font-weight:600;cursor:pointer;transition:transform .2s ease,background .2s ease}.stat-info-close:hover{transform:translateY(-1px) scale(1.05);background:#0000001f}.stat-info-header{display:flex;align-items:center;gap:.85rem;margin-bottom:1.25rem}.stat-info-icon{font-size:2.2rem;display:inline-flex;width:3rem;height:3rem;align-items:center;justify-content:center;background:#ff638424;border-radius:1.1rem;box-shadow:inset 0 0 0 2px #fff9}.stat-info-title-group h3{margin:0;font-family:var(--font-fun);font-size:1.45rem;line-height:1.1;color:var(--text-main)}.stat-info-value{margin:.25rem 0 0;font-weight:700;font-size:1.05rem;color:var(--accent)}.stat-info-description{margin:0 0 1.25rem;font-size:.95rem;color:var(--text-soft);line-height:1.5}.stat-info-section{background:#437eff0f;border-radius:16px;padding:.9rem 1rem;margin-bottom:1rem}.stat-info-section h4{margin:0 0 .6rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:#3d4a74}.stat-info-section ul{margin:0;padding-left:1rem;display:flex;flex-direction:column;gap:.35rem}.stat-info-section li{font-size:.92rem;color:var(--text-main);position:relative}.stat-info-section li::marker{color:var(--accent)}.stat-info-section.empty{display:none}@media(max-width:420px){.stat-info-content{padding:1.5rem 1.25rem;border-radius:20px}.stat-info-icon{width:2.6rem;height:2.6rem;font-size:1.9rem}}.adult-info-modal{position:fixed;inset:0;z-index:var(--z-quiz);display:flex;align-items:center;justify-content:center;padding:1rem}.adult-info-backdrop{position:absolute;inset:0;background:#0c1226e0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.adult-info-content{position:relative;width:100%;max-width:450px;max-height:88vh;background:linear-gradient(135deg,#fffffffa,#f5f7fafa);border-radius:20px;box-shadow:0 20px 40px #141e3c4d;z-index:1;color:#1a202c;animation:modalSlideIn .3s cubic-bezier(.34,1.56,.64,1);display:flex;flex-direction:column}.adult-info-close{position:absolute;top:.75rem;right:.75rem;width:32px;height:32px;border-radius:50%;border:none;background:#00000014;color:#1a202c;font-size:1.4rem;font-weight:600;cursor:pointer;z-index:var(--z-scanner-effects);transition:all .2s ease;display:flex;align-items:center;justify-content:center;line-height:1}.adult-info-close:hover{background:#00000024;transform:scale(1.08)}.adult-info-close:active{transform:scale(.95)}.adult-info-header{padding:.75rem 1rem .6rem;border-bottom:1px solid rgba(0,0,0,.08)}.adult-info-header h3{font-size:.9rem;font-weight:700;margin:0;color:#1a202c}.adult-info-body{padding:.7rem 1rem 1rem;overflow-y:auto;flex:1}.adult-info-body::-webkit-scrollbar{width:6px}.adult-info-body::-webkit-scrollbar-track{background:#0000000a;border-radius:3px}.adult-info-body::-webkit-scrollbar-thumb{background:#0000002e;border-radius:3px}.adult-info-body::-webkit-scrollbar-thumb:hover{background:#00000047}.adult-info-body .info-section{background:#ffffffb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:8px;padding:.6rem;margin-bottom:.6rem;border:1px solid rgba(0,0,0,.06)}.adult-info-body .info-section:last-child{margin-bottom:0}.adult-info-body .info-section-title{font-size:.7rem;font-weight:700;margin:0 0 .45rem;color:#1a202c;text-transform:uppercase;letter-spacing:.04em}.adult-info-body .info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.3rem}.adult-info-body .info-item{display:flex;flex-direction:column;gap:.08rem}.adult-info-body .info-label{font-size:.75rem;font-weight:600;color:#0000008c;text-transform:uppercase;letter-spacing:.03em}.adult-info-body .info-value{font-size:.85rem;font-weight:700;color:#1a202c}.adult-info-body .toxicity-summary{display:flex;flex-direction:column;gap:.3rem}.adult-info-body .toxicity-item{display:flex;justify-content:space-between;align-items:center;padding:.32rem .4rem;background:#ffffffa6;border-radius:5px}.adult-info-body .toxicity-label{font-size:.75rem;font-weight:600;color:#000000a6;text-transform:uppercase;letter-spacing:.03em}.adult-info-body .toxicity-value{font-size:.85rem;font-weight:700;color:#1a202c}.adult-info-body .toxicity-value.toxicity-high{color:#e74c3c;font-weight:800}.adult-info-body .additives-list{display:flex;flex-direction:column;gap:.35rem}.adult-info-body .additive-item{display:flex;align-items:center;justify-content:space-between;padding:.35rem;background:#ffffffa6;border-radius:5px;font-size:.78rem}.adult-info-body .additive-code{font-weight:700;font-size:.75rem;color:#e74c3c}.adult-info-body .additive-name{flex:1;margin:0 .3rem;font-size:.78rem;color:#1a202c}.adult-info-body .additive-risk{font-size:.75rem;font-weight:600;padding:.12rem .3rem;background:#e74c3c26;color:#e74c3c;border-radius:3px}.adult-info-body .ingredients-text{margin:0;line-height:1.4;color:#1a202c;font-size:.65rem}.adult-info-body .processing-level{display:flex;align-items:center;gap:.6rem}.adult-info-body .processing-badge{display:inline-block;padding:.3rem .6rem;border-radius:5px;font-weight:700;font-size:.65rem}.adult-info-body .processing-badge[data-level="1"]{background:linear-gradient(135deg,#2ecc71,#27ae60);color:#fff}.adult-info-body .processing-badge[data-level="2"]{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff}.adult-info-body .processing-badge[data-level="3"]{background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff}.adult-info-body .processing-badge[data-level="4"]{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff}.adult-info-body .processing-desc{font-size:.65rem;color:#1a202c;font-weight:600}@media(max-width:768px){.adult-info-content{max-width:92vw;max-height:90vh}.adult-info-header{padding:.65rem .95rem .5rem}.adult-info-header h3{font-size:.85rem}.adult-info-body{padding:.6rem .95rem .95rem}.adult-info-body .info-grid{grid-template-columns:1fr}}.barcode-toast{display:flex;align-items:center;gap:.6rem;margin-top:.75rem;padding:.8rem 1rem;background:#ff6b6b26;border:1px solid rgba(255,107,107,.3);border-radius:var(--radius-sm);color:var(--text-main);font-weight:600;font-size:.9rem;animation:toastSlideIn .3s ease-out}.barcode-toast.hidden{display:none}.barcode-toast-icon{font-size:1.4rem;flex-shrink:0}.barcode-toast-text{margin:0}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(-12px) scale(.95)}60%{opacity:1;transform:translateY(3px) scale(1.01)}to{opacity:1;transform:translateY(0) scale(1)}}.profile-edit-modal{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:1rem}.profile-edit-backdrop{position:absolute;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.profile-edit-container{position:relative;width:100%;max-width:400px;z-index:1}.profile-edit-panel{background:var(--panel);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden;animation:modalSlideIn .3s cubic-bezier(.34,1.56,.64,1)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.profile-edit-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 1.5rem 1rem;border-bottom:1px solid rgba(0,0,0,.08)}.profile-edit-header h2{margin:0;font-family:var(--font-fun);font-size:1.5rem;color:var(--text-main)}.btn-close{background:none;border:none;font-size:1.8rem;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;cursor:pointer;color:var(--text-soft);transition:all .2s ease}.btn-close:hover{background:#00000014;color:var(--text-main)}.profile-edit-content{padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.profile-photo-section{display:flex;flex-direction:column;align-items:center;gap:1rem}.profile-photo-label{cursor:pointer}.profile-photo-preview{position:relative;width:120px;height:120px;border-radius:50%;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;overflow:hidden;border:4px solid var(--accent);transition:all .2s ease}.profile-photo-preview:hover{transform:scale(1.05);box-shadow:0 8px 20px #3cc2f24d}.profile-photo-icon{font-size:3.5rem}.profile-photo-img{width:100%;height:100%;object-fit:cover}.profile-photo-overlay{position:absolute;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.9rem;font-weight:600;opacity:.7;transition:opacity .2s ease;border-radius:50%}.profile-photo-label:hover .profile-photo-overlay{opacity:1}.profile-name-section{display:flex;flex-direction:column;gap:.5rem}.profile-label{font-weight:600;color:var(--text-main);font-size:.95rem}.profile-name-input{padding:.8rem 1rem;border:2px solid rgba(0,0,0,.1);border-radius:16px;font-size:1.1rem;font-family:var(--font-main);transition:border-color .2s ease,box-shadow .2s ease;background:var(--panel)}.profile-name-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #3cc2f233}.profile-name-counter{text-align:right;font-size:.85rem;color:var(--text-soft)}.profile-edit-actions{display:flex;gap:.8rem;margin-top:.5rem}.profile-edit-actions .btn{flex:1;padding:.8rem 1rem}.clickable{cursor:pointer;transition:opacity .2s ease}.clickable:hover{opacity:.8}.footer-panels{display:flex;flex-direction:column;gap:1.2rem;flex:1;min-height:0}.panel-header{margin-bottom:1rem}.panel-header h2{margin:0;font-family:var(--font-fun);font-size:1.7rem}.panel-subtitle{margin:.3rem 0 0;color:var(--text-soft);font-size:.95rem}.monster-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.85rem;margin-top:1rem}.monster-card{background:var(--panel);border-radius:16px;padding:.75rem;box-shadow:var(--shadow-sm);border:2px solid transparent;display:flex;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;cursor:pointer;position:relative}.history-rank-badge{position:absolute;top:-8px;left:-8px;background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:#fff;font-family:var(--font-fun);font-weight:700;font-size:.75rem;padding:.3rem .6rem;border-radius:999px;box-shadow:0 4px 12px #3cc2f266;z-index:2;border:2px solid var(--panel)}.monster-card:hover{transform:translateY(-4px) rotate(-.5deg);box-shadow:0 12px 28px #0000002e}.monster-card:active{transform:translateY(0) scale(.98);transition-duration:.08s}.monster-card[data-rarity=legendary]:hover{box-shadow:0 12px 32px #ffaa0059}.monster-card[data-rarity=epic]:hover{box-shadow:0 12px 28px #a335ee40}.monster-card[data-rarity=rare]:hover{box-shadow:0 12px 28px #5e9eff40}.monster-card:focus-visible{outline:none;border-color:#3cc2f2cc;box-shadow:0 0 0 3px #3cc2f240}.monster-card[data-rarity=common]{border-color:#c8c8c84d}.monster-card[data-rarity=rare]{border-color:#5e9eff80;background:linear-gradient(135deg,#5e9eff0d,#5e9eff05)}.monster-card[data-rarity=epic]{border-color:#a335ee80;background:linear-gradient(135deg,#a335ee0d,#a335ee05)}.monster-card[data-rarity=legendary]{border-color:#fa09;background:linear-gradient(135deg,#ffaa0014,#ffaa0008);box-shadow:0 4px 20px #fa03}.monster-card[data-metadata=basic]{border-style:dashed;opacity:.92}.monster-card-content{display:flex;align-items:center;gap:.85rem;width:100%}.monster-card-visual{position:relative;flex:0 0 110px;width:110px;aspect-ratio:4 / 3;border-radius:var(--radius-sm);overflow:hidden;background:radial-gradient(circle at 50% 12%,rgba(255,255,255,.25),transparent 70%),linear-gradient(185deg,#0b1c38e6,#11375cb3);box-shadow:inset 0 0 12px #0003}.monster-card-ai-img{display:block;width:100%;height:100%;object-fit:cover;position:relative;z-index:1}.monster-card-info{flex:1;display:flex;flex-direction:column;gap:.35rem;min-width:0}.monster-card-header{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.monster-name{margin:0;font-family:var(--font-fun);font-size:1.05rem;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monster-card-tags{display:flex;flex-wrap:wrap;gap:.35rem}.monster-tag{display:inline-flex;align-items:center;gap:.25rem;font-size:.78rem;font-weight:600;padding:.25rem .6rem;border-radius:999px;background:#ffffff14;color:var(--text)}.monster-tag.power{background:#36bdff2e;color:#2f9fde}.monster-tag.mood{background:#a335ee1f;color:#8446cf}.monster-tag.data-status{background:#ffb34729;color:#8a4b00;border:1px solid rgba(255,179,71,.34)}.monster-tag.data-status-unknown{background:#3cc2f229;color:#09668e;border-color:#3cc2f25c}.monster-tag.source-status{background:#2fd18024;color:#0a6b3e;border:1px solid rgba(47,209,128,.3)}.monster-tag.quality-status{background:#3b82f61f;color:#1d5ea8;border:1px solid rgba(59,130,246,.25)}.monster-tag.quiz-status{background:#ff71b129;color:#9b2364;border:1px solid rgba(255,113,177,.32)}.monster-tag.metadata-status{background:#4d62741a;color:var(--text-soft);border:1px dashed rgba(77,98,116,.28)}.monster-meta{margin:0;font-size:.82rem;color:var(--text-soft)}.monster-meta-product{color:var(--text);font-weight:600}.monster-rarity{font-size:.7rem;font-weight:700;padding:.3rem .65rem;border-radius:999px;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.monster-rarity[data-rarity=common]{background:#c8c8c833;color:#666}.monster-rarity[data-rarity=rare]{background:#5e9eff33;color:#5e9eff}.monster-rarity[data-rarity=epic]{background:#a335ee33;color:#a335ee}.monster-rarity[data-rarity=legendary]{background:#ffaa0040;color:#f80;animation:shimmer 2s ease-in-out infinite}@keyframes shimmer{0%,to{opacity:1}50%{opacity:.7}}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-soft)}.empty-state p:first-child{font-size:3rem;margin:0 0 .5rem;animation:emptyFloat 3s ease-in-out infinite}.empty-hint{font-size:.9rem;color:var(--text-soft);margin:.25rem 0 0}@keyframes emptyFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.history-list,.leaderboard-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.history-list li,.leaderboard-list li{background:#3cc2f20d;border-radius:12px;padding:.9rem 1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;border-left:4px solid var(--accent);transition:background .2s ease,transform .2s ease}.history-list li:hover,.leaderboard-list li:hover{background:#3cc2f21a;transform:translate(4px)}.history-list li span,.leaderboard-list li span{font-weight:600}.history-list li small{font-size:.8rem;color:var(--text-soft);display:block;margin-top:.25rem}.history-list li{flex-direction:column;align-items:flex-start;gap:.35rem}.top-section{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.top-section:last-of-type{margin-bottom:0}.top-section-header{display:flex;flex-direction:column;gap:.25rem}.top-section-header--with-filter{gap:.5rem}.top-section-header h3{margin:0;font-size:1.1rem}.top-section-subtitle{margin:0;font-size:.85rem;color:var(--text-soft)}.top-main-filter{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:1.5rem;padding:.5rem;background:#00000008;border-radius:12px}.top-main-filter-btn{flex:1;background:#3cc2f214;border:2px solid transparent;border-radius:10px;padding:.75rem 1.25rem;font-size:.95rem;font-weight:600;color:var(--text-soft);transition:all .25s ease;cursor:pointer;text-align:center}.top-main-filter-btn:hover{background:#3cc2f226;transform:translateY(-2px);box-shadow:0 4px 12px #3cc2f233}.top-main-filter-btn.active{background:linear-gradient(135deg,#3cc2f240,#3cc2f226);border-color:#3cc2f280;color:var(--text-bright);box-shadow:0 4px 16px #3cc2f24d,0 0 0 2px #3cc2f233}.top-main-filter-btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.top-filter{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.top-filter-btn{background:#3cc2f21f;border:1px solid transparent;border-radius:999px;padding:.35rem .85rem;font-size:.85rem;color:var(--text-soft);transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}.top-filter-btn:hover{transform:translateY(-1px)}.top-filter-btn.active{background:#3cc2f238;border-color:#3cc2f273;color:var(--text-bright);box-shadow:0 0 0 1px #3cc2f240}.top-filter-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.top-list.compact li{padding:.7rem .85rem}.top-list.explorers li span:last-of-type{font-size:.9rem;color:var(--text-soft)}.top-list.explorers li small{font-size:.78rem}.top-list li:nth-child(1){border-left-color:var(--yellow);background:#ffd7000f}.top-list li:nth-child(2){border-left-color:silver;background:#c0c0c00f}.top-list li:nth-child(3){border-left-color:#cd7f32;background:#cd7f320f}@media(min-width:520px){.top-section-header--with-filter{flex-direction:row;align-items:center;justify-content:space-between}}.auth-gate{position:fixed;inset:0;z-index:var(--z-modal);display:block;padding:0;min-height:100dvh;touch-action:pan-y;animation:fadeIn .25s ease-out;overflow:hidden;background:var(--navy);--auth-copy-color: #4a2c08;--auth-copy-shadow: rgba(255, 251, 239, .82)}.auth-screen{position:absolute;inset:0;overflow:hidden;opacity:0;pointer-events:none;transition:opacity .28s var(--ease-out)}.auth-screen.is-active{opacity:1;pointer-events:auto}.auth-screen:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#071b3300,#071b3305 47%,#fff8ea2e 66%,#fff8eae6 86%,#fff8eafc),linear-gradient(90deg,rgba(7,27,51,.18),transparent 28%,transparent 72%,rgba(7,27,51,.16))}.auth-hero-art{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:center top}.auth-hero-art--soft{filter:saturate(1.04) brightness(.92)}.auth-copy{position:absolute;z-index:1;left:max(1.4rem,env(safe-area-inset-left));right:max(1.4rem,env(safe-area-inset-right));bottom:calc(5.7rem + env(safe-area-inset-bottom));width:min(560px,calc(100vw - 2.8rem));margin:0 auto;color:var(--auth-copy-color);display:flex;flex-direction:column;gap:.65rem;text-align:left}.auth-copy h2{font-family:Fredoka,sans-serif;font-weight:700;font-size:clamp(2.35rem,11vw,5rem);line-height:.92;letter-spacing:0;margin:0;color:var(--auth-copy-color);text-shadow:0 2px 0 var(--auth-copy-shadow),0 14px 32px rgba(68,41,10,.16);text-wrap:balance}.auth-copy p{margin:0;color:var(--auth-copy-color)}.auth-card-stage{position:absolute;z-index:1;top:calc(.55rem + env(safe-area-inset-top));left:max(1rem,env(safe-area-inset-left));right:max(1rem,env(safe-area-inset-right));display:flex;justify-content:center;pointer-events:none}.yuki-game-card{--card-stat-center-y: 73.753%;position:relative;width:min(86vw,380px);aspect-ratio:1060 / 1484;container-type:inline-size;filter:drop-shadow(0 24px 30px rgba(19,38,9,.22));color:#3d240b;transform:rotate(-1.5deg);transform-origin:center}.yuki-game-card:before{content:"";position:absolute;inset:18% 11.5% 35.5% 12%;z-index:0;border-radius:10%/8%;background:radial-gradient(circle at 45% 18%,rgba(255,241,145,.38),transparent 55%),linear-gradient(180deg,#5f831d,#173312)}.yuki-game-card-frame,.yuki-game-card-art,.yuki-game-card-content{position:absolute}.yuki-game-card-frame{inset:0;z-index:3;width:100%;height:100%;object-fit:contain;pointer-events:none}.yuki-game-card-art{left:12.2%;right:11.6%;top:19.1%;z-index:1;width:76.2%;height:45.8%;object-fit:cover;object-position:center;border-radius:9%/7%}.yuki-game-card-content{inset:0;z-index:4;pointer-events:none}.yuki-game-card-name{position:absolute;top:8.9%;left:19%;right:19%;margin:0;font-family:var(--font-fun);font-size:clamp(1rem,8.2cqw,2.05rem);font-weight:800;line-height:1;color:#4b270b;text-align:center;text-shadow:0 1px 0 rgba(255,243,200,.88);white-space:nowrap}.yuki-game-card-rarity{position:absolute;top:16.4%;left:50%;transform:translate(-50%);padding:.08rem .42rem;border-radius:var(--radius-full);background:#ffee9ad1;border:1px solid rgba(120,71,0,.18);color:#694300;font-size:clamp(.5rem,2.7cqw,.66rem);font-weight:900;letter-spacing:0;text-transform:uppercase}.yuki-game-card-stats{margin:0}.yuki-game-card-stat{position:absolute;top:var(--card-stat-center-y);left:var(--card-stat-center-x);width:14.8%;height:4.9%;display:flex;align-items:center;justify-content:center;transform:translate(-50%,-50%)}.yuki-game-card-stat dt{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.yuki-game-card-stat dd{margin:0;font-family:var(--font-fun);font-size:clamp(.84rem,6.4cqw,1.58rem);line-height:1;font-weight:900;font-variant-numeric:tabular-nums;color:#fff8e8;text-shadow:0 2px 0 rgba(60,27,3,.45),0 4px 8px rgba(60,27,3,.24);transform:translateY(-.08em)}.yuki-game-card-stat--heart{--card-stat-center-x: 21.745%}.yuki-game-card-stat--energy{--card-stat-center-x: 40.094%}.yuki-game-card-stat--brain{--card-stat-center-x: 59.575%}.yuki-game-card-stat--shield{--card-stat-center-x: 77.783%}.yuki-game-card-power{position:absolute;left:34.5%;right:12.5%;top:80.1%;height:10.4%;display:flex;flex-direction:column;justify-content:center;gap:.18rem;color:#4b270b}.yuki-game-card-power strong{font-family:var(--font-fun);font-size:clamp(.64rem,4.8cqw,1.28rem);line-height:1;color:#38620d}.yuki-game-card-power p{margin:0;font-size:clamp(.56rem,3cqw,.84rem);line-height:1.12;font-weight:900;color:#4b270b}.auth-screen--card-preview:after{background:linear-gradient(180deg,#071b330f,#071b3324 38%,#fff8ea2e 68%,#fff8eaf0 88%,#fff8eafc),linear-gradient(90deg,rgba(7,27,51,.2),transparent 28%,transparent 72%,rgba(7,27,51,.18))}.auth-screen--card-preview .auth-copy{bottom:calc(5.7rem + env(safe-area-inset-bottom));text-align:center}.auth-screen--card-preview .auth-copy h2{font-size:clamp(2rem,9vw,4rem)}.auth-challenge-stage{position:absolute;z-index:1;top:calc(4.2rem + env(safe-area-inset-top));left:max(1.1rem,env(safe-area-inset-left));right:max(1.1rem,env(safe-area-inset-right));display:flex;justify-content:center;pointer-events:none}.challenge-preview{width:min(88vw,410px);padding:1rem;border:2px solid rgba(255,251,239,.68);border-radius:28px;background:radial-gradient(circle at 16% 14%,rgba(255,211,78,.32),transparent 28%),linear-gradient(155deg,#0d3752e6,#10243fe6 56%,#412708d1);color:#fff8e8;box-shadow:0 24px 38px #071b3347,inset 0 1px #ffffff3d}.challenge-preview-header,.team-balance-header,.team-balance-grid{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.challenge-preview-header{font-size:.9rem;font-weight:900;color:#fff8eacc;text-transform:uppercase}.challenge-preview-header strong,.team-balance-header strong{color:#ffd34e;font-variant-numeric:tabular-nums}.challenge-preview-goal{display:flex;align-items:center;gap:.75rem;margin-top:.9rem}.challenge-preview-icon{width:52px;height:52px;display:flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:18px;color:#ff5f7e;background:linear-gradient(180deg,#fff4dc,#ffd3dd);box-shadow:inset 0 -3px #7f2f1424}.challenge-heart-icon{display:block;color:#ff5f7e;fill:currentColor}.challenge-preview-goal strong,.challenge-preview-goal div>span,.team-balance-header span,.team-balance-grid span{display:block}.challenge-preview-goal strong{font-family:var(--font-fun);font-size:clamp(1.35rem,5.4vw,2rem);line-height:.96;color:#fff8e8}.challenge-preview-goal span{margin-top:.2rem;font-size:.9rem;font-weight:800;color:#fff8eab8}.challenge-preview-meter{height:16px;margin-top:.95rem;overflow:hidden;border-radius:var(--radius-full);background:#fff8ea38;box-shadow:inset 0 2px 6px #071b3347}.challenge-preview-meter span{display:block;width:73%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ff5f7e,#ffd34e,#2fd180)}.team-balance{margin-top:.9rem;padding-top:.9rem;border-top:1px solid rgba(255,248,234,.22)}.team-balance-header span{font-size:.95rem;font-weight:900;color:#fff8eadb}.team-balance-grid{margin-top:.65rem}.team-balance-grid span{min-width:0;flex:1;padding:.54rem .42rem;border-radius:17px;background:#fff8ea1f;color:#fff8eabd;font-size:.72rem;font-weight:900;text-align:center}.team-balance-grid strong{display:block;color:#fff8e8;font-family:var(--font-fun);font-size:1.25rem;line-height:1;font-variant-numeric:tabular-nums}.auth-screen--challenge-preview .auth-copy{bottom:calc(5.7rem + env(safe-area-inset-bottom))}.auth-screen--challenge-preview .auth-copy h2{font-size:clamp(2.15rem,10vw,4.4rem)}.auth-nav{position:absolute;z-index:2;inset:0;pointer-events:none}.auth-nav-button{position:absolute;bottom:calc(1rem + env(safe-area-inset-bottom));height:56px;padding:0;border:0;cursor:pointer;pointer-events:auto;box-shadow:0 12px 28px #071b3347;transition:background .18s var(--ease-out),opacity .18s var(--ease-out),transform .18s var(--ease-out)}.auth-nav-button--prev{left:max(1rem,env(safe-area-inset-left));width:56px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#fff8eaf0;color:var(--navy)}.auth-nav-button--next{right:max(1rem,env(safe-area-inset-right));min-width:138px;width:auto;display:flex;align-items:center;justify-content:center;gap:.35rem;padding:0 .85rem 0 1.15rem;border-radius:var(--radius-full);background:var(--leaf-strong);color:#fff}.auth-nav-label{font-family:var(--font-main);font-size:1rem;font-weight:700;line-height:1}.auth-nav-button:hover:not(:disabled){transform:translateY(-2px)}.auth-nav-button--prev:hover:not(:disabled){background:#fff}.auth-nav-button--next:hover:not(:disabled){background:#0d7345}.auth-nav-button:active:not(:disabled){transform:translateY(1px) scale(.98)}.auth-nav-button:focus-visible{outline:4px solid rgba(255,211,78,.9);outline-offset:3px}.auth-nav-button.hidden{display:none!important}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}50%{transform:translate(4px)}75%{transform:translate(-3px)}}@media(max-width:540px){.auth-copy{bottom:calc(5.4rem + env(safe-area-inset-bottom))}.auth-copy h2{font-size:clamp(2.25rem,10.5vw,3.85rem)}.auth-card-stage{top:calc(.55rem + env(safe-area-inset-top))}.yuki-game-card{width:min(87vw,350px)}.auth-challenge-stage{top:calc(3.15rem + env(safe-area-inset-top))}.challenge-preview{width:min(86vw,360px)}.team-balance-grid{gap:.45rem}}@media(max-height:700px){.yuki-game-card{width:min(60vw,245px)}.auth-screen--card-preview .auth-copy{bottom:calc(4.9rem + env(safe-area-inset-bottom))}.auth-copy h2{font-size:clamp(2rem,9.4vw,3rem)}.auth-challenge-stage{top:calc(2.15rem + env(safe-area-inset-top))}.challenge-preview{width:min(82vw,335px);padding:.82rem}.challenge-preview-goal{margin-top:.6rem}.challenge-preview-icon{width:44px;height:44px;border-radius:15px}.team-balance{margin-top:.65rem;padding-top:.65rem}.team-balance-grid span{padding:.42rem .3rem;font-size:.64rem}.team-balance-grid strong{font-size:1.05rem}.auth-screen--challenge-preview .auth-copy{bottom:calc(4.9rem + env(safe-area-inset-bottom))}}@media(max-width:380px){.profile-edit-container{max-width:100%}.profile-edit-content{padding:1rem}.profile-photo-preview{width:100px;height:100px}.profile-photo-icon{font-size:3rem}.monster-grid{grid-template-columns:1fr}}.collection-controls{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.75rem;flex-wrap:wrap}.collection-progress-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:.5rem;margin-top:.85rem}.collection-progress-pill{display:flex;align-items:center;gap:.6rem;min-width:0;padding:.65rem .7rem;border-radius:14px;background:#3cc2f214;border:1px solid rgba(60,194,242,.16)}.collection-progress-pill strong{flex:0 0 auto;min-width:2ch;font-family:var(--font-fun);font-size:1.25rem;color:var(--text-bright);text-align:center}.collection-progress-text{display:flex;flex-direction:column;min-width:0;line-height:1.1}.collection-progress-text span{font-size:.8rem;font-weight:800;color:var(--text-main)}.collection-progress-text small{margin-top:.16rem;font-size:.72rem;font-weight:700;color:var(--text-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collection-tabs{display:inline-flex;background:#0000000a;border-radius:999px;padding:.25rem;gap:.25rem}.collection-tab{border:none;background:transparent;color:var(--text-soft);font-weight:600;font-size:.85rem;padding:.35rem .85rem;border-radius:999px;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease}.collection-tab:active{transform:scale(.95);transition-duration:.08s}.collection-tab.active{background:#3cc2f226;color:var(--text-main);transform:translateY(-1px)}.collection-tab:focus-visible{outline:none;box-shadow:0 0 0 2px #3cc2f259}.collection-sort{display:inline-flex;align-items:center;gap:.45rem;font-size:.85rem;color:var(--text-soft)}.collection-sort-select{position:relative}.collection-sort-select:after{content:"▾";position:absolute;right:.6rem;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--text-soft);font-size:.75rem}.collection-sort-select select{appearance:none;background:#0000000a;border:1px solid rgba(0,0,0,.08);border-radius:999px;padding:.35rem 1.75rem .35rem .85rem;color:var(--text-main);font-weight:600;font-size:.85rem;cursor:pointer}.collection-sort-select select:focus-visible{outline:none;border-color:#3cc2f2cc;box-shadow:0 0 0 2px #3cc2f240}@media(max-width:520px){.collection-controls{flex-direction:column;align-items:stretch}.collection-sort{width:100%;justify-content:space-between}.collection-sort-select select{width:100%}.collection-progress-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}.modal{position:fixed;inset:0;z-index:var(--z-quiz);display:flex;align-items:center;justify-content:center;padding:1rem}.modal-backdrop{position:absolute;inset:0;background:#0c1226d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-content{position:relative;width:100%;max-width:480px;background:linear-gradient(135deg,#fffffffa,#f5f7faf2);border-radius:24px;box-shadow:0 25px 50px #141e3c4d;z-index:1;color:var(--text-main);animation:modalSlideIn .3s cubic-bezier(.34,1.56,.64,1);overflow:hidden;max-height:90vh;display:flex;flex-direction:column}.quiz-modal{z-index:var(--z-quiz)}.quiz-content{max-width:480px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 1.5rem 1rem;border-bottom:1px solid rgba(0,0,0,.08);background:linear-gradient(135deg,var(--accent-soft),rgba(255,255,255,.8))}.modal-title{margin:0;font-family:var(--font-fun);font-size:1.5rem;color:var(--text-main);display:flex;align-items:center;gap:.5rem}.quiz-title:before{content:"🧠";font-size:1.3rem}.modal-close{width:36px;height:36px;border-radius:50%;border:none;background:#0000000f;color:var(--text-main);font-size:1.5rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;line-height:1}.modal-close:hover{background:#0000001f;transform:scale(1.05)}.modal-body{padding:1.5rem;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:1.5rem}.quiz-question{font-size:1.2rem;font-weight:600;color:var(--text-main);line-height:1.4;margin:0;padding:1rem;background:#3cc2f214;border-radius:16px;border-left:4px solid var(--accent)}.quiz-options{display:flex;flex-direction:column;gap:.75rem}.quiz-option{padding:1rem 1.25rem;border:2px solid rgba(0,0,0,.08);border-radius:16px;background:var(--panel);color:var(--text-main);font-size:1rem;font-weight:500;text-align:left;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.quiz-option:hover:not(:disabled){background:#3cc2f20d;border-color:#3cc2f24d;transform:translateY(-3px) scale(1.01);box-shadow:0 6px 16px #3cc2f22e}.quiz-option:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #3cc2f240}.quiz-option.selected{background:#3cc2f226;border-color:var(--accent);color:var(--accent-strong);font-weight:600}.quiz-option.selected:after{content:"✓";position:absolute;right:1rem;top:50%;transform:translateY(-50%);font-size:1.2rem;color:var(--accent);font-weight:700}.quiz-option.correct{background:#2fd18026;border-color:var(--green);color:#0d5f2f}.quiz-option.correct:after{content:"✓";position:absolute;right:1rem;top:50%;transform:translateY(-50%);font-size:1.2rem;color:var(--green);font-weight:700}.quiz-option.incorrect{background:#ff6b6b26;border-color:var(--red);color:#a02c2c}.quiz-option.incorrect:after{content:"✗";position:absolute;right:1rem;top:50%;transform:translateY(-50%);font-size:1.2rem;color:var(--red);font-weight:700}.quiz-option:disabled{cursor:not-allowed;opacity:.7}.quiz-explanation{padding:1rem;background:linear-gradient(135deg,#fff3b066,#ffeaa74d);border-radius:16px;border-left:4px solid #f59e0b;color:#78350f;font-size:.95rem;line-height:1.5;animation:explanationFadeIn .3s ease-out}.quiz-explanation:before{content:"💡 ";font-size:1.1rem}@keyframes explanationFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.modal-footer{display:flex;gap:.75rem;padding:1rem 1.5rem 1.5rem;background:#ffffff80;border-top:1px solid rgba(0,0,0,.05)}.modal-footer .btn{flex:1;padding:.8rem 1rem;border-radius:16px;font-weight:600;font-size:1rem;transition:all .2s ease;cursor:pointer;border:none}.modal-footer .btn-primary{background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:#fff;box-shadow:0 4px 12px #3cc2f24d}.modal-footer .btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #3cc2f266}.modal-footer .btn-primary:disabled{background:#0000001a;color:#0006;box-shadow:none;cursor:not-allowed}.modal-footer .btn-secondary{background:#0000000f;color:var(--text-main);border:1px solid rgba(0,0,0,.1)}.modal-footer .btn-secondary:hover{background:#0000001a;transform:translateY(-1px)}.modal-footer .btn-warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-weight:600;box-shadow:0 4px 12px #f59e0b4d}.modal-footer .btn-warning:hover{background:linear-gradient(135deg,#d97706,#b45309);transform:translateY(-2px);box-shadow:0 6px 16px #f59e0b66}.modal-footer .btn-warning:active{transform:translateY(-1px)}@media(max-width:480px){.quiz-content{max-width:100%;margin:.5rem;border-radius:20px}.quiz-header{padding:1.25rem 1.25rem .75rem}.quiz-title{font-size:1.3rem}.quiz-body{padding:1.25rem;gap:1.25rem}.quiz-question{font-size:1.1rem;padding:.875rem}.quiz-option{padding:.875rem 1rem;font-size:.95rem}.quiz-footer{padding:.875rem 1.25rem 1.25rem;gap:.625rem}.quiz-footer .btn{padding:.75rem .875rem;font-size:.95rem}}@media(max-width:380px){.quiz-header{padding:1rem 1rem .5rem}.quiz-title{font-size:1.2rem}.quiz-body{padding:1rem;gap:1rem}.quiz-question{font-size:1rem;padding:.75rem}.quiz-option{padding:.75rem .875rem;font-size:.9rem}.quiz-footer{padding:.75rem 1rem 1rem;flex-direction:column}.quiz-footer .btn{width:100%}.quiz-skip-confirm{padding:1.75rem 1.5rem;text-align:center}.quiz-skip-confirm.hidden{display:none}.quiz-skip-title{margin:0 0 1rem;font-family:var(--font-fun);font-size:1.5rem;color:var(--text-main);display:flex;align-items:center;justify-content:center;gap:.5rem}.quiz-skip-title:before{content:"⚠️";font-size:1.3rem}.quiz-skip-confirm>p{margin:0 0 1rem;color:var(--text-soft);font-size:1rem;font-weight:600}.consequences-list{list-style:none;padding:1rem;margin:0 0 1.25rem;text-align:left;background:#ffffffb3;border-radius:12px;border:1px solid rgba(255,179,71,.2)}.consequences-list li{margin-bottom:.75rem;display:flex;align-items:center;font-size:.95rem;color:var(--text-main);line-height:1.4}.consequences-list li:last-child{margin-bottom:0}.quiz-skip-actions{display:flex;gap:.75rem;justify-content:center;padding-top:.5rem}@media(max-width:480px){.quiz-skip-confirm{padding:1.5rem 1.25rem}.quiz-skip-title{font-size:1.3rem}.quiz-skip-confirm>p{font-size:.95rem}.consequences-list{padding:.875rem}.consequences-list li{font-size:.9rem}}.quiz-skip-confirm{padding:1.25rem 1rem}.quiz-skip-title{font-size:1.2rem}.quiz-skip-confirm>p{font-size:.9rem}.consequences-list{padding:.75rem}.consequences-list li{font-size:.85rem}.quiz-skip-actions{flex-direction:column}.quiz-skip-actions .btn{width:100%}.skip-feedback-message{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:var(--z-toast);background:linear-gradient(135deg,#fffffffa,#f5f7faf2);border-radius:20px;box-shadow:0 20px 40px #141e3c4d;padding:1.5rem;max-width:350px;width:90%;opacity:0;transform:translate(-50%,-50%) scale(.9);transition:all .3s ease;border:2px solid rgba(245,158,11,.3)}.skip-feedback-message.show{opacity:1;transform:translate(-50%,-50%) scale(1)}.skip-feedback-content{text-align:center}.skip-feedback-content h4{margin:0 0 1rem;font-family:var(--font-fun);font-size:1.3rem;color:var(--text-main);display:flex;align-items:center;justify-content:center;gap:.5rem}.skip-feedback-content h4:before{content:"⚠️";font-size:1.2rem}.skip-feedback-content p{margin:0 0 1rem;color:var(--text-soft);font-size:.95rem;line-height:1.4}.skip-feedback-content ul{list-style:none;padding:0;margin:0 0 1rem;text-align:left;background:#fff3b033;border-radius:12px;padding:1rem;border:1px solid rgba(245,158,11,.2)}.skip-feedback-content li{margin-bottom:.5rem;display:flex;align-items:center;font-size:.9rem;color:var(--text-main);line-height:1.3}.skip-feedback-content li:last-child{margin-bottom:0}.skip-tip{margin:0;padding:.75rem;background:#3cc2f21a;border-radius:12px;font-size:.85rem;color:var(--accent-strong);font-weight:600;border-left:3px solid var(--accent)}.penalized-capture-overlay{position:fixed;inset:0;z-index:var(--z-toast);display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#0c1226d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transition:opacity .3s ease}.penalized-capture-overlay.show{opacity:1}.penalized-capture-content{position:relative;width:100%;max-width:320px;background:linear-gradient(135deg,#fffffff2,#f5f7fae6);border-radius:24px;padding:2rem 1.5rem;box-shadow:0 25px 50px #141e3c4d;text-align:center;z-index:1;color:var(--text-main);animation:modalSlideIn .3s cubic-bezier(.34,1.56,.64,1);border:2px solid rgba(245,158,11,.3)}.penalized-icon{font-size:3rem;margin-bottom:1rem;animation:pulse 1.5s ease-in-out infinite}.penalized-capture-content h3{margin:0 0 .75rem;font-family:var(--font-fun);font-size:1.4rem;color:var(--text-main)}.penalized-capture-content p{margin:0;color:var(--text-soft);font-size:.95rem;line-height:1.4}@media(max-width:480px){.penalized-capture-content{max-width:280px;padding:1.75rem 1.25rem}.penalized-icon{font-size:2.5rem}.penalized-capture-content h3{font-size:1.3rem}.penalized-capture-content p{font-size:.9rem}}}@keyframes quizModalHide{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.9) translateY(-10px)}}@keyframes correctAnswerPulse{0%{transform:scale(1);box-shadow:0 0 #2fd180b3}50%{transform:scale(1.05);box-shadow:0 0 20px 10px #2fd18000}to{transform:scale(1);box-shadow:0 0 #2fd18000}}@keyframes incorrectAnswerShake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes correctAnswerGlow{0%{box-shadow:0 0 #2fd18000}50%{box-shadow:0 0 30px 10px #2fd1804d}to{box-shadow:0 0 #2fd18000}}@keyframes quizCompletionSuccess{0%{transform:scale(1)}50%{transform:scale(1.03)}to{transform:scale(1)}}@keyframes quizCompletionSkip{0%{transform:scale(1);opacity:1}to{transform:scale(.98);opacity:.8}}@keyframes celebrationParticles{0%{opacity:1;transform:translateY(0) scale(0)}50%{opacity:1;transform:translateY(-50px) scale(1)}to{opacity:0;transform:translateY(-100px) scale(.5)}}@keyframes confirmButtonPulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes correctShine{0%{background-position:200% 200%}to{background-position:-200% -200%}}@keyframes incorrectWave{0%{width:0;height:0;opacity:.8}to{width:200%;height:200%;opacity:0}}.quiz-modal.show{animation:modalSlideIn .4s cubic-bezier(.175,.885,.32,1.275)}.quiz-modal.hide{animation:quizModalHide .3s ease}.quiz-option.correct{animation:correctAnswerPulse .6s ease-out;background-color:#2fd18026!important;border-color:var(--green)!important;color:#0d5f2f!important;font-weight:600!important}.quiz-option.incorrect{animation:incorrectAnswerShake .5s ease-in-out;background-color:#ff6b6b26!important;border-color:var(--red)!important;color:#a02c2c!important}.celebration-particle{position:absolute;width:10px;height:10px;border-radius:50%;animation:celebrationParticles 1s ease-out forwards;pointer-events:none;z-index:calc(var(--z-quiz) + 1)}.confetti-piece{position:absolute;width:10px;height:10px;border-radius:2px;pointer-events:none;z-index:calc(var(--z-quiz) + 1)}.quiz-option{position:relative;overflow:hidden}.quiz-option:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease;pointer-events:none}.quiz-option:hover:before{width:100%;height:100%}.quiz-option.selected:before{width:100%;height:100%;background:#3cc2f21a}.quiz-option.correct:after{content:"";position:absolute;inset:0;background:linear-gradient(45deg,transparent 30%,rgba(255,255,255,.4) 50%,transparent 70%);background-size:200% 200%;animation:correctShine 1.5s ease;pointer-events:none}.quiz-option.incorrect:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ff6b6b33;transform:translate(-50%,-50%);animation:incorrectWave .6s ease-out;pointer-events:none}.modal-footer .btn-primary:active:not(:disabled){transform:translateY(-1px) scale(.98)}.modal-footer .btn-primary:disabled{opacity:.5;cursor:not-allowed}.modal-content:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(60,194,242,.05) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(47,209,128,.05) 0%,transparent 50%);pointer-events:none;z-index:-1}@media(max-width:480px){@keyframes incorrectAnswerShake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-3px)}20%,40%,60%,80%{transform:translate(3px)}}@keyframes correctAnswerPulse{0%{transform:scale(1);box-shadow:0 0 #2fd180b3}50%{transform:scale(1.03);box-shadow:0 0 15px 8px #2fd18000}to{transform:scale(1);box-shadow:0 0 #2fd18000}}}.icon{display:inline-block;vertical-align:middle;flex-shrink:0}.icon-spin{animation:iconSpin 1.2s linear infinite}@keyframes iconSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.nav-item .nav-active-dot{width:4px;height:4px;border-radius:50%;background:var(--accent);margin-top:2px;opacity:0;transition:opacity .2s ease}.nav-item.active .nav-active-dot{opacity:1}html{min-height:100%;background:var(--cream)}body{min-height:100dvh;background:linear-gradient(180deg,#fff8eaf5,#e9fbffeb 52%,#ffe8c2c7),linear-gradient(135deg,rgba(25,189,242,.08) 0%,transparent 34%,rgba(47,209,128,.08) 68%,rgba(255,211,78,.1) 100%);color:var(--ink);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,.btn,.nav-item,.collection-tab,.top-main-filter-btn,.top-filter-btn,.quiz-option,.monster-card,.card-stat{touch-action:manipulation}:where(button,input,select,[role=button],.btn,.monster-card):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;box-shadow:0 0 0 6px #ffd34e38}.app-shell{position:relative;isolation:isolate;overflow:hidden;max-width:540px;min-height:100dvh;padding:calc(.85rem + env(safe-area-inset-top)) 1rem calc(5.85rem + env(safe-area-inset-bottom));gap:1rem}.app-shell:before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background:linear-gradient(180deg,#fffbefd1,#fff3d83d 42%,#fff8eae6),repeating-linear-gradient(95deg,rgba(86,49,11,.12) 0 2px,transparent 2px 42px),repeating-linear-gradient(4deg,rgba(255,255,255,.12) 0 1px,transparent 1px 34px),linear-gradient(145deg,#f9df9e,#d5a04d 48%,#a86d32);filter:saturate(1.04)}.app-shell:after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,#ffffff85,#fff8ea1a 45%,#fff8eaeb),repeating-linear-gradient(135deg,transparent 0 30px,rgba(25,189,242,.08) 30px 32px,transparent 32px 68px),linear-gradient(90deg,rgba(47,209,128,.11),transparent 28%,transparent 72%,rgba(25,189,242,.12))}.panel{background:#fffffff0;border:1px solid rgba(16,36,63,.08);box-shadow:var(--shadow-soft)}.panel-subtitle,.monster-meta,.stat-note,.product-brand{color:var(--ink-soft)}.panel-header h2,.product-meta h3,.product-placeholder h3,.profile-edit-header h2,.modal-title{color:var(--ink);letter-spacing:0}.quiz-title:before,.quiz-explanation:before,.quiz-skip-title:before,.skip-feedback-content h4:before{content:"";display:none}.btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border:1px solid transparent;border-radius:var(--radius-sm);font-weight:800;color:var(--ink);transition:transform .18s var(--ease-out),box-shadow .18s var(--ease-out),background .18s var(--ease-out),border-color .18s var(--ease-out)}.btn.primary,.modal-footer .btn-primary{background:linear-gradient(135deg,var(--cyan),#55d8ff);color:var(--navy);border-color:#0589c42e;box-shadow:0 12px 24px #19bdf242}.btn.accent{background:linear-gradient(135deg,var(--coral),#ff9b64);color:#fff8f6;border-color:#ca254f33;box-shadow:0 12px 24px #ff5f7e42}.btn.ghost,.modal-footer .btn-secondary{background:#10243f0f;color:var(--ink);border-color:#10243f1a}.btn:hover:not(:disabled),.modal-footer .btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-card)}.btn:active:not(:disabled),.modal-footer .btn:active:not(:disabled){transform:translateY(1px) scale(.97)}.btn:disabled,.modal-footer .btn:disabled{cursor:not-allowed;opacity:.48;transform:none;box-shadow:none}.panel{border-radius:var(--radius-lg);padding:1rem}.scan-hub{min-height:calc(100dvh - 6.75rem - env(safe-area-inset-top) - env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:center;gap:1.15rem;padding:.5rem 0 0;background:transparent;border:0;box-shadow:none}.camera-backdrop-feed{display:none}.first-capture-intro{display:none;width:min(100%,460px);margin:0 auto;color:#4a2c08;text-align:center}.first-capture-intro h2{margin:0;font-family:var(--font-fun);font-size:clamp(2rem,8vw,3.35rem);font-weight:900;line-height:.94;color:#4a2c08;text-shadow:0 2px 0 rgba(255,251,239,.9),0 12px 28px rgba(72,38,8,.16);text-wrap:balance}.first-capture-instruction{display:none;width:min(100%,360px);margin:-.25rem auto 0;color:#4a2c08cc;font-size:clamp(1rem,4vw,1.18rem);font-weight:800;line-height:1.18;text-align:center;text-wrap:balance;text-shadow:0 1px 0 rgba(255,251,239,.85)}.first-capture-mode .first-capture-intro,.first-capture-mode .first-capture-instruction{display:block}.first-capture-mode .camera-backdrop-feed[data-active=true]{display:block;position:fixed;inset:-2rem;z-index:-1;width:calc(100% + 4rem);height:calc(100% + 4rem);object-fit:cover;opacity:.46;filter:blur(18px) saturate(1.08) brightness(.94);transform:scale(1.06);pointer-events:none}.first-capture-mode .app-shell{padding-bottom:calc(1.1rem + env(safe-area-inset-bottom))}.first-capture-mode .bottom-nav,.first-capture-mode .voxel-warning{display:none!important}.first-capture-mode .scan-hub{min-height:calc(100dvh - 1.95rem - env(safe-area-inset-top) - env(safe-area-inset-bottom));justify-content:flex-start;padding-top:calc(1rem + env(safe-area-inset-top))}.scanner-lens-stage{position:relative;isolation:isolate;width:min(132vw,560px);aspect-ratio:1103 / 1218;margin:-.35rem auto 0;filter:drop-shadow(0 26px 34px rgba(72,38,8,.22))}.scanner-magnifier{position:absolute;inset:0;z-index:4;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.magnifier-light{position:absolute;z-index:5;pointer-events:none;background:linear-gradient(180deg,#e7ffff,#76f4ff 42%,#11c8f4);border-radius:var(--radius-full);opacity:.78;mix-blend-mode:screen;filter:blur(.5px);box-shadow:0 0 10px #76f4fff2,0 0 26px #19bdf2b8,0 0 44px #19bdf26b;animation:magnifierLightPulse 1.9s ease-in-out infinite}.magnifier-light-left{left:4.4%;top:36.8%;width:3.8%;height:13.2%}.magnifier-light-right{left:78.2%;top:36.9%;width:3.8%;height:13.2%}.magnifier-light-bottom{left:40.9%;top:71.7%;width:14.8%;height:3.9%;animation-delay:.22s}@keyframes magnifierLightPulse{0%,to{opacity:.62;box-shadow:0 0 8px #76f4ffd6,0 0 22px #19bdf294,0 0 38px #19bdf257}46%{opacity:1;box-shadow:0 0 14px #e7ffff,0 0 34px #76f4ffe6,0 0 62px #19bdf29e}}.panel-header h2{display:inline-flex;align-items:center;gap:.45rem;font-size:clamp(1.35rem,6vw,1.75rem)}.camera-frame{position:absolute;left:13.78%;top:16.75%;z-index:1;width:56.84%;max-height:none;aspect-ratio:1;isolation:isolate;border-radius:50%;border:0;background:var(--navy);box-shadow:inset 0 0 0 1px #fffbef52,0 18px 36px #071b3338}#camera-feed{position:relative;z-index:0;filter:saturate(1.18) contrast(1.08) brightness(1.04);transform:scale(1.1)}.camera-frame:before,.camera-frame.scanning-active:before,.camera-frame.scanning-success:before,.camera-frame.scanning-warning:before{content:"";position:absolute;inset:0;width:auto;height:auto;z-index:1;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at 34% 20%,rgba(255,255,255,.26),transparent 33%),linear-gradient(145deg,rgba(216,247,255,.15),transparent 42%);opacity:.42;border:none;box-shadow:none;transform:none;animation:none}.camera-frame:after{content:"";position:absolute;inset:0;z-index:2;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at 50% 48%,transparent 58%,rgba(7,27,51,.36) 100%)}.scan-overlay,.scan-guide,.scan-feedback,.scanner-status,.api-progress,.magic-effects{z-index:4}.main-stack:not(.hidden) .scan-feedback,.main-stack:not(.hidden) .scanner-status{display:block!important}.main-stack.hidden .scan-overlay,.main-stack.hidden .scan-guide,.main-stack.hidden .scan-feedback,.main-stack.hidden .scanner-status{display:none!important}.scan-overlay{display:none!important;inset:11%;border:2px solid rgba(255,251,239,.72);border-radius:50%;box-shadow:inset 0 0 32px #d8f7ff29,0 0 28px #19bdf247}.scan-overlay span{display:none}.scan-guide{display:none!important;left:18%;right:18%}.scan-guide-line{height:54px;border:2px solid rgba(255,251,239,.28);border-radius:999px;background:linear-gradient(90deg,transparent,rgba(25,189,242,.16),rgba(47,209,128,.15),rgba(255,211,78,.12),transparent);box-shadow:0 0 22px #19bdf23d,inset 0 0 18px #19bdf229;animation:scannerGuidePulse 2.6s ease-in-out infinite}.scan-guide-line:before{height:3px;top:50%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.92),var(--cyan),rgba(255,255,255,.92),transparent);transform:translateY(-50%);animation:scanSweep 1.8s ease-in-out infinite}.scan-guide-line:after{display:none}@keyframes scannerGuidePulse{0%,to{opacity:.8;transform:scaleY(.98)}50%{opacity:1;transform:scaleY(1.04)}}.scan-guide-hint{display:none}.scanner-status,.scan-feedback{background:#071b33d1;color:#f2fbff;border:1px solid rgba(255,255,255,.14);box-shadow:0 10px 20px #071b333d}.scan-feedback{max-width:calc(100% - 2rem);border-radius:16px}.first-capture-mode .scan-feedback:not(.success):not(.warning):not(.error),.first-capture-mode .scanner-status{width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;opacity:0}.scan-feedback p{margin:0;min-width:0}.first-capture-mode .scan-feedback.warning,.first-capture-mode .scan-feedback.error{top:50%;width:min(74%,15rem);padding:.62rem .75rem;justify-content:center;white-space:normal;text-align:left;line-height:1.14;font-size:clamp(.74rem,3.1vw,.86rem);transform:translate(-50%,-50%)}.photo-capture-button{position:relative;z-index:8;display:inline-flex;align-items:center;justify-content:center;gap:.56rem;min-width:min(76vw,276px);min-height:62px;margin:-1.05rem auto 0;padding:.85rem 1.3rem;border:2px solid rgba(255,255,255,.66);border-radius:var(--radius-full);background:linear-gradient(180deg,rgba(255,255,255,.42),transparent 48%),linear-gradient(135deg,#18c8f6,#71e8ff 55%,#86f0c7);color:#08233b;font-family:var(--font-fun);font-size:clamp(1.02rem,4.35vw,1.2rem);font-weight:900;letter-spacing:0;box-shadow:0 16px 28px #19bdf23d,inset 0 -4px #071b331f,inset 0 2px #ffffffb3;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,filter .16s ease}.photo-capture-button:hover{transform:translateY(-2px);box-shadow:0 20px 34px #19bdf24d,inset 0 -4px #071b331f,inset 0 2px #ffffffbd}.photo-capture-button:active{transform:translateY(1px) scale(.99)}.photo-capture-button:focus-visible{outline:4px solid rgba(255,211,78,.75);outline-offset:4px}.photo-capture-button:disabled{cursor:progress;filter:saturate(.86)}.photo-capture-button[data-pending=true] .icon{animation:photoButtonPulse .72s ease-in-out infinite alternate}#scanner-alternatives .scanner-alternative-button,#scanner-alternatives .manual-scan-input,#scanner-alternatives .manual-scan-submit{min-height:44px}.dev-capture-panel{position:relative;z-index:8;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:.42rem;width:min(92vw,560px);margin:.58rem auto 0;padding:.44rem;border:1px solid rgba(10,42,69,.12);border-radius:18px;background:#ffffff5c;box-shadow:0 10px 26px #1a76871a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.dev-capture-label{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 .48rem;border-radius:12px;background:#08233be6;color:#fbf7df;font-family:var(--font-fun);font-size:.72rem;font-weight:900;letter-spacing:.08em}.dev-capture-button{min-height:38px;padding:.42rem .5rem;border:1px solid rgba(8,35,59,.14);border-radius:13px;background:#fffcebe0;color:#12324a;font-family:var(--font-rounded);font-size:.78rem;font-weight:900;letter-spacing:0;box-shadow:inset 0 -2px #08233b14;cursor:pointer;transition:transform .14s ease,background .14s ease,box-shadow .14s ease}.dev-capture-button:hover{transform:translateY(-1px);background:#fff8d6;box-shadow:0 8px 18px #1a76871f,inset 0 -2px #08233b14}.dev-capture-button:focus-visible{outline:3px solid rgba(255,211,78,.78);outline-offset:3px}.dev-capture-button:disabled{cursor:progress;opacity:.62;transform:none}@keyframes photoButtonPulse{0%{transform:scale(.92)}to{transform:scale(1.08)}}@media(max-width:560px){.dev-capture-panel{grid-template-columns:repeat(2,minmax(0,1fr));width:min(88vw,360px)}.dev-capture-label{grid-column:1 / -1}}.scan-feedback.success,.scanner-status[data-tone=success]{background:#2fd180f0;color:#062719;border-color:#ffffff3d}.scan-feedback.warning,.scanner-status[data-tone=warning]{background:#ffd34ef2;color:#3c2800}.scan-feedback.error{background:#ff5f7ef2;color:#3a0711}.camera-frame.scanning-active,.camera-frame.scanning-success,.camera-frame.scanning-warning{box-shadow:inset 0 0 0 1px #19bdf242,0 20px 38px #071b334d}.camera-frame.scanning-success{border-color:#2fd18094}.camera-frame.scanning-warning{border-color:#ffd34e9e}.api-progress{height:5px;background:#071b336b}.api-progress-bar{background:linear-gradient(90deg,var(--cyan),var(--leaf),var(--sun),var(--cyan));background-size:240% 100%}.magic-portal{display:none}.magic-sparks{width:170px;height:120px}.spark{width:9px;height:4px;border-radius:var(--radius-full);box-shadow:0 0 12px currentColor}.profile-name-input,.collection-sort-select select{min-height:44px;color:var(--ink);border-color:#10243f1f;background:#ffffffeb}.profile-name-input:focus,.collection-sort-select select:focus-visible{border-color:var(--cyan);box-shadow:0 0 0 4px #19bdf22e}.barcode-toast,.voxel-warning{background:#fff3d8f5;border-color:#ff5f7e47;color:var(--ink)}.product-card{color:var(--ink)}.power-score{background:linear-gradient(135deg,var(--leaf),#b7f4cd);color:#07351e;border:1px solid rgba(16,134,80,.18);box-shadow:0 12px 24px #2fd18033}.stat-card,.product-details,.collection-progress-pill,.stat-info-section{background:#fff8eac7;border:1px solid rgba(16,36,63,.08);box-shadow:inset 0 1px #ffffffd1}.stat-bar{height:12px;background:#10243f1f}.stat-bar span{background:linear-gradient(90deg,var(--leaf),var(--teal))}.stat-card[data-type=toxins] .stat-bar span{background:linear-gradient(90deg,var(--coral),#ffb36a)}.monster-forge{background:#071b33db;-webkit-backdrop-filter:blur(18px) saturate(118%);backdrop-filter:blur(18px) saturate(118%)}.monster-forge-panel{background:linear-gradient(180deg,#0f2f52f5,#071b33f5),var(--navy);border:1px solid rgba(216,247,255,.18);box-shadow:0 28px 70px #00000075,inset 0 1px #ffffff1f}.monster-forge-orb{display:none}.monster-forge-pill{background:#d8f7ff1a;border-color:#d8f7ff38}.monster-forge-spinner{border-color:#ffffff2e;border-top-color:var(--sun)}.monster-forge-progress-bar{background:linear-gradient(90deg,var(--cyan),var(--leaf),var(--sun),var(--coral))}.bottom-nav{width:calc(100% - 1rem);max-width:520px;bottom:.5rem;padding:.45rem .55rem calc(.45rem + env(safe-area-inset-bottom));border-radius:24px;background:#fffffff0;border:1px solid rgba(16,36,63,.1);box-shadow:0 -8px 26px #10243f24}.nav-item{min-height:48px;border-radius:16px;color:var(--ink-soft);font-weight:800}.nav-item:hover{background:#19bdf217}.nav-item.active{color:var(--cyan-strong);background:#19bdf21a}.nav-item .nav-active-dot{width:16px;height:3px;border-radius:var(--radius-full);background:currentColor}.nav-item-main{width:66px;height:66px;min-height:66px;background:linear-gradient(145deg,var(--cyan),var(--leaf));border:3px solid #ffffff;box-shadow:0 12px 28px #19bdf257,0 0 0 1px #10243f14}.nav-item-main:before{inset:-5px;background:linear-gradient(145deg,#19bdf252,#2fd18042);filter:blur(7px);opacity:.55}.nav-item-main:hover{background:linear-gradient(145deg,var(--cyan),var(--leaf))}.modal-backdrop,.profile-edit-backdrop,.adult-info-backdrop,.stat-info-backdrop{background:#071b33c7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-content,.profile-edit-panel,.adult-info-content,.stat-info-content{background:#fffffff7;border:1px solid rgba(16,36,63,.1);box-shadow:var(--shadow-pop)}.modal-content:before{display:none}.modal-header{background:linear-gradient(135deg,#d8f7ffdb,#fff3d8db)}.modal-close,.stat-info-close,.adult-info-close,.btn-close{min-width:44px;min-height:44px;border-radius:var(--radius-full)}.quiz-question{background:#e9fbffe6;border-left-color:var(--cyan);color:var(--ink)}.quiz-option{min-height:52px;background:var(--surface);border-color:#10243f1a;color:var(--ink);box-shadow:0 6px 14px #10243f0f}.quiz-option:hover:not(:disabled){background:#e9fbffd9;border-color:#19bdf25c}.quiz-option.selected{background:#d8f7ffeb;border-color:var(--cyan);color:var(--navy)}.quiz-option.correct{background:#2fd18029!important;border-color:var(--leaf-strong)!important;color:#064226!important}.quiz-option.incorrect{background:#ff5f7e24!important;border-color:var(--coral-strong)!important;color:#6e0c20!important}.quiz-explanation,.skip-tip{background:#fff3d8f5;border-left-color:var(--sun);color:#573800}.consequences-list,.skip-feedback-content ul{background:#fff3d8db;border-color:#ffd34e42}.footer-panels{gap:1rem}.collection-controls,.top-main-filter,.collection-tabs{background:#10243f0d;border:1px solid rgba(16,36,63,.08)}.collection-tabs,.top-main-filter{border-radius:18px}.collection-tab,.top-main-filter-btn,.top-filter-btn{min-height:44px;color:var(--ink-soft);font-weight:800}.collection-tab.active,.top-main-filter-btn.active,.top-filter-btn.active{background:#19bdf229;color:var(--navy);border-color:#19bdf252;box-shadow:inset 0 0 0 1px #19bdf224}.monster-grid{grid-template-columns:1fr;gap:.85rem}.monster-card{overflow:hidden;min-height:132px;background:linear-gradient(180deg,#fffffffa,#fff8eab8),var(--surface);border:1px solid rgba(16,36,63,.08);border-radius:22px;box-shadow:var(--shadow-soft)}.monster-card:before{content:"";position:absolute;inset:0 auto 0 0;width:7px;background:var(--rarity-common);opacity:.95}.monster-card-content{position:relative;z-index:1}.monster-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-card)}.monster-card[data-rarity=common],.monster-card[data-rarity=uncommon]{border-color:#8795a147}.monster-card[data-rarity=rare]{border-color:#19bdf26b;box-shadow:0 14px 28px var(--rarity-rare-glow)}.monster-card[data-rarity=epic]{border-color:#8757e66b;box-shadow:0 16px 32px var(--rarity-epic-glow)}.monster-card[data-rarity=legendary]{border-color:#ffd34eb8;box-shadow:0 18px 38px var(--rarity-legendary-glow)}.monster-card[data-rarity=rare]:before{background:linear-gradient(180deg,var(--cyan),var(--teal))}.monster-card[data-rarity=epic]:before{background:linear-gradient(180deg,var(--violet),var(--cyan))}.monster-card[data-rarity=legendary]:before{background:linear-gradient(180deg,var(--sun),var(--leaf))}.monster-card-visual{flex-basis:112px;width:112px;border-radius:18px;background:linear-gradient(180deg,#e9fbff33,#071b3314),linear-gradient(160deg,var(--navy),var(--navy-lift));border:1px solid rgba(255,255,255,.28);box-shadow:inset 0 0 18px #ffffff14,0 8px 18px #071b3329}.monster-name{color:var(--ink);font-weight:800}.monster-rarity{color:var(--ink);border:1px solid rgba(16,36,63,.08)}.monster-rarity[data-rarity=common],.monster-rarity[data-rarity=uncommon]{background:#8795a129;color:#4c5963}.monster-rarity[data-rarity=rare]{background:#19bdf229;color:#075f86}.monster-rarity[data-rarity=epic]{background:#8757e626;color:var(--violet-strong)}.monster-rarity[data-rarity=legendary]{background:#ffd34e42;color:#6b4400}.monster-tag{background:#10243f0f;color:var(--ink);border:1px solid rgba(16,36,63,.06)}.monster-tag.power{background:#2fd18029;color:var(--leaf-strong);border-color:#2fd18042}.monster-tag.mood{background:#ffd34e33;color:#6b4400}.empty-state{border:1px dashed rgba(16,36,63,.16);border-radius:22px;background:#fff8ea9e}.history-list li,.leaderboard-list li{background:#ffffffc7;border:1px solid rgba(16,36,63,.08);border-left:5px solid var(--cyan);box-shadow:0 8px 18px #10243f0f}.history-list li:hover,.leaderboard-list li:hover{background:#e9fbffcc;transform:translate(2px)}@media(min-width:480px){.app-shell{padding-inline:1.25rem}.panel{padding:1.2rem 1.3rem}.monster-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}@media(max-width:380px){.app-shell{padding-inline:.8rem}.monster-card-content{gap:.65rem}.monster-card-visual{flex-basis:96px;width:96px}.auth-copy{width:min(100%,calc(100vw - 2rem));left:1rem;right:1rem}.yuki-game-card{width:min(78vw,285px)}}@media(min-height:621px)and (max-width:520px){.first-capture-mode .scanner-lens-stage{width:min(calc(100vw - 1.6rem),43svh,430px)}}@media(min-width:381px)and (max-width:480px){.first-capture-mode .app-identity-bar{padding-right:7.25rem}.first-capture-mode .app-identity-bar .hero-profile-control{max-width:100%}}@media(max-width:380px)and (max-height:620px){.first-capture-mode .app-shell{gap:.35rem;padding-top:max(.4rem,env(safe-area-inset-top));overflow-x:hidden;overflow-y:auto}.first-capture-mode .scan-hub{min-height:0;gap:.35rem;padding-top:0}.first-capture-mode .first-capture-intro h2{font-size:clamp(1.35rem,7.2vw,1.65rem);line-height:1}.first-capture-mode .first-capture-instruction{width:min(100%,18rem);margin:0 auto;font-size:.82rem;line-height:1.15}.first-capture-mode .scanner-lens-stage{width:min(74vw,250px);margin-top:-.2rem}.first-capture-mode .photo-capture-button{min-width:min(76vw,250px);min-height:48px;margin-top:-1.55rem;padding-block:.62rem;font-size:.95rem}.first-capture-mode #scanner-alternatives{width:min(100%,300px);margin-top:.15rem;padding:.4rem .5rem .5rem}.first-capture-mode #scanner-alternatives .scanner-alternatives-label{margin-bottom:.35rem;font-size:.72rem}.first-capture-mode #scanner-alternatives .scanner-alternatives-actions{grid-template-columns:1fr 1fr}}@media(min-width:800px)and (min-height:600px){html{display:grid;min-height:100%;place-items:center;overflow:hidden;background:#dceff1}body{--app-frame-height: min(860px, calc(100dvh - 2rem) );position:relative;width:min(430px,52dvh);height:var(--app-frame-height);min-height:0;margin:auto;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;border:7px solid var(--navy);border-radius:36px;background:var(--cream);box-shadow:0 30px 80px #071b333d,0 8px 24px #071b3329;scrollbar-width:none;transform:translateZ(0)}body::-webkit-scrollbar{display:none}.app-shell{min-height:100%;padding-inline:1rem}.auth-gate{min-height:100%}.auth-copy{width:auto}.auth-copy h2{font-size:2.55rem}.auth-screen--card-preview .auth-copy h2,.auth-screen--challenge-preview .auth-copy h2{font-size:2.35rem}.yuki-game-card{width:min(87%,350px)}.challenge-preview{width:min(86%,360px)}.first-capture-mode .scan-hub{min-height:calc(var(--app-frame-height) - 1.95rem - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.first-capture-mode .scanner-lens-stage{width:min(calc(100% + 1.6rem),43dvh,430px)}.dev-capture-panel{width:min(100%,360px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.magic-effects,.magic-portal,.magic-sparks{display:none!important}}.scanner-alternatives{width:min(100%,420px);margin:.8rem auto 0;padding:.72rem .82rem .82rem;border:1px solid rgba(24,94,127,.15);border-radius:18px;background:radial-gradient(circle at 12% 0%,rgba(255,224,111,.26),transparent 42%),#ffffffc7;box-shadow:0 10px 28px #154d6b17;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.scanner-alternatives-label{margin:0 0 .55rem;color:#42677a;font:700 .78rem/1.2 Nunito,sans-serif;text-align:center}.scanner-alternatives-actions{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.scanner-alternative-button,.manual-scan-submit{min-height:42px;border:1px solid rgba(18,104,144,.18);border-radius:13px;font:700 .86rem/1 Fredoka,sans-serif;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.scanner-alternative-button{color:#176489;background:#e9f9ffe6}.scanner-alternative-button:first-child{color:#276b45;background:#e2f9e9f0}.scanner-alternative-button:hover,.manual-scan-submit:hover{transform:translateY(-1px);box-shadow:0 7px 14px #165b7b1f}.scanner-alternative-button:focus-visible,.manual-scan-input:focus-visible,.manual-scan-submit:focus-visible{outline:3px solid rgba(60,194,242,.34);outline-offset:2px}.scanner-alternative-button:disabled,.manual-scan-submit:disabled{cursor:wait;opacity:.58}.manual-scan-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.42rem;margin-top:.65rem}.manual-scan-form.hidden{display:none}.manual-scan-label,.manual-scan-error{grid-column:1 / -1}.manual-scan-label{color:#31586c;font:700 .76rem/1.2 Nunito,sans-serif}.manual-scan-input{min-width:0;min-height:42px;padding:0 .78rem;border:1px solid rgba(18,104,144,.25);border-radius:12px;color:#143e52;background:#fff;font:700 1rem/1 Nunito,sans-serif;letter-spacing:.045em}.manual-scan-input[aria-invalid=true]{border-color:#d45454}.manual-scan-submit{padding:0 .9rem;border-color:transparent;color:#fff;background:#258fc0}.manual-scan-error{min-height:1em;margin:0;color:#a33d3d;font:700 .72rem/1.35 Nunito,sans-serif}@media(max-width:360px){.scanner-alternatives-actions{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.scanner-alternative-button,.manual-scan-submit{transition:none}}.family-settings-open{position:fixed;z-index:850;top:max(.75rem,env(safe-area-inset-top));right:.75rem;min-height:44px;padding:0 .88rem;border:1px solid rgba(18,80,110,.16);border-radius:999px;color:#285b70;background:#ffffffdb;box-shadow:0 8px 22px #184c651f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font:700 .76rem/1 Nunito,sans-serif;cursor:pointer}.family-settings-modal{position:fixed;z-index:1800;inset:0;display:grid;place-items:center;padding:1rem}.family-settings-modal.hidden{display:none}.family-settings-backdrop{position:absolute;inset:0;background:#08233194;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.family-settings-panel{position:relative;width:min(100%,430px);max-height:min(92vh,680px);overflow-y:auto;padding:1.2rem;border:1px solid rgba(255,255,255,.72);border-radius:26px;color:#173f51;background:radial-gradient(circle at 100% 0%,rgba(255,218,91,.28),transparent 38%),#f7fcff;box-shadow:0 26px 70px #031d2c4d}.family-settings-close{position:absolute;top:.78rem;right:.78rem;width:44px;height:44px;border:0;border-radius:50%;color:#42677a;background:#e1f2f9e0;font-size:1.35rem;cursor:pointer}.family-settings-kicker{margin:0 0 .28rem;color:#238355;font:800 .72rem/1.2 Nunito,sans-serif;letter-spacing:.08em;text-transform:uppercase}.family-settings-panel h2{margin:0;font:700 1.65rem/1.05 Fredoka,sans-serif}.family-settings-summary,.family-settings-note,.family-sync-status{font-family:Nunito,sans-serif}.family-settings-summary{margin:.7rem 0 1rem;color:#496b7a;font-size:.9rem;line-height:1.45}.family-adult-confirmation{display:grid;grid-template-columns:22px 1fr;align-items:center;gap:.65rem;padding:.78rem;border:1px solid rgba(33,112,83,.16);border-radius:15px;color:#245741;background:#e5faeec2;font:700 .84rem/1.35 Nunito,sans-serif}.family-adult-confirmation input{width:20px;height:20px;accent-color:#2aa96c}.family-sync-action{width:100%;min-height:48px;margin-top:.75rem;border:0;border-radius:15px;color:#fff;background:linear-gradient(135deg,#248dc0,#26ab72);box-shadow:0 10px 20px #197f7633;font:700 .95rem/1 Fredoka,sans-serif;cursor:pointer}.family-sync-action:disabled{box-shadow:none;cursor:not-allowed;filter:grayscale(.7);opacity:.52}.family-support-id{margin-top:.75rem;padding:.72rem;border:1px solid rgba(34,94,120,.14);border-radius:14px;background:#ffffffb8;font:700 .7rem/1.3 Nunito,sans-serif}.family-support-id.hidden{display:none}.family-support-id>span{display:block;margin-bottom:.38rem;color:#587583}.family-support-id-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem}.family-support-id code{overflow:hidden;color:#173f51;font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.family-support-id button{min-height:44px;padding-inline:.7rem;border:1px solid rgba(34,94,120,.18);border-radius:10px;color:#245a70;background:#e9f7fc;font:800 .72rem/1 Nunito,sans-serif;cursor:pointer}.family-sync-status{min-height:1.3em;margin:.65rem 0 0;color:#31596c;font-size:.78rem;font-weight:700;line-height:1.35;text-align:center}.family-settings-note{margin:.8rem 0 0;padding-top:.75rem;border-top:1px solid rgba(34,94,120,.12);color:#6b7f88;font-size:.72rem;line-height:1.4}.family-settings-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.45rem .9rem;margin-top:.65rem;font:800 .7rem/1.3 Nunito,sans-serif}.family-settings-links a{color:#276f8c;text-underline-offset:.16rem}.family-settings-open:focus-visible,.family-settings-close:focus-visible,.family-sync-action:focus-visible,.family-support-id button:focus-visible,.family-settings-links a:focus-visible,.family-adult-confirmation input:focus-visible{outline:3px solid rgba(60,194,242,.38);outline-offset:3px}@media(max-width:380px){.family-settings-open{right:auto;left:max(.7rem,env(safe-area-inset-left));padding-inline:.72rem}.app-identity-bar{padding-left:7rem}.app-identity-bar .hero-profile-control{max-width:100%}}@media(max-width:380px)and (max-height:620px){.family-settings-modal{align-items:start;padding:max(.5rem,env(safe-area-inset-top)) .5rem max(.5rem,env(safe-area-inset-bottom))}.family-settings-panel{max-height:calc(100dvh - max(1rem,env(safe-area-inset-top) + env(safe-area-inset-bottom)));padding:1rem;border-radius:20px}}.hidden{display:none!important}.reveal-page{position:fixed;inset:0;z-index:var(--z-reveal);display:flex;justify-content:center;overflow-y:auto;-webkit-overflow-scrolling:touch}.reveal-background{position:fixed;inset:0;background:linear-gradient(135deg,#667eea,#764ba2);animation:pulseBackground 3s ease-in-out infinite}@keyframes pulseBackground{0%,to{opacity:.9}50%{opacity:1}}.reveal-container{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:20px;padding:20px;margin:auto 0;flex-shrink:0;animation:containerFadeIn .4s ease-out}@keyframes containerFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.card-flip-container{perspective:1200px;width:calc(100vw - 40px);max-width:400px}.card-flip-inner{position:relative;width:100%;transition:transform .8s cubic-bezier(.4,0,.2,1);transform-style:preserve-3d}.card-flip-inner.flipped{transform:rotateY(180deg)}.card-flip-inner.no-flip{transition:none;transform:rotateY(180deg)}.card-flip-back,.card-flip-front{backface-visibility:hidden;-webkit-backface-visibility:hidden}.card-flip-back{width:100%;border-radius:20px;overflow:hidden}.card-flip-front{position:absolute;inset:0;transform:rotateY(180deg)}.card-back-design{width:100%;aspect-ratio:3 / 4.2;background:linear-gradient(135deg,#1a0a3e,#2d1b69,#1a0a3e 60%,#0f0825);border-radius:20px;border:4px solid #FFD700;box-shadow:0 10px 40px #00000080,0 0 30px #ffd70066,inset 0 0 60px #667eea26;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.card-back-pattern{position:absolute;inset:12px;border:2px solid rgba(255,215,0,.25);border-radius:14px;background:repeating-linear-gradient(45deg,transparent,transparent 20px,rgba(255,215,0,.04) 20px,rgba(255,215,0,.04) 21px),repeating-linear-gradient(-45deg,transparent,transparent 20px,rgba(102,126,234,.04) 20px,rgba(102,126,234,.04) 21px)}.card-back-logo{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.card-back-emoji{font-size:64px;filter:drop-shadow(0 4px 12px rgba(255,215,0,.5));animation:backCardPulse 2s ease-in-out infinite}.card-back-text{font-family:Fredoka,sans-serif;font-size:28px;font-weight:700;color:gold;text-shadow:0 0 20px rgba(255,215,0,.6),0 2px 4px rgba(0,0,0,.8);letter-spacing:2px}.card-back-glow{position:absolute;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(102,126,234,.3) 0%,transparent 70%);animation:backGlow 3s ease-in-out infinite}@keyframes backCardPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes backGlow{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.hearthstone-card{width:100%;background:linear-gradient(135deg,#2d2d2d,#1a1a1a);border-radius:20px;border:4px solid;box-shadow:0 10px 40px #00000080,0 0 20px #ffd7004d,inset 0 2px #fff3;position:relative;overflow:hidden;padding:16px}.hearthstone-card[data-rarity=A]{border-color:gold;box-shadow:0 10px 40px #00000080,0 0 30px #ffd70099,inset 0 2px #ffffff4d}.hearthstone-card[data-rarity=B]{border-color:#a855f7;box-shadow:0 10px 40px #00000080,0 0 25px #a855f780,inset 0 2px #fff3}.hearthstone-card[data-rarity=C]{border-color:#3b82f6;box-shadow:0 10px 40px #00000080,0 0 20px #3b82f666,inset 0 2px #fff3}.hearthstone-card[data-rarity=D]{border-color:#9ca3af;box-shadow:0 10px 40px #00000080,inset 0 2px #ffffff1a}.hearthstone-card.duplicate{border-color:#6b7280!important;box-shadow:0 10px 40px #00000080,0 0 15px #6b72804d,inset 0 2px #ffffff1a!important;opacity:.92}.duplicate-badge{position:absolute;top:50%;right:10px;transform:translateY(-50%);background:linear-gradient(135deg,#6b7280,#4b5563);color:#fff;padding:6px 12px;border-radius:12px;font-size:11px;font-weight:700;font-family:Fredoka,sans-serif;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 8px #0006,inset 0 1px #fff3;border:2px solid #9CA3AF;z-index:10;animation:badgeAppear .4s cubic-bezier(.34,1.56,.64,1);white-space:nowrap}@keyframes badgeAppear{0%{opacity:0;transform:translateY(-50%) scale(.5)}to{opacity:1;transform:translateY(-50%) scale(1)}}@media(max-width:380px){.duplicate-badge{font-size:9px;padding:4px 8px;right:5px}}.card-header{position:relative;display:flex;align-items:center;justify-content:center;margin-bottom:10px}.card-cost{position:absolute;left:-8px;top:-8px;width:48px;height:48px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;border:3px solid #FFD700;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.8);box-shadow:0 4px 8px #0006}.card-name-banner{flex:1;background:linear-gradient(90deg,transparent,rgba(255,215,0,.3),transparent);padding:8px 16px;text-align:center;border-radius:8px}.card-name{font-size:20px;font-weight:700;color:gold;text-shadow:2px 2px 4px rgba(0,0,0,.8);margin:0;font-family:Fredoka,sans-serif;text-align:center}.card-name .monster-name{font-size:20px;font-weight:700;color:gold;text-shadow:2px 2px 4px rgba(0,0,0,.8);font-family:Fredoka,sans-serif}.card-name .product-name{font-size:14px;font-weight:400;color:#e5e7eb;text-shadow:1px 1px 2px rgba(0,0,0,.8);font-family:Nunito,sans-serif;margin-top:4px}.card-rarity-gem{position:absolute;right:-8px;top:-8px;width:40px;height:40px;border-radius:50%;border:3px solid;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 4px 8px #0006}.card-rarity-gem[data-rarity=A]{background:linear-gradient(135deg,gold,orange);border-color:gold}.card-rarity-gem[data-rarity=B]{background:linear-gradient(135deg,#a855f7,#7c3aed);border-color:#a855f7}.card-rarity-gem[data-rarity=C]{background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:#3b82f6}.card-rarity-gem[data-rarity=D]{background:linear-gradient(135deg,#9ca3af,#6b7280);border-color:#9ca3af}.card-rarity-gem:after{content:"★";color:#fff;text-shadow:1px 1px 2px rgba(0,0,0,.8)}.card-art-container{position:relative;width:100%;height:200px;margin-bottom:12px;border-radius:12px;overflow:hidden;background:linear-gradient(135deg,#667eea,#764ba2)}.card-voxel-viewer{position:absolute;inset:0;display:none;background:radial-gradient(circle at 50% 20%,rgba(255,255,255,.35),transparent 65%),linear-gradient(180deg,#0d1f36e6,#0c335a99)}.card-voxel-viewer.voxel-fallback{display:flex;align-items:center;justify-content:center;text-align:center;padding:1rem;color:#f6fbff;font-weight:600;font-size:.95rem}.voxel-fallback-message{line-height:1.4}.card-voxel-viewer canvas{width:100%;height:100%;display:block}.card-art{width:100%;height:100%;object-fit:cover}.card-art-container.voxel-active .card-voxel-viewer{display:block}.card-art-container.voxel-active .card-art{opacity:0;pointer-events:none}.card-art-ai{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:2}.card-art-loading{position:absolute;top:0;left:0;width:100%;height:100%;z-index:3;background:linear-gradient(135deg,#1a1040,#2d1b69,#1a1040);display:flex;align-items:center;justify-content:center}.shimmer-bar{width:60%;height:8px;border-radius:4px;background:linear-gradient(90deg,#ffffff14,#ffffff40,#ffffff14);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.card-art-frame{position:absolute;inset:0;border:3px solid rgba(255,215,0,.5);border-radius:12px;pointer-events:none;box-shadow:inset 0 0 20px #0000004d}.card-stats-bar{display:flex;justify-content:space-around;gap:8px;margin-bottom:12px;padding:8px;background:#0000004d;border-radius:10px;border:1px solid rgba(255,215,0,.2)}.card-stat{display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .18s ease,filter .18s ease;outline:none}.card-stat:hover,.card-stat:focus-visible{transform:translateY(-3px) scale(1.08)}.card-stat:active{transform:translateY(0) scale(.95);transition-duration:.08s}.card-stat:focus-visible{box-shadow:0 0 0 3px #ffd70073;border-radius:14px}.card-stat:hover .stat-icon,.card-stat:focus-visible .stat-icon{filter:drop-shadow(0 6px 12px rgba(0,0,0,.6))}.card-stat .stat-icon{font-size:20px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}.card-stat .stat-value{font-size:18px;font-weight:700;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.8);font-family:Fredoka,sans-serif;animation:statPop .5s cubic-bezier(.34,1.56,.64,1) both}.card-stat:nth-child(1) .stat-value{animation-delay:.6s}.card-stat:nth-child(2) .stat-value{animation-delay:.75s}.card-stat:nth-child(3) .stat-value{animation-delay:.9s}.card-stat:nth-child(4) .stat-value{animation-delay:1.05s}@keyframes statPop{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}.card-stat.special .stat-value{color:gold}.card-power-container{background:#0006;border:2px solid rgba(255,215,0,.3);border-radius:10px;padding:12px;margin-bottom:12px;min-height:80px}.card-power-name{font-size:16px;font-weight:700;color:gold;text-align:center;margin-bottom:8px;text-shadow:1px 1px 2px rgba(0,0,0,.8);font-family:Fredoka,sans-serif}.card-power-text{font-size:14px;line-height:1.5;color:#e5e7eb;text-align:center;font-family:Nunito,sans-serif}.card-power-text .power-value{color:gold;font-weight:700}.card-power-text .stat-icon{font-size:14px}.product-description{font-size:13px;line-height:1.5;color:#e5e7eb;text-align:left}.description-section{margin-bottom:10px}.section-good{background:#10b9811a;padding:8px 10px;border-radius:8px;border-left:3px solid #10b981}.section-bad{background:#f59e0b1a;padding:8px 10px;border-radius:8px;border-left:3px solid #f59e0b}.description-item{font-size:12px;margin-bottom:4px;padding-left:4px;color:#e5e7eb}.section-label{display:block;margin-bottom:6px;font-size:13px;font-weight:700;font-family:Fredoka,sans-serif}.section-good .section-label{color:#10b981}.section-bad .section-label{color:#f59e0b}.verdict-line{font-size:13px;font-weight:600;color:#93c5fd;text-align:center;margin-top:8px;font-family:Nunito,sans-serif}.product-ficha-line{color:#bfdbfe}.product-data-note{color:#fde68a;background:#f59e0b1f;border:1px solid rgba(245,158,11,.28);border-radius:8px;padding:6px 8px}.card-footer{text-align:center;padding-top:8px;border-top:1px solid rgba(255,215,0,.2)}.card-product-name{font-size:12px;color:#9ca3af;margin:0 0 4px;font-family:Nunito,sans-serif}.card-grade{font-size:14px;font-weight:700;margin:0;font-family:Fredoka,sans-serif}.card-grade[data-grade=A]{color:#10b981}.card-grade[data-grade=B]{color:#3b82f6}.card-grade[data-grade=C]{color:#f59e0b}.card-grade[data-grade=D]{color:#ef4444}.reveal-actions{display:flex;gap:12px;width:calc(100vw - 40px);max-width:400px}.btn-reveal{flex:1;padding:14px 20px;border:none;border-radius:12px;font-size:16px;font-weight:600;font-family:Fredoka,sans-serif;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #0000004d}.btn-back{background:linear-gradient(135deg,#6b7280,#4b5563);color:#fff}.btn-back:hover{background:linear-gradient(135deg,#4b5563,#374151);transform:translateY(-2px);box-shadow:0 6px 16px #0006}.btn-collect{background:linear-gradient(135deg,#10b981,#059669);color:#fff;position:relative;overflow:hidden}.btn-collect:after{content:"";position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);animation:btnShimmer 2.5s ease-in-out infinite}@keyframes btnShimmer{0%,to{left:-100%}50%{left:150%}}.btn-collect:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 6px 16px #10b98166}.btn-collect:active,.btn-back:active{transform:translateY(1px) scale(.97);transition-duration:.08s}.card-discovery{font-size:.8rem;font-weight:600;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.6);margin-top:.5rem;background:#0000004d;padding:.5rem;border-radius:.5rem}.reveal-page{background:var(--cream)}.reveal-background{background:linear-gradient(180deg,#fff8eafa,#e9fbffeb 48%,#ffe8c2db),linear-gradient(135deg,rgba(25,189,242,.08),transparent 42%,rgba(255,211,78,.14));animation:none}.reveal-background:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(16,36,63,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(16,36,63,.035) 1px,transparent 1px);background-size:34px 34px;-webkit-mask-image:linear-gradient(180deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(180deg,transparent,#000 12%,#000 88%,transparent)}.reveal-container{width:100%;min-height:100dvh;justify-content:center;padding:calc(1rem + env(safe-area-inset-top)) 1rem calc(1.25rem + env(safe-area-inset-bottom));gap:16px}.card-flip-container,.reveal-actions{width:min(100%,400px)}.card-flip-container{filter:drop-shadow(0 24px 34px rgba(16,36,63,.2));min-height:clamp(560px,150vw,610px)}.card-flip-inner{min-height:inherit}.card-flip-back{position:absolute;inset:0;height:100%}.card-back-design{height:100%;aspect-ratio:auto;border-radius:24px;border:3px solid rgba(255,211,78,.82);background:linear-gradient(160deg,#0f2f52fa,#071b33fa),var(--navy);box-shadow:inset 0 0 0 1px #ffffff21,0 20px 46px #071b334d}.card-back-pattern{inset:14px;border-color:#ffd34e42;border-radius:18px;background:linear-gradient(90deg,transparent 0 47%,rgba(25,189,242,.18) 48% 52%,transparent 53% 100%),repeating-linear-gradient(45deg,transparent,transparent 18px,rgba(255,255,255,.04) 18px,rgba(255,255,255,.04) 19px)}.card-back-emoji{width:70px;height:70px;display:inline-flex;align-items:center;justify-content:center;color:var(--navy);background:linear-gradient(145deg,#ffffff,var(--surface-cool));border:3px solid rgba(25,189,242,.32);border-radius:24px;filter:drop-shadow(0 10px 18px rgba(25,189,242,.24));animation:none}.card-back-text{color:var(--sun);letter-spacing:.06em;text-shadow:0 2px 10px rgba(0,0,0,.45)}.card-back-glow{display:none}.hearthstone-card{border-radius:24px;padding:14px;background:linear-gradient(180deg,#0f2f52fa,#071b33fa),var(--navy);border-width:3px;box-shadow:inset 0 1px #ffffff24,0 20px 46px #071b3357}.hearthstone-card:before{content:"";position:absolute;inset:7px;border-radius:19px;border:1px solid rgba(255,255,255,.1);pointer-events:none}.hearthstone-card[data-rarity=A]{border-color:var(--sun);box-shadow:inset 0 1px #ffffff2e,0 24px 54px #ffd34e47}.hearthstone-card[data-rarity=B]{border-color:var(--violet);box-shadow:inset 0 1px #ffffff29,0 22px 48px #8757e642}.hearthstone-card[data-rarity=C]{border-color:var(--cyan);box-shadow:inset 0 1px #ffffff29,0 20px 44px #19bdf23d}.hearthstone-card[data-rarity=D]{border-color:#8795a1;box-shadow:inset 0 1px #ffffff1a,0 18px 36px #071b3347}.hearthstone-card.duplicate{border-color:#8795a1!important;opacity:.94}.card-header{min-height:52px;margin-bottom:12px;gap:8px}.card-cost{left:-4px;top:-4px;width:50px;height:50px;background:linear-gradient(145deg,var(--cyan),var(--leaf));border-color:#ffffffe6;color:var(--navy);text-shadow:none;box-shadow:0 8px 18px #19bdf247}.hearthstone-card[data-rarity=A] .card-cost{background:linear-gradient(145deg,var(--sun),var(--leaf))}.hearthstone-card[data-rarity=B] .card-cost{background:linear-gradient(145deg,var(--violet),var(--cyan));color:#fff}.hearthstone-card[data-rarity=D] .card-cost{background:linear-gradient(145deg,#aab4bc,#d6dde1);color:var(--navy)}.card-name-banner{min-height:48px;display:flex;align-items:center;justify-content:center;margin-inline:38px 34px;padding:8px 12px;border-radius:16px;background:#fff8ea1a;border:1px solid rgba(255,255,255,.12)}.card-name,.card-name .monster-name{color:#fff8ea;font-size:clamp(17px,5vw,20px);line-height:1.08;text-shadow:0 2px 8px rgba(0,0,0,.45);letter-spacing:0}.card-name .product-name{color:#fff8eac2}.card-info-btn{position:absolute;right:-4px;top:-4px;width:44px;height:44px;border:2px solid rgba(255,255,255,.55);border-radius:50%;background:#fff8ea1f;color:#fff8ea;font-weight:900;cursor:pointer;box-shadow:0 8px 18px #0000003d}.card-info-btn:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.card-art-container{height:clamp(190px,52vw,228px);border-radius:18px;background:linear-gradient(180deg,rgba(233,251,255,.18),transparent 58%),linear-gradient(155deg,var(--navy-lift),var(--navy));border:1px solid rgba(255,255,255,.16);box-shadow:inset 0 0 28px #ffffff14,0 10px 22px #00000038}.card-voxel-viewer{background:linear-gradient(180deg,rgba(233,251,255,.2),transparent 60%),linear-gradient(155deg,var(--navy-lift),var(--navy))}.card-art-frame{border:2px solid rgba(255,211,78,.34);border-radius:18px;box-shadow:inset 0 0 20px #00000040}.hearthstone-card[data-rarity=A] .card-art-frame{border-color:#ffd34ea8}.hearthstone-card[data-rarity=B] .card-art-frame{border-color:#8757e694}.hearthstone-card[data-rarity=C] .card-art-frame{border-color:#19bdf294}.card-stats-bar{gap:7px;padding:8px;background:#fff8ea1a;border-color:#ffffff1f;border-radius:16px}.card-stat{min-width:44px;min-height:46px;padding:5px 4px;border-radius:13px;background:#ffffff12}.card-stat .stat-icon{color:var(--sun);filter:none}.card-stat .stat-value{color:#fff;text-shadow:none}.card-stat.special .stat-value{color:var(--sun)}.card-power-container{min-height:78px;background:#fff8ea1a;border-color:#ffd34e3d;border-radius:16px}.card-power-name{color:var(--sun);letter-spacing:0}.card-power-text,.product-description,.description-item{color:#fff8eadb}.section-good{background:#2fd1801f;border-left-color:var(--leaf)}.section-bad{background:#ff5f7e1f;border-left-color:var(--coral)}.section-good .section-label{color:#7df0b0}.section-bad .section-label{color:#ff9ead}.verdict-line,.product-ficha-line{color:#a7e8ff}.product-data-note{color:#ffe8a3;background:#ffd34e1f;border-color:#ffd34e47}.card-footer{border-top-color:#ffffff1f}.card-discovery{color:#fff8ea;background:#ffffff14;border:1px solid rgba(255,255,255,.12)}.duplicate-badge{background:linear-gradient(135deg,#8795a1,#5f6d78);border-color:#ffffffb3}.reveal-actions{gap:10px}.btn-reveal{min-height:50px;border-radius:16px;font-family:var(--font-main);font-weight:900;box-shadow:0 12px 24px #10243f29}.btn-back{background:#10243fe0;color:#fff8ea;border:1px solid rgba(255,255,255,.14)}.btn-collect{background:linear-gradient(135deg,var(--leaf),var(--teal));color:#062719;border:1px solid rgba(16,134,80,.2)}.btn-collect:after{background:linear-gradient(90deg,transparent,rgba(255,255,255,.32),transparent)}.btn-back:hover,.btn-collect:hover{transform:translateY(-2px);box-shadow:0 14px 28px #10243f33}@media(max-width:375px){.reveal-container{padding-inline:.8rem}.hearthstone-card{padding:12px}.card-name-banner{margin-inline:34px 30px;padding-inline:8px}.card-stats-bar{gap:5px}.btn-reveal{padding:12px 14px;font-size:15px}}@media(max-width:375px){.card-flip-container{width:calc(100vw - 32px)}.hearthstone-card{padding:12px}.card-name{font-size:18px}.card-power-text{font-size:13px}.reveal-actions{width:calc(100vw - 32px)}}@media(prefers-reduced-motion:reduce){.reveal-container,.reveal-background,.hearthstone-card,.duplicate-badge,.card-back-emoji,.card-back-glow{animation:none!important}.card-flip-inner{transition:none!important}}.card-flip-container{max-width:420px;min-height:clamp(590px,146vw,650px)}.card-flip-front{height:100%}.hearthstone-card{height:100%;min-height:inherit;display:flex;flex-direction:column;gap:10px;padding:13px;border-width:4px;border-radius:28px;color:#4a2c08;transform-style:preserve-3d;transition:transform .32s var(--ease-out),box-shadow .22s var(--ease-out);background:radial-gradient(circle at 50% 18%,rgba(255,255,255,.72),transparent 34%),linear-gradient(180deg,#fff3cc,#f6d890 58%,#e9b95f);box-shadow:0 24px 48px #52300a38,inset 0 0 0 2px #ffffff70,inset 0 -7px #68430c1f}.hearthstone-card:before{inset:9px;border-radius:22px;border-color:#6a480e2e}.hearthstone-card.info-side{transform:none}.hearthstone-card>:not(.card-info-face){backface-visibility:hidden;-webkit-backface-visibility:hidden;transition:opacity .16s ease}.hearthstone-card.info-side>:not(.card-info-face){opacity:0;pointer-events:none}.hearthstone-card[data-rarity=A]{border-color:#6dad2f;box-shadow:0 26px 56px #528e263d,inset 0 0 0 2px #ffffff80,inset 0 -7px #43781f24}.hearthstone-card[data-rarity=B]{border-color:#48bfe8}.hearthstone-card[data-rarity=C]{border-color:#f4a949}.hearthstone-card[data-rarity=D]{border-color:#9da8a5}.hearthstone-card.duplicate{opacity:1}.card-header{min-height:58px;margin-bottom:0}.card-cost{left:-2px;top:-2px;width:54px;height:54px;border-width:4px;border-color:#fff9df;background:linear-gradient(145deg,#53d59a,#21b7e8);color:#08233b;font-size:1.38rem;font-weight:900;box-shadow:0 8px 20px #19847b3d}.card-name-banner{min-height:56px;margin-inline:42px 38px;padding:7px 14px;border-radius:18px;background:linear-gradient(180deg,#ffffffad,#fff2c0d1);border:2px solid rgba(115,73,14,.18);box-shadow:inset 0 -3px #73490e14}.card-name,.card-name .monster-name{color:#512f08;text-shadow:none;font-size:clamp(1.08rem,5vw,1.34rem)}.card-name .product-name{color:#512f08b8;font-weight:800;text-shadow:none}.card-info-btn{right:-2px;top:-2px;width:46px;height:46px;background:linear-gradient(180deg,#fff,#e7f9ff);color:#14556d;border-color:#19bdf26b;box-shadow:0 8px 18px #19847b29,inset 0 -3px #14556d14}.card-art-container{flex:1 1 auto;min-height:238px;height:auto;margin-bottom:0;border-radius:22px;background:radial-gradient(circle at 50% 28%,rgba(255,255,255,.9),transparent 34%),linear-gradient(180deg,#def8ff,#fff7db 68%,#f0d494);border:3px solid rgba(115,73,14,.16);box-shadow:inset 0 0 36px #ffffff73,inset 0 -8px #73490e0f}.card-art-frame{border-width:3px;border-color:#ffffffb8;box-shadow:inset 0 0 0 2px #73490e14}.card-stats-bar{margin-bottom:0;padding:7px;border-radius:18px;background:#fff8e0d1;border:2px solid rgba(115,73,14,.14);box-shadow:inset 0 -3px #73490e0f}.card-stat{min-width:56px;min-height:58px;gap:3px;border:2px solid rgba(255,255,255,.72);border-radius:16px;background:linear-gradient(180deg,#ffffffb8,#ffe8a7cc);box-shadow:inset 0 -4px #73490e17}.card-stat .stat-icon{color:#14556d}.card-stat .stat-value{color:#512f08;font-size:1.22rem}.card-stat.special .stat-value{color:#9b6507}.card-power-container{min-height:92px;margin-bottom:0;padding:10px 12px;border-width:2px;border-radius:18px;background:linear-gradient(180deg,#ffffffb3,#ffefbedb);box-shadow:inset 0 -4px #73490e12}.card-power-name{margin-bottom:6px;color:#2f6a1e;font-size:1rem;text-shadow:none}.card-power-text{color:#512f08;text-align:left}.card-power-summary{display:grid;gap:3px;color:#512f08}.card-power-summary-label{color:#14556d;font-family:var(--font-fun);font-size:.86rem;line-height:1.1}.card-power-summary-text{font-weight:900;line-height:1.22;text-wrap:balance}.card-power-summary[data-tone=caution] .card-power-summary-label{color:#9b3a1c}.card-footer{padding-top:0;border-top:0}.card-discovery{margin-top:0;padding:.42rem .55rem;color:#512f08c2;background:#ffffff57;border-color:#73490e1f;font-size:.72rem;text-shadow:none}.duplicate-badge{top:56px;right:12px;transform:none;padding:5px 9px;border-radius:999px;background:#14556deb;border-color:#ffffffbd;color:#fff9df;font-size:.58rem;box-shadow:0 8px 18px #14556d33}.card-info-face{position:absolute;inset:13px;z-index:20;display:flex;flex-direction:column;gap:10px;padding:14px;border:3px solid rgba(115,73,14,.18);border-radius:22px;background:radial-gradient(circle at 50% 0%,rgba(255,255,255,.8),transparent 28%),linear-gradient(180deg,#fff8dc,#f3d58f);color:#4a2c08;opacity:0;pointer-events:none;transform:translateY(10px) scale(.98);transition:opacity .22s var(--ease-out),transform .22s var(--ease-out);backface-visibility:visible;-webkit-backface-visibility:visible;box-shadow:inset 0 -6px #73490e14}.hearthstone-card.info-side .card-info-face{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}.card-info-face-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.card-info-eyebrow{margin:0 0 2px;color:#2f6a1e;font-family:var(--font-fun);font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.card-info-face h3{margin:0;color:#512f08;font-family:var(--font-fun);font-size:clamp(1.34rem,6vw,1.7rem);line-height:1}.card-info-back-btn{min-width:72px;min-height:44px;border:2px solid rgba(20,85,109,.2);border-radius:999px;background:linear-gradient(180deg,#fff,#e7f9ff);color:#14556d;font-family:var(--font-main);font-weight:900;cursor:pointer}.card-info-back-btn:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.card-info-content{min-height:0;overflow-y:auto;padding-right:3px;overscroll-behavior:contain}.card-nutrition-detail{display:grid;gap:10px}.nutrition-facts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.nutrition-fact{display:grid;gap:1px;min-height:54px;padding:7px 9px;border-radius:14px;background:#ffffff70;border:1px solid rgba(115,73,14,.11)}.nutrition-fact-label{color:#512f08a3;font-size:.72rem;font-weight:900}.nutrition-fact-value{color:#512f08;font-size:.92rem;line-height:1.08}.card-info-face .product-description,.card-info-face .description-item,.card-info-face .verdict-line{color:#512f08}.card-info-face .product-description{display:grid;gap:8px;font-size:.84rem;line-height:1.34}.card-info-face .description-section{margin-bottom:0;border-radius:14px}.card-info-face .section-good{background:#2fd18033}.card-info-face .section-bad{background:#ff5f7e29}.card-info-face .section-good .section-label{color:#246b1d}.card-info-face .section-bad .section-label{color:#9b3a1c}.card-info-face .product-data-note{color:#6a4310;background:#ffd34e3d;border-color:#73490e24}.card-info-face .product-ficha-line,.card-info-face .visual-reason{color:#14556d}@media(max-width:375px){.card-flip-container{min-height:596px}.hearthstone-card{padding:11px}.card-art-container{min-height:218px}.card-stat{min-width:50px}.card-info-face{inset:11px;padding:12px}}@media(prefers-reduced-motion:reduce){.hearthstone-card{transition:none!important}}.reveal-discovery-intro{width:min(100%,430px);text-align:center;color:#4b270b;animation:revealIntroIn .36s var(--ease-out) both}.reveal-discovery-kicker{display:inline-flex;align-items:center;min-height:30px;margin:0 0 .35rem;padding:.22rem .8rem;border:2px solid rgba(47,209,128,.38);border-radius:999px;background:#fff8eab8;color:#246b1d;font-family:var(--font-main);font-size:.78rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.reveal-discovery-intro h1{margin:0;color:#4b270b;font-family:var(--font-fun);font-size:clamp(2rem,8.4vw,3.25rem);line-height:.92;letter-spacing:0;text-wrap:balance}.reveal-discovery-intro p:last-child{margin:.55rem auto 0;max-width:22rem;color:#4b270bbd;font-weight:900}.reveal-page.awaiting-card-reveal .reveal-container{justify-content:center}.reveal-page.awaiting-card-reveal .reveal-actions{opacity:0;pointer-events:none;transform:translateY(16px) scale(.98)}.reveal-actions{transition:opacity .26s var(--ease-out),transform .26s var(--ease-out)}.reveal-page.card-reveal-burst .reveal-actions{animation:revealActionsRise .38s .46s var(--ease-out) both}.card-flip-container{position:relative;width:min(92vw,430px);max-width:430px;min-height:0;aspect-ratio:1060 / 1484}.card-flip-inner{height:100%;min-height:0}.card-flip-inner.awaiting-reveal{cursor:pointer;touch-action:manipulation;animation:awaitingCardFloat 2.2s ease-in-out infinite}.card-flip-inner.awaiting-reveal:focus-visible{outline:4px solid var(--focus-ring);outline-offset:8px;border-radius:30px}.card-flip-inner.awaiting-reveal .card-back-design{box-shadow:0 26px 58px #246b1d47,0 0 0 1px #fff8ea7a,inset 0 0 60px #fff8ea29}.card-flip-inner.awaiting-reveal .card-back-design:after{content:"Toca para revelar";position:absolute;left:50%;bottom:12%;z-index:2;transform:translate(-50%);min-height:40px;padding:.48rem 1rem;border-radius:999px;background:#fff8eae6;color:#4b270b;font-family:var(--font-main);font-size:clamp(.86rem,3.6vw,1.05rem);font-weight:900;box-shadow:0 12px 28px #071b3338;white-space:nowrap}.card-flip-inner.revealing .card-flip-front{animation:revealFrontImpact .78s var(--ease-out) both}.card-flip-container:before{content:"";position:absolute;inset:-18%;z-index:-1;border-radius:50%;background:radial-gradient(circle,rgba(255,211,78,.64),transparent 38%),radial-gradient(circle,rgba(47,209,128,.46),transparent 58%);opacity:0;transform:scale(.72);pointer-events:none}.reveal-page.card-reveal-burst .card-flip-container:before{animation:revealMagicBurst .84s var(--ease-out) both}.card-back-design{border-radius:30px;border-color:#ffd34eeb;background:radial-gradient(circle at 50% 32%,rgba(47,209,128,.34),transparent 34%),radial-gradient(circle at 50% 50%,rgba(25,189,242,.32),transparent 52%),linear-gradient(160deg,#163514,#08213a 58%,#061527)}.card-back-pattern{border-radius:22px;background:radial-gradient(circle at 50% 50%,rgba(255,211,78,.16),transparent 34%),repeating-linear-gradient(45deg,transparent,transparent 18px,rgba(255,248,234,.05) 18px,rgba(255,248,234,.05) 20px)}.card-back-text{color:#fff8c6}.hearthstone-card{width:100%;height:100%;min-height:0;aspect-ratio:1060 / 1484;padding:0;border:0;border-radius:30px;overflow:hidden;background:radial-gradient(circle at 50% 30%,rgba(255,247,196,.75),transparent 33%),linear-gradient(180deg,#f4d98c,#e8b957);box-shadow:0 26px 58px #52300a3d}.hearthstone-card:before{content:"";position:absolute;inset:18% 11.5% 35.5% 12%;z-index:0;border-radius:10%/8%;border:0;background:radial-gradient(circle at 44% 18%,rgba(255,247,184,.38),transparent 56%),linear-gradient(180deg,#7fb03a,#173312);pointer-events:none}.hearthstone-card:after{content:"";position:absolute;inset:0;z-index:30;background-image:url(/assets/card-frames/yukids-card-frame-legendary.webp);background-size:contain;background-position:center;background-repeat:no-repeat;pointer-events:none}.hearthstone-card[data-rarity=B]:before{background:radial-gradient(circle at 44% 18%,rgba(198,240,255,.4),transparent 56%),linear-gradient(180deg,#2cb6df,#14556d)}.hearthstone-card[data-rarity=C]:before{background:radial-gradient(circle at 44% 18%,rgba(255,236,177,.4),transparent 56%),linear-gradient(180deg,#e7a33a,#7b4612)}.hearthstone-card[data-rarity=D]:before{background:radial-gradient(circle at 44% 18%,rgba(255,255,255,.34),transparent 56%),linear-gradient(180deg,#a7b2ad,#4e5f5a)}.hearthstone-card.info-side:after{opacity:.2}.hearthstone-card.info-side>:not(.card-info-face){opacity:0}.card-header,.card-stats-bar,.card-power-container,.card-footer{position:absolute;z-index:34}.card-header{inset:0;height:auto;min-height:0;margin:0;pointer-events:none}.card-cost{left:9.4%;top:9.6%;z-index:36;width:10.2%;height:auto;aspect-ratio:1;border:2px solid rgba(255,248,224,.9);background:radial-gradient(circle at 34% 26%,rgba(255,255,255,.86),transparent 28%),linear-gradient(145deg,#f6d991,#e3b552 62%,#aa741f);color:#4b270b;font-size:clamp(.84rem,4.8vw,1.38rem);box-shadow:inset 0 -3px #5d370829,0 3px 8px #5d370833}.card-name-banner{position:absolute;top:8.8%;left:19%;right:19%;min-height:0;height:6.6%;margin:0;padding:0;border:0;background:transparent;box-shadow:none}.card-name{display:flex;flex-direction:column;justify-content:center;width:100%;height:100%}.card-name,.card-name .monster-name{color:#4b270b;font-size:clamp(.98rem,5.5vw,1.72rem);line-height:.96;text-shadow:0 1px 0 rgba(255,243,200,.9);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-name .product-name{margin-top:.1rem;color:#4b270bb8;font-size:clamp(.54rem,2.7vw,.82rem);font-weight:900;line-height:1;text-shadow:none}.card-info-btn{top:9.4%;right:9.9%;z-index:36;width:9.8%;height:auto;min-width:36px;aspect-ratio:1;border:2px solid rgba(255,248,224,.86);background:radial-gradient(circle at 34% 26%,rgba(255,255,255,.9),transparent 30%),linear-gradient(145deg,#edfaff,#c7eff7);color:#14556d;box-shadow:inset 0 -3px #14556d14,0 3px 8px #14556d29;pointer-events:auto}.card-art-container{position:absolute;left:13.6%;top:20.5%;z-index:4;width:72.8%;height:41.9%;min-height:0;margin:0;border:0;border-radius:7.8%/6.6%;background:radial-gradient(circle at 50% 28%,rgba(255,255,255,.92),transparent 34%),linear-gradient(180deg,#def8ff,#fff7db 68%,#f0d494);box-shadow:none;overflow:hidden}.card-art-container .card-art,.card-art-container .card-art-ai,.card-art-container .card-voxel-viewer,.card-art-container .card-art-loading{z-index:1}.card-art-frame{display:none}.card-stats-bar{top:69.6%;left:13.6%;right:13.6%;height:8.6%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2.8%;margin:0;padding:0;border:0;background:transparent;box-shadow:none}.card-stat{min-width:0;min-height:0;width:100%;height:100%;gap:0;padding:0 0 9%;border:0;border-radius:0;background:transparent;box-shadow:none;justify-content:flex-end}.card-stat .stat-icon{display:none}.card-stat .stat-icon svg{width:clamp(13px,3.7vw,18px);height:clamp(13px,3.7vw,18px)}.card-stat .stat-value{color:#fff8e8;font-size:clamp(.86rem,4.2vw,1.26rem);line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 2px 0 rgba(60,27,3,.45),0 4px 8px rgba(60,27,3,.24);transform:translateY(-.04rem)}.card-stat.special .stat-value{color:#fff8e8}.card-power-container{top:80.2%;left:36.2%;right:13.6%;height:9.3%;min-height:0;margin:0;padding:0;border:0!important;border-radius:0;background:transparent;box-shadow:none;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.card-power-name{margin:0 0 .1rem;color:#38620d;font-size:clamp(.58rem,2.95vw,.9rem);line-height:.96;text-align:left}.card-power-text{color:#4b270b;font-size:clamp(.47rem,2.2vw,.68rem);line-height:1.04}.card-power-summary{gap:.08rem}.card-power-summary-label{color:#38620d;font-size:clamp(.6rem,2.55vw,.82rem)}.card-power-summary-text{line-height:1.08}.card-footer{display:none}.card-discovery{display:block;min-height:22px;margin:0;padding:.22rem .48rem;border-radius:999px;background:#fff8e0ad;border:1px solid rgba(115,73,14,.12);color:#4b270b9e;font-size:clamp(.48rem,2.2vw,.68rem);line-height:1.05}.duplicate-badge{z-index:38;top:15.2%;right:10.8%}.card-info-face{inset:7.2%;z-index:42}@keyframes revealIntroIn{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes awaitingCardFloat{0%,to{transform:translateY(0) rotate(-.6deg)}50%{transform:translateY(-8px) rotate(.6deg)}}@keyframes revealFrontImpact{0%{filter:brightness(1.35) saturate(1.18)}45%{filter:brightness(1.55) saturate(1.26)}to{filter:brightness(1) saturate(1)}}@keyframes revealMagicBurst{0%{opacity:0;transform:scale(.54)}28%{opacity:.96;transform:scale(1.02)}to{opacity:0;transform:scale(1.42)}}@keyframes revealActionsRise{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:375px){.reveal-discovery-intro{width:min(100%,390px)}.card-flip-container{width:min(94vw,390px)}.card-info-btn{min-width:34px}}@media(prefers-reduced-motion:reduce){.card-flip-inner.awaiting-reveal,.card-flip-inner.revealing .card-flip-front,.reveal-page.card-reveal-burst .card-flip-container:before,.reveal-page.card-reveal-burst .reveal-actions,.reveal-discovery-intro{animation:none!important}}:where(button,[href],input,select,textarea,[tabindex]:not([tabindex="-1"])):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}:where(button,input,select,textarea){font:inherit}.app-identity-bar{display:flex;justify-content:flex-end;min-height:3rem}.hero-profile-control{display:grid;grid-template-columns:2.5rem minmax(0,1fr) auto;align-items:center;gap:var(--space-3);max-width:min(100%,20rem);min-height:3rem;padding:var(--space-2) var(--space-3);border:1px solid color-mix(in srgb,var(--line-strong) 72%,transparent);border-radius:var(--radius-full);background:color-mix(in srgb,var(--surface) 90%,transparent);color:var(--text-main);box-shadow:var(--shadow-soft);cursor:pointer;text-align:left;transition:transform .16s var(--ease-out),box-shadow .16s var(--ease-out),border-color .16s var(--ease-out)}.hero-profile-control:hover{transform:translateY(-1px);border-color:var(--cyan);box-shadow:var(--shadow-card)}.hero-profile-control:active{transform:translateY(1px) scale(.98)}.hero-profile-icon{display:grid;width:2.5rem;height:2.5rem;place-items:center;overflow:hidden;border-radius:var(--radius-full);background:var(--accent-soft);font-size:var(--text-xl)}.hero-profile-copy{display:grid;min-width:0;line-height:1.1}.hero-profile-copy small{color:var(--text-soft);font-size:var(--text-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.hero-profile-copy strong{overflow:hidden;font-family:var(--font-fun);font-size:var(--text-base);text-overflow:ellipsis;white-space:nowrap}.hero-profile-edit{color:var(--cyan-strong);font-size:var(--text-sm);font-weight:800}@media(max-width:380px){.hero-profile-control{max-width:100%}.hero-profile-edit{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.subscription-paywall,.paywall-adult-gate{position:fixed;inset:0;z-index:12000;font-family:Nunito,sans-serif;color:var(--ink, #10243f)}.subscription-paywall.hidden,.paywall-adult-gate.hidden,.paywall-link.hidden,.paywall-free.hidden{display:none!important}.subscription-paywall{overflow:auto;overscroll-behavior:contain;background:var(--cream, #fff8ea)}.subscription-paywall:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 10% 10%,rgb(25 189 242 / 12%),transparent 34%),radial-gradient(circle at 92% 88%,rgb(47 209 128 / 12%),transparent 32%)}.paywall-stage{position:relative;display:grid;place-items:center;min-height:100%;padding:max(18px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.paywall-panel{width:min(100%,480px);overflow:hidden;border-radius:28px;background:var(--surface, #fff);box-shadow:0 24px 60px #071b3338}.paywall-collection-preview{position:relative;display:grid;place-items:center;min-height:190px;overflow:hidden;background:var(--navy, #071b33)}.paywall-collection-preview:after{content:"";position:absolute;inset:auto 0 0;height:52px;background:linear-gradient(to top,rgb(7 27 51 / 92%),transparent)}.paywall-collection-preview img{width:100%;height:218px;object-fit:cover;object-position:center 30%;filter:saturate(1.04) contrast(1.02)}.paywall-capture-track{position:absolute;z-index:1;inset:auto 20px 18px;display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.paywall-capture-track span{height:7px;border-radius:999px;background:var(--sun, #ffd34e);box-shadow:0 4px 12px #ffd34e4d}.subscription-paywall[data-mode=locked] .paywall-capture-track span{background:var(--leaf, #2fd180)}.paywall-content{padding:24px 22px 22px}.paywall-content h2{max-width:18ch;margin:0 auto 9px;color:var(--ink, #10243f);font-family:Fredoka,sans-serif;font-size:clamp(1.75rem,7vw,2.25rem);font-weight:700;line-height:1.04;letter-spacing:-.025em;text-align:center;text-wrap:balance}#paywall-summary{max-width:38ch;margin:0 auto 18px;color:var(--ink-soft, #496174);font-size:.98rem;line-height:1.45;text-align:center}.paywall-benefits{display:grid;gap:9px;margin:0 0 20px;padding:0;list-style:none}.paywall-benefits li{display:grid;grid-template-columns:24px 1fr;align-items:center;gap:9px;color:var(--ink, #10243f);font-size:.94rem;font-weight:700;line-height:1.3}.paywall-benefits svg{width:24px;height:24px;padding:4px;border-radius:50%;fill:none;stroke:var(--navy, #071b33);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.7;background:color-mix(in srgb,var(--leaf, #2fd180) 26%,white)}.paywall-plans{display:grid;gap:10px;margin-bottom:14px}.paywall-plan{display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px;width:100%;min-height:72px;padding:13px 15px;border:2px solid var(--line, #dfe8ea);border-radius:16px;color:var(--ink, #10243f);text-align:left;background:var(--surface, #fff);cursor:pointer;transition:border-color .18s ease-out,box-shadow .18s ease-out,transform .18s ease-out}.paywall-plan:hover:not(:disabled){border-color:var(--cyan, #19bdf2)}.paywall-plan:active:not(:disabled){transform:scale(.985)}.paywall-plan.is-selected{border-color:var(--navy, #071b33);box-shadow:0 8px 20px #071b331f}.paywall-plan:disabled{cursor:progress;opacity:.72}.paywall-plan-copy,.paywall-plan-value{display:grid;gap:2px}.paywall-plan-value{justify-items:end;text-align:right}.paywall-plan strong{font-size:1rem;line-height:1.2}.paywall-plan-copy>strong{font-family:Fredoka,sans-serif;font-size:1.15rem}.paywall-plan small,#paywall-annual-equivalent{min-height:1em;color:var(--ink-soft, #496174);font-size:.79rem}.paywall-saving{width:fit-content;padding:3px 8px;border-radius:999px;color:var(--navy, #071b33);font-size:.7rem;font-weight:800;line-height:1.2;background:var(--sun, #ffd34e)}.paywall-primary,.paywall-free,.adult-gate-confirm,.adult-gate-cancel{width:100%;min-height:50px;border:0;border-radius:14px;font-family:Nunito,sans-serif;font-size:.98rem;font-weight:800;cursor:pointer;transition:transform .18s ease-out,box-shadow .18s ease-out,opacity .18s ease-out}.paywall-primary,.adult-gate-confirm{color:var(--navy, #071b33);background:var(--leaf, #2fd180);box-shadow:0 9px 22px #2fd1803d}.paywall-primary:hover:not(:disabled),.adult-gate-confirm:hover{box-shadow:0 11px 25px #2fd18052}.paywall-primary:active:not(:disabled),.paywall-free:active,.adult-gate-confirm:active,.adult-gate-cancel:active{transform:scale(.985)}.paywall-primary:disabled{cursor:progress;opacity:.6;box-shadow:none}.paywall-free{margin-top:9px;color:var(--ink, #10243f);background:var(--surface-warm, #fff3d8)}.paywall-link{display:block;min-height:44px;margin:2px auto 0;padding:8px 12px;border:0;color:var(--ink-soft, #496174);font:700 .9rem/1.2 Nunito,sans-serif;text-decoration:underline;text-underline-offset:3px;background:transparent;cursor:pointer}.paywall-status{min-height:1.4em;margin:5px 0 0;color:var(--ink-soft, #496174);font-size:.84rem;font-weight:700;line-height:1.4;text-align:center}.paywall-status[data-tone=error]{color:#9d2342}.paywall-status[data-tone=success]{color:#0c6846}.paywall-status[data-tone=warning]{color:#7a4b00}.paywall-capture-note,.paywall-renewal{margin:7px auto 0;color:var(--ink-soft, #496174);font-size:.75rem;line-height:1.4;text-align:center}.paywall-renewal{max-width:46ch;margin-bottom:12px}.paywall-legal{display:flex;justify-content:center;gap:4px;margin-top:8px}.paywall-legal button{min-height:44px;padding:7px 9px;border:0;color:var(--ink-soft, #496174);font:700 .74rem/1 Nunito,sans-serif;text-decoration:underline;text-underline-offset:3px;background:transparent;cursor:pointer}.paywall-adult-gate{z-index:12100;display:grid;place-items:center;padding:max(18px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:#071b33d1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.adult-gate-panel{width:min(100%,390px);padding:27px 24px 22px;border-radius:24px;background:var(--surface, #fff);box-shadow:0 24px 60px #00000047;text-align:center}.adult-gate-icon{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 13px;border-radius:50%;color:var(--navy, #071b33);background:var(--sun, #ffd34e)}.adult-gate-icon svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.adult-gate-panel h2{margin:0 0 7px;font-family:Fredoka,sans-serif;font-size:1.65rem;line-height:1.1}.adult-gate-panel>p{margin:0 0 18px;color:var(--ink-soft, #496174);line-height:1.45}#adult-gate-form label{display:block;margin-bottom:8px;color:var(--ink, #10243f);font-size:1.05rem;font-weight:800}#adult-gate-answer{width:100%;min-height:50px;padding:9px 13px;border:2px solid var(--line, #dfe8ea);border-radius:14px;color:var(--ink, #10243f);font:800 1.15rem/1 Nunito,sans-serif;text-align:center;background:var(--surface, #fff)}.adult-gate-error{min-height:1.4em;margin:7px 0;color:#9d2342;font-size:.82rem;font-weight:700}.adult-gate-cancel{margin-top:8px;color:var(--ink, #10243f);background:var(--surface-warm, #fff3d8)}.paywall-plan:focus-visible,.paywall-primary:focus-visible,.paywall-free:focus-visible,.paywall-link:focus-visible,.paywall-legal button:focus-visible,#adult-gate-answer:focus-visible,.adult-gate-confirm:focus-visible,.adult-gate-cancel:focus-visible{outline:3px solid var(--navy, #071b33);outline-offset:3px}body.subscription-paywall-open{overflow:hidden}@media(min-width:720px)and (min-height:760px){.paywall-panel{display:grid;grid-template-columns:minmax(210px,.85fr) minmax(320px,1.15fr);width:min(94vw,780px)}.paywall-collection-preview{min-height:100%}.paywall-collection-preview img{width:100%;height:100%;min-height:560px}.paywall-content{padding:30px 28px 24px}}@media(max-height:720px){.paywall-stage{align-items:start}.paywall-collection-preview{min-height:138px}.paywall-collection-preview img{height:162px}.paywall-content{padding-top:19px}.paywall-benefits{gap:6px;margin-bottom:14px}}@media(prefers-reduced-motion:reduce){.paywall-plan,.paywall-primary,.paywall-free,.adult-gate-confirm,.adult-gate-cancel{transition:none}}
