.ds-console{width:100%;max-width:300px;margin:0 auto;background:linear-gradient(180deg,#2a2d3a,#252838);border-radius:20px 20px 28px 28px;border:2px solid #3a3d4a;box-shadow:0 12px 40px #00000080,0 0 0 1px #ffffff0a,inset 0 1px #ffffff0f;overflow:hidden}.ds-top-half{padding:6px 10px 0}.ds-top-details{display:flex;align-items:center;justify-content:space-between;padding:2px 6px 4px}.ds-screw{width:5px;height:5px;border-radius:50%;background:#1a1d28;border:1px solid #3a3d4a;box-shadow:inset 0 1px 2px #0009;flex-shrink:0}.ds-power-led{width:5px;height:5px;border-radius:50%;background:#4ade80;box-shadow:0 0 6px #4ade8080;transition:all .3s;flex-shrink:0}.ds-power-led.pulse{animation:dsLedPulse 2s ease-in-out infinite}@keyframes dsLedPulse{0%,to{opacity:1}50%{opacity:.3}}.ds-screen-bezel{border:3px solid #111;border-radius:6px;overflow:hidden;box-shadow:inset 0 0 10px #0009,0 1px #ffffff0a}.ds-hinge{display:flex;align-items:center;gap:6px;padding:5px 10px;background:linear-gradient(180deg,#1a1d28,#20232d,#1a1d28);box-shadow:inset 0 2px 4px #00000080,inset 0 -2px 4px #00000080,0 1px #ffffff05;border-top:1px solid rgba(0,0,0,.4);border-bottom:1px solid rgba(0,0,0,.4)}.ds-hinge-line{flex:1;height:1px;background:#ffffff0f}.ds-speaker-holes{display:flex;gap:3px}.ds-speaker-dot{width:2px;height:2px;border-radius:50%;background:#ffffff14}.ds-hinge-label{font-size:.5rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#fff3;white-space:nowrap}.ds-bottom-half{padding:0 10px 4px}.ds-touch-screen{background:#0a0e18;min-height:80px}.ds-controls{display:flex;align-items:center;justify-content:center;gap:8px;padding:6px 4px 2px}.ds-bottom-details{display:flex;align-items:center;justify-content:space-between;padding:2px 6px 4px}.ds-brand-text{font-size:.45rem;font-weight:700;letter-spacing:.25em;text-transform:uppercase;color:#ffffff1f}.ds-pal-info{padding:8px 10px;display:flex;flex-direction:column;gap:5px}.ds-pal-header{display:flex;flex-direction:column;align-items:center;gap:1px}.ds-pal-header .pal-name-btn,.ds-pal-header .ds-pal-name{font-size:.95rem;font-weight:600;padding:.1rem .3rem;color:#e0e4ec;background:none;border:none;cursor:pointer;display:flex;align-items:center;gap:.25rem}.ds-pal-header .pal-name-btn:hover{color:var(--color-accent, #b8ff57)}.ds-pal-species{font-size:.65rem;color:#ffffff59;text-align:center}.ds-pal-stats{display:flex;flex-direction:column;gap:4px}.ds-pal-mood{text-align:center;font-size:.65rem;color:#ffffff4d;padding-top:1px}.ds-action-buttons{display:flex;gap:.5rem;margin-top:.75rem;max-width:300px;margin-left:auto;margin-right:auto}.ds-btn{flex:1;padding:.5rem .4rem;border-radius:12px;border:2px solid;font-size:.75rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.25rem;transition:all .15s ease;background:transparent;box-shadow:0 3px #0000004d,0 5px 12px #00000026}.ds-btn:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px #0000004d}.ds-btn:disabled{opacity:.35;cursor:default;filter:grayscale(.6)}.ds-btn-feed{background:#ef444414;border-color:#ef444440;color:#f87171}.ds-btn-feed:hover:not(:disabled){background:#ef444426}.ds-btn-play{background:#3b82f614;border-color:#3b82f640;color:#60a5fa}.ds-btn-play:hover:not(:disabled){background:#3b82f626}.ds-btn-rest{background:#a855f714;border-color:#a855f740;color:#c084fc}.ds-btn-rest:hover:not(:disabled){background:#a855f726}.ds-btn .care-cd{font-size:.6rem;opacity:.6}.ds-paid-items{display:flex;flex-wrap:wrap;gap:.3rem;max-width:300px;margin:.4rem auto 0}@media(max-width:768px){.ds-console{max-width:260px}.ds-action-buttons{gap:.4rem}.ds-btn{padding:.45rem .3rem;font-size:.7rem}.ds-paid-items{max-width:260px}}@media(max-width:400px){.ds-console{max-width:240px}.ds-pal-info{padding:6px 8px}}.skin-gameboy.ds-console{background:linear-gradient(175deg,#f2f0ed,#e8e4de,#ddd8d0 70%,#d4cec6);border-radius:10px 10px 10px 50px;box-shadow:0 10px 30px #0000002e,0 4px 8px #0000001f,inset 0 1px #ffffffe6,inset 1px 0 #fff6,inset 0 -2px #0000000f,inset -1px 0 #0000000a;padding:0;overflow:hidden;position:relative}.skin-gameboy.ds-console:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(ellipse at 30% 20%,rgba(255,255,255,.15) 0%,transparent 60%);pointer-events:none;z-index:0}.gb-top-edge{display:flex;align-items:center;justify-content:space-between;padding:6px 20px 0;position:relative;z-index:1}.gb-power-switch{width:28px;height:6px;background:linear-gradient(180deg,#b8b0a4,#a89e92);border-radius:3px;box-shadow:inset 0 1px 2px #00000040,0 1px #ffffff80;position:relative}.gb-power-switch:after{content:"";position:absolute;left:2px;top:1px;width:10px;height:4px;background:linear-gradient(180deg,#d0c8bc,#c4bab0);border-radius:2px;box-shadow:0 .5px #00000026}.gb-ir-port{width:14px;height:5px;background:linear-gradient(180deg,#3a1520,#2a0a15);border-radius:2px;box-shadow:inset 0 1px 2px #00000080}.gb-header{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 20px 6px;position:relative;z-index:1}.gb-accent-line{flex:1;height:2px;border-radius:1px}.gb-line-red{background:linear-gradient(90deg,transparent,#8b2252 10%,#8b2252 90%,transparent);box-shadow:0 .5px #0000001a}.gb-line-blue{background:linear-gradient(90deg,transparent,#1e3a8a 10%,#1e3a8a 90%,transparent);box-shadow:0 .5px #0000001a}.gb-header-text{font-family:Courier New,Courier,monospace;font-size:.4rem;font-weight:700;letter-spacing:.12em;color:#a09890;white-space:nowrap;text-transform:uppercase}.gb-screen-wrap{padding:0 16px;position:relative;z-index:1}.gb-battery{display:flex;align-items:center;gap:4px;padding:6px 4px 4px}.gb-battery-led{width:7px;height:7px;border-radius:50%;background:#4ade80;box-shadow:0 0 6px #4ade8099;border:.5px solid rgba(0,0,0,.15)}.gb-battery-led.pulse{animation:gb-led-pulse 2s ease-in-out infinite}@keyframes gb-led-pulse{0%,to{opacity:1}50%{opacity:.3}}.gb-battery-text{font-family:Courier New,monospace;font-size:.38rem;font-weight:700;letter-spacing:.14em;color:#a09890;text-transform:uppercase}.gb-screen-bezel{background:linear-gradient(180deg,#73738a,#5f5f72 40%,#52526a);border-radius:8px 8px 8px 36px;padding:12px 12px 14px;position:relative;box-shadow:inset 0 3px 6px #0006,inset 0 -1px 3px #0003,inset 2px 0 4px #00000026,inset -2px 0 4px #00000026,0 1px #ffffff26,0 -1px #0000001a}.gb-screen-inner{border-radius:4px;overflow:hidden;position:relative;background:#0a0a14;box-shadow:inset 0 2px 4px #00000080,0 0 0 1px #0000004d}.gb-scanlines{position:absolute;inset:12px 12px 14px;border-radius:4px;pointer-events:none;z-index:2;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.04) 2px,rgba(0,0,0,.04) 4px);mix-blend-mode:multiply}.gb-info-area{padding:8px 16px 4px;position:relative;z-index:1}.skin-gameboy .ds-pal-info{background:#0000000a;border:1px solid rgba(0,0,0,.06);border-radius:6px;padding:6px 8px}.skin-gameboy .ds-pal-header{text-align:center}.skin-gameboy .ds-pal-species{color:#7a7060;font-size:.7rem}.skin-gameboy .ds-pal-stats{padding:2px 0}.skin-gameboy .ds-pal-mood{text-align:center;font-size:.7rem;color:#8a8070}.gb-controls-area{display:flex;align-items:center;justify-content:space-between;padding:8px 24px 4px;position:relative;z-index:1}.gb-dpad{width:54px;height:54px;position:relative}.gb-dpad-h{position:absolute;top:50%;left:0;transform:translateY(-50%);width:100%;height:18px;background:linear-gradient(180deg,#3a3632,#2c2824);border-radius:3px;box-shadow:0 2px #0003,inset 0 1px #ffffff14}.gb-dpad-v{position:absolute;left:50%;top:0;transform:translate(-50%);width:18px;height:100%;background:linear-gradient(90deg,#3a3632,#2c2824);border-radius:3px;box-shadow:0 2px #0003,inset 0 1px #ffffff14}.gb-dpad-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:10px;height:10px;background:#28241e;border-radius:50%;box-shadow:inset 0 1px 2px #0006}.gb-ab-buttons{display:flex;gap:8px;transform:rotate(-25deg)}.gb-btn-a,.gb-btn-b{width:26px;height:26px;border-radius:50%;background:linear-gradient(180deg,#8b2252,#6d1a40);color:#ffffff80;font-family:Arial,sans-serif;font-size:.55rem;font-weight:900;display:flex;align-items:center;justify-content:center;box-shadow:0 3px #4a0e28,0 4px 4px #00000040,inset 0 1px #ffffff26;text-shadow:0 -.5px 0 rgba(0,0,0,.3);-webkit-user-select:none;user-select:none}.gb-btn-a{margin-top:-10px}.gb-start-select{display:flex;align-items:center;justify-content:center;gap:16px;padding:6px 20px 2px;position:relative;z-index:1}.gb-ss-btn{width:32px;height:7px;background:linear-gradient(180deg,#b0a898,#a09888);border-radius:4px;box-shadow:inset 0 1px 2px #0003,0 1px #fff6;font-family:Arial,sans-serif;font-size:0;color:transparent;position:relative;overflow:hidden}.gb-speaker{display:flex;flex-direction:column;gap:3px;position:absolute;bottom:40px;right:20px;transform:rotate(-30deg);z-index:1}.gb-speaker-line{width:20px;height:2px;background:linear-gradient(90deg,#00000014,#0000001f,#00000014);border-radius:1px}.gb-branding{display:flex;flex-direction:column;align-items:center;padding:6px 0 14px;position:relative;z-index:1}.gb-brand-game{font-family:Arial Black,Helvetica,sans-serif;font-size:.75rem;font-weight:900;font-style:italic;letter-spacing:.06em;color:#6a6258;text-shadow:0 .5px 0 rgba(255,255,255,.3);text-transform:uppercase}.gb-brand-color{font-family:Arial,Helvetica,sans-serif;font-size:.5rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase;background:linear-gradient(90deg,#e53e3e,#f6ad55,#48bb78,#4299e1,#9f7aea);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.skin-gba.ds-console{background:linear-gradient(180deg,#4f46e5,#3b35b0 40%,#312e81);border:2px solid #3730a3;border-radius:14px 14px 28px 28px;box-shadow:0 12px 40px #00000080,0 0 0 1px #ffffff0f,inset 0 1px #ffffff26,inset 0 -2px #00000026;padding:0;overflow:hidden;position:relative}.gba-bumpers{display:flex;align-items:center;justify-content:space-between;padding:4px 8px 2px}.gba-bumper{font-family:Arial,Helvetica,sans-serif;font-size:.5rem;font-weight:900;color:#ffffff40;background:#0003;padding:1px 8px;border-radius:0 0 6px 6px;letter-spacing:.05em;text-transform:uppercase}.gba-power-led{width:6px;height:6px;border-radius:50%;background:#4ade80;box-shadow:0 0 6px #4ade8099;border:1px solid rgba(0,0,0,.2)}.gba-power-led.pulse{animation:gb-led-pulse 2s ease-in-out infinite}.gba-screen-area{padding:4px 16px 0}.gba-screen-bezel{background:#1a1648;border-radius:6px;padding:8px;box-shadow:inset 0 3px 8px #0009,inset 0 -2px 4px #0000004d,0 1px #ffffff0f}.gba-screen-content{border-radius:3px;overflow:hidden;background:#0a0816}.gba-info-area{padding:16px 16px 4px}.skin-gba .ds-pal-info{background:#00000026;border:1px solid rgba(255,255,255,.06);border-radius:8px;color:#ffffffd9}.skin-gba .ds-pal-header{text-align:center;color:#ffffffe6}.skin-gba .ds-pal-stats{padding:4px 0;color:#ffffffb3}.skin-gba .ds-pal-mood{text-align:center;font-size:.75rem;color:#c8c8ff80}.gba-controls{padding:4px 16px 6px}.gba-controls .ds-btn,.gba-controls .ds-btn-feed,.gba-controls .ds-btn-play,.gba-controls .ds-btn-rest{border-radius:10px;font-size:.6rem;font-weight:700;border:2px solid rgba(0,0,0,.2);background:linear-gradient(180deg,#6d5dde,#5046b5);color:#fff;box-shadow:0 3px #00000040,inset 0 1px #fff3;text-transform:uppercase;letter-spacing:.04em}.gba-controls .ds-btn:active{box-shadow:0 1px #0003;transform:translateY(2px)}.gba-bottom{display:flex;align-items:center;justify-content:space-between;padding:6px 16px 12px}.gba-brand-text{font-family:Arial Black,Helvetica,sans-serif;font-size:.65rem;font-weight:900;color:#c8c8ff33;letter-spacing:.12em;text-transform:uppercase}.gba-speaker{display:flex;gap:3px}.gba-speaker-dot{width:3px;height:10px;border-radius:1px;background:#ffffff14}.skin-switch.ds-console{background:linear-gradient(180deg,#1a1a2e,#16162a);border:2px solid #2a2a40;border-radius:12px;box-shadow:0 12px 40px #0009,0 0 0 1px #ffffff08,inset 0 1px #ffffff0a;padding:0;overflow:hidden;position:relative}.sw-top-bar{display:flex;align-items:center;justify-content:flex-end;padding:4px 12px 2px}.sw-power-led{width:4px;height:4px;border-radius:50%;background:#4ade80;box-shadow:0 0 4px #4ade8080}.sw-power-led.pulse{animation:gb-led-pulse 2s ease-in-out infinite}.sw-screen-area{display:flex;align-items:stretch;padding:0 4px;gap:0}.sw-joycon-rail{width:6px;border-radius:3px;flex-shrink:0}.sw-joycon-left{background:linear-gradient(180deg,#3b82f6,#2563eb);box-shadow:0 0 10px #3b82f659,inset 0 1px #ffffff26;border-radius:6px 0 0 6px}.sw-joycon-right{background:linear-gradient(180deg,#ef4444,#dc2626);box-shadow:0 0 10px #ef444459,inset 0 1px #ffffff26;border-radius:0 6px 6px 0}.sw-screen-bezel{flex:1;background:#08081a;border:2px solid #0a0a14;border-radius:4px;padding:2px;box-shadow:inset 0 0 8px #000c}.sw-screen-content{border-radius:2px;overflow:hidden}.sw-info-area{padding:12px 12px 4px}.skin-switch .ds-pal-info{background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:8px;color:#ffffffd9}.skin-switch .ds-pal-header{text-align:center;color:#ffffffe6}.skin-switch .ds-pal-stats{padding:4px 0;color:#ffffffb3}.skin-switch .ds-pal-mood{text-align:center;font-size:.75rem;color:#fff6}.sw-controls{padding:4px 12px}.sw-controls .ds-btn,.sw-controls .ds-btn-feed,.sw-controls .ds-btn-play,.sw-controls .ds-btn-rest{border-radius:16px;font-size:.65rem;font-weight:600;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#ffffff14,#ffffff08);color:#ffffffd9;box-shadow:0 2px 4px #0000004d;text-transform:uppercase;letter-spacing:.04em}.sw-controls .ds-btn:active{background:#ffffff0a;transform:translateY(1px)}.sw-bottom-bar{display:flex;flex-direction:column;align-items:center;padding:6px 12px 10px;gap:4px}.sw-brand-text{font-family:Arial,Helvetica,sans-serif;font-size:.4rem;font-weight:600;color:#ffffff1a;letter-spacing:.15em;text-transform:uppercase}.sw-usbc{display:block;width:16px;height:3px;background:#ffffff0f;border-radius:2px}@media(max-width:768px){.gb-screen-wrap{padding:0 10px}.gb-controls-area{padding:6px 16px 2px}.gb-dpad{width:44px;height:44px}.gb-dpad-h{height:15px}.gb-dpad-v{width:15px}.gb-btn-a,.gb-btn-b{width:22px;height:22px;font-size:.45rem}.gb-btn-a{margin-top:-8px}.skin-gameboy.ds-console{border-radius:8px 8px 8px 36px}.gba-screen-area{padding:4px 12px 0}.gba-info-area{padding:12px 12px 4px}.gba-bottom{padding:4px 12px 10px}.sw-info-area{padding:10px 10px 4px}}.habitat-screen{position:relative;width:100%;aspect-ratio:4 / 3;overflow:hidden}.habitat-bg-elements{position:absolute;inset:0;pointer-events:none;z-index:1}.habitat-ground{position:absolute;bottom:0;left:0;right:0;height:30%;z-index:1}.habitat-scanlines{position:absolute;inset:0;z-index:3;pointer-events:none;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.06) 2px,rgba(0,0,0,.06) 4px);mix-blend-mode:multiply}.habitat-sprite-area{position:absolute;bottom:18%;left:50%;transform:translate(-50%);z-index:2;display:flex;align-items:flex-end;justify-content:center;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3))}.habitat-mood-badge{position:absolute;top:8px;right:8px;z-index:4;font-size:1.2rem;line-height:1;text-shadow:0 1px 4px rgba(0,0,0,.5);animation:moodFloat 3s ease-in-out infinite}@keyframes moodFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.habitat-bg-dot{width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.15);cursor:pointer;transition:all .2s ease;position:relative;flex-shrink:0}.habitat-bg-dot:hover{transform:scale(1.15);border-color:#fff6}.habitat-bg-dot.active{border-color:#fffc;box-shadow:0 0 8px #ffffff4d;transform:scale(1.1)}.habitat-bg-dot.locked{opacity:.4;border-style:dashed}.habitat-bg-dot.locked:hover{opacity:.7}.habitat-bg-cost{position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%);display:flex;align-items:center;gap:2px;font-size:.55rem;font-weight:700;color:var(--color-accent, #b8ff57);background:var(--color-bg-primary, #0d0d14);padding:1px 5px;border-radius:999px;white-space:nowrap;pointer-events:none;box-shadow:0 2px 6px #0006}.habitat-bg-meadow{background:linear-gradient(180deg,#87ceeb,#b0e0ff 40%,#4ade80 55%,#22c55e)}.habitat-bg-meadow .habitat-ground{background:linear-gradient(180deg,#4ade80,#16a34a)}.habitat-bg-meadow .habitat-bg-elements:before,.habitat-bg-meadow .habitat-bg-elements:after{content:"";position:absolute;bottom:28%;width:3px;height:12px;background:#16a34a;border-radius:0 0 2px 2px;animation:grassSway 2s ease-in-out infinite}.habitat-bg-meadow .habitat-bg-elements:before{left:15%;animation-delay:0s}.habitat-bg-meadow .habitat-bg-elements:after{right:20%;animation-delay:.8s}@keyframes grassSway{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}.habitat-bg-meadow .habitat-bg-elements{background:radial-gradient(ellipse 20px 8px at 25% 15%,rgba(255,255,255,.6) 0%,transparent 100%),radial-gradient(ellipse 28px 10px at 70% 22%,rgba(255,255,255,.5) 0%,transparent 100%)}.habitat-bg-forest{background:linear-gradient(180deg,#1a4a2e,#0f3a1e,#166534 60%,#14532d)}.habitat-bg-forest .habitat-ground{background:linear-gradient(180deg,#14532d,#052e16)}.habitat-bg-forest .habitat-bg-elements{background:radial-gradient(ellipse 24px 30px at 10% 40%,#0a2e14 0%,transparent 100%),radial-gradient(ellipse 30px 35px at 88% 35%,#0a2e14 0%,transparent 100%),radial-gradient(ellipse 18px 22px at 50% 25%,rgba(74,222,128,.06) 0%,transparent 100%)}.habitat-bg-forest .habitat-bg-elements:before{content:"";position:absolute;top:10%;left:0;right:0;height:50%;background:radial-gradient(circle 2px at 20% 30%,rgba(74,222,128,.3) 0%,transparent 80%),radial-gradient(circle 2px at 65% 50%,rgba(74,222,128,.25) 0%,transparent 80%),radial-gradient(circle 1px at 40% 20%,rgba(74,222,128,.2) 0%,transparent 80%);animation:forestSparkle 4s ease-in-out infinite alternate}@keyframes forestSparkle{0%{opacity:.4}to{opacity:1}}.habitat-bg-beach{background:linear-gradient(180deg,#7dd3fc,#bae6fd 35%,#fbbf24,#f59e0b 75%,#38bdf8 85%,#0ea5e9)}.habitat-bg-beach .habitat-ground{background:linear-gradient(180deg,#fbbf24,#f59e0b 40%,#38bdf8 40%,#0ea5e9)}.habitat-bg-beach .habitat-bg-elements:before{content:"";position:absolute;bottom:26%;left:0;right:0;height:4px;background:#38bdf880;animation:waterRipple 2.5s ease-in-out infinite}.habitat-bg-beach .habitat-bg-elements:after{content:"";position:absolute;bottom:25%;left:0;right:0;height:3px;background:#ffffff4d;animation:waterRipple 2.5s ease-in-out infinite .5s}@keyframes waterRipple{0%,to{transform:translate(-5px);opacity:.4}50%{transform:translate(5px);opacity:.8}}.habitat-bg-beach .habitat-bg-elements{background:radial-gradient(circle 15px at 80% 12%,#fde68a 0%,transparent 100%)}.habitat-bg-cave{background:linear-gradient(180deg,#292524,#1c1917 40%,#44403c,#57534e)}.habitat-bg-cave .habitat-ground{background:linear-gradient(180deg,#44403c,#292524)}.habitat-bg-cave .habitat-bg-elements{background:radial-gradient(ellipse 40px 60px at 5% 30%,#1c1917 0%,transparent 100%),radial-gradient(ellipse 35px 50px at 95% 25%,#1c1917 0%,transparent 100%)}.habitat-bg-cave .habitat-bg-elements:before,.habitat-bg-cave .habitat-bg-elements:after{content:"";position:absolute;width:4px;height:4px;border-radius:1px;animation:crystalGlint 3s ease-in-out infinite}.habitat-bg-cave .habitat-bg-elements:before{top:25%;left:18%;background:#a78bfa;box-shadow:0 0 8px #a78bfa99}.habitat-bg-cave .habitat-bg-elements:after{top:35%;right:22%;background:#67e8f9;box-shadow:0 0 8px #67e8f999;animation-delay:1.5s}@keyframes crystalGlint{0%,to{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.4)}}.habitat-bg-city{background:linear-gradient(180deg,#0f172a,#1e293b 60%,#334155)}.habitat-bg-city .habitat-ground{background:linear-gradient(180deg,#334155,#1e293b)}.habitat-bg-city .habitat-bg-elements{background:linear-gradient(180deg,transparent 50%,#0f172a 50%) no-repeat 10% 100% / 18px 45%,linear-gradient(180deg,transparent 50%,#0f172a 50%) no-repeat 28% 100% / 24px 55%,linear-gradient(180deg,transparent 50%,#0f172a 50%) no-repeat 48% 100% / 14px 40%,linear-gradient(180deg,transparent 50%,#0f172a 50%) no-repeat 65% 100% / 20px 50%,linear-gradient(180deg,transparent 50%,#0f172a 50%) no-repeat 82% 100% / 16px 38%}.habitat-bg-city .habitat-bg-elements:before,.habitat-bg-city .habitat-bg-elements:after{content:"";position:absolute;width:2px;height:2px;background:#fde68a;box-shadow:8px -5px #fde68a,22px -12px #fde68a,-10px -8px #fde68a,35px -3px #fde68a;animation:windowBlink 4s steps(1) infinite}.habitat-bg-city .habitat-bg-elements:before{bottom:35%;left:15%}.habitat-bg-city .habitat-bg-elements:after{bottom:40%;right:15%;animation-delay:2s}@keyframes windowBlink{0%,80%{opacity:1}85%,95%{opacity:.2}to{opacity:1}}.habitat-bg-night-sky{background:linear-gradient(180deg,#0f0a2e,#1e1050 40%,#2e1065,#1a0a3e)}.habitat-bg-night-sky .habitat-ground{background:linear-gradient(180deg,#1a0a3e,#0f0a2e)}.habitat-bg-night-sky .habitat-bg-elements{background:radial-gradient(circle 1px at 15% 12%,#fff 0%,transparent 100%),radial-gradient(circle 1px at 35% 25%,#fff 0%,transparent 100%),radial-gradient(circle 2px at 55% 8%,#fde68a 0%,transparent 100%),radial-gradient(circle 1px at 75% 30%,#fff 0%,transparent 100%),radial-gradient(circle 1px at 88% 15%,#fff 0%,transparent 100%),radial-gradient(circle 1px at 45% 35%,#c4b5fd 0%,transparent 100%),radial-gradient(circle 1px at 22% 40%,#fff 0%,transparent 100%)}.habitat-bg-night-sky .habitat-bg-elements:before{content:"";position:absolute;top:10%;left:10%;right:10%;height:35%;background:linear-gradient(90deg,transparent 0%,rgba(74,222,128,.08) 20%,rgba(168,85,247,.1) 50%,rgba(56,189,248,.08) 80%,transparent 100%);filter:blur(8px);animation:auroraShift 6s ease-in-out infinite;border-radius:50%}.habitat-bg-night-sky .habitat-bg-elements:after{content:"";position:absolute;inset:0;background:radial-gradient(circle 1px at 10% 20%,rgba(255,255,255,.8) 0%,transparent 100%),radial-gradient(circle 1px at 60% 18%,rgba(255,255,255,.6) 0%,transparent 100%),radial-gradient(circle 1px at 82% 38%,rgba(255,255,255,.7) 0%,transparent 100%);animation:starTwinkle 2s ease-in-out infinite alternate}@keyframes starTwinkle{0%{opacity:.5}to{opacity:1}}@keyframes auroraShift{0%,to{transform:translate(-8px) scaleY(.8);opacity:.5}50%{transform:translate(8px) scaleY(1.2);opacity:.9}}:root{--color-accent: #b8ff57;--color-accent-hover: #a3e84d;--color-accent-muted: rgba(184, 255, 87, .1);--color-accent-border: rgba(184, 255, 87, .25);--color-bg-primary: #0c0c0f;--color-bg-elevated: #141416;--color-bg-surface: #1c1c20;--color-bg-input: #0e0e11;--color-border: #2a2a30;--color-border-hover: #3a3a42;--color-text-primary: #eef0f5;--color-text-secondary: #8b8f9e;--color-text-muted: #5c5f6e;--color-text-white: #fff;--color-error: #f44336;--color-error-hover: #d32f2f;--color-warning: #ff9800;--color-success: #22c55e;--color-info: #3b82f6;--color-discord: #5865F2;--color-discord-hover: #4752c4;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-full: 999px;--transition-fast: .15s ease;--transition-normal: .2s ease;--font-xs: .7rem;--font-sm: .8rem;--font-base: .9rem;--font-md: 1rem;--font-lg: 1.15rem;--font-xl: 1.35rem;--font-2xl: 1.6rem;--space-xs: .25rem;--space-sm: .5rem;--space-md: .75rem;--space-lg: 1rem;--space-xl: 1.5rem;--space-2xl: 2rem;--sidebar-width: 240px;--header-height: 48px;--radius-xl: 1.25rem;--shadow-modal: 0 0 0 1px rgba(255, 255, 255, .06), 0 24px 80px rgba(0, 0, 0, .6), 0 8px 24px rgba(0, 0, 0, .4);--shadow-glow-accent: 0 0 20px rgba(184, 255, 87, .15), 0 0 60px rgba(184, 255, 87, .05);--shadow-glow-discord: 0 0 20px rgba(88, 101, 242, .25)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:system-ui,-apple-system,sans-serif;background:var(--color-bg-primary);color:var(--color-text-primary);min-height:100vh}.app{display:flex;flex-direction:column;height:100vh;max-width:900px;margin:0 auto;padding:0 1rem;overflow:hidden}.brand-accent{color:var(--color-accent)}header{display:flex;align-items:center;gap:.75rem;padding:.5rem 0;border-bottom:1px solid var(--color-border);flex-shrink:0}.header-credit{margin-left:auto;font-size:var(--font-xs);color:var(--color-text-muted);white-space:nowrap;display:none}.header-credit a{color:var(--color-text-muted);text-decoration:none}.header-credit a:hover{color:var(--color-accent)}@media(min-width:1024px){.header-credit{display:inline}}header h1{font-size:1.15rem;font-weight:700;color:#fff;cursor:default;-webkit-user-select:none;user-select:none;white-space:nowrap}.brand-icon{width:28px;height:28px;object-fit:contain}nav{display:flex;gap:.25rem;padding:.35rem 0;border-bottom:1px solid var(--color-border);flex-shrink:0;flex-wrap:wrap}nav button{background:var(--color-bg-surface);color:var(--color-text-secondary);border:1px solid var(--color-border);padding:.35rem .75rem;border-radius:.5rem;cursor:pointer;font-size:.82rem;transition:all .15s;display:flex;align-items:center;gap:.3rem;white-space:nowrap}nav button:hover{background:var(--color-border);color:var(--color-text-primary)}nav button.active{background:var(--color-accent);color:var(--color-bg-primary);border-color:var(--color-accent);font-weight:600}.live-dot{width:6px;height:6px;border-radius:50%;background:#ef4444;animation:room-video-pulse 2s ease-in-out infinite}.unread-dot{width:7px;height:7px;border-radius:50%;background:var(--color-accent);flex-shrink:0;animation:unread-pulse 2s ease-in-out infinite}@keyframes unread-pulse{0%,to{opacity:1}50%{opacity:.4}}.nav-badge{background:#b8ff5733;color:var(--color-accent);font-size:.65rem;font-weight:700;padding:.05rem .35rem;border-radius:.75rem;min-width:1rem;text-align:center}nav button.active .nav-badge{background:#0c0c0f33;color:var(--color-bg-primary)}nav button.mobile-trivia-btn.active{background:#fbbf2433;color:#fbbf24;border-color:#fbbf244d}nav button .live-dot{margin-left:4px}.room-info-bar{display:flex;align-items:center;gap:.5rem;padding:.25rem 0;flex-shrink:0}.copy-link-btn{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:.2rem;border-radius:4px;display:flex;align-items:center;transition:color .15s,background .15s}.copy-link-btn:hover{color:var(--color-accent);background:#ffffff0d}.username{background:#141416cc;padding:.15rem .6rem;border-radius:1rem;font-size:.8rem;color:var(--color-accent);border:1px solid var(--color-border);cursor:pointer;transition:border-color .15s;display:flex;align-items:center;gap:.25rem;white-space:nowrap}.username:hover{border-color:var(--color-accent)}.status{font-size:.7rem;padding:.1rem .35rem;border-radius:.5rem}.status.connected{color:var(--color-accent)}.status.disconnected{color:var(--color-error)}.status.connecting{color:var(--color-warning)}main{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0}.chat-panel{display:flex;flex-direction:column;flex:1;min-height:0}.message-list{flex:1;overflow-y:auto;padding:.25rem .5rem;display:flex;flex-direction:column;gap:2px}.jump-to-latest{position:sticky;bottom:0;align-self:center;margin:-2rem auto .25rem;padding:.3rem 1rem;background:var(--color-info);color:#fff;border:none;border-radius:999px;font-size:.8rem;cursor:pointer;z-index:5;box-shadow:0 2px 8px #0000004d;animation:jumpPulse 1s ease infinite}.jump-to-latest:hover{background:#2563eb}@keyframes jumpPulse{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.message{display:flex;gap:.35rem;align-items:baseline;padding:.15rem 0;font-size:.85rem}.msg-time{color:var(--color-text-muted);font-size:.75rem;flex-shrink:0}.msg-sender{color:#ff7b54;font-weight:600;flex-shrink:0}.msg-sender.sender-admin{color:var(--color-accent)}.msg-sender.sender-mod{color:#7ecfff}.msg-lang{color:var(--color-text-muted);font-size:.75rem;flex-shrink:0}.msg-text{word-break:break-word}.chat-input{display:flex;align-items:center;gap:.35rem;padding:.35rem .5rem;border-top:1px solid var(--color-border);background:var(--color-bg-input)}.chat-input-muted{display:flex;align-items:center;justify-content:center;padding:.75rem .5rem;border-top:1px solid var(--color-border);background:var(--color-bg-input);color:#ff6b6b;font-size:.85rem;font-weight:600;opacity:.7}.chat-input .input-wrapper{flex:1;position:relative}.chat-input input{width:100%;background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border);padding:.5rem .75rem;border-radius:.5rem;font-size:.9rem;outline:none}.chat-input input:focus{border-color:var(--color-accent)}.chat-input .btn-icon{background:transparent;border:none;color:var(--color-text-secondary);padding:.35rem;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s;flex-shrink:0}.chat-input .btn-icon:hover{background:var(--color-bg-surface);color:var(--color-text-primary)}.chat-input .btn-icon.active{color:var(--color-accent)}.chat-input .btn-send{background:var(--color-accent);color:var(--color-bg-primary);border:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;transition:background var(--transition-fast),transform .1s,opacity var(--transition-fast);padding:0}.chat-input .btn-send:hover:not(:disabled){background:var(--color-accent-hover)}.chat-input .btn-send:disabled{background:var(--color-bg-surface);color:var(--color-text-muted);cursor:not-allowed;opacity:.6}.chat-input .btn-send:active:not(:disabled){transform:scale(.95)}.btn-send-countdown{font-size:.75rem;font-weight:700}.chat-input button:not(.btn-icon):not(.btn-send){background:var(--color-accent);color:var(--color-bg-primary);border:none;transition:background var(--transition-fast),transform .1s,opacity var(--transition-fast);padding:.5rem 1.25rem;border-radius:.5rem;cursor:pointer;font-size:.9rem;font-weight:600}.chat-input button:not(.btn-icon):not(.btn-send):disabled{background:var(--color-bg-surface);color:var(--color-text-muted);cursor:not-allowed;opacity:.6}.chat-input button:not(.btn-icon):not(.btn-send):hover:not(:disabled){background:var(--color-accent-hover)}.news-layout{display:flex;flex-direction:column;flex:1;min-height:0;gap:.5rem}.news-layout>.news-panel{flex:1;overflow-y:auto;min-height:200px}.news-layout>.chat-panel{flex:0 0 250px}.news-panel{display:flex;flex-direction:column;gap:.5rem;padding:.5rem}.news-card-rich{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:.5rem;display:flex;overflow:hidden;transition:border-color .15s;flex-shrink:0}.news-card-rich:hover{border-color:var(--color-border-hover)}.news-thumbnail{flex:0 0 100px;min-height:80px;background:var(--color-bg-input);overflow:hidden}.news-thumbnail img{width:100%;height:100%;object-fit:cover;display:block}.news-card-content{flex:1;min-width:0;padding:.6rem .75rem;display:flex;flex-direction:column;gap:.25rem}.news-card-top{display:flex;align-items:center;gap:.5rem}.news-source-badge{font-size:.65rem;font-weight:700;text-transform:uppercase;color:#fff;padding:1px 6px;border-radius:3px;white-space:nowrap;letter-spacing:.03em}.news-time-relative{color:var(--color-text-muted);font-size:.7rem;margin-left:auto;white-space:nowrap}.news-delete-btn{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:2px 4px;border-radius:3px;display:flex;align-items:center;flex-shrink:0}.news-delete-btn:hover{color:#e53935;background:#e539351a}.news-card-title{display:block;color:var(--color-accent);text-decoration:none;font-weight:600;font-size:.9rem;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.news-card-title:hover{text-decoration:underline;color:#d0ff8a}.news-card-summary{color:var(--color-text-secondary);font-size:.8rem;line-height:1.35;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0}.news-load-more{background:var(--color-bg-surface);color:var(--color-accent);border:1px solid var(--color-border);padding:.5rem 1rem;border-radius:.4rem;cursor:pointer;font-size:.8rem;width:100%;text-align:center;flex-shrink:0;transition:background var(--transition-fast)}.news-load-more:hover{background:var(--color-border)}.empty-state{color:var(--color-text-muted);font-size:.85rem;text-align:center;padding:2rem 1rem}.news-breaking-banner{display:flex;align-items:center;gap:.5rem;background:linear-gradient(90deg,#e53935,#ff6b6b);color:#fff;padding:.4rem .75rem;border-radius:.4rem;cursor:pointer;font-size:.8rem;margin:.25rem 0;animation:breakingPulse 2s infinite}@keyframes breakingPulse{0%,to{opacity:1}50%{opacity:.85}}.breaking-label{font-weight:800;font-size:.7rem;text-transform:uppercase;background:#00000040;padding:1px 6px;border-radius:3px;letter-spacing:.08em;flex-shrink:0}.breaking-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.breaking-dismiss{background:none;border:none;color:#ffffffb3;cursor:pointer;font-size:.9rem;padding:0 4px;flex-shrink:0}.breaking-dismiss:hover{color:#fff}.admin-panel{padding:.5rem;overflow-y:auto}.admin-tab-bar{display:flex;gap:.35rem;padding:.4rem;background:#0e123099;border:1px solid rgba(139,143,158,.1);border-radius:10px;margin-bottom:1rem;flex-wrap:wrap}.admin-tab-bar button{background:transparent;color:var(--color-text-secondary);border:1px solid transparent;border-radius:8px;padding:.45rem 1.1rem;font-size:.85rem;cursor:pointer;transition:background .15s,color .15s,box-shadow .15s,border-color .15s;font-weight:500}.admin-tab-bar button:hover{background:#3b82f614;color:#b8bfdf;border-color:#3b82f626}.admin-tab-bar button.active{background:#3b82f6;color:#fff;font-weight:700;box-shadow:0 0 12px #3b82f659}.admin-section-badge{display:inline-block;background:#3b82f633;color:#6ea8fe;border-radius:10px;padding:0 7px;font-size:.75rem;margin-left:.4rem;font-weight:600;vertical-align:middle}.admin-section{margin-bottom:1.25rem;background:#14193766;border:1px solid rgba(136,144,181,.08);border-radius:var(--radius-lg);padding:1rem}.admin-section h3{color:#fff;margin-bottom:.75rem;font-size:1rem;padding-bottom:.5rem;border-bottom:2px solid rgba(184,255,87,.12)}.section-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s}.section-toggle:hover{color:var(--color-accent)}.source-list{display:flex;flex-direction:column;gap:.5rem}.source-card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:.5rem;padding:.75rem;display:flex;justify-content:space-between;align-items:center;gap:.75rem}.source-info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.source-info strong{color:var(--color-text-primary);font-size:.9rem}.source-url{color:var(--color-text-muted);font-size:.75rem;word-break:break-all}.source-checked{color:var(--color-text-muted);font-size:.7rem}.source-header-row{display:flex;align-items:center;gap:.4rem}.source-type-badge{font-size:.6rem;font-weight:700;text-transform:uppercase;padding:1px 5px;border-radius:3px;color:#fff;letter-spacing:.03em}.source-type-rss{background:#5b8dd9}.source-type-scrape{background:var(--color-warning)}.source-type-api{background:#9c27b0}.source-status-dot{font-size:.75rem;margin-left:.15rem}.source-status-dot.ok{color:#4caf50}.source-status-dot.error{color:#e53935}.source-error{color:#e53935;font-size:.7rem;margin-top:.1rem;word-break:break-all}.btn-enabled{background:var(--color-accent);color:var(--color-bg-primary);border:none;padding:.4rem .75rem;border-radius:.4rem;cursor:pointer;flex-shrink:0;font-weight:600}.btn-disabled{background:var(--color-bg-surface);color:var(--color-text-muted);border:1px solid var(--color-border);padding:.4rem .75rem;border-radius:.4rem;cursor:pointer;flex-shrink:0}.add-source-form{display:flex;flex-direction:column;gap:.5rem}.add-source-form input{background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border);padding:.5rem .75rem;border-radius:.5rem;font-size:.85rem;outline:none}.add-source-form input:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px #b8ff571a}.add-source-form button{background:var(--color-accent);color:var(--color-bg-primary);border:none;padding:.5rem;border-radius:.5rem;cursor:pointer;align-self:flex-start;font-weight:600}.modal-overlay{position:fixed;inset:0;background:#050714d9;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:.75rem;padding:2rem;width:90%;max-width:360px}.modal h2{color:#fff;margin-bottom:1rem;font-size:1.1rem}.modal form{display:flex;gap:.5rem}.modal input{flex:1;background:var(--color-bg-primary);color:var(--color-text-primary);border:1px solid var(--color-border);padding:.5rem .75rem;border-radius:.5rem;font-size:.9rem;outline:none}.modal input:focus{border-color:var(--color-accent)}.modal button{background:var(--color-accent);color:var(--color-bg-primary);border:none;padding:.5rem 1.25rem;border-radius:.5rem;cursor:pointer;font-size:.9rem;font-weight:600}.admin-panel button{cursor:pointer;font-size:.85rem}.admin-section>button{background:var(--color-accent);color:var(--color-bg-primary);border:none;padding:.5rem 1rem;border-radius:.5rem;font-weight:600;cursor:pointer;transition:background var(--transition-fast)}.admin-section>button:disabled{background:var(--color-bg-surface);color:var(--color-text-muted);cursor:not-allowed}.fetch-status{margin-top:.5rem;color:var(--color-text-secondary);font-size:.85rem}.error{color:var(--color-error);font-size:.85rem;margin-top:.5rem}.empty-state{color:var(--color-text-muted);text-align:center;padding:2rem;font-style:italic}.badge{font-size:.65rem;padding:.1rem .4rem;border-radius:.25rem;margin-left:.4rem;font-weight:700;text-transform:uppercase;vertical-align:middle}.badge.admin{background:var(--color-accent);color:var(--color-bg-primary)}.badge.mod{background:#5c7a2e;color:#d0ff8a}.ban-notice{background:var(--color-error)18;border:1px solid var(--color-error);color:var(--color-error);padding:.5rem 1rem;border-radius:.5rem;text-align:center;font-size:.85rem;margin-bottom:.5rem}.chat-banned{color:var(--color-error);text-align:center;padding:.75rem;font-size:.85rem;border-top:1px solid var(--color-border)}.msg-media{margin-top:.4rem}.msg-media img{max-width:300px;max-height:200px;border-radius:.4rem;cursor:pointer}.msg-media video{max-width:300px;max-height:200px;border-radius:.4rem}.media-preview{position:relative;display:inline-block;padding:.5rem;background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:.5rem;margin-bottom:.25rem}.media-preview img,.media-preview video{max-width:200px;max-height:150px;border-radius:.4rem;display:block}.btn-remove-media{position:absolute;top:.25rem;right:.25rem;background:#dc3232d9;color:#fff;border:none;border-radius:50%;width:1.5rem;height:1.5rem;font-size:1rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.btn-remove-media:hover{background:#dc3232}.media-input-row{display:flex;gap:.5rem;padding:.25rem 0}.media-input-row select{background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border);padding:.4rem;border-radius:.4rem;font-size:.8rem}.media-url-input{flex:1;background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border);padding:.4rem .6rem;border-radius:.4rem;font-size:.8rem;outline:none}.media-url-input:focus{border-color:var(--color-accent)}.inline-form{display:flex;gap:.5rem;flex-wrap:wrap}.inline-form input{background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border);padding:.5rem .75rem;border-radius:.5rem;font-size:.85rem;outline:none;flex:1;min-width:120px}.inline-form input:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px #b8ff571a}.inline-form select{background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border);padding:.5rem .75rem;border-radius:.5rem;font-size:.85rem;outline:none;cursor:pointer}.inline-form select:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px #b8ff571a}.inline-form button{background:var(--color-accent);color:var(--color-bg-primary);border:none;padding:.5rem 1rem;border-radius:.5rem;cursor:pointer;flex-shrink:0;font-weight:600;transition:opacity .15s}.inline-form button:hover{opacity:.85}.admin-textarea{background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border);padding:.5rem .75rem;border-radius:.5rem;font-size:.85rem;font-family:inherit;outline:none;resize:vertical;width:100%}.admin-textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px #b8ff571a}.item-list{display:flex;flex-direction:column;gap:.4rem;margin-top:.5rem}.item-row{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:.4rem;padding:.5rem .75rem;display:flex;justify-content:space-between;align-items:center;gap:.5rem;transition:background .15s,border-color .15s}.item-row:hover{background:#1e2650cc;border-color:#8890b533}.item-info{display:flex;flex-direction:column;gap:.1rem;min-width:0}.item-info strong{font-size:.9rem}.item-detail{color:var(--color-text-muted);font-size:.75rem}.btn-remove{background:var(--color-error);color:#fff;border:none;padding:.3rem .6rem;border-radius:.3rem;cursor:pointer;font-size:.75rem;flex-shrink:0;transition:background .15s,transform .1s}.btn-remove:hover{background:#c62828}.btn-remove:active{transform:scale(.95)}.profanity-list{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem}.profanity-tag{background:var(--color-bg-elevated);border:1px solid var(--color-border);padding:.25rem .5rem;border-radius:1rem;font-size:.8rem;display:flex;align-items:center;gap:.3rem}.btn-tag-remove{background:none;border:none;color:var(--color-error);cursor:pointer;font-size:.75rem;padding:0;line-height:1}.btn-tag-remove:hover{color:#ff6b6b}.message.announcement{background:#f443361a;border-left:3px solid var(--color-error);padding:.5rem .75rem;border-radius:.4rem;font-size:1.05rem;margin:.25rem 0}.announce-icon{flex-shrink:0;font-size:1rem}.message.announcement .msg-sender{color:#ff6b6b}.emoji-picker{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:.75rem;padding:.5rem;width:320px;max-height:280px;display:flex;flex-direction:column;box-shadow:0 4px 20px #0006;z-index:50}.emoji-categories{display:flex;gap:.15rem;padding-bottom:.4rem;border-bottom:1px solid var(--color-border);margin-bottom:.4rem;overflow-x:auto;flex-shrink:0}.emoji-cat-btn{background:none;border:none;padding:.3rem .4rem;border-radius:.3rem;cursor:pointer;font-size:1.1rem;opacity:.5;transition:all .15s}.emoji-cat-btn:hover{opacity:.8;background:var(--color-bg-surface)}.emoji-cat-btn.active{opacity:1;background:var(--color-bg-surface)}.emoji-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:.15rem;overflow-y:auto;flex:1}.emoji-btn{background:none;border:none;padding:.25rem;border-radius:.3rem;cursor:pointer;font-size:1.25rem;line-height:1;transition:background .1s}.emoji-btn:hover{background:var(--color-bg-surface)}.url-fetch-row{display:flex;gap:.5rem}.url-fetch-row input{background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border);padding:.5rem .75rem;border-radius:.5rem;font-size:.85rem;outline:none}.url-fetch-row input:focus{border-color:var(--color-accent)}.btn-fetch-info{background:var(--color-bg-surface);color:var(--color-accent);border:1px solid var(--color-border);padding:.5rem .75rem;border-radius:.5rem;cursor:pointer;font-size:.85rem;font-weight:600;white-space:nowrap;flex-shrink:0}.btn-fetch-info:hover{background:var(--color-border)}.btn-fetch-info:disabled{opacity:.5;cursor:not-allowed}.claim-admin-panel{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:.5rem;padding:.75rem;margin-bottom:.5rem}.success{color:var(--color-accent);font-size:.85rem;margin-top:.5rem}.consent-banner{position:fixed;bottom:0;left:0;right:0;background:var(--color-bg-elevated);border-top:1px solid var(--color-border);padding:.6rem 1rem;display:flex;align-items:center;justify-content:center;gap:.75rem;font-size:.8rem;color:var(--color-text-secondary);z-index:90}.consent-banner a{color:var(--color-accent);text-decoration:none;border-bottom:1px solid rgba(184,255,87,.2)}.consent-banner a:hover{border-color:var(--color-accent)}.consent-banner button{background:var(--color-bg-surface);color:var(--color-accent);border:1px solid var(--color-border);padding:.25rem .75rem;border-radius:.4rem;cursor:pointer;font-size:.75rem;font-weight:600;white-space:nowrap}.consent-banner button:hover{background:var(--color-border)}.chat-input-consent-blocked{opacity:.45;pointer-events:none;display:flex;align-items:center;justify-content:center;min-height:2.5rem}.consent-hint{font-size:.8rem;color:var(--color-text-secondary);font-style:italic}.app-body.has-consent-banner{padding-bottom:2.5rem}.install-prompt{position:fixed;bottom:4.5rem;left:50%;transform:translate(-50%);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:.75rem;padding:.5rem .75rem;display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--color-text-secondary);z-index:90;box-shadow:0 4px 20px #00000080;max-width:90%;white-space:nowrap}.install-icon{font-size:1.1rem;flex-shrink:0}.install-text{flex:1;overflow:hidden;text-overflow:ellipsis}.install-btn{background:var(--color-accent);color:var(--color-bg-primary);border:none;padding:.3rem .75rem;border-radius:.4rem;cursor:pointer;font-weight:600;font-size:.8rem;flex-shrink:0}.install-btn:hover{opacity:.85}.install-dismiss{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:.9rem;padding:.1rem .3rem;flex-shrink:0}.install-dismiss:hover{color:var(--color-text-primary)}.btn-delete-data{background:none;border:none;color:var(--color-text-muted);font-size:.7rem;cursor:pointer;padding:.15rem .4rem;transition:color .15s}.btn-delete-data:hover{color:var(--color-error)}.delete-confirm-overlay,.modal-overlay{position:fixed;inset:0;background:#050714d9;display:flex;align-items:center;justify-content:center;z-index:200}.delete-confirm{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:.75rem;padding:2rem;width:90%;max-width:360px;text-align:center}.delete-confirm h3{color:#fff;margin-bottom:.75rem;font-size:1rem}.delete-confirm p{color:var(--color-text-secondary);font-size:.85rem;line-height:1.5;margin-bottom:1.25rem}.delete-confirm-actions{display:flex;gap:.5rem;justify-content:center}.delete-confirm-actions button{padding:.5rem 1.25rem;border-radius:.5rem;font-size:.85rem;font-weight:600;cursor:pointer;border:none}.btn-delete-confirm{background:var(--color-error);color:#fff;transition:background var(--transition-fast)}.btn-delete-confirm:hover{background:var(--color-error-hover)}.btn-delete-cancel{background:var(--color-bg-surface);color:var(--color-text-secondary);transition:background var(--transition-fast)}.btn-delete-cancel:hover{background:var(--color-border)}.btn-confirm-primary{background:var(--color-accent);color:var(--color-bg-primary);transition:background var(--transition-fast)}.btn-confirm-primary:hover{background:var(--color-accent-hover)}.confirm-dialog-overlay{z-index:300}.confirm-dialog{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:.75rem;padding:2rem;width:90%;max-width:360px;text-align:center}.confirm-dialog h3{color:var(--color-text-white);margin-bottom:.75rem;font-size:1rem}.confirm-dialog p{color:var(--color-text-secondary);font-size:.85rem;line-height:1.5;margin-bottom:1.25rem}.confirm-dialog-actions{display:flex;gap:.5rem;justify-content:center}.confirm-dialog-actions button{padding:.5rem 1.25rem;border-radius:.5rem;font-size:.85rem;font-weight:600;cursor:pointer;border:none}.modal-close-btn{position:absolute;top:.75rem;right:.75rem;background:none;border:none;color:var(--color-text-muted);font-size:1.5rem;line-height:1;cursor:pointer;padding:.25rem;transition:color var(--transition-fast)}.modal-close-btn:hover{color:var(--color-text-primary)}.modal-privacy-line{margin-top:.75rem;font-size:.75rem;color:var(--color-text-muted);text-align:center}.modal-privacy-line a{color:var(--color-text-secondary);text-decoration:none;border-bottom:1px solid rgba(139,143,158,.2)}.modal-privacy-line a:hover{color:var(--color-accent);border-color:#b8ff574d}.room-desc{color:var(--color-text-muted);font-size:.8rem;flex:1}.btn-edit-room,.btn-delete-room{background:none;border:none;cursor:pointer;font-size:.8rem;opacity:.3;transition:opacity .15s;padding:.1rem .3rem}.btn-edit-room:hover{opacity:.8;color:var(--color-accent)}.btn-delete-room:hover{opacity:.8}.edit-room-title{margin:0 0 1rem;font-size:1.1rem;color:var(--color-text)}.edit-room-form{display:flex;flex-direction:column;gap:.75rem}.edit-room-label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;color:var(--color-text-muted)}.edit-room-input{background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;padding:.5rem .75rem;color:var(--color-text);font-size:.9rem}.edit-room-input:focus{border-color:var(--color-accent);outline:none}.edit-room-input-narrow{max-width:100px}.edit-room-hint{font-size:.75rem;opacity:.5}.edit-room-toggles{display:flex;flex-direction:column;gap:.5rem}.edit-room-toggle{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--color-text);cursor:pointer}.edit-room-toggle input[type=checkbox]{accent-color:var(--color-accent)}.edit-room-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.5rem}.edit-room-actions .btn-cancel{background:none;border:1px solid var(--color-border);border-radius:6px;padding:.4rem 1rem;color:var(--color-text-muted);cursor:pointer}.edit-room-actions .btn-save{background:var(--color-accent);border:none;border-radius:6px;padding:.4rem 1rem;color:#000;font-weight:600;cursor:pointer}.edit-room-actions .btn-save:disabled{opacity:.5;cursor:not-allowed}nav .btn-create-room{background:var(--color-bg-surface);color:var(--color-text-muted);border:1px dashed var(--color-border);font-size:1.1rem;padding:.5rem .85rem}nav .btn-create-room:hover{color:var(--color-accent);border-color:var(--color-accent)}.create-room-modal form{display:flex;flex-direction:column;gap:.5rem}.create-room-modal input{background:var(--color-bg-primary);color:var(--color-text-primary);border:1px solid var(--color-border);padding:.5rem .75rem;border-radius:.5rem;font-size:.9rem;outline:none;width:100%}.create-room-modal input:focus{border-color:var(--color-accent)}.create-room-watch-toggle{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer}.create-room-watch-toggle input[type=checkbox]{accent-color:var(--color-accent);width:16px;height:16px}.create-room-watch-toggle span{font-size:var(--font-sm);color:var(--color-text-primary)}.create-room-watch-toggle small{width:100%;font-size:var(--font-xs);color:var(--color-text-muted);margin-left:1.5rem}.create-room-temp-note{font-size:var(--font-xs);color:var(--color-warning);margin:0 0 .25rem;padding:.4rem .6rem;background:#ff98001a;border-radius:var(--radius-sm);border:1px solid rgba(255,152,0,.2)}.sidebar-temp-badge{font-size:.6rem;padding:1px 4px;border-radius:var(--radius-full);background:#ff980026;color:var(--color-warning);font-weight:600;flex-shrink:0}.msg-context-menu{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:.5rem;padding:.25rem;z-index:100;box-shadow:0 4px 16px #00000080;min-width:160px;animation:contextMenuIn .12s ease-out}@keyframes contextMenuIn{0%{opacity:0;transform:scale(.95) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}.msg-context-menu button{background:none;border:none;color:var(--color-text-primary);padding:.4rem .75rem;width:100%;text-align:left;cursor:pointer;font-size:.85rem;border-radius:.3rem;display:block}.msg-context-menu button:hover{background:var(--color-bg-surface)}.msg-context-menu button.ctx-ban{color:var(--color-error)}.msg-context-menu button.ctx-ban:hover{background:#f4433626}.msg-wrapper{display:flex;flex-direction:column}.msg-reactions{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.15rem;padding-left:3.5rem;min-height:0}.reaction-badge{display:inline-flex;align-items:center;gap:.2rem;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:1rem;padding:.1rem .45rem;font-size:.75rem;cursor:pointer;transition:all .15s;-webkit-user-select:none;user-select:none}.reaction-badge:hover{background:var(--color-bg-surface);border-color:#3b4580}.reaction-badge.active{border-color:var(--color-accent);background:#b8ff571a}.reaction-badge .reaction-emoji{font-size:.85rem;line-height:1}.reaction-badge .reaction-count{color:var(--color-text-secondary);font-size:.7rem;font-weight:600}.reaction-badge.active .reaction-count{color:var(--color-accent)}.reaction-picker-anchor{position:relative}.btn-add-reaction{background:none;border:1px dashed var(--color-border);color:var(--color-text-muted);border-radius:1rem;padding:.1rem .45rem;font-size:.75rem;cursor:pointer;transition:all .15s;line-height:1}.btn-add-reaction:hover{border-color:var(--color-accent);color:var(--color-accent)}.reaction-mini-picker{position:absolute;bottom:100%;left:0;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:.5rem;padding:.25rem;display:flex;gap:.1rem;box-shadow:0 4px 16px #00000080;z-index:60;margin-bottom:.25rem}.reaction-pick-btn{background:none;border:none;padding:.25rem;border-radius:.3rem;cursor:pointer;font-size:1.15rem;line-height:1;transition:background .1s}.reaction-pick-btn:hover{background:var(--color-bg-surface)}.pinned-banner{display:flex;align-items:center;gap:.5rem;background:#b8ff5714;border-left:3px solid var(--color-accent);padding:.4rem .75rem;border-radius:.4rem;font-size:.85rem;margin-bottom:.25rem;flex-shrink:0}.pinned-banner .pin-icon{flex-shrink:0}.pinned-banner .pin-sender{color:var(--color-accent);font-weight:600;flex-shrink:0}.pinned-banner .pin-text{color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.pinned-banner .pin-close{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:1rem;padding:0 .25rem;flex-shrink:0}.pinned-banner .pin-close:hover{color:var(--color-error)}.message.msg-banned{opacity:.4;border-left:2px solid var(--color-error);padding-left:.5rem}.msg-avatar{width:20px;height:20px;image-rendering:pixelated;vertical-align:middle;margin-right:.15rem;flex-shrink:0}.msg-sender{cursor:pointer}.msg-sender:hover{text-decoration:underline}.header-avatar{width:28px;height:28px;image-rendering:pixelated;vertical-align:middle;margin-right:.15rem;border-radius:50%;background:#0e122d99}.btn-edit-profile{background:none;border:none;color:var(--color-text-muted);font-size:.85rem;cursor:pointer;padding:.15rem .4rem;transition:color .15s;flex-shrink:0}.btn-edit-profile:hover{color:var(--color-accent)}.avatar-prompt{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:.5rem;padding:.5rem .75rem;margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--color-text-secondary)}.avatar-prompt button{background:var(--color-accent);color:var(--color-bg-primary);border:none;padding:.3rem .75rem;border-radius:.4rem;cursor:pointer;font-weight:600;font-size:.8rem;flex-shrink:0}.btn-avatar-dismiss{background:none!important;color:var(--color-text-muted)!important;font-size:.9rem!important;padding:.2rem!important;margin-left:auto}.btn-avatar-dismiss:hover{color:var(--color-text-primary)!important}.avatar-picker-overlay{position:fixed;inset:0;background:#050714d9;display:flex;align-items:center;justify-content:center;z-index:150}.avatar-picker{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:.75rem;padding:1.25rem;width:90%;max-width:480px;max-height:85vh;overflow-y:auto}.avatar-picker h3{color:#fff;margin-bottom:.75rem;font-size:1.05rem}.avatar-search{width:100%;background:var(--color-bg-primary);color:var(--color-text-primary);border:1px solid var(--color-border);padding:.5rem .75rem;border-radius:.5rem;font-size:.9rem;outline:none;margin-bottom:.75rem}.avatar-search:focus{border-color:var(--color-accent)}.avatar-featured{display:flex;gap:.25rem;overflow-x:auto;padding-bottom:.5rem;margin-bottom:.5rem;scrollbar-width:thin}.avatar-gen-tabs{display:flex;gap:.25rem;margin-bottom:.75rem;flex-wrap:wrap}.avatar-gen-tabs button{background:var(--color-bg-primary);color:var(--color-text-secondary);border:1px solid var(--color-border);padding:.25rem .5rem;border-radius:.4rem;cursor:pointer;font-size:.75rem}.avatar-gen-tabs button.active{background:var(--color-accent);color:var(--color-bg-primary);border-color:var(--color-accent);font-weight:600}.avatar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:.2rem;max-height:260px;overflow-y:auto;padding:.2rem;scrollbar-width:thin}.avatar-grid-item{width:48px;height:48px;border:2px solid transparent;border-radius:.4rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s,background .15s;background:var(--color-bg-primary);padding:0}.avatar-grid-item:hover{border-color:var(--color-accent);background:var(--color-bg-surface)}.avatar-grid-item.selected{border-color:var(--color-accent);background:var(--color-bg-surface)80}.avatar-grid-item img{width:40px;height:40px;image-rendering:pixelated}.avatar-no-results{grid-column:1 / -1;color:var(--color-text-muted);font-size:.85rem;text-align:center;padding:1rem}.avatar-preview{display:flex;align-items:center;gap:1rem;margin-top:.75rem;padding:.75rem;background:var(--color-bg-primary);border-radius:.5rem;border:1px solid var(--color-border)}.avatar-preview img{width:80px;height:80px;image-rendering:auto}.avatar-preview-info{color:var(--color-accent);font-weight:600}.avatar-actions{display:flex;gap:.5rem;margin-top:.75rem}.btn-avatar-confirm{background:var(--color-accent);color:var(--color-bg-primary);border:none;padding:.5rem 1rem;border-radius:.5rem;cursor:pointer;font-weight:600;font-size:.9rem}.btn-avatar-confirm:disabled{opacity:.5;cursor:not-allowed}.btn-avatar-clear{background:var(--color-bg-surface);color:var(--color-text-secondary);border:1px solid var(--color-border);padding:.5rem 1rem;border-radius:.5rem;cursor:pointer;font-size:.9rem}.btn-avatar-clear:hover{background:var(--color-border)}.btn-avatar-cancel{background:none;color:var(--color-text-muted);border:none;padding:.5rem .75rem;cursor:pointer;font-size:.9rem;margin-left:auto}.btn-avatar-cancel:hover{color:var(--color-text-primary)}.profile-card-overlay{position:fixed;inset:0;z-index:120}.profile-card{position:fixed;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:.75rem;padding:1rem;width:220px;box-shadow:0 4px 20px #00000080;z-index:121;text-align:center}.profile-card-avatar{width:80px;height:80px;margin:0 auto .5rem;display:block}.profile-card-no-avatar{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:2rem;font-weight:600}.profile-card-name{color:#fff;font-weight:600;font-size:1rem;margin-bottom:.25rem}.profile-card-pokemon{color:var(--color-accent);font-size:.8rem;margin-bottom:.25rem}.profile-card-bio{color:var(--color-text-secondary);font-size:.8rem;margin-top:.5rem;line-height:1.4}@media(max-width:480px){.profile-card{width:auto;min-width:180px;max-width:calc(100vw - 32px)}.profile-card-avatar{width:64px;height:64px}}.edit-profile-overlay{z-index:250;padding:1rem}.edit-profile-modal{position:relative;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:12px;padding:1.5rem;width:100%;max-width:380px;color:var(--color-text-primary)}.edit-profile-modal h3{font-size:1.1rem;margin-bottom:1.2rem;text-align:center}.edit-profile-avatar-section{display:flex;align-items:center;gap:1rem;margin-bottom:1.2rem;padding:.75rem;background:var(--color-bg-primary);border-radius:10px;border:1px solid var(--color-border)}.edit-profile-avatar-img{width:80px;height:80px;border-radius:50%;object-fit:contain;background:#1a2040;flex-shrink:0}.edit-profile-no-avatar{display:flex;align-items:center;justify-content:center;font-size:2rem;color:var(--color-text-muted);border:2px dashed var(--color-border)}.edit-profile-avatar-info{display:flex;flex-direction:column;gap:.4rem}.edit-profile-pokemon-name{font-weight:600;font-size:.95rem}.btn-change-avatar{background:var(--color-border);border:1px solid #3b4580;color:var(--color-accent);padding:.4rem .8rem;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .15s;white-space:nowrap}.btn-change-avatar:hover{background:#3b4580}.edit-profile-bio-section{margin-bottom:1.2rem}.edit-profile-bio-section label{display:block;font-size:.85rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:.35rem}.edit-profile-bio-section textarea{width:100%;padding:.6rem .75rem;background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-primary);font-size:.85rem;font-family:inherit;resize:vertical;min-height:60px;outline:none;transition:border-color .2s}.edit-profile-bio-section textarea:focus{border-color:var(--color-accent)}.edit-profile-bio-section textarea::placeholder{color:var(--color-text-muted)}.edit-profile-bio-count{text-align:right;font-size:.7rem;color:var(--color-text-muted);margin-top:.25rem}.edit-profile-actions{display:flex;gap:.5rem;justify-content:center}.btn-edit-save{padding:.5rem 1.5rem;background:var(--color-accent);color:var(--color-bg-primary);border:none;border-radius:8px;font-weight:700;font-size:.9rem;cursor:pointer;transition:opacity .15s}.btn-edit-save:hover{opacity:.85}.btn-edit-cancel{padding:.5rem 1.5rem;background:var(--color-bg-surface);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:background .15s}.btn-edit-cancel:hover{background:var(--color-border)}.account-panel{margin-bottom:1.2rem;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-primary);overflow:hidden}.account-panel-header{font-size:.8rem;font-weight:700;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;padding:.6rem .75rem .4rem;border-bottom:1px solid #1a2040}.account-section{padding:.6rem .75rem;border-bottom:1px solid #1a2040}.account-section:last-child{border-bottom:none}.account-section-label{font-size:.75rem;font-weight:600;color:var(--color-text-muted);margin-bottom:.35rem}.account-linked{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:#b0b8d4}.account-linked-icon{font-size:.85rem}.btn-account-action{display:inline-flex;align-items:center;gap:.35rem;background:var(--color-bg-surface);border:1px solid var(--color-border);color:var(--color-accent);padding:.35rem .7rem;border-radius:6px;font-size:.78rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-account-action:hover{background:var(--color-border)}.btn-account-action:disabled{opacity:.5;cursor:not-allowed}.btn-discord{color:#fff;background:var(--color-discord);border-color:var(--color-discord-hover)}.btn-discord:hover{background:var(--color-discord-hover)}.btn-account-small{background:var(--color-bg-surface);border:1px solid var(--color-border);color:var(--color-text-secondary);padding:.25rem .5rem;border-radius:5px;font-size:.72rem;font-weight:600;cursor:pointer;margin-left:auto}.btn-account-small:hover{background:var(--color-border);color:var(--color-text-primary)}.btn-account-small:disabled{opacity:.5;cursor:not-allowed}.passphrase-display{margin-top:.35rem}.passphrase-text{font-family:Courier New,monospace;font-size:.9rem;font-weight:700;color:#f5c542;background:var(--color-bg-elevated);border:1px dashed #f5c542;border-radius:6px;padding:.5rem .6rem;text-align:center;word-break:break-all;-webkit-user-select:all;user-select:all}.passphrase-hint{font-size:.7rem;color:var(--color-text-secondary);margin-top:.3rem;text-align:center}.passphrase-actions{display:flex;align-items:center;gap:.4rem;margin-top:.4rem;justify-content:center}.passphrase-saved{font-size:.78rem;color:#4ade80;font-weight:600}.account-recover-row{display:flex;gap:.35rem;align-items:center}.account-recover-input{flex:1;background:var(--color-bg-elevated);border:1px solid var(--color-border);color:var(--color-text-primary);padding:.35rem .5rem;border-radius:6px;font-size:.78rem;font-family:Courier New,monospace;outline:none}.account-recover-input:focus{border-color:var(--color-accent)}.account-recover-input::placeholder{color:var(--color-text-muted)}.account-error{font-size:.72rem;color:var(--color-error);margin-top:.3rem}.chat-toolbar{display:flex;gap:.35rem;padding:.25rem .5rem;flex-shrink:0}.toolbar-btn{display:flex;align-items:center;justify-content:center;width:38px;height:38px;background:var(--color-accent);color:var(--color-bg-primary);border:none;border-radius:.5rem;cursor:pointer;transition:all .15s;padding:0}.toolbar-btn:hover{background:#d4ff8f;transform:translateY(-1px)}.toolbar-btn.active{background:#9de63f;box-shadow:0 0 10px #b8ff5766}.toolbar-btn.btn-announce.active{background:var(--color-error);color:#fff;box-shadow:0 0 10px #f4433666}.toolbar-btn svg{flex-shrink:0}.watching-count{display:inline-flex;align-items:center;gap:.3rem;background:#b8ff571f;color:var(--color-accent);font-size:.75rem;font-weight:600;padding:.15rem .5rem;border-radius:1rem;border:1px solid rgba(184,255,87,.25)}.watching-icon{width:14px;height:14px;vertical-align:middle;image-rendering:pixelated}.slow-mode-badge{background:#ff98001f;color:var(--color-warning);font-size:.75rem;font-weight:600;padding:.15rem .5rem;border-radius:1rem;border:1px solid rgba(255,152,0,.25)}.slow-mode-control{position:relative;margin-left:auto}.btn-slow-mode-toggle{background:none;border:1px solid var(--color-border);color:var(--color-text-secondary);padding:.15rem .4rem;border-radius:.4rem;cursor:pointer;font-size:.85rem;line-height:1;transition:all .15s}.btn-slow-mode-toggle:hover{border-color:var(--color-accent);color:var(--color-accent)}.slow-mode-menu{position:absolute;top:100%;right:0;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:.5rem;padding:.25rem;display:flex;flex-direction:column;gap:.1rem;z-index:50;box-shadow:0 4px 16px #00000080;min-width:80px}.slow-mode-menu button{background:none;border:none;color:var(--color-text-secondary);padding:.35rem .5rem;border-radius:.3rem;cursor:pointer;font-size:.8rem;text-align:left;transition:all .1s}.slow-mode-menu button:hover{background:var(--color-bg-surface);color:var(--color-text-primary)}.slow-mode-menu button.active{color:var(--color-accent);background:#b8ff571a}.poll-widget{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-left:3px solid var(--color-accent);border-radius:.5rem;padding:.75rem;margin-bottom:.5rem;flex-shrink:0}.poll-widget.poll-closed{opacity:.6;border-left-color:var(--color-text-muted)}.poll-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.poll-icon{font-size:1rem;flex-shrink:0}.poll-question{font-weight:600;color:#fff;font-size:.9rem;flex:1}.poll-timer{background:#ff980026;color:var(--color-warning);font-size:.7rem;font-weight:600;padding:.15rem .45rem;border-radius:.75rem;border:1px solid rgba(255,152,0,.3);flex-shrink:0}.poll-status-badge{background:#555d8033;color:var(--color-text-secondary);font-size:.7rem;font-weight:600;padding:.15rem .45rem;border-radius:.75rem;flex-shrink:0}.poll-options{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.5rem}.poll-option{position:relative;background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:.4rem;padding:.5rem .75rem;cursor:pointer;display:flex;align-items:center;justify-content:space-between;overflow:hidden;transition:border-color .15s;color:var(--color-text-primary);font-size:.85rem;text-align:left;width:100%}.poll-option:hover:not(:disabled){border-color:var(--color-accent)}.poll-option:disabled{cursor:default}.poll-option.poll-voted{border-color:var(--color-accent)}.poll-bar{position:absolute;left:0;top:0;bottom:0;background:#b8ff571f;transition:width .4s ease;border-radius:.4rem 0 0 .4rem}.poll-voted .poll-bar{background:#b8ff5733}.poll-option-text{position:relative;z-index:1;flex:1}.poll-option-pct{position:relative;z-index:1;color:var(--color-text-secondary);font-size:.8rem;font-weight:600;flex-shrink:0;margin-left:.5rem}.poll-voted .poll-option-pct{color:var(--color-accent)}.poll-footer{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--color-text-muted)}.poll-vote-count{color:var(--color-text-secondary)}.poll-author{flex:1}.poll-close-btn{background:#f4433626;border:1px solid rgba(244,67,54,.3);color:var(--color-error);padding:.2rem .5rem;border-radius:.3rem;cursor:pointer;font-size:.7rem;font-weight:600;transition:all .15s}.poll-close-btn:hover{background:#f4433640}.poll-create-modal{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:.75rem;padding:1.5rem;width:90%;max-width:400px}.poll-create-modal h3{color:#fff;margin-bottom:1rem;font-size:1.05rem}.poll-create-modal form{display:flex;flex-direction:column;gap:.75rem}.poll-create-modal input[type=text]{background:var(--color-bg-primary);color:var(--color-text-primary);border:1px solid var(--color-border);padding:.5rem .75rem;border-radius:.5rem;font-size:.9rem;outline:none;width:100%}.poll-create-modal input[type=text]:focus{border-color:var(--color-accent)}.poll-create-modal select{background:var(--color-bg-primary);color:var(--color-text-primary);border:1px solid var(--color-border);padding:.5rem;border-radius:.5rem;font-size:.85rem}.poll-options-edit{display:flex;flex-direction:column;gap:.3rem}.poll-option-row{display:flex;gap:.3rem;align-items:center}.poll-option-row input{flex:1}.poll-opt-remove{background:none;border:1px solid var(--color-border);color:var(--color-error);width:1.5rem;height:1.5rem;border-radius:50%;cursor:pointer;font-size:.75rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s}.poll-opt-remove:hover{background:#f4433626;border-color:var(--color-error)}.poll-add-opt{background:none;border:1px dashed var(--color-border);color:var(--color-text-muted);padding:.35rem;border-radius:.4rem;cursor:pointer;font-size:.8rem;transition:all .15s}.poll-add-opt:hover{border-color:var(--color-accent);color:var(--color-accent)}.poll-create-actions{display:flex;gap:.5rem}.poll-create-actions button[type=submit]{background:var(--color-accent);color:var(--color-bg-primary);border:none;padding:.5rem 1rem;border-radius:.5rem;cursor:pointer;font-weight:600;font-size:.9rem}.poll-cancel{background:var(--color-bg-surface);color:var(--color-text-secondary);border:1px solid var(--color-border);padding:.5rem 1rem;border-radius:.5rem;cursor:pointer;font-size:.9rem}.poll-cancel:hover{background:var(--color-border)}.sticker-picker{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:.75rem;padding:.5rem;width:340px;max-height:320px;display:flex;flex-direction:column;box-shadow:0 4px 20px #0006;z-index:50}.sticker-tabs{display:flex;gap:.15rem;padding-bottom:.4rem;border-bottom:1px solid var(--color-border);margin-bottom:.4rem;flex-shrink:0;flex-wrap:wrap}.sticker-tabs button{background:none;border:none;padding:.3rem .5rem;border-radius:.3rem;cursor:pointer;font-size:.75rem;color:var(--color-text-secondary);text-transform:capitalize;transition:all .15s;white-space:nowrap}.sticker-tabs button:hover{background:var(--color-bg-surface);color:var(--color-text-primary)}.sticker-tabs button.active{background:var(--color-bg-surface);color:var(--color-accent);font-weight:600}.sticker-close{margin-left:auto;color:var(--color-text-muted)!important}.sticker-close:hover{color:var(--color-text-primary)!important}.sticker-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.3rem;overflow-y:auto;flex:1;padding:.2rem}.sticker-item{background:none;border:2px solid transparent;border-radius:.4rem;cursor:pointer;padding:.2rem;display:flex;align-items:center;justify-content:center;transition:all .15s}.sticker-item:hover{border-color:var(--color-accent);background:var(--color-bg-surface)}.sticker-item img{width:64px;height:64px;object-fit:contain}.msg-sticker{vertical-align:middle;margin-left:.25rem;flex-shrink:0}.watch-party-pip{position:fixed;bottom:5rem;right:1rem;width:320px;background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:.6rem;overflow:hidden;z-index:200;box-shadow:0 6px 28px #0009;cursor:grab;-webkit-user-select:none;user-select:none;transition:width .2s,box-shadow .2s;animation:watchPartyEnter .25s ease-out}@keyframes watchPartyEnter{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.watch-party-pip:active{cursor:grabbing}.watch-party-pip.watch-party-mini{width:200px}.watch-party-hidden-pill{width:auto!important;background:var(--color-bg-elevated);border-radius:2rem;padding:0;box-shadow:0 4px 16px #00000080;cursor:grab}.watch-party-hidden-pill:active{cursor:grabbing}.watch-party-restore{background:var(--color-accent);color:var(--color-bg-primary);border:none;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .15s}.watch-party-restore:hover{transform:scale(1.1)}.watch-party-audio-only{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;border:none}.watch-party-header{display:flex;align-items:center;justify-content:space-between;padding:.3rem .6rem;background:var(--color-bg-primary);border-bottom:1px solid var(--color-border);cursor:grab}.watch-party-label{display:flex;align-items:center;gap:.3rem;color:var(--color-accent);font-size:.7rem;font-weight:600}.watch-party-label svg{flex-shrink:0}.watch-party-now-playing{font-size:.7rem;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.watch-party-elapsed{margin-left:.4rem;color:var(--color-accent);font-variant-numeric:tabular-nums;font-family:monospace;font-size:.65rem}.watch-party-controls{display:flex;align-items:center;gap:.2rem}.watch-party-ctrl-btn{background:none;border:1px solid var(--color-border);color:var(--color-text-secondary);width:22px;height:22px;border-radius:.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.7rem;transition:all .15s;padding:0;line-height:1}.watch-party-ctrl-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.watch-party-url-bar{display:flex;gap:.25rem;padding:.35rem .5rem;border-bottom:1px solid var(--color-border)}.watch-party-url-bar input{flex:1;background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border);padding:.25rem .5rem;border-radius:.3rem;font-size:.75rem;outline:none;min-width:0}.watch-party-url-bar input:focus{border-color:var(--color-accent)}.watch-party-url-bar button{background:var(--color-accent);color:var(--color-bg-primary);border:none;padding:.25rem .5rem;border-radius:.3rem;cursor:pointer;font-size:.7rem;font-weight:600;flex-shrink:0}.watch-party-url-bar button:disabled{opacity:.5;cursor:not-allowed}.watch-party-clear{background:var(--color-bg-surface)!important;color:var(--color-error)!important;border:1px solid var(--color-border)!important}.watch-party-embed{position:relative;width:100%;padding-top:56.25%}.watch-party-embed iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.watch-party-empty{color:var(--color-text-muted);font-size:.75rem;text-align:center;padding:.5rem;font-style:italic}@media(max-width:600px){.watch-party-pip{width:calc(100vw - 2rem);right:1rem;bottom:4rem}.watch-party-pip.watch-party-mini{width:160px}.news-thumbnail{flex:0 0 72px;min-height:60px}.news-card-title{font-size:.82rem}.news-card-summary{-webkit-line-clamp:1}}.btn-sound-toggle{background:none;border:1px solid var(--color-border);color:var(--color-text-muted);width:30px;height:30px;border-radius:.4rem;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:all .15s;flex-shrink:0}.btn-sound-toggle:hover{border-color:var(--color-accent);color:var(--color-accent)}.btn-sound-toggle.active{border-color:var(--color-accent);color:var(--color-accent);background:#b8ff571a}.notif-bell-wrapper{position:relative;display:inline-flex}.btn-notif-bell{background:none;border:1px solid var(--color-border);color:var(--color-text-muted);width:30px;height:30px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast);position:relative;flex-shrink:0}.btn-notif-bell:hover{border-color:var(--color-accent);color:var(--color-accent)}.btn-notif-bell.has-unread{border-color:var(--color-warning);color:var(--color-warning)}.notif-badge{position:absolute;top:-4px;right:-4px;background:var(--color-error);color:#fff;font-size:.6rem;font-weight:700;min-width:16px;height:16px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;padding:0 3px;line-height:1;pointer-events:none}.notif-dropdown{position:absolute;top:calc(100% + 6px);right:0;width:320px;max-height:400px;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 8px 32px #00000080;z-index:1000;display:flex;flex-direction:column;overflow:hidden}.notif-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:.6rem .8rem;border-bottom:1px solid var(--color-border)}.notif-dropdown-title{font-size:var(--font-sm);font-weight:600;color:var(--color-text-primary)}.notif-clear-btn{background:none;border:none;color:var(--color-text-muted);font-size:var(--font-xs);cursor:pointer;padding:.15rem .4rem;border-radius:var(--radius-sm)}.notif-clear-btn:hover{color:var(--color-error);background:#f443361a}.notif-empty{padding:2rem 1rem;text-align:center;color:var(--color-text-muted);font-size:var(--font-sm)}.notif-list{overflow-y:auto;max-height:350px}.notif-item{display:flex;align-items:flex-start;gap:.5rem;padding:.6rem .8rem;cursor:pointer;transition:background var(--transition-fast);border-bottom:1px solid rgba(42,42,48,.5)}.notif-item:hover{background:var(--color-bg-surface)}.notif-item.unread{background:#b8ff570a;border-left:2px solid var(--color-accent)}.notif-type-icon{font-size:.9rem;width:22px;text-align:center;flex-shrink:0;margin-top:1px}.notif-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.notif-text{font-size:var(--font-sm);color:var(--color-text-primary);line-height:1.3}.notif-text strong{color:var(--color-accent)}.notif-room{color:var(--color-text-muted);font-size:var(--font-xs)}.notif-preview{font-size:var(--font-xs);color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notif-time{font-size:.65rem;color:var(--color-text-muted)}.notif-dismiss{background:none;border:none;color:var(--color-text-muted);font-size:.7rem;cursor:pointer;padding:2px 4px;border-radius:var(--radius-sm);opacity:0;transition:opacity var(--transition-fast);flex-shrink:0}.notif-item:hover .notif-dismiss{opacity:1}.notif-dismiss:hover{color:var(--color-error);background:#f443361a}.daily-bonus{display:inline-flex;align-items:center;gap:.25rem;font-size:var(--font-xs);border-radius:var(--radius-full);padding:.2rem .5rem;flex-shrink:0;line-height:1}.daily-bonus.unclaimed{background:#ff980026;border:1px solid rgba(255,152,0,.4);color:var(--color-warning);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast);animation:daily-pulse 2s ease-in-out infinite}.daily-bonus.unclaimed:hover{background:#ff980040;border-color:var(--color-warning)}.daily-bonus.unclaimed.claiming{opacity:.6;pointer-events:none}.daily-bonus.claimed{background:#22c55e1a;border:1px solid rgba(34,197,94,.2);color:var(--color-success)}.daily-bonus-icon{font-size:.85rem}.daily-bonus-label{font-weight:600;letter-spacing:.02em}@keyframes daily-pulse{0%,to{box-shadow:0 0 #ff98004d}50%{box-shadow:0 0 8px 2px #ff980026}}.reply-parent-preview{display:flex;align-items:center;gap:.35rem;padding:.15rem .5rem .15rem .75rem;font-size:.75rem;color:#8a8faa;cursor:pointer;margin-bottom:-2px}.reply-parent-preview .reply-line{width:2px;height:14px;background:#4a5080;border-radius:1px;flex-shrink:0}.reply-parent-preview .reply-parent-sender{font-weight:600;color:var(--color-accent);white-space:nowrap}.reply-parent-preview .reply-parent-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:300px}.reply-parent-preview.reply-deleted{opacity:.5;font-style:italic}.reply-bar{display:flex;align-items:center;gap:.5rem;padding:.35rem .75rem;background:var(--color-bg-elevated);border-left:3px solid var(--color-accent);border-radius:.3rem;margin:.25rem .5rem;font-size:.8rem}.reply-bar-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.reply-bar-label{color:#8a8faa;font-size:.7rem}.reply-bar-label strong{color:var(--color-accent)}.reply-bar-text{color:#c8c8d0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reply-bar-close{background:none;border:none;color:#8a8faa;cursor:pointer;font-size:.9rem;padding:0 .25rem;line-height:1}.reply-bar-close:hover{color:var(--color-text-primary)}.toolbar-btn.btn-moment.active{background:gold;color:var(--color-bg-primary);box-shadow:0 0 12px #ffd70080}.moment-divider{display:flex;align-items:center;gap:.5rem;padding:.75rem 0;animation:momentAppear .6s ease-out}.moment-line{flex:1;height:2px;background:linear-gradient(90deg,transparent,#ffd700,transparent)}.moment-content{display:flex;align-items:center;gap:.4rem;background:#ffd7001a;border:1px solid rgba(255,215,0,.3);border-radius:2rem;padding:.35rem 1rem;white-space:nowrap}.moment-icon{font-size:1rem;line-height:1}.moment-text{color:gold;font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em}.moment-time{color:#998200;font-size:.7rem;font-weight:400}@keyframes momentAppear{0%{opacity:0;transform:scaleX(.3)}50%{opacity:1;transform:scaleX(1.02)}to{transform:scaleX(1)}}.moment-divider:last-of-type .moment-content{animation:momentGlow 2s ease-in-out}@keyframes momentGlow{0%,to{box-shadow:none}50%{box-shadow:0 0 16px #ffd70066}}.moments-trigger{position:relative;margin-left:auto}.btn-moments{background:#ffd7001a;color:gold;border:1px solid rgba(255,215,0,.25);border-radius:1rem;padding:.15rem .6rem;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .15s}.btn-moments:hover,.btn-moments.active{background:#ffd70033;border-color:#ffd70080}.moments-panel{position:absolute;top:100%;right:0;margin-top:.3rem;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:.5rem;padding:.25rem;min-width:220px;max-height:200px;overflow-y:auto;z-index:80;box-shadow:0 4px 16px #00000080}.moment-entry{display:flex;align-items:center;justify-content:space-between;gap:.5rem;background:none;border:none;color:var(--color-text-primary);padding:.4rem .6rem;width:100%;text-align:left;cursor:pointer;font-size:.8rem;border-radius:.3rem;transition:background .1s}.moment-entry:hover{background:var(--color-bg-surface)}.moment-entry-text{color:gold;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.moment-entry-time{color:var(--color-text-muted);font-size:.7rem;flex-shrink:0}.moment-delete-btn{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:.7rem;padding:.1rem .3rem;border-radius:.25rem;opacity:0;transition:opacity .15s,color .15s;margin-left:.25rem}.moment-divider:hover .moment-delete-btn{opacity:1}.moment-delete-btn:hover{color:#ff4757;background:#ff47571a}.moment-entry-row{display:flex;align-items:center}.moment-entry-row .moment-entry{flex:1;min-width:0}.moment-entry-delete{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:.65rem;padding:.2rem .4rem;border-radius:.25rem;flex-shrink:0;transition:color .15s,background .15s}.moment-entry-delete:hover{color:#ff4757;background:#ff47571a}.nav-leaderboard{display:inline-flex;align-items:center;gap:.25rem}.nav-leaderboard svg{vertical-align:middle}.leaderboard-panel{display:flex;flex-direction:column;height:100%;background:var(--color-bg-surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:var(--radius-lg);border:1px solid var(--color-border);overflow:hidden}.lb-header{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem .5rem}.lb-header h2{margin:0;font-size:1rem;font-weight:700;color:var(--color-text-primary)}.lb-trophy-icon{color:gold}.lb-tabs{display:flex;gap:.25rem;padding:0 .75rem;border-bottom:1px solid var(--color-border)}.lb-tabs button{flex:1;padding:.5rem .25rem;background:none;border:none;border-bottom:2px solid transparent;color:var(--color-text-secondary);font-size:.75rem;font-weight:600;cursor:pointer;transition:color .15s,border-color .15s}.lb-tabs button:hover{color:var(--color-text-primary)}.lb-tabs button.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.lb-list{flex:1;overflow-y:auto;padding:.5rem}.lb-empty{color:var(--color-text-muted);text-align:center;font-size:.8rem;padding:2rem 0}.lb-row{display:flex;align-items:center;gap:.5rem;padding:.45rem .5rem;border-radius:var(--radius-md);transition:background .15s;cursor:pointer}.lb-row:hover{background:var(--color-bg-elevated)}.lb-row.current-user{background:#b8ff570f;border:1px solid rgba(184,255,87,.15)}.lb-row.top-1{border-left:3px solid #ffd700;background:#ffd7000a}.lb-row.top-2{border-left:3px solid #c0c0c0;background:#c0c0c008}.lb-row.top-3{border-left:3px solid #cd7f32;background:#cd7f3208}.lb-rank-num{width:2rem;text-align:center;font-weight:700;font-size:.75rem;color:var(--color-text-secondary);flex-shrink:0;display:flex;align-items:center;justify-content:center}.lb-rank-badge,.lb-medal{flex-shrink:0}.lb-avatar{width:24px;height:24px;border-radius:50%;image-rendering:pixelated;flex-shrink:0}.lb-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;color:var(--color-text-primary);font-weight:500}.lb-level{font-size:.65rem;font-weight:700;color:var(--color-accent);background:#b8ff571a;padding:.1rem .35rem;border-radius:var(--radius-sm);flex-shrink:0}.lb-xp{font-size:.7rem;color:var(--color-text-secondary);font-weight:600;flex-shrink:0;min-width:4rem;text-align:right}.lb-reset-btn{background:none;border:none;color:var(--color-text-muted);font-size:.85rem;cursor:pointer;padding:0 .3rem;line-height:1;opacity:0;transition:opacity .15s,color .15s;flex-shrink:0}.lb-row:hover .lb-reset-btn{opacity:1}.lb-reset-btn:hover{color:#f44}.lb-user-footer{display:flex;align-items:center;gap:.5rem;padding:.6rem .75rem;border-top:1px solid var(--color-border);background:var(--color-bg-elevated);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.lb-footer-rank{font-weight:700;font-size:.8rem;color:gold;min-width:2rem}.lb-footer-level{font-size:.75rem;font-weight:700;color:var(--color-accent)}.lb-footer-progress{flex:1;display:flex;flex-direction:column;gap:.15rem;min-width:0}.lb-footer-bar{height:6px;background:var(--color-bg-primary);border-radius:3px;overflow:hidden;box-shadow:inset 0 1px 2px #0003}.lb-footer-fill{height:100%;background:linear-gradient(90deg,var(--color-accent),#7dff2a);border-radius:3px;transition:width .3s ease}.lb-footer-xp-text{font-size:.6rem;color:var(--color-text-muted);text-align:right}.level-badge{font-size:.55rem;font-weight:700;padding:.05rem .3rem;border-radius:var(--radius-sm)}.rank-poke .level-badge,.pokeball-rank-badge{background:#ef444426;color:#ef4444}.rank-great .level-badge,.greatball-rank-badge{background:#3b82f626;color:#60a5fa}.rank-ultra .level-badge,.ultraball-rank-badge{background:#fbbf2426;color:#fbbf24}.rank-master .level-badge,.masterball-rank-badge{background:#a855f726;color:#c084fc}@media(max-width:768px){.lb-row{gap:.35rem;padding:.35rem .4rem}.lb-rank-num{width:1.5rem;font-size:.7rem}.lb-rank-badge{width:14px;height:14px}.lb-avatar{width:20px;height:20px}.lb-name{font-size:.75rem}.lb-xp{min-width:3rem;font-size:.65rem}}@media(max-width:480px){.lb-row{gap:.25rem;padding:.3rem}.lb-rank-badge,.lb-level{display:none}.lb-name{font-size:.72rem}.lb-xp{min-width:2.5rem;font-size:.62rem}}.app-body{display:flex;flex:1;min-height:0;overflow:hidden}.app-main{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.app-sidebar{display:none}@media(min-width:1024px){.app{max-width:100%}.app-sidebar{display:flex;flex-direction:column;width:var(--sidebar-width);min-width:var(--sidebar-width);height:calc(100vh - var(--header-height));background:var(--color-bg-elevated);border-right:1px solid var(--color-border);overflow:hidden;padding:.5rem 0}.mobile-nav{display:none}header .username,header .btn-sound-toggle{display:none}}.sidebar-user-card{display:flex;align-items:center;gap:.65rem;width:calc(100% - 1rem);margin:.5rem;padding:.65rem;background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast);text-align:left;color:var(--color-text-primary)}.sidebar-user-card:hover{background:var(--color-bg-surface);border-color:var(--color-border-hover)}.sidebar-user-avatar{position:relative;flex-shrink:0;width:40px;height:40px}.sidebar-user-avatar img{width:40px;height:40px;border-radius:var(--radius-full);image-rendering:pixelated}.sidebar-avatar-placeholder{width:40px;height:40px;border-radius:var(--radius-full);background:var(--color-bg-surface);display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:1.2rem}.sidebar-secure-badge{position:absolute;bottom:-2px;right:-2px}.sidebar-user-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.sidebar-user-name{font-size:.85rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-meta{display:flex;gap:.25rem;align-items:center}.sidebar-user-meta .badge{font-size:.6rem;padding:.1rem .3rem}.sidebar-edit-icon{flex-shrink:0;color:var(--color-text-muted);transition:color var(--transition-fast)}.sidebar-user-card:hover .sidebar-edit-icon{color:var(--color-accent)}.sidebar-section{padding:.25rem 0}.sidebar-section-label{padding:.5rem 1rem .25rem;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.sidebar-item{display:flex;align-items:center;gap:.75rem;width:calc(100% - 1rem);margin:.125rem .5rem;padding:.6rem .75rem;background:transparent;border:none;border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:.88rem;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);text-align:left;position:relative}.sidebar-item:hover{background:var(--color-bg-surface);color:var(--color-text-primary)}.sidebar-item.active{background:var(--color-accent-muted);color:var(--color-accent)}.sidebar-item.active:before{content:"";position:absolute;left:0;top:.35rem;bottom:.35rem;width:3px;background:var(--color-accent);border-radius:var(--radius-full)}.sidebar-item-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-item-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-badge{background:var(--color-accent);color:var(--color-bg-primary);font-size:.65rem;font-weight:700;padding:.1rem .4rem;border-radius:var(--radius-full);min-width:1rem;text-align:center}.sidebar-add-room{color:var(--color-text-muted);border:1px dashed var(--color-border);margin-top:.25rem}.sidebar-add-room:hover{color:var(--color-accent);border-color:var(--color-accent-border)}.sidebar-home-link{text-decoration:none;color:inherit}.sidebar-rooms-scroll{flex:1;overflow-y:auto;min-height:0}.sidebar-bottom{margin-top:auto;padding:.5rem 0;border-top:1px solid var(--color-border)}.sidebar-sound-toggle.active{color:var(--color-accent)}.sidebar-footer-links{display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.4rem .75rem;font-size:var(--font-xs)}.sidebar-footer-links a{color:var(--color-text-muted);text-decoration:none}.sidebar-footer-links a:hover{color:var(--color-accent)}.sidebar-footer-dot{color:var(--color-text-muted);opacity:.5}.site-footer{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.5rem;border-top:1px solid rgba(255,255,255,.06);font-size:.75rem;color:#555b7a}.footer-links{display:flex;align-items:center;gap:.5rem}.site-footer a{color:#6b74a0;text-decoration:none}.site-footer a:hover{color:var(--color-accent)}.footer-dot{color:#3a4170}.footer-credit{color:#555b7a}@media(min-width:1024px){.site-footer{display:none}}.countdown-banner{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.3rem .75rem;background:linear-gradient(90deg,#1a1f4e,#2a1f5e,#1a1f4e);border:1px solid #3b4595;border-radius:6px;font-size:.8rem;flex-shrink:0;animation:bannerGlow 3s ease-in-out infinite}.countdown-banner.countdown-live{background:linear-gradient(90deg,#1a0e0e,#2d1212,#1a0e0e);border-color:#f44;animation:liveGlow 1.5s ease-in-out infinite}@keyframes bannerGlow{0%,to{box-shadow:0 0 8px #6366f133}50%{box-shadow:0 0 16px #6366f166}}@keyframes liveGlow{0%,to{box-shadow:0 0 8px #ff44444d}50%{box-shadow:0 0 20px #ff444480}}.countdown-title{font-weight:600;color:#c4b5fd}.countdown-live .countdown-title{color:#fca5a5}.countdown-timer{color:#a5b4fc}.countdown-timer strong{color:var(--color-text-primary);font-variant-numeric:tabular-nums;font-family:monospace;letter-spacing:.05em}.live-badge{display:inline-flex;align-items:center;gap:.4rem;color:#f44;font-weight:700;font-size:.95rem;text-transform:uppercase;letter-spacing:.1em}.countdown-live-dot{width:8px;height:8px;border-radius:50%;background:#f44;animation:livePulse 1s ease-in-out infinite}@keyframes livePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}.confetti-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;overflow:hidden}.confetti-piece{position:absolute;top:-20px;animation:confettiFall 3.5s ease-in forwards}.confetti-shape-0{border-radius:2px}.confetti-shape-1{border-radius:50%}.confetti-shape-2{border-radius:1px}@keyframes confettiFall{0%{top:-20px;opacity:1;transform:rotate(0) translate(0)}25%{opacity:1;transform:rotate(180deg) translate(20px)}50%{opacity:.9;transform:rotate(360deg) translate(-15px)}75%{opacity:.6;transform:rotate(540deg) translate(10px)}to{top:110vh;opacity:0;transform:rotate(720deg) translate(-5px)}}.xp-toast{position:fixed;bottom:80px;right:24px;background:#0c0c0feb;color:var(--color-accent);font-weight:700;font-size:1.1rem;padding:.5rem 1rem;border-radius:.5rem;border:1px solid rgba(184,255,87,.3);box-shadow:0 4px 16px #0006;z-index:9998;pointer-events:none;animation:xpToastIn .3s ease-out,xpToastOut .5s ease-in 2.5s forwards}@keyframes xpToastIn{0%{opacity:0;transform:translateY(20px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes xpToastOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.app.theater-mode{max-width:100%;padding:0}.app.theater-mode header{padding:.4rem 1rem;border-radius:0}.app.theater-mode .countdown-banner{display:none}.app.theater-mode nav{padding:0 1rem;gap:.3rem}.app.theater-mode main{flex:1;overflow:hidden}.theater-layout{display:flex;height:100%;gap:0}.theater-video{flex:0 0 60%;background:#000;display:flex;align-items:center;justify-content:center}.theater-video iframe{width:100%;height:100%;border:none}.theater-chat{flex:1;display:flex;flex-direction:column;border-left:1px solid var(--color-border);overflow:hidden}.theater-chat .chat-panel{height:100%}.app.theater-mode .watch-party-pip{display:none}.btn-theater-toggle{background:none;border:1px solid #3b4595;color:var(--color-text-secondary);padding:.2rem .5rem;border-radius:4px;cursor:pointer;font-size:.75rem;white-space:nowrap}.btn-theater-toggle:hover,.btn-theater-toggle.active{color:var(--color-accent);border-color:var(--color-accent)}.hype-bar{display:flex;gap:.25rem;padding:.3rem .5rem;background:linear-gradient(90deg,#8b5cf61a,#3b82f61a);border-top:1px solid var(--color-border);overflow-x:auto;scrollbar-width:none}.hype-bar::-webkit-scrollbar{display:none}.hype-btn{flex-shrink:0;padding:.25rem .5rem;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:999px;cursor:pointer;font-size:1.1rem;transition:transform .1s,background .15s;color:#fff}.hype-btn:hover{background:#ffffff1f;transform:scale(1.15)}.hype-btn:active{transform:scale(.95)}.hype-btn.hype-special{background:linear-gradient(135deg,#a855f74d,#ec48994d);border-color:#a855f766;font-size:.8rem;font-weight:600}.room-viewer-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#8b5cf64d;color:#c4b5fd;font-size:.65rem;font-weight:600;margin-left:.3rem;vertical-align:middle}.room-video-badge{display:inline-block;color:#ef4444;font-size:.6rem;margin-right:.25rem;animation:room-video-pulse 2s ease-in-out infinite}@keyframes room-video-pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes onboardingFadeIn{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes onboardingOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes logoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.char-counter{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);font-size:.7rem;color:var(--color-text-muted);pointer-events:none;font-variant-numeric:tabular-nums}.char-counter.warn{color:#ef4444}.spoiler{background:#3a4170;color:transparent;border-radius:3px;padding:0 .2em;cursor:pointer;transition:color .2s,background .2s;-webkit-user-select:none;user-select:none}.spoiler.revealed{background:#3a41704d;color:inherit;-webkit-user-select:auto;user-select:auto}.online-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--color-success);margin-right:.25rem;flex-shrink:0}.event-controls{margin-top:1rem;padding:1rem;border:1px solid var(--color-border);border-radius:8px;background:#10164080}.event-controls h4{color:var(--color-accent);margin-bottom:.75rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em}.event-controls .inline-form{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.event-controls input{padding:.35rem .5rem;border-radius:4px;border:1px solid var(--color-border);background:var(--color-bg-input);color:var(--color-text-primary);font-size:.85rem}.event-controls button{padding:.35rem .75rem;border-radius:4px;border:none;background:var(--color-info);color:#fff;cursor:pointer;font-size:.85rem}.event-controls button:hover{background:#2563eb}.event-controls button.btn-celebrate{background:linear-gradient(135deg,#a855f7,#ec4899)}.event-controls button.btn-celebrate:hover{background:linear-gradient(135deg,#9333ea,#db2777)}.event-controls .event-status{font-size:.8rem;color:var(--color-text-secondary);margin-top:.5rem}.poll-collapsed{display:flex;align-items:center;gap:.5rem;padding:.4rem .75rem;background:#10164080;border:1px solid var(--color-border);border-radius:6px;font-size:.8rem;color:var(--color-text-secondary);cursor:pointer;margin-bottom:.5rem}.poll-collapsed:hover{border-color:#3b4595}.poll-collapsed-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.poll-collapsed-expand{color:#6670a0;font-size:.7rem}.prediction-templates{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.75rem}.prediction-label{font-size:.75rem;color:#6670a0;margin-right:.25rem}.prediction-template-btn{padding:.3rem .6rem;border-radius:999px;border:1px solid #3b4595;background:#3b82f61a;color:#a5b4fc;font-size:.75rem;cursor:pointer;transition:all .15s}.prediction-template-btn:hover{background:#3b82f633;border-color:#6366f1;color:var(--color-text-primary)}.lb-xp-info-toggle{display:flex;align-items:center;width:100%;background:none;border:none;color:var(--color-text-muted);font-size:.75rem;padding:.4rem .75rem;cursor:pointer;text-align:left;transition:color .15s}.lb-xp-info-toggle:hover{color:var(--color-accent)}.xp-info-section{padding:.6rem .75rem;margin:0 .5rem .5rem;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.8rem;color:var(--color-text-secondary)}.xp-info-row{display:flex;justify-content:space-between;padding:.15rem 0}.xp-info-row span:last-child{color:var(--color-accent);font-weight:600}.xp-info-divider{height:1px;background:var(--color-border);margin:.3rem 0}.xp-info-note{font-size:.7rem;color:var(--color-text-muted)}.msg-reactions:not(.has-reactions){max-height:0;overflow:hidden;opacity:0;margin:0;padding:0;transition:max-height var(--transition-normal),opacity var(--transition-fast)}.msg-wrapper:hover .msg-reactions:not(.has-reactions){max-height:40px;overflow:visible;opacity:1;margin-top:.15rem}@media(hover:none){.msg-reactions:not(.has-reactions){height:auto;overflow:visible;opacity:1;margin-top:.15rem}}.btn-delete-data-profile{display:block;margin:1rem auto 0;background:none;border:none;color:var(--color-text-muted);font-size:.72rem;cursor:pointer;padding:.25rem .5rem;transition:color .15s}.btn-delete-data-profile:hover{color:var(--color-error)}.room-info-features{display:flex;align-items:center;gap:.4rem;padding:.15rem .5rem;min-height:0;flex-shrink:0}@media(max-width:768px){.app{padding:0 .5rem}header{gap:.4rem}nav{gap:.15rem}nav button{padding:.3rem .5rem;font-size:.75rem}}.header-avatar{width:24px;height:24px;image-rendering:pixelated;vertical-align:middle}.toast-container{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:10000;display:flex;flex-direction:column;gap:.4rem;pointer-events:none}.toast{padding:.6rem 1.2rem;border-radius:.5rem;font-size:.85rem;font-weight:600;box-shadow:0 4px 16px #00000080;pointer-events:auto;cursor:pointer;animation:toastSlideIn .3s ease-out;white-space:nowrap}.toast-exit{animation:toastSlideOut .3s ease-in forwards}.toast-success{background:#102a10f2;color:#6fcf6f;border:1px solid rgba(111,207,111,.3)}.toast-error{background:#2a1010f2;color:#f06060;border:1px solid rgba(240,96,96,.3)}.toast-info{background:#0c0c0ff2;color:var(--color-accent);border:1px solid rgba(184,255,87,.3)}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes toastSlideOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}.name-taken-hint{color:#f0c040;font-size:.8rem;margin:.3rem 0 .1rem}.name-modal-recovery{margin-top:.5rem;padding:.6rem;background:#ffffff0a;border-radius:.5rem;border:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:.5rem}.name-modal-recovery-row{display:flex;gap:.4rem}.name-modal-recovery-row input{flex:1;min-width:0}.name-modal-recover-toggle{background:none;border:none;color:#888;font-size:.75rem;cursor:pointer;text-decoration:underline;margin-top:.3rem;padding:0}.name-modal-recover-toggle:hover{color:var(--color-accent)}.btn-discord-primary{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.7rem 1rem;background:var(--color-discord);color:#fff;border:1px solid var(--color-discord-hover);border-radius:.5rem;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-discord-primary:hover{background:var(--color-discord-hover)}.name-modal-divider{display:flex;align-items:center;gap:.5rem;margin:.75rem 0;color:#777;font-size:.8rem}.name-modal-divider:before,.name-modal-divider:after{content:"";flex:1;height:1px;background:#ffffff1f}.welcome-modal{max-width:380px;text-align:center}.welcome-modal h2{font-size:1.1rem;margin-bottom:.25rem}.welcome-steps{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:.75rem}.welcome-step{width:26px;height:26px;border-radius:50%;background:var(--color-bg-surface);color:#6b7db3;font-size:.75rem;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid var(--color-border)}.welcome-step.active{background:var(--color-discord);color:#fff;border-color:var(--color-discord)}.welcome-step-line{width:40px;height:2px;background:var(--color-border)}.welcome-subtitle{color:var(--color-text-secondary);font-size:.85rem;margin-bottom:.75rem}.welcome-avatar-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem;margin-bottom:.5rem}.welcome-avatar-item{background:#141a3d;border:2px solid var(--color-border);border-radius:.5rem;padding:.3rem;cursor:pointer;transition:border-color .15s,transform .15s}.welcome-avatar-item:hover{border-color:var(--color-discord);transform:scale(1.05)}.welcome-avatar-item.selected{border-color:var(--color-accent);background:#1a2248}.welcome-avatar-item img{width:100%;height:auto;image-rendering:pixelated}.welcome-browse-btn{background:none;border:none;color:var(--color-discord);font-size:.8rem;cursor:pointer;padding:.25rem 0;margin-bottom:.5rem}.welcome-browse-btn:hover{text-decoration:underline}.welcome-actions{display:flex;flex-direction:column;gap:.4rem;margin-top:.5rem}.welcome-primary-btn{width:100%;padding:.6rem 1rem;background:var(--color-accent);color:var(--color-bg-primary);border:none;border-radius:.5rem;font-size:.9rem;font-weight:600;cursor:pointer}.welcome-primary-btn:hover{background:#a8ef47}.welcome-primary-btn:disabled{background:var(--color-border);color:#6b7db3;cursor:default}.welcome-skip-btn{background:none;border:none;color:#6b7db3;font-size:.8rem;cursor:pointer;padding:.3rem}.welcome-skip-btn:hover{color:var(--color-text-secondary)}.welcome-hint{color:#555;font-size:.75rem;margin-top:.75rem}.onboarding-overlay{background:#050714b3;backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2);animation:onboardingOverlayIn .4s ease-out}.onboarding-modal{background:linear-gradient(168deg,#141418f7,#0e0e12fc,#0a0a0ef7);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-xl);padding:2.5rem 2rem 1.75rem;width:92%;max-width:400px;box-shadow:var(--shadow-modal);animation:onboardingFadeIn .5s ease-out;position:relative;overflow:hidden}.onboarding-modal:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:60%;height:1px;background:linear-gradient(90deg,transparent,rgba(184,255,87,.4),rgba(88,101,242,.3),transparent)}.onboarding-modal:after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(ellipse at 50% 0%,rgba(184,255,87,.03) 0%,transparent 60%);pointer-events:none}.onboarding-brand{text-align:center;margin-bottom:1.75rem;position:relative;z-index:1}.onboarding-logo{width:56px;height:56px;margin-bottom:1rem;border-radius:16px;animation:logoFloat 4s ease-in-out infinite;filter:drop-shadow(0 4px 12px rgba(184,255,87,.15))}.onboarding-modal h2{font-size:1.5rem;font-weight:700;color:#fff;letter-spacing:-.02em;margin-bottom:.35rem}.onboarding-tagline{color:var(--color-text-secondary);font-size:.875rem;font-weight:400;letter-spacing:.01em}.onboarding-modal .btn-discord-primary{width:100%;display:flex;align-items:center;justify-content:center;gap:.6rem;padding:.8rem 1.25rem;background:linear-gradient(135deg,#5865f2,#4752c4);color:#fff;border:1px solid rgba(88,101,242,.3);border-radius:var(--radius-lg);font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;position:relative;z-index:1;overflow:hidden}.onboarding-modal .btn-discord-primary:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.08) 50%,transparent 100%);background-size:200% 100%;animation:shimmer 3s ease-in-out infinite;pointer-events:none}.onboarding-modal .btn-discord-primary:hover{background:linear-gradient(135deg,#6572f5,#5865f2);box-shadow:var(--shadow-glow-discord);transform:translateY(-1px);border-color:#5865f280}.onboarding-modal .btn-discord-primary:active{transform:translateY(0) scale(.99)}.onboarding-modal .name-modal-divider{display:flex;align-items:center;gap:.75rem;margin:1.25rem 0;color:var(--color-text-muted);font-size:.8rem;letter-spacing:.02em;position:relative;z-index:1}.onboarding-modal .name-modal-divider:before,.onboarding-modal .name-modal-divider:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent)}.onboarding-form{display:flex;flex-direction:column;gap:.75rem;position:relative;z-index:1}.onboarding-form input{width:100%;background:#ffffff0a;color:var(--color-text-primary);border:1px solid rgba(255,255,255,.1);padding:.75rem 1rem;border-radius:var(--radius-lg);font-size:.95rem;outline:none;transition:all .2s ease}.onboarding-form input::placeholder{color:var(--color-text-muted)}.onboarding-form input:focus{border-color:var(--color-accent);background:#ffffff0f;box-shadow:0 0 0 3px #b8ff5714,0 0 20px #b8ff570d}.onboarding-form button[type=submit]{width:100%;background:var(--color-accent);color:var(--color-bg-primary);border:none;padding:.75rem 1.25rem;border-radius:var(--radius-lg);font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;letter-spacing:.01em}.onboarding-form button[type=submit]:hover{background:var(--color-accent-hover);box-shadow:var(--shadow-glow-accent);transform:translateY(-1px)}.onboarding-form button[type=submit]:active{transform:translateY(0) scale(.99)}.onboarding-form button[type=submit]:disabled{background:#ffffff0f;color:var(--color-text-muted);cursor:not-allowed;box-shadow:none;transform:none}.onboarding-modal .error{color:var(--color-error);font-size:.82rem;margin-top:.25rem;text-align:center;position:relative;z-index:1}.onboarding-modal .name-taken-hint{color:var(--color-warning);font-size:.82rem;margin:.5rem 0 .25rem;text-align:center;position:relative;z-index:1}.onboarding-modal .name-modal-recovery{margin-top:.75rem;padding:.85rem;background:#ffffff08;border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;gap:.5rem;position:relative;z-index:1}.onboarding-modal .name-modal-recovery-row{display:flex;gap:.5rem}.onboarding-modal .name-modal-recovery-row input{flex:1;min-width:0;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);color:var(--color-text-primary);padding:.6rem .85rem;border-radius:var(--radius-md);font-size:.85rem;font-family:Courier New,monospace;outline:none;transition:border-color .2s ease}.onboarding-modal .name-modal-recovery-row input:focus{border-color:var(--color-accent)}.onboarding-modal .name-modal-recover-toggle{background:none;border:none;color:var(--color-text-muted);font-size:.8rem;cursor:pointer;margin-top:.75rem;padding:0;transition:color .2s ease;display:block;text-align:center;width:100%;position:relative;z-index:1;text-decoration:none}.onboarding-modal .name-modal-recover-toggle:hover{color:var(--color-text-secondary)}.onboarding-modal .modal-privacy-line{margin-top:1.25rem;font-size:.72rem;color:var(--color-text-muted);text-align:center;position:relative;z-index:1;line-height:1.5}.onboarding-modal .welcome-steps{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:1.25rem;position:relative;z-index:1}.onboarding-modal .welcome-step{width:30px;height:30px;border-radius:50%;background:#ffffff0f;color:var(--color-text-muted);font-size:.78rem;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.1);transition:all .3s ease}.onboarding-modal .welcome-step.active{background:var(--color-discord);color:#fff;border-color:#5865f280;box-shadow:0 0 12px #5865f24d}.onboarding-modal .welcome-step-line{width:48px;height:2px;background:#ffffff14}.onboarding-modal.welcome-modal h2{font-size:1.35rem;margin-bottom:.35rem}.onboarding-modal .welcome-subtitle{color:var(--color-text-secondary);font-size:.9rem;margin-bottom:1.25rem;position:relative;z-index:1}.onboarding-modal .welcome-avatar-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;margin-bottom:.75rem;position:relative;z-index:1}.onboarding-modal .welcome-avatar-item{background:#ffffff0a;border:2px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);padding:.5rem;cursor:pointer;transition:all .2s ease;aspect-ratio:1;display:flex;align-items:center;justify-content:center}.onboarding-modal .welcome-avatar-item:hover{border-color:#5865f280;background:#5865f214;transform:translateY(-2px) scale(1.05);box-shadow:0 4px 12px #0000004d}.onboarding-modal .welcome-avatar-item.selected{border-color:var(--color-accent);background:#b8ff570f;box-shadow:0 0 0 3px #b8ff571a}.onboarding-modal .welcome-avatar-item img{width:100%;height:auto;image-rendering:pixelated;transition:transform .2s ease}.onboarding-modal .welcome-avatar-item:hover img{transform:scale(1.1)}.onboarding-modal .welcome-browse-btn{background:none;border:none;color:var(--color-discord);font-size:.82rem;cursor:pointer;padding:.35rem 0;margin-bottom:.75rem;transition:color .2s ease;position:relative;z-index:1;text-decoration:none}.onboarding-modal .welcome-browse-btn:hover{color:#7c8aff}.onboarding-modal .welcome-actions{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem;position:relative;z-index:1}.onboarding-modal .welcome-primary-btn{width:100%;padding:.75rem 1rem;background:var(--color-accent);color:var(--color-bg-primary);border:none;border-radius:var(--radius-lg);font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease}.onboarding-modal .welcome-primary-btn:hover{background:var(--color-accent-hover);box-shadow:var(--shadow-glow-accent);transform:translateY(-1px)}.onboarding-modal .welcome-primary-btn:disabled{background:#ffffff0f;color:var(--color-text-muted);cursor:default;box-shadow:none;transform:none}.onboarding-modal .welcome-skip-btn{background:none;border:none;color:var(--color-text-muted);font-size:.82rem;cursor:pointer;padding:.4rem;transition:color .2s ease}.onboarding-modal .welcome-skip-btn:hover{color:var(--color-text-secondary)}.onboarding-modal .welcome-hint{color:var(--color-text-muted);font-size:.78rem;margin-top:1rem;position:relative;z-index:1}@media(max-width:480px){.onboarding-modal{padding:2rem 1.5rem 1.5rem;max-width:95%;border-radius:var(--radius-lg)}.onboarding-logo{width:48px;height:48px}.onboarding-modal h2{font-size:1.3rem}.onboarding-modal .welcome-avatar-grid{grid-template-columns:repeat(3,1fr);gap:.5rem}}.session-badge{display:inline-flex;align-items:center;margin-left:.25rem;opacity:.5;cursor:default;transition:opacity .2s}.session-badge:hover{opacity:1}.session-badge svg{width:14px;height:14px}.sidebar-lock-icon{color:var(--color-text-muted);flex-shrink:0;margin-left:auto;opacity:.7}.admin-room-list{display:flex;flex-direction:column;gap:.5rem}.admin-room-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.5rem .75rem;background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md)}.admin-room-info{display:flex;align-items:center;gap:.5rem;min-width:0}.admin-room-name{font-weight:600;color:var(--color-text-primary)}.admin-room-slug{color:var(--color-text-muted);font-size:var(--font-xs)}.admin-room-actions{display:flex;gap:.35rem;flex-shrink:0}@keyframes msg-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.message-row{animation:msg-enter .18s ease-out}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px #b8ff5726}button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(min-width:1024px){.sidebar-item.active{position:relative}.sidebar-item.active:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:3px;background:var(--color-accent);border-radius:0 2px 2px 0}}.sidebar-item{transition:background var(--transition-fast),color var(--transition-fast)}.btn-account-small:active,.news-load-more:active,.sidebar-item:active{transform:scale(.97)}.btn-account-small,.news-load-more{transition:background var(--transition-fast),transform .1s ease}@keyframes ctx-enter{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.context-menu{animation:ctx-enter .12s ease-out}.error-boundary{display:flex;align-items:center;justify-content:center;height:100vh;background:var(--color-bg-primary);color:var(--color-text-primary);padding:2rem}.error-boundary-card{text-align:center;max-width:400px}.error-boundary-icon{font-size:2.5rem;display:block;margin-bottom:.75rem}.error-boundary-card h2{font-size:1.3rem;margin-bottom:.5rem}.error-boundary-msg{color:var(--color-text-secondary);font-size:.85rem;margin-bottom:1.25rem;word-break:break-word}.error-boundary-card button{background:var(--color-accent);color:var(--color-bg-primary);border:none;padding:.5rem 1.5rem;border-radius:var(--radius-md);font-weight:600;cursor:pointer;font-size:.9rem}.error-boundary-card button:hover{background:var(--color-accent-hover)}.sender-bot{color:#fbbf24!important;font-weight:600}.badge.bot{background:linear-gradient(135deg,#f59e0b,#fbbf24);color:#000;font-size:.6rem;padding:1px 5px;border-radius:3px;margin-left:4px;font-weight:700;letter-spacing:.03em}.msg-avatar-bot{border-radius:50%;box-shadow:0 0 0 2px #fbbf24,0 0 6px #fbbf2466}.message.msg-bot{border-left:3px solid rgba(251,191,36,.5);padding-left:.5rem;background:#fbbf2408}.trivia-active-banner{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:linear-gradient(90deg,#fbbf241f,#fbbf240a);border-bottom:1px solid rgba(251,191,36,.2);font-size:.82rem;color:#fbbf24;animation:triviaPulse 2s ease-in-out infinite}.trivia-banner-icon{font-size:1rem}.trivia-banner-text{color:var(--color-text-secondary)}.trivia-banner-text strong{color:#fbbf24}@keyframes triviaPulse{0%,to{opacity:1}50%{opacity:.8}}.bot-controls{display:flex;flex-direction:column;gap:.6rem}.bot-status-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.bot-status-label{color:var(--color-text-secondary);font-size:.85rem;min-width:60px}.bot-status-value{font-weight:600;font-size:.85rem}.bot-status-value.bot-on{color:var(--color-success)}.bot-status-value.bot-off{color:var(--color-text-muted)}.bot-controls select{background:var(--color-bg-input);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.3rem .5rem;font-size:.82rem}.btn-bot-toggle{font-size:.8rem;padding:.25rem .75rem;border-radius:var(--radius-sm);border:none;cursor:pointer;font-weight:600}.btn-trigger-trivia{background:linear-gradient(135deg,#f59e0b,#fbbf24);color:#000;border:none;padding:.4rem 1rem;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;font-size:.85rem;transition:opacity var(--transition-fast);align-self:flex-start}.btn-trigger-trivia:hover{opacity:.85}.trivia-panel{display:flex;flex-direction:column;height:100%;padding:.75rem;gap:0}.trivia-question-card{background:linear-gradient(135deg,#fbbf241f,#f59e0b0f);border:1px solid rgba(251,191,36,.25);border-radius:var(--radius-lg);padding:1.25rem;margin-bottom:.75rem;box-shadow:0 2px 12px #fbbf2414}.trivia-question-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.trivia-xp-badge{background:#fbbf2433;color:#fbbf24;padding:3px 12px;border-radius:12px;font-size:.8rem;font-weight:700}.trivia-countdown{color:#f59e0b;font-variant-numeric:tabular-nums;font-weight:700;font-size:1.1rem}.trivia-question-body{display:flex;align-items:flex-start;gap:.75rem}.trivia-sprite{width:64px;height:64px;image-rendering:pixelated;flex-shrink:0;filter:brightness(0) saturate(0)}.trivia-question-text{font-size:1.15rem;font-weight:600;color:#fde68a;line-height:1.4;margin:0}.trivia-hint{color:#c4b27a;font-style:italic;margin-top:.6rem;font-size:.9rem;background:#fbbf240f;padding:.4rem .75rem;border-radius:var(--radius-md);border-left:2px solid rgba(251,191,36,.2);display:flex;align-items:center;gap:.4rem}.trivia-hint svg{flex-shrink:0;color:#fbbf24}.trivia-hint-pending{opacity:.6;animation:hintPulse 2s ease-in-out infinite}@keyframes hintPulse{0%,to{opacity:.6}50%{opacity:.35}}.trivia-answered-card{background:linear-gradient(135deg,#22c55e1a,#22c55e0a);border-color:#22c55e40}.trivia-answered-badge{background:#22c55e33;color:#4ade80;padding:3px 12px;border-radius:12px;font-size:.8rem;font-weight:700;display:inline-flex;align-items:center;gap:.3rem}.trivia-answer-reveal{color:var(--color-text-secondary);margin-top:.5rem;font-size:.95rem;display:flex;align-items:center;gap:.3rem;flex-wrap:wrap}.trivia-answer-reveal strong{color:#4ade80}.trivia-sparkle-icon{color:#fbbf24;vertical-align:middle;flex-shrink:0}.trivia-idle-banner{background:#14193780;border:1px solid rgba(136,144,181,.15);text-align:center;padding:2rem 1rem;border-radius:var(--radius-lg);color:var(--color-text-muted);margin-bottom:.75rem}.trivia-idle-icon{margin-bottom:.5rem;opacity:.4;color:var(--color-text-muted)}.trivia-idle-icon svg{stroke:currentColor}.trivia-idle-text{font-size:1.1rem;font-weight:600;color:var(--color-text-secondary);margin:0}.trivia-idle-interval{font-size:.8rem;color:var(--color-text-muted);margin:.3rem 0 .75rem}.trivia-trigger-btn{background:#fbbf2426;color:#fbbf24;border:1px solid rgba(251,191,36,.3);border-radius:var(--radius-md);padding:.5rem 1.25rem;font-weight:600;cursor:pointer;transition:background .15s;display:inline-flex;align-items:center;gap:.4rem}.trivia-trigger-btn:hover{background:#fbbf2440}.trivia-answer-bar{display:flex;gap:.5rem;padding:.6rem 0;border-top:1px solid var(--color-border);margin-bottom:.5rem}.trivia-answer-bar input{flex:1;background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.5rem .75rem;font-size:.9rem}.trivia-answer-bar input:focus{outline:none;border-color:#fbbf2466;box-shadow:0 0 0 2px #fbbf241a}.trivia-answer-bar input:disabled{opacity:.4;cursor:not-allowed}.trivia-answer-bar button{background:#fbbf24;color:#000;font-weight:700;border:none;border-radius:var(--radius-md);padding:.5rem 1.25rem;cursor:pointer;transition:background .15s;font-size:.9rem}.trivia-answer-bar button:hover:not(:disabled){background:#f59e0b}.trivia-answer-bar button:disabled{opacity:.3;cursor:not-allowed}.trivia-history{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.4rem}.trivia-history-title{color:var(--color-text-secondary);font-size:.85rem;font-weight:600;margin:0 0 .3rem;text-transform:uppercase;letter-spacing:.04em}.trivia-history-card{background:#14193766;border-radius:var(--radius-md);padding:.6rem .75rem;border-left:3px solid transparent;transition:background .15s,border-left-width .15s}.trivia-history-card:hover{background:#14193799}.trivia-history-card.answered{border-left-color:#4ade80}.trivia-history-card.expired{border-left-color:var(--color-text-muted);opacity:.65}.trivia-history-question{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem;color:var(--color-text-primary);font-size:.9rem;font-weight:500}.trivia-history-sprite{width:28px;height:28px;image-rendering:pixelated;flex-shrink:0}.trivia-history-meta{display:flex;justify-content:space-between;align-items:center;font-size:.78rem}.trivia-history-winner{color:#4ade80;display:inline-flex;align-items:center;gap:.25rem}.trivia-history-winner svg{flex-shrink:0}.trivia-history-expired{color:var(--color-text-muted)}.trivia-history-time{color:var(--color-text-muted);font-size:.75rem}.trivia-history-empty{color:var(--color-text-muted);text-align:center;font-size:.85rem;padding:1rem}.sidebar-item-trivia.active{background:#fbbf241f!important;color:#fbbf24!important;border-color:#fbbf2440!important}.trivia-live-dot{width:8px;height:8px;background:#fbbf24;border-radius:50%;margin-left:auto;animation:triviaPulse 2s ease-in-out infinite}@keyframes triviaPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.trivia-difficulty-badge{padding:2px 8px;border-radius:10px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.trivia-diff-easy{background:#22c55e26;color:#4ade80}.trivia-diff-medium{background:#fbbf2426;color:#fbbf24}.trivia-diff-hard{background:#ef444426;color:#f87171}.trivia-xp-bonus{font-size:.6rem;color:var(--color-text-muted);margin-left:.25rem;font-weight:400}.trivia-your-stats{display:flex;gap:.75rem;padding:.5rem .75rem;background:#14193766;border-radius:var(--radius-md);font-size:.78rem;color:var(--color-text-secondary);margin-bottom:.5rem;flex-wrap:wrap}.trivia-tabs{display:flex;gap:.25rem;margin-bottom:.4rem}.trivia-tabs button{background:#1419374d;border:1px solid var(--color-border);color:var(--color-text-secondary);padding:.3rem .75rem;border-radius:var(--radius-md);font-size:.78rem;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.trivia-tabs button:hover{background:#14193780}.trivia-tabs button.active{background:#fbbf2426;color:#fbbf24;border-color:#fbbf244d}.trivia-leaderboard{display:flex;flex-direction:column;gap:.15rem}.trivia-lb-row{display:flex;align-items:center;gap:.5rem;padding:.4rem .5rem;font-size:.8rem;border-radius:var(--radius-sm);transition:background .15s}.trivia-lb-row:hover{background:#14193759}.trivia-lb-you{background:#fbbf2414}.trivia-lb-rank{width:2rem;font-weight:700;color:var(--color-text-secondary)}.trivia-lb-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trivia-lb-wins{color:#fbbf24;font-weight:600}.trivia-lb-streak{color:#f97316;font-size:.72rem}.trivia-speed-badge{font-size:.75rem;color:var(--color-text-muted);margin-top:.25rem}.trivia-diff-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.trivia-diff-dot.trivia-diff-easy{background:#4ade80}.trivia-diff-dot.trivia-diff-medium{background:#fbbf24}.trivia-diff-dot.trivia-diff-hard{background:#f87171}.trivia-history-xp{color:#fbbf24;font-weight:600;margin-left:.4rem;font-size:.72rem}@media(max-width:768px){.trivia-panel{padding:.5rem}.trivia-question-card{padding:1rem}.trivia-sprite{width:48px;height:48px}.trivia-question-text{font-size:1.05rem}.trivia-idle-banner{padding:1.5rem .75rem}.trivia-idle-icon svg{width:36px;height:36px}}@media(max-width:480px){.trivia-question-card{padding:.75rem;margin-bottom:.5rem}.trivia-question-body{flex-direction:column;align-items:center;text-align:center;gap:.5rem}.trivia-sprite{width:56px;height:56px}.trivia-question-text{font-size:1rem}.trivia-hint{font-size:.82rem;padding:.35rem .6rem}.trivia-answer-bar button{padding:.5rem .75rem}.trivia-idle-banner{padding:1.25rem .5rem}.trivia-idle-text{font-size:.95rem}.trivia-history-question{font-size:.82rem}.trivia-history-meta{flex-direction:column;align-items:flex-start;gap:.15rem;font-size:.72rem}.trivia-history-sprite{width:22px;height:22px}.trivia-your-stats{gap:.4rem;font-size:.7rem;padding:.4rem .5rem}.trivia-lb-row{font-size:.72rem;gap:.3rem}.trivia-tabs button{padding:.25rem .6rem;font-size:.72rem}}.admin-empty-state{color:var(--color-text-secondary);font-size:.85rem;margin:.5rem 0 0}.strike-badge{color:#fff;border-radius:10px;padding:1px 8px;font-size:.75rem;margin-left:.5rem;font-weight:700}.strike-badge-low{background:#4caf50}.strike-badge-medium{background:#ff9800}.strike-badge-high{background:#e53935}.strike-group{margin-bottom:.75rem}.strike-group-header{border-bottom:1px solid rgba(136,144,181,.15);padding-bottom:.3rem;margin-bottom:.3rem}.strike-detail{padding-left:1rem}.admin-label{color:var(--color-text-secondary);font-size:.85rem;white-space:nowrap}.admin-warning-text{color:#ff6b6b;font-size:.8rem;margin:.3rem 0 0}.admin-input-narrow{width:60px}.btn-confirm-danger{background:#e53935!important}.btn-clear-event{background:var(--color-bg-surface);color:var(--color-text-secondary)}.badge-locked{background:#f59e0b;color:#000;margin-left:4px}.tcg-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.tcg-tabs{display:flex;gap:.25rem;padding:.5rem .75rem;border-bottom:1px solid var(--color-border);background:var(--color-bg-elevated);flex-shrink:0}.tcg-tabs button{display:flex;align-items:center;gap:.35rem;background:#1414164d;border:1px solid var(--color-border);color:var(--color-text-secondary);padding:.4rem .75rem;border-radius:var(--radius-md);font-size:.8rem;cursor:pointer;transition:background .15s,color .15s}.tcg-tabs button:hover{background:#14141680;color:var(--color-text)}.tcg-tabs button.active{background:#60a5fa26;color:#60a5fa;border-color:#60a5fa4d}.tcg-tab-count{background:#60a5fa33;color:#60a5fa;font-size:.65rem;padding:1px 6px;border-radius:8px;font-weight:700}.tcg-tab-match{background:#4ade8033;color:#4ade80}.tcg-browse{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.tcg-browse-controls{display:flex;gap:.5rem;padding:.5rem .75rem;flex-shrink:0}.tcg-browse-controls select{background:var(--color-bg-elevated);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.4rem .5rem;font-size:.8rem;min-width:0;flex:1}.tcg-browse-controls input{background:var(--color-bg-elevated);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.4rem .5rem;font-size:.8rem;flex:1;min-width:0}.tcg-browse-controls input::placeholder{color:var(--color-text-muted)}.tcg-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.5rem;padding:.5rem .75rem;overflow-y:auto;flex:1;min-height:0}.tcg-card-grid-sm{grid-template-columns:repeat(auto-fill,minmax(95px,1fr))}.tcg-card{position:relative;display:flex;flex-direction:column;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color .15s,transform .15s}.tcg-card:hover{border-color:#60a5fa66;transform:translateY(-2px)}.tcg-card-have{border-color:#4ade8066}.tcg-card-want{border-color:#fbbf2466}.tcg-card-img-wrap{width:100%;aspect-ratio:.72;overflow:hidden;background:#1414164d;flex-shrink:0;border-radius:var(--radius-md) var(--radius-md) 0 0}.tcg-card-img-wrap img{width:100%;height:100%;object-fit:cover;display:block}.tcg-card-info{display:flex;align-items:center;justify-content:space-between;padding:.25rem .35rem;gap:.2rem}.tcg-card-name{font-size:.68rem;font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.tcg-card-id{font-size:.6rem;color:var(--color-text-muted);flex-shrink:0}.tcg-card-actions{display:none;gap:.2rem;padding:0 .25rem .3rem}.tcg-card:hover .tcg-card-actions{display:flex}.tcg-btn-have,.tcg-btn-want{flex:1;border:none;border-radius:4px;padding:.2rem 0;font-size:.62rem;font-weight:700;cursor:pointer;transition:background .15s}.tcg-btn-have{background:#4ade8026;color:#4ade80}.tcg-btn-have:hover,.tcg-btn-have.active{background:#4ade804d}.tcg-btn-want{background:#fbbf2426;color:#fbbf24}.tcg-btn-want:hover,.tcg-btn-want.active{background:#fbbf244d}.tcg-btn-remove{position:absolute;top:4px;right:4px;background:#0009;border:none;border-radius:50%;width:20px;height:20px;display:none;align-items:center;justify-content:center;cursor:pointer;color:#f87171;padding:0}.tcg-card:hover .tcg-btn-remove{display:flex}.tcg-loading,.tcg-empty{display:flex;align-items:center;justify-content:center;padding:2rem;color:var(--color-text-muted);font-size:.85rem;flex:1}.tcg-empty-hint{color:var(--color-text-muted);font-size:.78rem;padding:.5rem 0;margin:0}.tcg-collection{flex:1;overflow-y:auto;padding:.5rem 0}.tcg-collection-section{padding:0 .75rem;margin-bottom:1rem}.tcg-collection-section h3{font-size:.85rem;font-weight:700;color:var(--color-text);margin:0 0 .5rem;display:flex;align-items:center;gap:.4rem}.tcg-count{font-size:.65rem;background:#60a5fa26;color:#60a5fa;padding:1px 6px;border-radius:8px;font-weight:700}.tcg-trades{flex:1;overflow-y:auto;padding:.5rem 0}.tcg-trade-section{padding:0 .75rem;margin-bottom:1.2rem}.tcg-trade-section h3{font-size:.85rem;font-weight:700;color:var(--color-text);margin:0 0 .5rem;display:flex;align-items:center;gap:.4rem}.tcg-trade-group{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.5rem;margin-bottom:.4rem}.tcg-trade-user{font-size:.8rem;font-weight:700;color:var(--color-text);margin-bottom:.35rem;display:flex;align-items:center;gap:.4rem}.tcg-trade-match-count{font-size:.65rem;font-weight:400;color:var(--color-text-muted)}.tcg-trade-cards{display:flex;gap:.4rem;flex-wrap:wrap}.tcg-trade-card{display:flex;align-items:center;gap:.3rem;background:#1414164d;border-radius:6px;padding:.2rem .4rem;font-size:.72rem;color:var(--color-text-secondary)}.tcg-trade-card img{width:28px;height:auto;border-radius:3px}.tcg-card,.tcg-trade-card{cursor:pointer}.tcg-detail-overlay .modal-content{max-width:380px;width:90vw;padding:0;border-radius:12px;overflow:hidden;background:var(--color-bg-elevated);border:1px solid var(--color-border)}.tcg-detail-modal{position:relative;display:flex;flex-direction:column;max-height:85vh;overflow-y:auto}.tcg-detail-close{position:absolute;top:8px;right:8px;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:none;color:#fff;font-size:1.2rem;line-height:1;width:26px;height:26px;border-radius:50%;cursor:pointer;z-index:2;display:flex;align-items:center;justify-content:center;transition:background .15s}.tcg-detail-close:hover{background:#000c}.tcg-detail-image{width:100%;display:flex;justify-content:center;padding:1.25rem 1rem .75rem}.tcg-detail-image img{width:200px;height:auto;border-radius:8px;box-shadow:0 2px 12px #0000004d}.tcg-detail-info{padding:0 1rem 1rem;display:flex;flex-direction:column;gap:.4rem}.tcg-detail-name{font-size:1rem;font-weight:700;color:var(--color-text);margin:0}.tcg-detail-loading{color:var(--color-text-muted);font-size:.8rem}.tcg-detail-meta-row{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center}.tcg-detail-set,.tcg-detail-rarity,.tcg-detail-stage{background:#ffffff0f;color:var(--color-text-secondary);font-size:.68rem;font-weight:600;padding:2px 7px;border-radius:4px;letter-spacing:.01em}.tcg-detail-hp{font-size:.75rem;font-weight:700;color:var(--color-text)}.tcg-detail-type{font-size:.68rem;font-weight:600;padding:2px 7px;border-radius:4px;background:#ffffff0f;color:var(--color-text-secondary)}.tcg-detail-attacks{display:flex;flex-direction:column;gap:1px;margin-top:.15rem}.tcg-detail-attack{display:flex;align-items:center;gap:.4rem;background:#ffffff08;border-radius:4px;padding:.3rem .45rem}.tcg-detail-attack-cost{font-size:.68rem;color:var(--color-text-muted);min-width:44px}.tcg-detail-attack-name{font-size:.78rem;font-weight:600;color:var(--color-text);flex:1}.tcg-detail-attack-dmg{font-size:.8rem;font-weight:700;color:var(--color-text)}.tcg-detail-combat{font-size:.72rem;color:var(--color-text-muted)}.tcg-detail-weakness,.tcg-detail-retreat{background:#ffffff0a;padding:2px 7px;border-radius:4px;font-size:.7rem;color:var(--color-text-muted)}.tcg-detail-desc{font-size:.75rem;color:var(--color-text-muted);font-style:italic;line-height:1.4;margin:0}.tcg-detail-illustrator{font-size:.65rem;color:var(--color-text-muted);opacity:.7;margin:0}.tcg-detail-actions{display:flex;gap:.4rem;margin-top:.35rem;padding-top:.4rem;border-top:1px solid var(--color-border)}.tcg-detail-btn-have,.tcg-detail-btn-want{flex:1;border:1px solid var(--color-border);border-radius:6px;padding:.4rem 0;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s;background:transparent;color:var(--color-text-secondary)}.tcg-detail-btn-have:hover{border-color:#4ade80;color:#4ade80}.tcg-detail-btn-have.active{background:#4ade801f;border-color:#4ade80;color:#4ade80}.tcg-detail-btn-want:hover{border-color:#fbbf24;color:#fbbf24}.tcg-detail-btn-want.active{background:#fbbf241f;border-color:#fbbf24;color:#fbbf24}.tcg-tab-incoming{background:#fbbf24;color:#000}.tcg-trade-propose-btn{margin-left:auto;background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);font-size:.7rem;font-weight:600;padding:3px 10px;border-radius:4px;cursor:pointer;transition:all .15s}.tcg-trade-propose-btn:hover{border-color:var(--color-text);color:var(--color-text)}.tcg-trade-requests-section{border-bottom:1px solid var(--color-border);padding-bottom:.5rem;margin-bottom:.25rem}.tcg-trade-req-card{background:#ffffff08;border:1px solid var(--color-border);border-radius:8px;padding:.6rem;margin-bottom:.4rem}.tcg-trade-req-card.tcg-trade-req-outgoing{opacity:.85}.tcg-trade-req-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.3rem}.tcg-trade-req-from{font-size:.78rem;color:var(--color-text-secondary)}.tcg-trade-req-from strong{color:var(--color-text)}.tcg-trade-req-status{font-size:.65rem;font-weight:600;color:var(--color-text-muted);background:#ffffff0d;padding:1px 6px;border-radius:3px;text-transform:uppercase;letter-spacing:.03em}.tcg-trade-req-msg{font-size:.75rem;color:var(--color-text-muted);font-style:italic;margin:0 0 .3rem}.tcg-trade-req-sides{display:flex;gap:.5rem;margin-bottom:.4rem}.tcg-trade-req-side{flex:1;min-width:0}.tcg-trade-req-label{font-size:.65rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;display:block;margin-bottom:.2rem}.tcg-trade-req-thumbs{display:flex;flex-wrap:wrap;gap:3px}.tcg-trade-req-thumbs img{width:36px;height:auto;border-radius:3px;cursor:pointer;transition:transform .1s}.tcg-trade-req-thumbs img:hover{transform:scale(1.15)}.tcg-trade-req-actions{display:flex;gap:.35rem}.tcg-trade-req-accept,.tcg-trade-req-decline,.tcg-trade-req-cancel{border:none;border-radius:5px;padding:.3rem .75rem;font-size:.72rem;font-weight:600;cursor:pointer;transition:opacity .15s}.tcg-trade-req-accept{background:#4ade8026;color:#4ade80}.tcg-trade-req-accept:hover{opacity:.8}.tcg-trade-req-decline{background:#f8717126;color:#f87171}.tcg-trade-req-decline:hover{opacity:.8}.tcg-trade-req-cancel{background:#94a3b81f;color:#94a3b8}.tcg-trade-req-cancel:hover{opacity:.8}.trade-req-overlay .modal-content{max-width:440px;width:92vw;padding:0;border-radius:12px;overflow:hidden;background:var(--color-bg-elevated);border:1px solid var(--color-border)}.trade-req-modal{position:relative;padding:1rem;max-height:80vh;overflow-y:auto}.trade-req-close{position:absolute;top:8px;right:8px;background:none;border:none;color:var(--color-text-muted);font-size:1.3rem;cursor:pointer;width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:color .15s}.trade-req-close:hover{color:var(--color-text)}.trade-req-title{font-size:.95rem;font-weight:700;margin:0 0 .75rem;color:var(--color-text)}.trade-req-columns{display:flex;gap:.5rem;margin-bottom:.6rem}.trade-req-col{flex:1;min-width:0}.trade-req-col-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin:0 0 .35rem;display:flex;align-items:center;gap:.3rem}.trade-req-col-offer{color:#4ade80}.trade-req-col-request{color:#60a5fa}.trade-req-col-count{background:#ffffff14;color:var(--color-text-muted);font-size:.62rem;padding:1px 5px;border-radius:3px}.trade-req-cards{display:flex;flex-wrap:wrap;gap:4px}.trade-req-card{width:52px;cursor:pointer;position:relative;border:2px solid transparent;border-radius:4px;transition:border-color .15s}.trade-req-card.selected{border-color:var(--color-text)}.trade-req-card img{width:100%;height:auto;border-radius:3px;display:block}.trade-req-card-name{font-size:.55rem;color:var(--color-text-muted);display:block;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trade-req-check{position:absolute;top:2px;right:2px;font-size:.6rem;color:#fff;background:#0009;width:14px;height:14px;border-radius:50%;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s}.trade-req-card.selected .trade-req-check{opacity:1}.trade-req-empty{font-size:.72rem;color:var(--color-text-muted);margin:0}.trade-req-message{margin-bottom:.5rem}.trade-req-message input{width:100%;background:#ffffff0a;border:1px solid var(--color-border);border-radius:6px;padding:.4rem .6rem;font-size:.78rem;color:var(--color-text);outline:none}.trade-req-message input::placeholder{color:var(--color-text-muted)}.trade-req-message input:focus{border-color:var(--color-text-muted)}.trade-req-send{width:100%;border:none;border-radius:6px;padding:.5rem;font-size:.82rem;font-weight:600;cursor:pointer;background:var(--color-text);color:var(--color-bg);transition:opacity .15s}.trade-req-send:hover{opacity:.85}.trade-req-send:disabled{opacity:.4;cursor:not-allowed}@media(max-width:480px){.tcg-browse-controls{flex-direction:column;gap:.35rem}.tcg-card-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:.35rem;padding:.35rem}.tcg-card-actions,.tcg-btn-remove{display:flex}.tcg-tabs{padding:.35rem .5rem}.tcg-tabs button{font-size:.72rem;padding:.35rem .5rem}.tcg-detail-image img{width:160px}.trade-req-columns,.tcg-trade-req-sides{flex-direction:column}}.pack-opener{padding:.75rem;min-height:280px;display:flex;flex-direction:column;align-items:center}.pack-idle{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem 1rem}.pack-wrapper{width:130px;height:190px;position:relative}.pack-foil{width:100%;height:100%;border-radius:12px;position:relative;overflow:hidden;background:linear-gradient(160deg,#151729,#1e2245 40%,#151729);border:1.5px solid rgba(255,255,255,.07);box-shadow:0 8px 24px #00000080,0 0 40px #5064dc0f;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem}.pack-foil-shine{position:absolute;top:-80%;left:-80%;width:260%;height:260%;background:linear-gradient(50deg,transparent 38%,rgba(255,255,255,.025) 44%,rgba(255,255,255,.06) 50%,rgba(255,255,255,.025) 56%,transparent 62%);animation:foil-shine 4s ease-in-out infinite;pointer-events:none}@keyframes foil-shine{0%{transform:translate(-20%) translateY(-20%)}to{transform:translate(20%) translateY(20%)}}.pack-foil-emblem{width:52px;height:52px;border-radius:50%;border:2px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center;position:relative;z-index:1}.pack-foil-pokeball{width:22px;height:22px;border-radius:50%;border:2px solid rgba(255,255,255,.08);position:relative}.pack-foil-pokeball:after{content:"";position:absolute;top:50%;left:-2px;right:-2px;height:1.5px;background:#ffffff14;transform:translateY(-50%)}.pack-foil-title{font-size:.65rem;font-weight:700;color:#ffffff80;text-align:center;padding:0 .75rem;z-index:1;text-transform:uppercase;letter-spacing:.12em}.pack-idle-hint{font-size:.72rem;color:var(--color-text-muted);margin:0;text-align:center}.pack-open-btn{background:var(--color-text);color:var(--color-bg);border:none;border-radius:8px;padding:.65rem 2rem;font-size:.85rem;font-weight:700;cursor:pointer;transition:opacity .15s,transform .15s;animation:pack-pulse 2.5s ease-in-out infinite}.pack-open-btn:hover{opacity:.85;transform:scale(1.03)}.pack-open-btn:disabled{opacity:.35;cursor:not-allowed;animation:none;transform:none}@keyframes pack-pulse{0%,to{box-shadow:0 0 #ffffff1f}50%{box-shadow:0 0 0 10px #fff0}}.pack-opening{display:flex;align-items:center;justify-content:center;padding:3rem 1rem;position:relative}.pack-tearing{animation:pack-tear 1.1s ease-in-out forwards}@keyframes pack-tear{0%{transform:scale(1);opacity:1}25%{transform:scale(1.06) rotate(-1.5deg)}50%{transform:scale(1.12) rotate(1deg)}75%{opacity:1}to{transform:scale(1.25);opacity:0}}.pack-light-burst{position:absolute;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.12),transparent 70%);animation:light-burst 1.1s ease-out forwards;pointer-events:none}@keyframes light-burst{0%{transform:scale(.4);opacity:0}40%{opacity:1}to{transform:scale(3);opacity:0}}.pack-stage{display:flex;justify-content:center;align-items:flex-end;gap:8px;padding:1.5rem .5rem .5rem;perspective:1200px;min-height:240px}.pcard{width:130px;height:182px;position:relative;opacity:0;transform:translateY(30px) rotate(var(--pcard-angle, 0deg));transition:opacity .35s ease-out,transform .45s cubic-bezier(.34,1.56,.64,1)}.pcard-dealt{opacity:1;transform:translateY(var(--pcard-lift, 0px)) rotate(var(--pcard-angle, 0deg))}.pcard-tappable{cursor:pointer}.pcard-tappable:hover{transform:translateY(calc(var(--pcard-lift, 0px) - 6px)) rotate(var(--pcard-angle, 0deg)) scale(1.03)}.pcard-tappable:after{content:"";position:absolute;inset:-2px;border-radius:10px;border:1px solid rgba(255,255,255,.06);animation:tap-hint 1.8s ease-in-out infinite;pointer-events:none}@keyframes tap-hint{0%,to{border-color:#ffffff0a}50%{border-color:#ffffff26}}.pcard-done,.pcard-done:hover{transform:translateY(0) rotate(0)!important}.pcard-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.4,0,.2,1)}.pcard-revealed .pcard-inner{transform:rotateY(180deg)}.pcard-back,.pcard-front{position:absolute;top:0;left:0;width:100%;height:100%;backface-visibility:hidden;border-radius:8px;overflow:hidden}.pcard-back{background:#1a1d2e}.pcard-back-img{width:100%;height:100%;object-fit:cover;border-radius:7px;-webkit-user-select:none;user-select:none;pointer-events:none}.pcard-front{transform:rotateY(180deg);background:var(--color-bg-elevated);border:1.5px solid rgba(255,255,255,.06);position:relative}.pcard-front img{width:100%;height:100%;object-fit:cover;border-radius:7px}.pcard-shimmer{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.15) 45%,rgba(255,255,255,.25) 50%,rgba(255,255,255,.15) 55%,transparent 70%);animation:card-shimmer .7s ease-out forwards;pointer-events:none;border-radius:7px}@keyframes card-shimmer{0%{transform:translate(-100%);opacity:1}to{transform:translate(100%);opacity:0}}.pcard-badge{position:absolute;top:6px;right:6px;font-size:.55rem;font-weight:800;padding:2px 6px;border-radius:3px;letter-spacing:.05em;animation:badge-pop .35s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes badge-pop{0%{transform:scale(0)}to{transform:scale(1)}}.pcard-badge-new{background:#facc15eb;color:#000}.pcard-badge-owned{background:#00000080;color:#ffffff8c}.pcard-label{display:flex;align-items:center;justify-content:center;gap:4px;margin-top:4px;max-width:100%}.pcard-label-name{font-size:.58rem;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.pcard-add-btn{flex-shrink:0;width:16px;height:16px;border-radius:50%;background:#4ade80cc;color:#fff;border:none;font-size:.7rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .1s;line-height:1}.pcard-add-btn:hover{transform:scale(1.15)}.pack-hint{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.4rem;font-size:.72rem;color:var(--color-text-muted)}.pack-hint-btn{background:#94a3b814;color:var(--color-text-secondary);border:1px solid rgba(148,163,184,.12);border-radius:5px;padding:.25rem .6rem;font-size:.68rem;font-weight:600;cursor:pointer;transition:opacity .15s}.pack-hint-btn:hover{opacity:.7}.pack-summary{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.4rem .5rem .5rem}.pack-summary-new{font-size:.78rem;font-weight:700;color:#facc15}.pack-actions{display:flex;justify-content:center;gap:.4rem;flex-wrap:wrap}.pack-btn{border:none;border-radius:6px;padding:.4rem .9rem;font-size:.76rem;font-weight:600;cursor:pointer;transition:opacity .15s}.pack-btn-add{background:#4ade8024;color:#4ade80}.pack-btn-add:hover{opacity:.8}.pack-btn-again{background:var(--color-text);color:var(--color-bg)}.pack-btn-again:hover{opacity:.85}.pack-btn-done{background:#94a3b81a;color:#94a3b8}.pack-btn-done:hover{opacity:.8}@media(max-width:480px){.pcard{width:90px;height:126px}.pack-stage{gap:4px;min-height:180px}.pcard-label-name{font-size:.5rem}.pack-wrapper{width:110px;height:160px}.notif-dropdown{width:calc(100vw - 1rem);right:-.5rem}}.pcard-single-area{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1rem .5rem .5rem;perspective:1400px;min-height:360px;position:relative;overflow:hidden}.pcard-single{width:250px;height:350px;position:relative;cursor:pointer;transition:transform .3s ease}.pcard-single:hover{transform:scale(1.02)}.pcard-single .pcard-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.4,0,.2,1)}.pcard-single.pcard-revealed .pcard-inner{transform:rotateY(180deg)}.pcard-single .pcard-back,.pcard-single .pcard-front{position:absolute;top:0;left:0;width:100%;height:100%;backface-visibility:hidden;border-radius:12px;overflow:hidden}.pcard-single .pcard-back{background:#1a1d2e}.pcard-single .pcard-back-img{width:100%;height:100%;object-fit:cover;border-radius:11px;-webkit-user-select:none;user-select:none;pointer-events:none}.pcard-single .pcard-front{transform:rotateY(180deg);background:var(--color-bg-elevated);border:2px solid rgba(255,255,255,.06);position:relative}.pcard-single .pcard-front img{width:100%;height:100%;object-fit:cover;border-radius:11px}.pcard-single .pcard-shimmer{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.18) 45%,rgba(255,255,255,.3) 50%,rgba(255,255,255,.18) 55%,transparent 70%);animation:card-shimmer .8s ease-out forwards;pointer-events:none;border-radius:11px}.pcard-single.pcard-tappable:after{content:"Tap to reveal";position:absolute;bottom:-28px;left:50%;transform:translate(-50%);font-size:.72rem;color:var(--color-text-muted);white-space:nowrap;animation:tap-hint-text 2s ease-in-out infinite;pointer-events:none}@keyframes tap-hint-text{0%,to{opacity:.5}50%{opacity:1}}.pcard-single.pcard-tappable .pcard-back{box-shadow:0 0 20px #ffffff0d;animation:single-tap-pulse 2s ease-in-out infinite}@keyframes single-tap-pulse{0%,to{box-shadow:0 0 12px #ffffff08}50%{box-shadow:0 0 24px #ffffff1a}}.pcard-glow-white .pcard-front{border-color:#fff3;box-shadow:0 0 16px #ffffff14}.pcard-glow-blue .pcard-front{border-color:#60a5fa59;box-shadow:0 0 22px #60a5fa26;animation:glow-blue 2s ease-in-out infinite}@keyframes glow-blue{0%,to{box-shadow:0 0 16px #60a5fa1a}50%{box-shadow:0 0 30px #60a5fa40}}.pcard-glow-gold .pcard-front{border-color:#facc1566;box-shadow:0 0 26px #facc1526;animation:glow-gold 2s ease-in-out infinite}@keyframes glow-gold{0%,to{box-shadow:0 0 18px #facc151a}50%{box-shadow:0 0 36px #facc154d}}.pcard-glow-star .pcard-front{border-color:#a855f773;box-shadow:0 0 32px #a855f733;animation:glow-star 2.5s ease-in-out infinite}@keyframes glow-star{0%,to{box-shadow:0 0 20px #a855f71f}50%{box-shadow:0 0 44px #a855f759}}.pcard-glow-star .pcard-front:before,.pcard-glow-star .pcard-front:after,.pcard-glow-gold .pcard-front:before{content:"✦";position:absolute;font-size:.7rem;color:#facc15b3;animation:sparkle-float 3s ease-in-out infinite;pointer-events:none;z-index:5}.pcard-glow-star .pcard-front:before{top:12%;right:8%;color:#a855f7cc;animation-delay:0s}.pcard-glow-star .pcard-front:after{bottom:15%;left:6%;color:#facc15b3;animation-delay:1s}.pcard-glow-gold .pcard-front:before{top:10%;left:8%;animation-delay:.5s}@keyframes sparkle-float{0%,to{opacity:0;transform:translateY(0) scale(.6)}25%{opacity:1;transform:translateY(-6px) scale(1)}75%{opacity:.8;transform:translateY(-12px) scale(.9)}}.pcard-card-info{text-align:center;font-size:.82rem;font-weight:600;color:var(--color-text-secondary);animation:info-fade-in .4s ease-out}@keyframes info-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.pack-progress{display:flex;gap:8px;justify-content:center;align-items:center}.pack-progress-dot{width:8px;height:8px;border-radius:50%;background:#94a3b826;transition:all .3s ease}.pack-progress-dot.revealed{background:#94a3b880}.pack-progress-dot.current{background:var(--color-text);box-shadow:0 0 6px #fff3;transform:scale(1.25)}.pack-next-btn{background:var(--color-text);color:var(--color-bg);border:none;border-radius:8px;padding:.55rem 1.8rem;font-size:.82rem;font-weight:700;cursor:pointer;transition:opacity .15s,transform .15s;animation:info-fade-in .4s ease-out}.pack-next-btn:hover{opacity:.85;transform:scale(1.03)}.pcard-single-enter{animation:card-slide-in .35s cubic-bezier(.22,1,.36,1) forwards}@keyframes card-slide-in{0%{opacity:0;transform:translate(60px) scale(.92)}to{opacity:1;transform:translate(0) scale(1)}}.pack-thumb-row{display:flex;justify-content:center;gap:6px;padding:.75rem .5rem .25rem;perspective:1200px}.pack-thumb-row .pcard{width:100px;height:140px;opacity:1;transform:none;cursor:default}.pack-thumb-row .pcard-inner{transform:rotateY(180deg)}@media(max-width:480px){.pcard-single{width:200px;height:280px}.pcard-single-area{min-height:300px;padding:.5rem .5rem .25rem}.pack-thumb-row .pcard{width:60px;height:84px}.pack-thumb-row{gap:3px}}@keyframes spriteBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes spriteBounceExcited{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes spriteSway{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(-2px) rotate(-1deg)}75%{transform:translate(2px) rotate(1deg)}}@keyframes spriteGlow{0%,to{box-shadow:0 0 18px #22c55e26}50%{box-shadow:0 0 28px #22c55e4d}}@keyframes spriteGlowSad{0%,to{box-shadow:0 0 18px #ef44441a}50%{box-shadow:0 0 28px #ef444433}}@keyframes statPulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes eggWobble{0%{transform:rotate(-4deg) scale(1)}50%{transform:rotate(4deg) scale(1.02)}to{transform:rotate(-4deg) scale(1)}}@keyframes eggSparkle{0%,to{opacity:.4;transform:scale(.8) translateY(0)}50%{opacity:1;transform:scale(1.1) translateY(-3px)}}@keyframes careFlash{0%{box-shadow:0 0 #22c55e66}70%{box-shadow:0 0 0 8px #22c55e00}to{box-shadow:0 0 #22c55e00}}@keyframes coinBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.companion-panel{display:flex;flex-direction:column;height:100%;overflow-y:auto;padding:1.25rem;gap:1rem}.companion-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem}.companion-title{font-size:var(--font-lg);font-weight:700;color:#fff;margin:0}.companion-coins{display:flex;align-items:center;gap:.4rem;background:linear-gradient(135deg,#f59e0b1f,#b8ff5714);border:1px solid rgba(245,158,11,.25);border-radius:999px;padding:.3rem .75rem;font-weight:600;color:#f59e0b;font-size:var(--font-sm)}.companion-coins svg{flex-shrink:0}.coins-amount{font-size:var(--font-base)}.coins-label{font-size:var(--font-xs);opacity:.7;margin-left:.1rem}.companion-tabs{display:flex;gap:.25rem;background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:.25rem}.companion-tab{flex:1;padding:.55rem .75rem;border:none;background:transparent;color:var(--color-text-secondary);font-size:var(--font-sm);font-weight:500;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:.35rem}.companion-tab svg{width:16px;height:16px;flex-shrink:0}.companion-tab:hover{background:var(--color-bg-surface);color:var(--color-text-primary)}.companion-tab.active{background:#b8ff571a;color:var(--color-accent);font-weight:600}.tab-badge{font-size:.65rem;background:var(--color-accent);color:var(--color-bg-primary);padding:.1rem .4rem;border-radius:999px;min-width:1.1rem;text-align:center;font-weight:700}.companion-content{flex:1}.pal-layout{display:flex;flex-direction:column;gap:1rem;align-items:center}.pal-name-btn{background:none;border:none;color:var(--color-text-primary);font-size:1.2rem;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:.4rem;padding:.2rem .4rem;border-radius:var(--radius-sm);transition:var(--transition-fast)}.pal-name-btn:hover{background:var(--color-bg-surface)}.pal-edit-icon{opacity:0;transition:var(--transition-fast);color:var(--color-text-muted)}.pal-name-btn:hover .pal-edit-icon{opacity:1}.pal-rename{display:flex;gap:.3rem;align-items:center}.pal-rename input{background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);padding:.35rem .6rem;font-size:var(--font-base);width:140px}.pal-rename input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px #b8ff571a}.pal-rename-action{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;padding:.3rem;border-radius:var(--radius-sm);display:flex;transition:var(--transition-fast)}.pal-rename-action:hover{color:var(--color-text-primary);background:var(--color-bg-surface)}.pal-mood-label{color:var(--color-text-muted)}.pal-mood-tag{opacity:.7}.companion-sprite-wrap{position:relative;display:flex;align-items:center;justify-content:center;border-radius:50%;padding:12px;background:radial-gradient(circle,rgba(34,197,94,.12) 0%,transparent 70%);animation:spriteBounce 3s ease-in-out infinite,spriteGlow 4s ease-in-out infinite}.companion-sprite-wrap.sprite-mood-happy{background:radial-gradient(circle,rgba(34,197,94,.15) 0%,transparent 70%);animation:spriteBounceExcited 2s ease-in-out infinite,spriteGlow 3s ease-in-out infinite}.companion-sprite-wrap.sprite-mood-ok{background:radial-gradient(circle,rgba(245,158,11,.12) 0%,transparent 70%);animation:spriteBounce 3s ease-in-out infinite;box-shadow:0 0 20px #f59e0b1a}.companion-sprite-wrap.sprite-mood-sad{background:radial-gradient(circle,rgba(239,68,68,.1) 0%,transparent 70%);animation:spriteSway 4s ease-in-out infinite,spriteGlowSad 4s ease-in-out infinite}.companion-sprite-wrap.sprite-mood-sleeping{background:radial-gradient(circle,rgba(168,85,247,.1) 0%,transparent 70%);animation:spriteSway 6s ease-in-out infinite;box-shadow:0 0 20px #a855f71a;opacity:.85}.companion-sprite-img{image-rendering:auto;object-fit:contain}.companion-sprite-placeholder{background:var(--color-bg-elevated);border-radius:50%}.stat-bar{display:flex;align-items:center;gap:.5rem}.stat-bar svg{flex-shrink:0}.stat-bar-compact{gap:.3rem}.stat-bar-label{font-size:var(--font-xs);color:var(--color-text-secondary);width:65px;flex-shrink:0}.stat-bar-track{flex:1;height:10px;background:var(--color-bg-primary);border-radius:999px;overflow:hidden;box-shadow:inset 0 1px 3px #0000004d}.stat-bar-compact .stat-bar-track{height:6px}.stat-bar-fill{height:100%;border-radius:999px;transition:width .5s ease,background .5s ease;box-shadow:inset 0 1px #ffffff26}.stat-bar-value{font-size:var(--font-xs);min-width:2.2rem;text-align:center;font-weight:600;padding:.1rem .4rem;border-radius:999px;line-height:1.3}.stat-bar-critical .stat-bar-fill{animation:statPulse 1.5s ease-in-out infinite}.care-group{display:flex;flex-direction:column;gap:.35rem;flex:1;min-width:120px}.care-cd{font-size:var(--font-xs);opacity:.5}.care-paid{display:flex;gap:.3rem}.care-paid-btn{flex:1;padding:.3rem .5rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-primary);color:var(--color-text-secondary);font-size:var(--font-xs);cursor:pointer;transition:var(--transition-fast)}.care-paid-btn:hover:not(:disabled){background:var(--color-bg-surface);color:var(--color-text-primary)}.care-paid-btn:disabled{opacity:.35;cursor:default}.egg-display{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:var(--color-bg-elevated);border-radius:var(--radius-lg);border:1px solid var(--color-border);transition:var(--transition-fast)}.egg-display:hover{border-color:var(--color-border-hover)}.egg-display.egg-wobble .egg-visual{animation:eggWobble .8s ease-in-out infinite}.egg-visual{width:48px;height:56px;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative}.egg-sparkle-overlay{position:absolute;top:-4px;right:-4px;animation:eggSparkle 1.5s ease-in-out infinite;pointer-events:none}.egg-svg{flex-shrink:0}.egg-info{flex:1}.egg-tier{font-size:var(--font-sm);font-weight:600;margin-bottom:.35rem}.egg-progress-track{height:7px;background:var(--color-bg-primary);border-radius:999px;overflow:hidden;margin-bottom:.25rem;box-shadow:inset 0 1px 3px #0000004d}.egg-progress-fill{height:100%;border-radius:999px;transition:width .4s ease;box-shadow:inset 0 1px #ffffff26}.egg-progress-text{font-size:var(--font-xs);color:var(--color-text-secondary)}.egg-compact{padding:.5rem .75rem;gap:.6rem}.egg-compact .egg-visual{width:32px;height:40px}.pal-empty,.eggs-empty,.collection-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center;color:var(--color-text-secondary)}.pal-empty-icon{margin-bottom:.75rem;color:var(--color-text-muted)}.pal-empty-icon svg{width:40px;height:40px}.pal-empty h3,.eggs-empty h3{color:var(--color-text-primary);margin-bottom:.35rem}.pal-empty-btn{margin-top:1rem;padding:.55rem 1.25rem;background:var(--color-accent);border:none;color:var(--color-bg-primary);border-radius:var(--radius-md);cursor:pointer;font-weight:600;font-size:var(--font-sm);transition:var(--transition-fast)}.pal-empty-btn:hover{opacity:.85;transform:translateY(-1px)}.pal-empty-btn:active{transform:scale(.95)}.eggs-list{display:flex;flex-direction:column;gap:.5rem}.eggs-tip{margin-top:1rem;padding:.65rem .85rem;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-left:3px solid var(--color-accent);border-radius:var(--radius-md);font-size:var(--font-sm);color:var(--color-text-secondary)}.eggs-tip strong{color:var(--color-text-primary)}.collection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.75rem}.collection-card{display:flex;flex-direction:column;align-items:center;padding:.85rem .5rem;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s ease;position:relative;color:var(--color-text-primary)}.collection-card:hover{background:var(--color-bg-surface);border-color:var(--color-border-hover);transform:translateY(-3px);box-shadow:0 6px 16px #0003}.collection-card img{image-rendering:pixelated}.collection-active{border-color:var(--color-accent);background:#b8ff570d;box-shadow:0 0 12px #b8ff571a}.collection-card-name{font-size:var(--font-xs);font-weight:600;margin-top:.35rem;text-align:center}.collection-card-level{font-size:.65rem;color:var(--color-text-muted);font-weight:500;font-family:Courier New,monospace}.collection-active-badge{position:absolute;top:.3rem;right:.3rem;width:8px;height:8px;border-radius:50%;background:var(--color-accent);box-shadow:0 0 6px var(--color-accent);animation:statPulse 2s ease-in-out infinite}.companion-store{display:flex;flex-direction:column;gap:1rem}.store-starter-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.15rem 1.35rem;background:linear-gradient(135deg,#b8ff5714,#22c55e0a,#10b9810f);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(184,255,87,.2);border-radius:var(--radius-lg);flex-wrap:wrap;box-shadow:0 8px 32px #b8ff570f,inset 0 1px #ffffff0f,inset 0 -1px #0000001a}.store-starter-text{display:flex;align-items:center;gap:.75rem}.store-starter-icon{color:var(--color-accent);display:flex;flex-shrink:0}.store-starter-text strong{color:var(--color-text-primary);font-size:var(--font-base)}.store-starter-text p{color:var(--color-text-secondary);font-size:var(--font-sm);margin:.2rem 0 0}.store-claim-btn{padding:.6rem 1.25rem;background:var(--color-accent);border:none;color:var(--color-bg-primary);border-radius:var(--radius-md);font-weight:600;font-size:var(--font-sm);cursor:pointer;white-space:nowrap;transition:all .2s ease}.store-claim-btn:hover{opacity:.85;transform:translateY(-1px)}.store-claim-btn:active{transform:scale(.95)}.store-filters{display:flex;gap:.3rem;flex-wrap:wrap}.store-filter-btn{padding:.35rem .75rem;border:1px solid var(--color-border);border-radius:999px;background:transparent;color:var(--color-text-secondary);font-size:var(--font-xs);font-weight:500;cursor:pointer;transition:var(--transition-fast)}.store-filter-btn:hover{background:var(--color-bg-surface);color:var(--color-text-primary)}.store-filter-btn.active{background:#b8ff571a;color:var(--color-accent);border-color:#b8ff5740}.store-section-title{font-weight:600;color:var(--color-text-primary);margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.05em;font-size:.65rem}.store-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.65rem}.store-card{display:flex;flex-direction:column;align-items:center;padding:.85rem .5rem .6rem;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);gap:.35rem;transition:all .2s ease;position:relative;overflow:hidden}.store-card:hover{border-color:var(--color-border-hover);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.store-card-tier-band{position:absolute;top:0;left:0;right:0;height:3px;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.store-card-egg:hover .store-card-tier-band{height:4px;box-shadow:0 2px 8px #0003}.store-card-icon{color:var(--color-text-secondary);margin-bottom:.1rem}.store-card-name{font-size:var(--font-sm);font-weight:600;color:var(--color-text-primary)}.store-card-desc{font-size:var(--font-xs);color:var(--color-text-muted);text-align:center}.store-buy-btn{margin-top:.35rem;padding:.3rem .7rem;background:linear-gradient(135deg,#f59e0b1f,#b8ff5714);border:1px solid rgba(245,158,11,.25);color:#f59e0b;border-radius:999px;font-size:var(--font-xs);font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.3rem}.store-buy-btn svg{width:12px;height:12px;flex-shrink:0}.store-buy-btn:hover:not(:disabled){background:linear-gradient(135deg,#f59e0b33,#b8ff571f);transform:translateY(-1px)}.store-buy-btn:disabled{opacity:.35;cursor:default}.store-card-bg{position:relative}.store-bg-preview{position:relative;width:100%;height:48px;border-radius:var(--radius-sm);margin-bottom:.35rem;overflow:hidden}.store-bg-preview .habitat-bg-elements,.store-bg-preview .habitat-ground{position:absolute}.store-bg-preview .habitat-bg-elements{inset:0;z-index:1}.store-bg-preview .habitat-ground{bottom:0;left:0;right:0;height:30%;z-index:1}.store-card-bg.owned{opacity:.65}.store-owned-badge{font-size:var(--font-xs);color:var(--color-accent);font-weight:600;padding:.2rem .5rem;background:#b8ff5714;border-radius:999px}.store-skin-preview{width:100%;height:48px;border-radius:var(--radius-sm);margin-bottom:.35rem;border:1px solid;display:flex;align-items:center;justify-content:center}.store-skin-icon{width:20px;height:28px;border-radius:4px;opacity:.7}.store-card-skin.active-skin{border-color:var(--color-accent);box-shadow:0 0 8px #b8ff5726}.store-active-badge{background:#b8ff5726;color:var(--color-accent);border:1px solid rgba(184,255,87,.3);border-radius:999px;padding:.15rem .5rem;font-size:var(--font-xs);font-weight:600}.store-equip-btn{background:#6366f126!important;border-color:#6366f14d!important;color:#a5b4fc!important}.store-equip-btn:hover{background:#6366f140!important}.store-info{padding:.75rem .85rem;background:var(--color-bg-elevated);border-radius:var(--radius-md);border:1px solid var(--color-border)}.store-info h4{color:var(--color-text-primary);margin:0 0 .35rem;font-size:var(--font-sm);font-weight:600}.store-info ul{margin:0;padding:0 0 0 1.2rem;color:var(--color-text-secondary);font-size:var(--font-xs);line-height:1.7}.sidebar-item-companion.active{background:#b8ff571a}.sidebar-item-companion.active .sidebar-item-icon,.sidebar-item-companion.active .sidebar-item-label{color:var(--color-accent)}.sidebar-coins-mini{font-size:.65rem;color:var(--color-accent);background:#b8ff571a;padding:.1rem .35rem;border-radius:999px;margin-left:auto;font-weight:600}@media(max-width:768px){.pal-layout{gap:.75rem}.ds-action-buttons{flex-direction:column}.care-group{min-width:unset}.companion-tabs{flex-wrap:wrap}.collection-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr))}.store-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.store-starter-banner{flex-direction:column;text-align:center}.store-starter-text{flex-direction:column}.companion-sprite-wrap{padding:8px}}.battle-panel{display:flex;flex-direction:column;gap:0;height:100%;overflow:hidden}.battle-tabs{display:flex;gap:2px;padding:8px 12px 0;border-bottom:1px solid rgba(255,255,255,.08)}.battle-tab{flex:1;padding:8px 12px;background:transparent;border:none;color:#ffffff80;font-size:.8rem;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}.battle-tab:hover{color:#fffc}.battle-tab.active{color:#fbbf24;border-bottom-color:#fbbf24}.battle-tab:disabled{opacity:.3;cursor:default}.battle-lobby{display:flex;flex-direction:column;gap:12px;padding:12px;overflow-y:auto;flex:1}.battle-my-pal{display:flex;align-items:center;gap:12px;background:#ffffff0a;border-radius:12px;padding:10px 12px;border:1px solid rgba(255,255,255,.06)}.battle-my-pal-info{flex:1;min-width:0}.battle-my-pal-name{font-weight:600;font-size:.9rem;color:#e2e8f0}.battle-my-pal-stats{font-size:.7rem;color:#ffffff73;margin-top:2px;font-family:monospace}.battle-no-pal{text-align:center;padding:20px;color:#fff6;font-size:.85rem}.battle-record{display:flex;gap:8px;align-items:center;justify-content:center;padding:6px 0}.battle-record-item{font-weight:700;font-size:.85rem;padding:2px 8px;border-radius:6px}.battle-wins{color:#4ade80;background:#4ade801a}.battle-losses{color:#f87171;background:#f871711a}.battle-draws{color:#94a3b8;background:#94a3b81a}.battle-record-streak{font-size:.75rem;color:#fbbf24;font-weight:600}.battle-matchmaking{display:flex;justify-content:center}.battle-find-btn{padding:10px 28px;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:10px;color:#1a1a2e;font-weight:700;font-size:.95rem;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #f59e0b4d}.battle-find-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b66}.battle-find-btn:disabled{opacity:.4;cursor:default;transform:none;box-shadow:none}.battle-searching{display:flex;align-items:center;gap:10px;padding:10px 16px;background:#f59e0b14;border-radius:10px;color:#fbbf24;font-size:.85rem;font-weight:600}.battle-searching-spinner{width:16px;height:16px;border:2px solid rgba(251,191,36,.3);border-top-color:#fbbf24;border-radius:50%;animation:spin .8s linear infinite}.battle-cancel-btn{padding:4px 12px;background:#ffffff1a;border:none;border-radius:6px;color:#ffffffb3;font-size:.75rem;cursor:pointer;margin-left:auto}.battle-npc-section{display:flex;flex-direction:column;gap:8px}.battle-npc-note{font-size:.65rem;color:#ffffff4d;font-weight:400}.battle-npc-random{display:flex;align-items:center;gap:10px;padding:10px 14px;background:linear-gradient(135deg,#a855f726,#ec48991a);border:1px solid rgba(168,85,247,.3);border-radius:10px;color:#e2e8f0;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.battle-npc-random:hover:not(:disabled){background:linear-gradient(135deg,#a855f740,#ec489933);border-color:#a855f780}.battle-npc-random:disabled{opacity:.4;cursor:not-allowed}.battle-npc-random-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#a855f733;font-size:1.2rem;font-weight:700;color:#c084fc}.battle-npc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.battle-npc-card{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:#e2e8f0;cursor:pointer;transition:all .2s ease}.battle-npc-card:hover:not(:disabled){background:#ffffff14;border-color:#ffffff26}.battle-npc-card:disabled{opacity:.4;cursor:not-allowed}.battle-npc-info{display:flex;flex-direction:column;min-width:0}.battle-npc-name{font-size:.75rem;font-weight:600;color:#e2e8f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.battle-npc-detail{font-size:.6rem;color:#fff6}.battle-npc-badge{display:inline-block;margin-left:6px;padding:1px 6px;font-size:.55rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;background:#a855f733;border:1px solid rgba(168,85,247,.3);border-radius:4px;color:#c084fc;vertical-align:middle}.battle-challenge-section{display:flex;flex-direction:column;gap:6px}.battle-challenge-label{font-size:.75rem;font-weight:600;color:#fff6;text-transform:uppercase;letter-spacing:.5px}.battle-challenge-input-row{display:flex;gap:6px}.battle-challenge-input{flex:1;padding:8px 10px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#e2e8f0;font-size:.85rem}.battle-challenge-input::placeholder{color:#ffffff40}.battle-challenge-send{padding:8px 14px;background:#6366f133;border:1px solid rgba(99,102,241,.3);border-radius:8px;color:#818cf8;font-weight:600;font-size:.8rem;cursor:pointer;transition:all .2s}.battle-challenge-send:hover{background:#6366f14d}.battle-challenge-send:disabled{opacity:.3;cursor:default}.battle-pending-section{display:flex;flex-direction:column;gap:6px}.battle-section-label{font-size:.7rem;font-weight:600;color:#ffffff59;text-transform:uppercase;letter-spacing:.5px}.battle-challenge-row{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#ffffff08;border-radius:8px;font-size:.85rem;color:#fff9}.battle-challenge-incoming{background:#6366f114;border:1px solid rgba(99,102,241,.15)}.battle-challenge-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.battle-challenge-from{font-weight:600;color:#e2e8f0;font-size:.85rem}.battle-challenge-detail{font-size:.7rem;color:#fff6}.battle-challenge-actions{display:flex;gap:4px}.battle-accept-btn{padding:4px 12px;background:#4ade8026;border:1px solid rgba(74,222,128,.3);border-radius:6px;color:#4ade80;font-weight:600;font-size:.75rem;cursor:pointer;transition:all .2s}.battle-accept-btn:hover{background:#4ade8040}.battle-decline-btn{padding:4px 12px;background:#f871711a;border:1px solid rgba(248,113,113,.2);border-radius:6px;color:#f87171;font-weight:600;font-size:.75rem;cursor:pointer;transition:all .2s}.battle-decline-btn:hover{background:#f8717133}.battle-live-row{display:flex;align-items:center;gap:6px;padding:8px 10px;background:#ffffff08;border-radius:8px;cursor:pointer;font-size:.8rem;color:#fff9;transition:background .2s}.battle-live-row:hover{background:#ffffff0f}.battle-vs{color:#ffffff4d;font-weight:700;font-size:.7rem}.battle-live-badge{margin-left:auto;padding:2px 6px;background:#ef444433;border:1px solid rgba(239,68,68,.4);border-radius:4px;color:#ef4444;font-size:.6rem;font-weight:700;letter-spacing:.5px;animation:pulse 2s infinite}.battle-arena{display:flex;flex-direction:column;gap:0;background:linear-gradient(180deg,#1a1a2e,#16213e,#0f3460);border-radius:12px;border:2px solid rgba(255,255,255,.08);overflow:hidden;position:relative}.battle-arena-wrap{display:flex;flex-direction:column;gap:8px;padding:12px;overflow-y:auto;flex:1}.battle-combatant{display:flex;align-items:center;gap:10px;padding:10px 12px}.battle-opponent{flex-direction:row}.battle-self{flex-direction:row-reverse}.battle-sprite-area{flex-shrink:0;position:relative}.battle-sprite{transition:transform .15s}.battle-sprite.battle-sprite-hit{animation:spriteHit .3s ease-in-out}.battle-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.battle-name-row{display:flex;align-items:baseline;gap:6px}.battle-pokemon-name{font-weight:700;font-size:.9rem;color:#e2e8f0}.battle-level{font-size:.7rem;color:#ffffff73;font-weight:600}.battle-trainer-name{font-size:.7rem;color:#ffffff4d}.battle-hp-bar-wrap{height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden}.battle-hp-bar{height:100%;border-radius:4px;transition:width .6s ease,background-color .3s}.battle-hp-text{font-size:.65rem;color:#fff6;font-family:monospace;text-align:right}.battle-status-bar{display:flex;justify-content:space-between;padding:6px 12px;font-size:.75rem;color:#ffffff80;border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05)}.battle-timer{font-weight:700;font-family:monospace}.battle-timer-low{color:#ef4444;animation:timerPulse .5s infinite}.battle-timer-bar-wrap{height:3px;background:#ffffff0d}.battle-timer-bar{height:100%;background:#fbbf24;transition:width 1s linear}.battle-timer-bar-low{background:#ef4444}.battle-moves{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:8px 12px}.battle-move-btn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:8px;cursor:pointer;transition:all .2s;text-align:left}.battle-move-btn:hover{background:#ffffff14;transform:translateY(-1px)}.battle-move-name{font-weight:700;font-size:.8rem;color:#e2e8f0}.battle-move-type{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.battle-move-power{font-size:.6rem;color:#ffffff59}.battle-waiting{grid-column:1 / -1;text-align:center;padding:16px;color:#fff6;font-size:.85rem;animation:pulse 2s infinite}.battle-spectating{text-align:center;padding:8px;font-size:.75rem;color:#ffffff59;text-transform:uppercase;letter-spacing:1px;font-weight:600}.battle-log{max-height:120px;overflow-y:auto;padding:8px 12px;border-top:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;gap:6px}.battle-log-empty{text-align:center;color:#ffffff4d;font-size:.8rem;padding:8px}.battle-log-turn{display:flex;flex-direction:column;gap:2px}.battle-log-turn-header{font-size:.6rem;font-weight:700;color:#ffffff40;text-transform:uppercase;letter-spacing:.5px}.battle-log-event{font-size:.75rem;color:#ffffff8c;line-height:1.4}.battle-log-dmg{color:#f87171;font-weight:600}.battle-log-eff{font-weight:600}.battle-log-eff.eff-super{color:#4ade80}.battle-log-eff.eff-not-very{color:#94a3b8}.battle-log-eff.eff-immune{color:#64748b}.battle-log-ko{color:#ef4444;font-weight:700}.battle-forfeit-btn{margin:4px 12px 8px;padding:6px 12px;background:#f871711a;border:1px solid rgba(248,113,113,.2);border-radius:6px;color:#f87171;font-size:.7rem;font-weight:600;cursor:pointer;transition:all .2s;align-self:center}.battle-forfeit-btn:hover{background:#f8717133}.battle-result{padding:20px 12px;text-align:center;border-top:1px solid rgba(255,255,255,.05)}.battle-result-title{font-size:1.4rem;font-weight:800;margin-bottom:4px}.battle-result-win .battle-result-title{color:#fbbf24;text-shadow:0 0 12px rgba(251,191,36,.5)}.battle-result-lose .battle-result-title{color:#94a3b8}.battle-result-draw .battle-result-title{color:#64748b}.battle-result-subtitle{font-size:.8rem;color:#ffffff80}.battle-back-btn{padding:8px 20px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff9;font-size:.8rem;font-weight:600;cursor:pointer;align-self:center;transition:all .2s}.battle-back-btn:hover{background:#ffffff1a}.battle-no-battle{text-align:center;padding:40px 20px;color:#fff6;font-size:.85rem}.battle-history{display:flex;flex-direction:column;gap:4px;padding:12px;overflow-y:auto;flex:1}.battle-no-history{text-align:center;padding:40px 20px;color:#ffffff59;font-size:.85rem}.battle-history-row{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;cursor:pointer;transition:background .2s;border-left:3px solid transparent}.battle-history-row:hover{background:#ffffff0a}.battle-history-win{border-left-color:#4ade80}.battle-history-loss{border-left-color:#f87171}.battle-history-draw{border-left-color:#64748b}.battle-history-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.battle-history-opponent{font-size:.85rem;font-weight:600;color:#e2e8f0}.battle-history-pokemon{font-size:.7rem;color:#fff6}.battle-history-result{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.battle-history-badge{padding:2px 8px;border-radius:4px;font-size:.65rem;font-weight:700;letter-spacing:.5px}.battle-history-badge.win{background:#4ade8026;color:#4ade80}.battle-history-badge.loss{background:#f871711a;color:#f87171}.battle-history-badge.draw{background:#64748b26;color:#94a3b8}.battle-history-turns{font-size:.6rem;color:#ffffff4d}.battle-challenge-toast{position:fixed;top:12px;right:12px;z-index:9999;animation:slideInRight .3s ease-out}.battle-challenge-toast-inner{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#1e1e3cf2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(99,102,241,.4);border-radius:12px;box-shadow:0 4px 20px #0006,0 0 0 1px #6366f133;max-width:340px}.battle-challenge-toast-text{flex:1;font-size:.85rem;color:#e2e8f0}.battle-challenge-toast-detail{font-size:.7rem;color:#fff6;margin-top:2px}.battle-challenge-toast-actions{display:flex;gap:4px;flex-shrink:0}@keyframes spriteHit{0%,to{transform:translate(0)}20%{transform:translate(-5px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}@keyframes timerPulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media(max-width:768px){.battle-moves{grid-template-columns:1fr 1fr;gap:4px;padding:6px 8px}.battle-move-btn{padding:6px 8px}.battle-move-name{font-size:.75rem}.battle-combatant{padding:8px;gap:8px}.battle-challenge-toast{top:8px;right:8px;left:8px}.battle-challenge-toast-inner{max-width:none}}.evo-modal-backdrop{position:fixed;inset:0;z-index:999;background:#000000a6;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease}.evo-modal-backdrop.evo-animating{background:#000000d9}.evo-modal{background:var(--bg-card, #1e1e2e);border-radius:16px;width:95%;max-width:380px;max-height:85vh;overflow-y:auto;padding:20px;box-shadow:0 16px 48px #00000080}.evo-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.evo-modal-header h3{margin:0;font-size:1.1rem;color:var(--text-primary, #e2e8f0)}.evo-close-btn{background:none;border:none;color:var(--text-muted, #94a3b8);font-size:1.4rem;cursor:pointer;padding:4px 8px;border-radius:6px}.evo-close-btn:hover{background:var(--bg-hover, #2a2a3e)}.evo-current{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg-surface, #16161e);border-radius:12px}.evo-current-info{display:flex;flex-direction:column;gap:2px}.evo-current-name{font-weight:600;color:var(--text-primary, #e2e8f0);font-size:1rem}.evo-current-level{font-size:.8rem;color:var(--text-muted, #94a3b8)}.evo-arrow{text-align:center;font-size:1.4rem;color:var(--text-muted, #94a3b8);margin:8px 0;animation:evoArrowBounce 1s infinite}@keyframes evoArrowBounce{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}.evo-options{display:flex;flex-direction:column;gap:8px}.evo-option{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;border:1.5px solid var(--border-light, #333);background:var(--bg-surface, #16161e);cursor:pointer;transition:all .15s}.evo-option:hover:not(:disabled){border-color:#a855f7;background:#a855f710}.evo-eligible{border-color:#a855f766}.evo-locked{opacity:.55;cursor:default}.evo-option-info{flex:1;display:flex;flex-direction:column;gap:2px}.evo-option-name{font-weight:600;color:var(--text-primary, #e2e8f0);font-size:.95rem}.evo-option-req{font-size:.75rem;color:var(--text-muted, #94a3b8)}.evo-option-req.evo-req-met{color:#4ade80}.evo-option-item{font-size:.7rem;color:#c084fc;background:#a855f715;padding:2px 8px;border-radius:6px;white-space:nowrap}.evo-none{text-align:center;color:var(--text-muted, #94a3b8);padding:20px;font-size:.9rem}.evo-animation-stage{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;min-height:300px}.evo-sprite{position:relative;display:flex;align-items:center;justify-content:center}.evo-phase1{animation:evoPulse .5s ease-in-out infinite alternate;filter:brightness(1.3) drop-shadow(0 0 20px rgba(255,255,255,.6))}@keyframes evoPulse{0%{transform:scale(1);filter:brightness(1.3) drop-shadow(0 0 20px rgba(255,255,255,.3))}to{transform:scale(1.08);filter:brightness(1.8) drop-shadow(0 0 40px rgba(255,255,255,.8))}}.evo-phase2{animation:evoFlashIn 1s ease-in-out forwards}.evo-flash{width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,white 0%,rgba(168,85,247,.3) 60%,transparent 100%);animation:evoFlashPulse 1s ease-in-out}@keyframes evoFlashIn{0%{opacity:0;transform:scale(.5)}30%{opacity:1;transform:scale(1.2)}70%{opacity:1;transform:scale(1)}to{opacity:.8;transform:scale(.9)}}@keyframes evoFlashPulse{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.5)}to{opacity:0;transform:scale(2)}}.evo-phase3{animation:evoReveal 1.5s ease-out forwards}@keyframes evoReveal{0%{opacity:0;transform:scale(.5);filter:brightness(3)}40%{opacity:1;transform:scale(1.15);filter:brightness(1.5)}to{opacity:1;transform:scale(1);filter:brightness(1)}}.evo-sparkle{position:absolute;opacity:0;animation:evoSpark 1.2s ease-out forwards;color:#fbbf24}.evo-sparkle-0{top:-20px;left:50%;animation-delay:0s}.evo-sparkle-1{top:10%;right:-10px;animation-delay:.1s}.evo-sparkle-2{bottom:-15px;left:30%;animation-delay:.2s}.evo-sparkle-3{top:20%;left:-15px;animation-delay:.15s}.evo-sparkle-4{bottom:10%;right:-5px;animation-delay:.25s}.evo-sparkle-5{top:-10px;left:20%;animation-delay:.3s}.evo-sparkle-6{bottom:-10px;right:25%;animation-delay:.05s}.evo-sparkle-7{top:40%;left:-20px;animation-delay:.35s}.evo-sparkle-8{top:5%;right:15%;animation-delay:.12s}.evo-sparkle-9{bottom:5%;left:10%;animation-delay:.22s}@keyframes evoSpark{0%{opacity:0;transform:scale(0) translateY(0)}30%{opacity:1;transform:scale(1.2) translateY(-10px)}to{opacity:0;transform:scale(.5) translateY(-30px)}}.evo-congrats{text-align:center;animation:fadeIn .5s ease}.evo-congrats h3{color:#c084fc;font-size:1.1rem;margin:0;text-shadow:0 0 20px rgba(168,85,247,.4)}.evo-text{color:var(--text-muted, #94a3b8);font-size:.9rem;text-align:center;min-height:24px;animation:fadeIn .3s ease}.pal-extra-section{display:flex;flex-direction:column;gap:10px;margin-top:12px}.pal-evo-row{display:flex;justify-content:center}.pal-evo-btn{display:flex;align-items:center;gap:8px;padding:10px 24px;border-radius:12px;font-weight:600;font-size:.9rem;border:1.5px solid #a855f744;background:linear-gradient(135deg,#a855f715,#7c3aed10);color:#c084fc;cursor:pointer;transition:all .2s;position:relative;overflow:hidden}.pal-evo-btn:hover{border-color:#a855f7;background:#a855f720}.pal-evo-ready{border-color:#a855f7;background:linear-gradient(135deg,#a855f725,#7c3aed20);animation:evoGlowPulse 2s infinite}@keyframes evoGlowPulse{0%,to{box-shadow:0 0 8px #a855f733}50%{box-shadow:0 0 20px #a855f780}}.pal-evo-glow{position:absolute;inset:0;border-radius:12px;background:linear-gradient(45deg,transparent,rgba(168,85,247,.15),transparent);animation:evoShine 3s infinite}@keyframes evoShine{0%{transform:translate(-100%)}50%,to{transform:translate(100%)}}.pal-items-row{padding:0 4px}.pal-section-title{font-size:.75rem;color:var(--text-muted, #94a3b8);text-transform:uppercase;letter-spacing:.05em;margin:0 0 6px}.pal-items-list{display:flex;flex-wrap:wrap;gap:6px}.pal-item-badge{font-size:.75rem;padding:3px 10px;border-radius:8px;background:var(--bg-surface, #16161e);color:#c084fc;border:1px solid #a855f733}.pal-moves-section{border-radius:10px;overflow:hidden;border:1px solid var(--border-light, #333)}.pal-moves-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;border:none;background:var(--bg-surface, #16161e);color:var(--text-primary, #e2e8f0);font-weight:600;font-size:.85rem;cursor:pointer;transition:background .15s}.pal-moves-toggle:hover{background:var(--bg-hover, #1e1e2e)}.pal-moves-count{font-size:.7rem;background:var(--bg-hover, #2a2a3e);padding:1px 7px;border-radius:10px;color:var(--text-muted, #94a3b8);margin-left:auto}.pal-toggle-arrow{transition:transform .2s;font-size:.85rem;color:var(--text-muted, #94a3b8)}.pal-toggle-arrow.open{transform:rotate(90deg)}.pal-moves-content{padding:10px 12px;display:flex;flex-direction:column;gap:12px;background:var(--bg-card, #1e1e2e)}.pal-moves-subtitle{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted, #94a3b8);margin:0 0 6px}.pal-move-list{display:flex;flex-wrap:wrap;gap:6px}.pal-move-chip{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:8px;font-size:.75rem;background:var(--bg-surface, #16161e);border:1px solid var(--border-light, #333);color:var(--text-primary, #e2e8f0)}.pal-move-chip.pal-move-learned{border-color:#fbbf2444}.pal-move-name{font-weight:600}.pal-move-power{font-size:.65rem;color:var(--text-muted, #94a3b8);background:var(--bg-hover, #2a2a3e);padding:1px 5px;border-radius:4px}.pal-move-cat{font-size:.6rem;color:var(--text-muted, #94a3b8);font-weight:700;opacity:.7}.pal-move-chip[data-type=fire]{border-left:3px solid #f59e0b}.pal-move-chip[data-type=water]{border-left:3px solid #3b82f6}.pal-move-chip[data-type=grass]{border-left:3px solid #22c55e}.pal-move-chip[data-type=electric]{border-left:3px solid #eab308}.pal-move-chip[data-type=ice]{border-left:3px solid #67e8f9}.pal-move-chip[data-type=fighting]{border-left:3px solid #ef4444}.pal-move-chip[data-type=poison]{border-left:3px solid #a855f7}.pal-move-chip[data-type=ground]{border-left:3px solid #d97706}.pal-move-chip[data-type=flying]{border-left:3px solid #818cf8}.pal-move-chip[data-type=psychic]{border-left:3px solid #ec4899}.pal-move-chip[data-type=bug]{border-left:3px solid #84cc16}.pal-move-chip[data-type=rock]{border-left:3px solid #a8a29e}.pal-move-chip[data-type=ghost]{border-left:3px solid #7c3aed}.pal-move-chip[data-type=dragon]{border-left:3px solid #6366f1}.pal-move-chip[data-type=dark]{border-left:3px solid #57534e}.pal-move-chip[data-type=steel]{border-left:3px solid #9ca3af}.pal-move-chip[data-type=fairy]{border-left:3px solid #f472b6}.pal-move-chip[data-type=normal]{border-left:3px solid #78716c}.pal-move-learn-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;background:var(--bg-surface, #16161e);border:1px solid var(--border-light, #333)}.pal-move-learn-row.pal-move-already{opacity:.5}.pal-move-learn-info{flex:1;display:flex;align-items:center;gap:4px;font-size:.75rem;color:var(--text-primary, #e2e8f0)}.pal-move-learn-info[data-type=fire]{border-left:3px solid #f59e0b;padding-left:6px}.pal-move-learn-info[data-type=water]{border-left:3px solid #3b82f6;padding-left:6px}.pal-move-learn-info[data-type=grass]{border-left:3px solid #22c55e;padding-left:6px}.pal-move-learn-info[data-type=electric]{border-left:3px solid #eab308;padding-left:6px}.pal-move-learn-info[data-type=ice]{border-left:3px solid #67e8f9;padding-left:6px}.pal-move-learn-info[data-type=fighting]{border-left:3px solid #ef4444;padding-left:6px}.pal-move-learn-info[data-type=poison]{border-left:3px solid #a855f7;padding-left:6px}.pal-move-learn-info[data-type=ground]{border-left:3px solid #d97706;padding-left:6px}.pal-move-learn-info[data-type=flying]{border-left:3px solid #818cf8;padding-left:6px}.pal-move-learn-info[data-type=psychic]{border-left:3px solid #ec4899;padding-left:6px}.pal-move-learn-info[data-type=bug]{border-left:3px solid #84cc16;padding-left:6px}.pal-move-learn-info[data-type=rock]{border-left:3px solid #a8a29e;padding-left:6px}.pal-move-learn-info[data-type=ghost]{border-left:3px solid #7c3aed;padding-left:6px}.pal-move-learn-info[data-type=dragon]{border-left:3px solid #6366f1;padding-left:6px}.pal-move-learn-info[data-type=dark]{border-left:3px solid #57534e;padding-left:6px}.pal-move-learn-info[data-type=steel]{border-left:3px solid #9ca3af;padding-left:6px}.pal-move-learn-info[data-type=fairy]{border-left:3px solid #f472b6;padding-left:6px}.pal-move-learn-info[data-type=normal]{border-left:3px solid #78716c;padding-left:6px}.pal-move-learn-req{font-size:.65rem;color:var(--text-muted, #94a3b8);white-space:nowrap}.pal-move-known-badge{font-size:.65rem;color:#4ade80;padding:2px 8px;background:#4ade8015;border-radius:6px}.pal-move-learn-btn{display:flex;align-items:center;gap:4px;padding:3px 10px;border-radius:6px;font-size:.7rem;font-weight:600;border:1px solid #fbbf2444;background:#fbbf2410;color:#fbbf24;cursor:pointer;transition:all .15s}.pal-move-learn-btn:hover:not(:disabled){background:#fbbf2425;border-color:#fbbf24}.pal-move-learn-btn:disabled{opacity:.4;cursor:default}.npc-difficulty-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:6px;font-size:.7rem;font-weight:600;border:1px solid currentColor}.npc-difficulty-easy{color:#4ade80;background:#4ade8010}.npc-difficulty-medium{color:#fbbf24;background:#fbbf2410}.npc-difficulty-hard{color:#f97316;background:#f9731610}.npc-difficulty-boss{color:#ef4444;background:#ef444410}
