:root{--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-primary-text: #ffffff;--color-secondary: #f1f5f9;--color-secondary-hover: #e2e8f0;--color-secondary-text: #475569;--color-accent: #6366f1;--color-accent-hover: #4f46e5;--color-success: #22c55e;--color-success-hover: #16a34a;--color-warning: #f59e0b;--color-warning-hover: #d97706;--color-danger: #ef4444;--color-danger-hover: #dc2626;--color-text-primary: #1e293b;--color-text-secondary: #64748b;--color-text-muted: #94a3b8;--color-surface: #ffffff;--color-surface-hover: #f8fafc;--color-surface-border: #e2e8f0}:root{--theme-bg-primary: #f8fafc;--theme-bg-secondary: #f1f5f9;--theme-bg-tertiary: #e2e8f0;--theme-bg-muted: #94a3b8;--theme-surface: #ffffff;--theme-surface-hover: #f8fafc;--theme-surface-raised: #ffffff;--theme-surface-overlay: rgba(255, 255, 255, .8);--theme-border: #e2e8f0;--theme-border-subtle: #f1f5f9;--theme-border-strong: #cbd5e1;--theme-text-primary: #0f172a;--theme-text-secondary: #475569;--theme-text-tertiary: #64748b;--theme-text-muted: #94a3b8;--theme-text-inverse: #ffffff;--theme-input-bg: #ffffff;--theme-input-border: #cbd5e1;--theme-input-focus-ring: #3b82f6;--theme-scrollbar-thumb: #cbd5e1;--theme-scrollbar-thumb-hover: #94a3b8;--theme-scrollbar-track: transparent;--theme-backdrop: rgba(15, 23, 42, .5);--theme-toggle-inactive: #cbd5e1;--theme-divider: #e2e8f0;--theme-code-bg: #f1f5f9}body{margin:0;background-color:var(--theme-bg-primary);color:var(--theme-text-primary);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--theme-scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--theme-scrollbar-thumb);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--theme-scrollbar-thumb-hover)}.custom-scrollbar::-webkit-scrollbar-thumb{background:#fff3}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.btn-primary{background-color:var(--color-primary);color:var(--color-primary-text)}.btn-primary:hover{background-color:var(--color-primary-hover)}.btn-secondary{background-color:var(--color-secondary);color:var(--color-secondary-text)}.btn-secondary:hover{background-color:var(--color-secondary-hover)}.btn-success{background-color:var(--color-success);color:#fff}.btn-success:hover{background-color:var(--color-success-hover)}.btn-warning{background-color:var(--color-warning);color:#fff}.btn-warning:hover{background-color:var(--color-warning-hover)}.btn-danger{background-color:var(--color-danger);color:#fff}.btn-danger:hover{background-color:var(--color-danger-hover)}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.bg-surface{background-color:var(--color-surface)}.bg-surface-hover:hover{background-color:var(--color-surface-hover)}.border-surface{border-color:var(--color-surface-border)}.focus-ring:focus{outline:none;box-shadow:0 0 0 2px var(--color-accent)}.text-accent{color:var(--color-accent)}.text-accent:hover{color:var(--color-accent-hover)}.t-bg-primary{background-color:var(--theme-bg-primary)}.t-bg-secondary{background-color:var(--theme-bg-secondary)}.t-bg-tertiary{background-color:var(--theme-bg-tertiary)}.t-bg-surface{background-color:var(--theme-surface)}.t-bg-surface-hover{background-color:var(--theme-surface-hover)}.t-bg-surface-raised{background-color:var(--theme-surface-raised)}.t-bg-surface-overlay{background-color:var(--theme-surface-overlay)}.t-bg-muted{background-color:var(--theme-bg-muted)}.t-bg-input{background-color:var(--theme-input-bg)}.t-bg-code{background-color:var(--theme-code-bg)}.hover\:t-bg-surface-hover:hover{background-color:var(--theme-surface-hover)}.hover\:t-bg-secondary:hover{background-color:var(--theme-bg-secondary)}.hover\:t-bg-tertiary:hover{background-color:var(--theme-bg-tertiary)}.t-text-primary{color:var(--theme-text-primary)}.t-text-secondary{color:var(--theme-text-secondary)}.t-text-tertiary{color:var(--theme-text-tertiary)}.t-text-muted{color:var(--theme-text-muted)}.t-text-inverse{color:var(--theme-text-inverse)}.t-border{border-color:var(--theme-border)}.t-border-subtle{border-color:var(--theme-border-subtle)}.t-border-strong{border-color:var(--theme-border-strong)}.t-border-input{border-color:var(--theme-input-border)}.t-divider{border-color:var(--theme-divider)}.hover\:t-border:hover{border-color:var(--theme-border)}.hover\:t-border-strong:hover{border-color:var(--theme-border-strong)}.hover\:t-text-primary:hover{color:var(--theme-text-primary)}.hover\:t-text-secondary:hover{color:var(--theme-text-secondary)}.t-decoration-muted{text-decoration-color:var(--theme-text-muted)}.t-backdrop{background-color:var(--theme-backdrop)}.t-toggle-inactive{background-color:var(--theme-toggle-inactive)}.btn-expand{display:flex;align-items:center;transition:all .2s ease;position:relative;isolation:isolate}.btn-expand>.btn-expand-text{max-width:0;overflow:hidden;white-space:nowrap;transition:max-width .2s ease,margin-left .2s ease;pointer-events:none}.btn-expand:hover>.btn-expand-text{max-width:80px;margin-left:.5rem}.active-game-pulse{animation:active-game-ping 1.5s cubic-bezier(0,0,.2,1) infinite;box-shadow:0 0 #facc15b3}@keyframes chatBadgeBounce{0%,to{transform:translateY(0)}30%{transform:translateY(-5px)}50%{transform:translateY(-2px)}70%{transform:translateY(-3px)}}@keyframes chatBadgeFadeIn{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}@keyframes active-game-ping{0%{box-shadow:0 0 #facc15b3;opacity:1}70%{box-shadow:0 0 0 6px #facc1500;opacity:1}to{box-shadow:0 0 #facc1500;opacity:.8}}.cosmic-button-wrap{--transition: .25s;--spark: 1.8s;--hue: 245;position:relative;display:inline-flex}.cosmic-button{--cut: .1em;--active: 0;--bg: radial-gradient( 120% 120% at 126% 126%, hsl(var(--hue) calc(var(--active) * 97%) 98% / calc(var(--active) * .9)) 40%, transparent 50% ) calc(100px - (var(--active) * 100px)) 0 / 100% 100% no-repeat, radial-gradient( 120% 120% at 120% 120%, hsl(var(--hue) calc(var(--active) * 97%) 70% / calc(var(--active) * 1)) 30%, transparent 70% ) calc(100px - (var(--active) * 100px)) 0 / 100% 100% no-repeat, hsl(var(--hue) calc(var(--active) * 100%) calc(12% - (var(--active) * 8%)));background:var(--bg);font-size:1.1rem;font-weight:600;border:0;cursor:pointer;padding:.7em 1.4em;display:flex;align-items:center;gap:.4em;white-space:nowrap;border-radius:2rem;position:relative;box-shadow:0 0 calc(var(--active) * 6em) calc(var(--active) * 3em) hsl(var(--hue) 97% 61% / .5),0 .05em hsl(var(--hue) calc(var(--active) * 97%) calc((var(--active) * 50%) + 30%)) inset,0 -.05em hsl(var(--hue) calc(var(--active) * 97%) calc(var(--active) * 10%)) inset;transition:box-shadow var(--transition),scale var(--transition),background var(--transition);scale:calc(1 + (var(--active) * .1));transform-style:preserve-3d;perspective:100vmin;overflow:hidden}.cosmic-button:active{scale:1}.cosmic-button:is(:hover,:focus-visible){--active: 1;--play-state: running}.cosmic-star{height:calc(var(--size) * 1px);aspect-ratio:1;background:#fff;border-radius:50%;position:absolute;opacity:var(--alpha);top:50%;left:50%;transform:translate(-50%,-50%) rotate(10deg) rotate(0) translateY(calc(var(--distance) * 1px));animation:cosmic-orbit calc(var(--duration) * 1s) calc(var(--delay) * -1s) infinite linear}@keyframes cosmic-orbit{to{transform:translate(-50%,-50%) rotate(10deg) rotate(360deg) translateY(calc(var(--distance) * 1px))}}.cosmic-galaxy{position:absolute;width:100%;aspect-ratio:1;top:50%;left:50%;translate:-50% -50%;overflow:hidden;opacity:var(--active);transition:opacity var(--transition)}.cosmic-galaxy__ring{height:200%;width:200%;position:absolute;top:50%;left:50%;border-radius:50%;transform:translate(-28%,-40%) rotateX(-24deg) rotateY(-30deg) rotateX(90deg);transform-style:preserve-3d}.cosmic-galaxy__container{position:absolute;top:0;right:0;bottom:0;left:0;opacity:var(--active);transition:opacity var(--transition);mask:radial-gradient(white,transparent)}.cosmic-star--static{animation:none;top:50%;left:50%;transform:translate(0);max-height:4px;filter:brightness(4);opacity:.9;animation:cosmic-move-x calc(var(--duration) * .1s) calc(var(--delay) * -.1s) infinite linear,cosmic-move-y calc(var(--duration) * .2s) calc(var(--delay) * -.2s) infinite linear}.cosmic-button:hover .cosmic-star--static{animation-play-state:paused}@keyframes cosmic-move-x{0%{translate:-100px 0}to{translate:100px 0}}@keyframes cosmic-move-y{0%{transform:translateY(-50px)}to{transform:translateY(50px)}}.cosmic-spark{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:2rem;rotate:0deg;overflow:hidden;mask:linear-gradient(white,transparent 50%);animation:cosmic-flip calc(var(--spark) * 2) infinite steps(2,end)}@keyframes cosmic-flip{to{rotate:360deg}}.cosmic-spark:before{content:"";position:absolute;width:200%;aspect-ratio:1;top:0%;left:50%;z-index:-1;translate:-50% -15%;rotate:0;transform:rotate(-90deg);opacity:calc(var(--active) + .4);background:conic-gradient(from 0deg,transparent 0 340deg,white 360deg);transition:opacity var(--transition);animation:cosmic-rotate var(--spark) linear infinite both}.cosmic-spark:after{content:"";position:absolute;inset:var(--cut);border-radius:2rem}.cosmic-backdrop{position:absolute;inset:var(--cut);background:var(--bg);border-radius:2rem;transition:background var(--transition)}@keyframes cosmic-rotate{to{transform:rotate(90deg)}}.cosmic-text{translate:2% -6%;letter-spacing:.01ch;color:#fff;position:relative;z-index:1;display:flex;align-items:center;gap:.4em}.cosmic-text svg{inline-size:1.25em;translate:-10% -2%}
