:root{color-scheme:dark;--bg-base: #07050f;--bg-1: #0d0a1a;--bg-2: #14102a;--bg-3: #1c1738;--bg-4: #261f4a;--glass-k: 1;--glass-alpha: calc(62% * var(--glass-k));--glass-blur: calc(22px * var(--glass-k));--glass-sat: 1.7;--surface: color-mix(in srgb, var(--bg-2) var(--glass-alpha), transparent);--surface-strong: color-mix(in srgb, var(--bg-2) calc(var(--glass-alpha) + 20%), transparent);--surface-soft: color-mix(in srgb, var(--bg-3) 38%, transparent);--surface-hover: color-mix(in srgb, #c9b8ff 8%, transparent);--surface-press: color-mix(in srgb, #c9b8ff 13%, transparent);--stroke: color-mix(in srgb, #c9b8ff 14%, transparent);--stroke-strong: color-mix(in srgb, #c9b8ff 24%, transparent);--stroke-faint: color-mix(in srgb, #c9b8ff 7%, transparent);--specular: inset 0 1px 0 rgba(255, 255, 255, .12), inset 1px 0 0 rgba(255, 255, 255, .05);--accent: #a78bfa;--accent-2: #7c3aed;--accent-glow: color-mix(in srgb, var(--accent) 60%, transparent);--accent-soft: color-mix(in srgb, var(--accent) 16%, transparent);--accent-ink: #1a0b3a;--on-accent: #fff;--text: #f4f1ff;--text-2: #d9d3f0;--muted: #a9a3c2;--muted-2: #6f6a8a;--ok: #6ee7b7;--warn: #fcd34d;--danger: #fb7185;--tl-close: #ff5f57;--tl-min: #febc2e;--tl-zoom: #28c840;--rarity-common: #b8b3cf;--rarity-rare: #7dd3fc;--rarity-epic: #c084fc;--rarity-legendary: #fbbf24;--radius-xl: 22px;--radius-lg: 16px;--radius: 12px;--radius-sm: 8px;--radius-pill: 999px;--ease-spring: cubic-bezier(.2, .9, .25, 1.2);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.5, 0, .75, 0);--dur-fast: .18s;--dur: .24s;--dur-slow: .42s;--shadow-sm: 0 1px 2px rgba(3, 1, 10, .4), 0 4px 12px rgba(3, 1, 10, .25);--shadow: 0 8px 24px rgba(3, 1, 10, .4), 0 24px 60px -12px rgba(3, 1, 10, .55);--shadow-lg: 0 24px 80px -8px rgba(3, 1, 10, .7), 0 8px 24px rgba(3, 1, 10, .4);--glow: 0 0 0 1px color-mix(in srgb, var(--accent) 40%, transparent), 0 0 24px -2px var(--accent-glow);--font-display: "Inter Tight", "SF Pro Display", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font: "Inter", "SF Pro Text", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", ui-monospace, Menlo, monospace;--menubar-h: 36px;--guestbar-h: 0px;--chrome-top: calc(var(--menubar-h) + var(--guestbar-h));--dock-size: 52px;--dock-pad: 8px;--dock-h: calc(var(--dock-size) + var(--dock-pad) * 2);--dock-gap: 14px;--page-pad: clamp(16px, 3.2vw, 44px);--mx: 50vw;--my: 40vh;--window-tint: transparent}:root[data-theme=light]{color-scheme:light;--bg-base: #efeaff;--bg-1: #f6f3ff;--bg-2: #fbf9ff;--bg-3: #ffffff;--bg-4: #ece6ff;--glass-alpha: calc(58% * var(--glass-k));--surface: color-mix(in srgb, #ffffff var(--glass-alpha), transparent);--surface-strong: color-mix(in srgb, #ffffff calc(var(--glass-alpha) + 22%), transparent);--surface-soft: color-mix(in srgb, #ffffff 42%, transparent);--surface-hover: color-mix(in srgb, #5b3fb8 7%, transparent);--surface-press: color-mix(in srgb, #5b3fb8 12%, transparent);--stroke: color-mix(in srgb, #4c2a99 14%, transparent);--stroke-strong: color-mix(in srgb, #4c2a99 24%, transparent);--stroke-faint: color-mix(in srgb, #4c2a99 7%, transparent);--specular: inset 0 1px 0 rgba(255, 255, 255, .9), inset 1px 0 0 rgba(255, 255, 255, .5);--accent-ink: #f5f0ff;--text: #1d1433;--text-2: #332852;--muted: #625a80;--muted-2: #938bb0;--shadow-sm: 0 1px 2px rgba(60, 30, 130, .08), 0 4px 12px rgba(60, 30, 130, .08);--shadow: 0 8px 24px rgba(60, 30, 130, .12), 0 24px 60px -12px rgba(60, 30, 130, .2);--shadow-lg: 0 24px 80px -8px rgba(60, 30, 130, .3), 0 8px 24px rgba(60, 30, 130, .12);--rarity-common: #6b6585;--rarity-rare: #0284c7;--rarity-epic: #9333ea;--rarity-legendary: #d97706}@media(max-width:720px){:root{--menubar-h: 44px;--page-pad: 16px}}*,*:before,*:after{box-sizing:border-box}html,body{height:100%;margin:0}html{background:var(--bg-base);-webkit-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font);font-size:14px;line-height:1.5;color:var(--text);background:var(--bg-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11","ss01","ss03";overflow:hidden;overscroll-behavior:none}h1,h2,h3,h4{font-family:var(--font-display);font-weight:650;letter-spacing:-.022em;line-height:1.15;margin:0;color:var(--text)}h1{font-size:clamp(28px,3.4vw,44px);letter-spacing:-.035em}h2{font-size:20px}h3{font-size:16px}p{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0;padding:0}img,video,canvas,svg{display:block}svg.icon{flex:none}input::placeholder,textarea::placeholder{color:var(--muted-2)}::selection{background:color-mix(in srgb,var(--accent) 38%,transparent);color:var(--text)}:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 80%,transparent);outline-offset:2px;border-radius:6px}.num,.tabular{font-variant-numeric:tabular-nums}.mono{font-family:var(--font-mono)}.muted{color:var(--muted)}.dim{color:var(--muted-2)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}[hidden]{display:none!important}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--text) 18%,transparent) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text) 16%,transparent);border-radius:10px;border:3px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background-color:color-mix(in srgb,var(--text) 28%,transparent)}::-webkit-scrollbar-track{background:transparent}#wallpaper{position:fixed;inset:0;z-index:0;width:100vw;height:100vh;pointer-events:none}#wallpaper-fallback{position:fixed;inset:0;z-index:0;pointer-events:none}#cursor-glow{position:fixed;z-index:1;left:0;top:0;width:720px;height:720px;margin:-360px 0 0 -360px;border-radius:50%;pointer-events:none;background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 22%,transparent),transparent 72%);transform:translate3d(var(--mx),var(--my),0);opacity:.9;mix-blend-mode:screen;transition:opacity var(--dur-slow) var(--ease-out)}:root[data-theme=light] #cursor-glow{mix-blend-mode:normal;opacity:.55}:root[data-cursor-glow=off] #cursor-glow{opacity:0}#outlet{position:fixed;z-index:2;top:var(--chrome-top);left:0;right:0;bottom:0;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth;padding:0 var(--page-pad) calc(var(--dock-h) + var(--dock-gap) * 2 + 12px);overscroll-behavior:contain}#outlet.bleed{padding:0;overflow:hidden}#outlet>.page{transition:opacity var(--dur) var(--ease-out),transform var(--dur) var(--ease-out),filter var(--dur) var(--ease-out)}#outlet>.page-enter{opacity:0;transform:translateY(10px) scale(.995);filter:blur(4px)}#outlet>.page-leave{position:absolute;inset:0 var(--page-pad);opacity:0;transition-duration:.14s;pointer-events:none}#outlet.bleed>.page-leave{inset:0}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:clamp(20px,4vh,44px) 0 18px}.page-head .eyebrow{margin-bottom:8px}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.section{margin-top:34px}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:12px}.section-head h2{display:flex;align-items:center;gap:10px}.section-head .count{font:500 12px var(--font);color:var(--muted-2);letter-spacing:0}.row{display:flex;align-items:center;gap:10px}.col{display:flex;flex-direction:column;gap:10px}.grow{flex:1;min-width:0}.spacer{flex:1}.wrap{flex-wrap:wrap}.center{display:grid;place-items:center}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root[data-motion=reduce] *,:root[data-motion=reduce] *:before,:root[data-motion=reduce] *:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}.glass{background:var(--surface);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));border:1px solid var(--stroke);box-shadow:var(--specular),var(--shadow)}.glass-strong{background:var(--surface-strong);-webkit-backdrop-filter:blur(calc(var(--glass-blur) * 1.4)) saturate(var(--glass-sat));backdrop-filter:blur(calc(var(--glass-blur) * 1.4)) saturate(var(--glass-sat));border:1px solid var(--stroke);box-shadow:var(--specular),var(--shadow-lg)}.panel{position:relative;border-radius:var(--radius-xl);padding:20px}.panel.tight{padding:14px}.sheen:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(160deg,rgba(255,255,255,.09),transparent 28%,transparent 72%,rgba(255,255,255,.02))}:root[data-theme=light] .sheen:before{background:linear-gradient(160deg,rgba(255,255,255,.7),transparent 36%)}.inset{background:var(--surface-soft);border:1px solid var(--stroke-faint);border-radius:var(--radius)}.divider{height:1px;background:var(--stroke-faint);margin:12px 0;border:0}.btn{--btn-bg: var(--surface-soft);position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:36px;padding:0 14px;border-radius:var(--radius);background:var(--btn-bg);border:1px solid var(--stroke);box-shadow:var(--specular);font-weight:550;font-size:13px;letter-spacing:-.005em;white-space:nowrap;color:var(--text);transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast);user-select:none}.btn:hover{background:color-mix(in srgb,var(--btn-bg),var(--text) 7%);border-color:var(--stroke-strong)}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;pointer-events:none}.btn.sm{height:30px;padding:0 11px;font-size:12.5px;border-radius:10px}.btn.lg{height:44px;padding:0 20px;font-size:14.5px;border-radius:14px}.btn.block{width:100%}.btn-primary{--btn-bg: linear-gradient(180deg, color-mix(in srgb, var(--accent) 92%, white), var(--accent-2));background:var(--btn-bg);color:var(--on-accent);border-color:color-mix(in srgb,var(--accent) 60%,transparent);box-shadow:inset 0 1px #ffffff59,0 6px 20px -6px var(--accent-glow);text-shadow:0 1px 1px rgba(40,10,90,.35)}.btn-primary:hover{background:var(--btn-bg);filter:brightness(1.08) saturate(1.05);box-shadow:inset 0 1px #ffffff59,0 8px 28px -6px var(--accent-glow)}.btn-ghost{--btn-bg: transparent;border-color:transparent;box-shadow:none}.btn-ghost:hover{background:var(--surface-hover);border-color:transparent}.btn-danger{color:var(--danger)}.btn-danger:hover{background:color-mix(in srgb,var(--danger) 14%,transparent);border-color:color-mix(in srgb,var(--danger) 40%,transparent)}.icon-btn{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:10px;color:var(--text-2);transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast),transform var(--dur-fast) var(--ease-out);position:relative}.icon-btn:hover{background:var(--surface-hover);color:var(--text)}.icon-btn:active{transform:scale(.92);background:var(--surface-press)}.icon-btn.active{color:var(--accent);background:var(--accent-soft)}.icon-btn.sm{width:26px;height:26px;border-radius:8px}.icon-btn.lg{width:40px;height:40px;border-radius:12px}.field{display:flex;align-items:center;gap:8px;height:38px;padding:0 12px;border-radius:var(--radius);background:color-mix(in srgb,var(--bg-base) 38%,transparent);border:1px solid var(--stroke);box-shadow:inset 0 1px 2px #0000002e;transition:border-color var(--dur-fast),box-shadow var(--dur-fast),background var(--dur-fast);color:var(--muted)}:root[data-theme=light] .field{background:color-mix(in srgb,#fff 70%,transparent);box-shadow:inset 0 1px 2px #3c1e820f}.field:focus-within{border-color:color-mix(in srgb,var(--accent) 65%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.field input,.field textarea,.field select{flex:1;min-width:0;height:100%;border:0;outline:0;background:transparent;color:var(--text);font-size:13.5px}.field select option{background:var(--bg-2);color:var(--text)}.field.area{height:auto;padding:10px 12px;align-items:stretch}.field.area textarea{resize:vertical;min-height:72px;line-height:1.5}.field kbd{margin-left:auto}label.label{display:block;font-size:12px;font-weight:600;color:var(--muted);margin:0 0 6px 2px;letter-spacing:.01em}.hint{font-size:12px;color:var(--muted-2);margin-top:6px}kbd,.kbd{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:6px;font:600 11px var(--font);color:var(--muted);background:var(--surface-soft);border:1px solid var(--stroke);border-bottom-width:2px}.switch{position:relative;width:40px;height:24px;flex:none;border-radius:99px;background:color-mix(in srgb,var(--text) 16%,transparent);border:1px solid var(--stroke);transition:background var(--dur) var(--ease-out)}.switch:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #0000004d;transition:transform var(--dur) var(--ease-spring)}.switch[aria-checked=true]{background:linear-gradient(180deg,var(--accent),var(--accent-2));border-color:transparent}.switch[aria-checked=true]:after{transform:translate(16px)}input[type=range].range{-webkit-appearance:none;appearance:none;width:100%;height:22px;background:transparent;--pct: 50%}input[type=range].range::-webkit-slider-runnable-track{height:5px;border-radius:9px;background:linear-gradient(90deg,var(--accent) var(--pct),color-mix(in srgb,var(--text) 14%,transparent) var(--pct))}input[type=range].range::-moz-range-track{height:5px;border-radius:9px;background:color-mix(in srgb,var(--text) 14%,transparent)}input[type=range].range::-moz-range-progress{height:5px;border-radius:9px;background:var(--accent)}input[type=range].range::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;margin-top:-5.5px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #00000059,0 0 0 4px color-mix(in srgb,var(--accent) 25%,transparent)}input[type=range].range::-moz-range-thumb{width:16px;height:16px;border:0;border-radius:50%;background:#fff;box-shadow:0 1px 4px #00000059}.segmented{display:inline-flex;padding:3px;gap:2px;border-radius:12px;background:color-mix(in srgb,var(--bg-base) 32%,transparent);border:1px solid var(--stroke-faint);position:relative}.segmented button{height:28px;padding:0 12px;border-radius:9px;font-size:12.5px;font-weight:550;color:var(--muted);transition:color var(--dur-fast),background var(--dur-fast);display:inline-flex;align-items:center;gap:6px}.segmented button:hover{color:var(--text)}.segmented button[aria-pressed=true]{color:var(--text);background:var(--surface-strong);box-shadow:var(--specular),0 1px 3px #00000040}.chip{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 11px;border-radius:99px;font-size:12.5px;font-weight:550;color:var(--text-2);background:var(--surface-soft);border:1px solid var(--stroke-faint);white-space:nowrap;transition:background var(--dur-fast),color var(--dur-fast),border-color var(--dur-fast)}button.chip:hover{background:var(--surface-hover);color:var(--text)}.chip[aria-pressed=true],.chip.on{color:var(--text);background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 45%,transparent);box-shadow:0 0 16px -6px var(--accent-glow)}.tag{display:inline-flex;align-items:center;gap:4px;height:20px;padding:0 7px;border-radius:6px;font-size:10.5px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);background:color-mix(in srgb,var(--bg-base) 55%,transparent);border:1px solid var(--stroke-faint);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.tag.src-tag{gap:5px}.tag.src-tag .gem-glyph{flex:none}.tag.opal{color:#f0c6ff}.tag.quartz{color:#a5d8ff}.tag.jade{color:#86efac}.tag.topaz{color:#fcd34d}.tag.onyx{color:#cbd5e1}:root[data-theme=light] .tag.opal{color:#a21caf}:root[data-theme=light] .tag.quartz{color:#1d4ed8}:root[data-theme=light] .tag.jade{color:#047857}:root[data-theme=light] .tag.topaz{color:#b45309}:root[data-theme=light] .tag.onyx{color:#334155}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--stroke-faint);margin-bottom:16px;overflow-x:auto;scrollbar-width:none}.tabs button{position:relative;height:38px;padding:0 12px;font-weight:550;font-size:13px;color:var(--muted);white-space:nowrap}.tabs button:hover,.tabs button[aria-selected=true]{color:var(--text)}.tabs button[aria-selected=true]:after{content:"";position:absolute;left:10px;right:10px;bottom:-1px;height:2px;border-radius:2px;background:var(--accent);box-shadow:0 0 12px var(--accent-glow)}.skeleton{position:relative;overflow:hidden;background:color-mix(in srgb,var(--text) 6%,transparent);border-radius:var(--radius)}.skeleton:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--accent) 14%,transparent),transparent);animation:shimmer 1.4s var(--ease-out) infinite}@keyframes shimmer{to{transform:translate(100%)}}.empty{display:grid;place-items:center;gap:12px;padding:48px 20px;text-align:center;color:var(--muted)}.empty .gem{filter:drop-shadow(0 8px 24px var(--accent-glow));opacity:.9}.empty h3{color:var(--text)}.empty p{max-width:340px;font-size:13px}.gem-pulse{animation:gem-pulse 1.8s var(--ease-out) infinite}@keyframes gem-pulse{0%,to{transform:scale(1) rotate(0);filter:drop-shadow(0 0 0 transparent) brightness(1)}50%{transform:scale(1.08) rotate(-4deg);filter:drop-shadow(0 8px 28px var(--accent-glow)) brightness(1.15)}}.gem-spin{animation:gem-spin 2.4s var(--ease-out) infinite}@keyframes gem-spin{0%{transform:rotateY(0)}to{transform:rotateY(360deg)}}.avatar{--size: 32px;position:relative;width:var(--size);height:var(--size);flex:none;border-radius:50%;display:grid;place-items:center;font:650 calc(var(--size) * .42) var(--font-display);color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-2));isolation:isolate}.avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.avatar .deco{position:absolute;right:-4%;bottom:-4%;font-size:calc(var(--size) * .36);line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.45))}.avatar .presence{position:absolute;right:0;bottom:0;width:28%;height:28%;min-width:8px;min-height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 2px var(--bg-2)}.avatar[data-frame]:before{content:"";position:absolute;inset:calc(var(--size) * -.09);border-radius:50%;z-index:-1}.avatar[data-frame=glass]:before{background:linear-gradient(160deg,#ffffff8c,#ffffff14);box-shadow:inset 0 0 0 1px #fff6}.avatar[data-frame=gem]:before{background:conic-gradient(from 30deg,#e9ddff,#8b5cf6,#3b0f7a,#c4adff,#e9ddff)}.avatar[data-frame=aurora]:before{background:conic-gradient(from 0deg,#a78bfa,#22d3ee,#34d399,#f0abfc,#a78bfa);animation:spin 5s linear infinite}.avatar[data-frame=halo]:before{background:radial-gradient(circle,transparent 58%,#fde68a 60%,#f59e0b 70%,transparent 72%);inset:calc(var(--size) * -.16)}.avatar[data-frame=orbit]:before{background:conic-gradient(from 0deg,transparent 0 70%,#c4b5fd 80%,#fff 84%,transparent 86%),conic-gradient(#312e81,#6d28d9,#312e81);animation:spin 2.6s linear infinite}.avatar[data-frame=crown]:before{background:conic-gradient(from 45deg,#fef3c7,#d97706,#fde68a,#a78bfa,#fef3c7);box-shadow:0 0 18px #fbbf248c}.avatar[data-frame=crown]:after{content:"♛";position:absolute;top:calc(var(--size) * -.34);left:50%;transform:translate(-50%) rotate(-8deg);font-size:calc(var(--size) * .34);color:#fbbf24;text-shadow:0 1px 4px rgba(0,0,0,.5)}.avatar[data-frame=ember]:before{background:conic-gradient(from 90deg,#fb7185,#f97316,#fbbf24,#fb7185);animation:spin 3s linear infinite}.avatar[data-frame=frost]:before{background:conic-gradient(#e0f2fe,#7dd3fc,#e0f2fe,#bae6fd,#e0f2fe)}.avatar[data-frame=void]:before{background:conic-gradient(#000,#4c1d95,#000,#1e1b4b,#000);box-shadow:0 0 18px #6d28d9}.avatar[data-frame=rainbow]:before{background:conic-gradient(#f87171,#fbbf24,#34d399,#60a5fa,#a78bfa,#f472b6,#f87171);animation:spin 4s linear infinite}.avatar[data-frame=gold]:before{background:conic-gradient(from 45deg,#fef3c7,#d97706,#fde68a,#b45309,#fef3c7)}.avatar[data-frame=neon]:before{background:conic-gradient(#22d3ee,#e879f9,#22d3ee);box-shadow:0 0 16px #e879f9;animation:spin 6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.name-styled{background-clip:text;-webkit-background-clip:text}.name-styled[data-gradient]{color:transparent!important}.role-badge{display:inline-grid;place-items:center;height:16px;padding:0 5px;border-radius:5px;font-size:9.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink);background:var(--accent)}.role-badge.owner{background:linear-gradient(135deg,#fde68a,#f59e0b);color:#3b2300}.role-badge.admin{background:linear-gradient(135deg,#fda4af,#e11d48);color:#fff}.role-badge.mod{background:linear-gradient(135deg,#a5f3fc,#0891b2);color:#062a33}.user-title{--tc: var(--accent);display:inline-flex;align-items:center;height:17px;padding:0 7px;border-radius:99px;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;color:var(--tc);background:color-mix(in srgb,var(--tc) 14%,transparent);border:1px solid color-mix(in srgb,var(--tc) 32%,transparent);box-shadow:inset 0 1px #ffffff14}.user-title[data-gradient]{color:#fff;border-color:transparent;background-size:200% 200%;animation:titleShimmer 6s ease-in-out infinite}@keyframes titleShimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@media(prefers-reduced-motion:reduce){.user-title[data-gradient]{animation:none}}.shards{display:inline-flex;align-items:center;gap:6px;font-variant-numeric:tabular-nums;font-weight:650}.shards .icon{color:var(--accent);filter:drop-shadow(0 0 6px var(--accent-glow))}[data-tip]{position:relative}[data-tip]:after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 10px);transform:translate(-50%,4px) scale(.96);padding:5px 9px;border-radius:8px;font:550 12px var(--font);white-space:nowrap;color:var(--text);background:var(--surface-strong);-webkit-backdrop-filter:blur(16px) saturate(1.6);backdrop-filter:blur(16px) saturate(1.6);border:1px solid var(--stroke);box-shadow:var(--shadow-sm);opacity:0;pointer-events:none;transition:opacity .12s var(--ease-out),transform .16s var(--ease-out);z-index:50}[data-tip]:hover:after{opacity:1;transform:translate(-50%) scale(1);transition-delay:.35s}[data-tip-pos=bottom]:after{bottom:auto;top:calc(100% + 10px)}.menu{position:fixed;z-index:9000;min-width:220px;padding:6px;border-radius:14px;transform-origin:top left;animation:pop-in var(--dur-fast) var(--ease-spring)}.menu-item{display:flex;align-items:center;gap:10px;width:100%;height:32px;padding:0 10px;border-radius:8px;font-size:13px;color:var(--text-2);text-align:left}.menu-item:hover,.menu-item.active{background:linear-gradient(180deg,var(--accent),var(--accent-2));color:#fff}.menu-item .kbd-hint{margin-left:auto;font-size:11.5px;color:var(--muted-2)}.menu-item:hover .kbd-hint{color:#ffffffbf}.menu-sep{height:1px;margin:5px 8px;background:var(--stroke-faint)}.menu-label{padding:6px 10px 4px;font-size:11px;font-weight:600;color:var(--muted-2);text-transform:uppercase;letter-spacing:.08em}@keyframes pop-in{0%{opacity:0;transform:scale(.94) translateY(-4px)}to{opacity:1;transform:none}}.scrim{position:fixed;inset:0;z-index:8000;background:color-mix(in srgb,var(--bg-base) 45%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;padding:20px;animation:fade-in var(--dur) var(--ease-out)}.scrim.closing{animation:fade-out .16s var(--ease-out) forwards}.modal{width:min(440px,100%);max-height:calc(100vh - 40px);overflow:auto;border-radius:var(--radius-xl);padding:24px;animation:modal-in .3s var(--ease-spring)}.scrim.closing .modal{animation:modal-out .16s var(--ease-out) forwards}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:translateY(12px) scale(.96)}}@keyframes modal-out{to{opacity:0;transform:translateY(6px) scale(.98)}}.progress{height:6px;border-radius:6px;background:color-mix(in srgb,var(--text) 10%,transparent);overflow:hidden}.progress>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent-2),var(--accent));box-shadow:0 0 10px var(--accent-glow)}.list-row{display:flex;align-items:center;gap:12px;padding:8px 10px;border-radius:12px;transition:background var(--dur-fast)}.list-row:hover{background:var(--surface-hover)}.list-row .meta{font-size:12px;color:var(--muted-2)}.crop-stage{position:relative;width:280px;height:280px;margin:0 auto;border-radius:18px;overflow:hidden;background:repeating-conic-gradient(color-mix(in srgb,var(--text) 8%,transparent) 0 25%,transparent 0 50%) 0 0 / 16px 16px;cursor:grab;touch-action:none;user-select:none}.crop-stage.dragging{cursor:grabbing}.crop-canvas{display:block}.crop-mask{position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 999px color-mix(in srgb,var(--bg-base) 72%,transparent),inset 0 0 0 2px #ffffff8c;pointer-events:none}.crop-hint{position:absolute;left:50%;bottom:8px;transform:translate(-50%);display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:99px;font-size:10.5px;color:var(--text-2);background:color-mix(in srgb,var(--bg-2) 80%,transparent);white-space:nowrap;pointer-events:none}#menubar{position:fixed;z-index:6000;top:0;left:0;right:0;height:var(--menubar-h);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 10px;background:color-mix(in srgb,var(--bg-1) calc(var(--glass-alpha) * .75),transparent);-webkit-backdrop-filter:blur(calc(var(--glass-blur) * 1.3)) saturate(1.9);backdrop-filter:blur(calc(var(--glass-blur) * 1.3)) saturate(1.9);border-bottom:1px solid var(--stroke-faint);box-shadow:inset 0 -1px #ffffff08;font-size:13px;user-select:none}:root[data-theme=light] #menubar{background:color-mix(in srgb,#fff 55%,transparent)}#menubar .mb-left,#menubar .mb-right{display:flex;align-items:center;gap:2px;min-width:0}#menubar .mb-right{justify-content:flex-end}.mb-item{display:inline-flex;align-items:center;gap:7px;height:26px;padding:0 9px;border-radius:7px;color:var(--text-2);font-weight:500;white-space:nowrap;transition:background .12s}.mb-item:hover,.mb-item.open{background:var(--surface-hover);color:var(--text)}.mb-brand{font-family:var(--font-display);font-weight:700;letter-spacing:-.01em;color:var(--text);gap:8px;text-decoration:none}.mb-brand .gem{transition:transform var(--dur) var(--ease-spring)}.mb-brand:hover .gem{transform:rotate(-10deg) scale(1.1)}.mb-title{font-weight:600;color:var(--text)}.mb-search{display:inline-flex;align-items:center;gap:8px;width:min(420px,36vw);height:26px;padding:0 8px 0 10px;border-radius:8px;color:var(--muted-2);background:color-mix(in srgb,var(--bg-base) 30%,transparent);border:1px solid var(--stroke-faint);font-size:12.5px;transition:border-color var(--dur-fast),background var(--dur-fast),color var(--dur-fast)}:root[data-theme=light] .mb-search{background:color-mix(in srgb,#fff 55%,transparent)}.mb-search:hover{border-color:var(--stroke-strong);color:var(--muted)}.mb-search .kbds{margin-left:auto;display:flex;gap:3px}.mb-search kbd{height:18px;min-width:18px;font-size:10.5px}.mb-clock{font-variant-numeric:tabular-nums;font-weight:500}.mb-discord{padding:0 7px;text-decoration:none}.mb-discord:hover{color:#5865f2}.mb-badge{position:absolute;top:1px;right:1px;min-width:15px;height:15px;padding:0 4px;border-radius:99px;display:grid;place-items:center;font:700 9.5px var(--font);color:#fff;background:var(--danger);box-shadow:0 0 0 2px var(--bg-1)}.mb-shards{color:var(--text)}.mb-shards.bump{animation:bump .6s var(--ease-spring)}@keyframes bump{30%{transform:scale(1.18)}}@media(max-width:720px){#menubar{grid-template-columns:auto 1fr auto;padding:0 8px}.mb-search{width:100%;height:30px}.mb-hide-mobile{display:none!important}#menubar .mb-center{padding:0 6px}}#dock-wrap{position:fixed;z-index:5000;left:0;right:0;bottom:var(--dock-gap);display:flex;justify-content:center;pointer-events:none}#dock{--tile: var(--dock-size);pointer-events:auto;position:relative;display:flex;align-items:flex-end;gap:6px;height:var(--dock-h);padding:var(--dock-pad) 10px;border-radius:calc(var(--dock-size) * .42 + var(--dock-pad));background:color-mix(in srgb,var(--bg-2) calc(var(--glass-alpha) * .7),transparent);-webkit-backdrop-filter:blur(calc(var(--glass-blur) * 1.4)) saturate(1.9);backdrop-filter:blur(calc(var(--glass-blur) * 1.4)) saturate(1.9);border:1px solid var(--stroke);box-shadow:var(--specular),0 20px 50px -10px #03010a99,0 0 0 .5px #0000004d;transition:transform var(--dur) var(--ease-out)}:root[data-theme=light] #dock{background:color-mix(in srgb,#fff 45%,transparent)}.dock-sep{width:1px;align-self:stretch;margin:6px 4px;background:var(--stroke)}.dock-item{--s: 1;position:relative;width:calc(var(--tile) * var(--s));height:calc(var(--tile) * var(--s));flex:none;display:grid;place-items:center;transition:width .16s var(--ease-out),height .16s var(--ease-out);-webkit-tap-highlight-color:transparent}#dock.no-anim .dock-item{transition:none}.dock-tile{width:100%;height:100%;display:grid;place-items:center;border-radius:26%;color:#fff;background:radial-gradient(120% 90% at 30% 10%,rgba(255,255,255,.28),transparent 50%),linear-gradient(160deg,var(--t1, #8b6cf0),var(--t2, #4c1d95));box-shadow:inset 0 1px #ffffff59,inset 0 -2px 6px #00000040,0 4px 12px -2px #00000080;transition:transform .2s var(--ease-spring),filter .2s}.dock-tile .icon{width:50%;height:50%;filter:drop-shadow(0 1px 1px rgba(0,0,0,.35));stroke-width:1.7}.dock-item:active .dock-tile{filter:brightness(.82);transform:scale(.94)}.dock-item.bounce .dock-tile{animation:dock-bounce .7s var(--ease-out)}@keyframes dock-bounce{0%,to{transform:translateY(0)}25%{transform:translateY(-22px)}50%{transform:translateY(0)}70%{transform:translateY(-8px)}}.dock-item[data-id=home]{--t1: #b69cff;--t2: #6d28d9}.dock-item[data-id=games]{--t1: #c084fc;--t2: #7e22ce}.dock-item[data-id=browse]{--t1: #93c5fd;--t2: #4338ca}.dock-item[data-id=chat]{--t1: #86efac;--t2: #0f766e}.dock-item[data-id=music]{--t1: #fda4af;--t2: #be185d}.dock-item[data-id=friends]{--t1: #fcd34d;--t2: #c2410c}.dock-item[data-id=shop]{--t1: #f0abfc;--t2: #a21caf}.dock-item[data-id=settings]{--t1: #cbd5e1;--t2: #475569}.dock-item[data-id=leaderboard]{--t1: #fde68a;--t2: #b45309}.dock-item[data-id=notifications]{--t1: #fecaca;--t2: #b91c1c}.dock-item[data-id=admin]{--t1: #e2e8f0;--t2: #1e293b}.dock-item[data-id^=web]{--t1: #a5f3fc;--t2: #0e7490}#dock[data-theme=frost] .dock-tile{background:radial-gradient(120% 90% at 30% 10%,rgba(255,255,255,.55),transparent 55%),linear-gradient(160deg,#e0f2fe,#7dd3fc 60%,#38bdf8);color:#0c4a6e}#dock[data-theme=midnight] .dock-item{--t1: #3f3a67;--t2: #0b0918}#dock[data-theme=rose] .dock-item{--t1: #fecdd3;--t2: #be123c}#dock[data-theme=holo] .dock-tile{background:radial-gradient(120% 90% at 30% 10%,rgba(255,255,255,.45),transparent 55%),linear-gradient(135deg,#f0abfc,#a5f3fc,#fde68a,#c4b5fd);background-size:300% 300%;animation:holo 6s ease-in-out infinite;color:#3b0764}@keyframes holo{50%{background-position:100% 100%}}#dock[data-theme=mono] .dock-item{--t1: #3f3a57;--t2: #16131f}#dock[data-theme=glass] .dock-tile{background:radial-gradient(120% 90% at 30% 10%,rgba(255,255,255,.35),transparent 55%),color-mix(in srgb,var(--text) 10%,transparent);color:var(--text);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}#dock[data-theme=sunset] .dock-item{--t1: #fdba74;--t2: #db2777}#dock[data-theme=ocean] .dock-item{--t1: #67e8f9;--t2: #1e40af}#dock[data-theme=forest] .dock-item{--t1: #86efac;--t2: #14532d}#dock[data-theme=gold] .dock-item{--t1: #fef08a;--t2: #a16207}#dock[data-theme=gem] .dock-tile{background:conic-gradient(from 200deg at 50% 60%,#e9ddff,#8b5cf6,#3b0f7a,#c4adff,#e9ddff)}.dock-dot{position:absolute;bottom:calc(var(--dock-pad) * -.5 - 3px);left:50%;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--text);opacity:0;transform:scale(.4);transition:opacity var(--dur),transform var(--dur) var(--ease-spring);box-shadow:0 0 6px var(--text)}.dock-item.running .dock-dot{opacity:.85;transform:none}.dock-item.current .dock-dot{opacity:1;transform:none;background:var(--accent);box-shadow:0 0 8px var(--accent)}.dock-badge{position:absolute;top:-3px;right:-3px;min-width:18px;height:18px;padding:0 5px;border-radius:99px;display:grid;place-items:center;font:700 10.5px var(--font);color:#fff;background:linear-gradient(180deg,#ff6b7f,#e11d48);box-shadow:0 2px 6px #e11d4880,0 0 0 1.5px #ffffff40;animation:pop-in .3s var(--ease-spring)}.dock-label{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%,4px);padding:4px 10px;border-radius:8px;font-size:12.5px;font-weight:550;white-space:nowrap;color:var(--text);background:var(--surface-strong);-webkit-backdrop-filter:blur(16px) saturate(1.6);backdrop-filter:blur(16px) saturate(1.6);border:1px solid var(--stroke);box-shadow:var(--shadow-sm);opacity:0;pointer-events:none;transition:opacity .12s,transform .16s var(--ease-out)}.dock-item:hover .dock-label{opacity:1;transform:translate(-50%)}.dock-mobile-label{display:none}body.dock-autohide #dock-wrap{transform:translateY(calc(100% + var(--dock-gap) + 4px));transition:transform var(--dur) var(--ease-out)}body.dock-autohide #dock-wrap.peek{transform:none}#dock-wrap{transition:transform var(--dur) var(--ease-out)}@media(max-width:720px){:root{--dock-h: 62px;--dock-gap: 0px}#dock-wrap{bottom:0}#dock{width:100%;height:calc(var(--dock-h) + env(safe-area-inset-bottom));padding:6px 4px calc(6px + env(safe-area-inset-bottom));border-radius:0;border-width:1px 0 0;justify-content:space-around;align-items:stretch;gap:0;overflow-x:auto;scrollbar-width:none}.dock-sep,.dock-label,.dock-item.desktop-only{display:none}.dock-item{width:auto!important;height:auto!important;flex:1;min-width:48px;gap:2px;grid-template-rows:1fr auto}.dock-tile{width:30px;height:30px;border-radius:9px}.dock-mobile-label{display:block;font-size:10px;font-weight:550;color:var(--muted)}.dock-item.current .dock-mobile-label{color:var(--accent)}.dock-dot{display:none}.dock-badge{top:-2px;right:calc(50% - 22px)}}#windows{position:fixed;z-index:4000;inset:var(--chrome-top) 0 0 0;pointer-events:none}.win{position:absolute;display:flex;flex-direction:column;min-width:280px;min-height:200px;border-radius:14px;pointer-events:auto;overflow:hidden;background:linear-gradient(var(--window-tint),var(--window-tint)),color-mix(in srgb,var(--bg-2) calc(var(--glass-alpha) + 12%),transparent);-webkit-backdrop-filter:blur(calc(var(--glass-blur) * 1.5)) saturate(1.8);backdrop-filter:blur(calc(var(--glass-blur) * 1.5)) saturate(1.8);border:1px solid var(--stroke);box-shadow:var(--specular),var(--shadow-lg);transform-origin:var(--ox, 50%) var(--oy, 100%);transition:box-shadow var(--dur) var(--ease-out),border-color var(--dur);contain:layout}:root[data-theme=light] .win{background:linear-gradient(var(--window-tint),var(--window-tint)),color-mix(in srgb,#fff calc(var(--glass-alpha) + 18%),transparent)}.win.focused{border-color:var(--stroke-strong);box-shadow:var(--specular),var(--shadow-lg),0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent),0 0 40px -12px var(--accent-glow)}.win:not(.focused) .win-title{opacity:.6}.win:not(.focused) .tl{background:color-mix(in srgb,var(--text) 18%,transparent)!important}.win.opening{animation:win-open .3s var(--ease-spring) both}.win.closing{animation:win-close .2s var(--ease-out) both;pointer-events:none}.win.minimizing{animation:win-min .32s var(--ease-in) both;pointer-events:none}.win.restoring{animation:win-restore .36s var(--ease-spring) both}.win.minimized{display:none}.win.animating-geom{transition:left .26s var(--ease-out),top .26s var(--ease-out),width .26s var(--ease-out),height .26s var(--ease-out)}@keyframes win-open{0%{opacity:0;transform:scale(.72) translateY(24px)}}@keyframes win-close{to{opacity:0;transform:scale(.94)}}@keyframes win-min{to{opacity:0;transform:scale(.08) translateY(40vh)}}@keyframes win-restore{0%{opacity:0;transform:scale(.08) translateY(40vh)}}.win-bar{position:relative;flex:none;display:flex;align-items:center;gap:8px;height:40px;padding:0 10px 0 14px;border-bottom:1px solid var(--stroke-faint);background:linear-gradient(180deg,rgba(255,255,255,.04),transparent);cursor:default;user-select:none;touch-action:none}.win-title{position:absolute;left:50%;transform:translate(-50%);max-width:calc(100% - 180px);display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--text);pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:opacity var(--dur)}.win-title .icon{color:var(--accent)}.win-actions{margin-left:auto;display:flex;align-items:center;gap:2px;position:relative;z-index:1}.traffic{display:flex;gap:8px;position:relative;z-index:1}.tl{width:12px;height:12px;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 0 .5px #00000040;color:#280000b3;transition:background var(--dur-fast)}.tl .icon{width:8px;height:8px;stroke-width:3;opacity:0;transition:opacity .1s}.traffic:hover .tl .icon{opacity:1}.tl.close{background:var(--tl-close)}.tl.min{background:var(--tl-min);color:#5a3200cc}.tl.zoom{background:var(--tl-zoom);color:#003c00bf}.win-body{flex:1;min-height:0;overflow:auto;position:relative}.win-body.flush{overflow:hidden;display:flex;flex-direction:column}.win-resize{position:absolute;z-index:3;touch-action:none}.win-resize.n{top:-3px;left:10px;right:10px;height:7px;cursor:ns-resize}.win-resize.s{bottom:-3px;left:10px;right:10px;height:7px;cursor:ns-resize}.win-resize.e{right:-3px;top:10px;bottom:10px;width:7px;cursor:ew-resize}.win-resize.w{left:-3px;top:10px;bottom:10px;width:7px;cursor:ew-resize}.win-resize.ne{top:-3px;right:-3px;width:14px;height:14px;cursor:nesw-resize}.win-resize.nw{top:-3px;left:-3px;width:14px;height:14px;cursor:nwse-resize}.win-resize.se{bottom:-3px;right:-3px;width:14px;height:14px;cursor:nwse-resize}.win-resize.sw{bottom:-3px;left:-3px;width:14px;height:14px;cursor:nesw-resize}body.dragging-window,body.dragging-window *{cursor:grabbing!important;user-select:none!important}body.dragging-window iframe{pointer-events:none!important}.snap-preview{position:fixed;z-index:3999;border-radius:16px;pointer-events:none;background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transition:all .2s var(--ease-out)}.snap-preview.show{opacity:1}@media(max-width:720px){#windows{inset:var(--chrome-top) 0 calc(var(--dock-h) + env(safe-area-inset-bottom)) 0;z-index:5500}.win{inset:auto 0 0!important;width:100%!important;height:calc(100% - 24px)!important;min-width:0;border-radius:20px 20px 0 0;border-width:1px 0 0;transform-origin:50% 100%}.win.opening{animation:sheet-up .34s var(--ease-out) both}.win.closing,.win.minimizing{animation:sheet-down .24s var(--ease-in) both}.win-resize,.tl.min,.tl.zoom{display:none}.win-bar{height:48px}.win-bar:before{content:"";position:absolute;top:6px;left:50%;width:36px;height:4px;margin-left:-18px;border-radius:4px;background:var(--stroke-strong)}.tl.close{width:22px;height:22px}.tl.close .icon{opacity:1;width:12px;height:12px}}@keyframes sheet-up{0%{transform:translateY(100%)}}@keyframes sheet-down{to{transform:translateY(100%)}}#toasts{position:fixed;z-index:9500;top:calc(var(--chrome-top) + 12px);right:12px;display:flex;flex-direction:column;gap:10px;width:min(360px,calc(100vw - 24px));pointer-events:none}.toast{position:relative;display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:16px;pointer-events:auto;animation:toast-in .42s var(--ease-spring) both;overflow:hidden}.toast.leaving{animation:toast-out .22s var(--ease-in) forwards}.toast .t-icon{flex:none;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-size:18px}.toast.error .t-icon{background:color-mix(in srgb,var(--danger) 16%,transparent);color:var(--danger)}.toast.success .t-icon{background:color-mix(in srgb,var(--ok) 16%,transparent);color:var(--ok)}.toast.achievement{border-color:color-mix(in srgb,var(--rarity-legendary) 45%,transparent)}.toast.achievement .t-icon{background:linear-gradient(135deg,#fde68a,#f59e0b);color:#3b2300;box-shadow:0 0 20px -2px #fbbf2499}.toast.achievement:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.16) 50%,transparent 70%);transform:translate(-100%);animation:sweep 1.6s .2s var(--ease-out);pointer-events:none}@keyframes sweep{to{transform:translate(100%)}}.toast .t-title{font-weight:650;font-size:13.5px}.toast .t-body{font-size:12.5px;color:var(--muted);margin-top:1px}.toast .t-close{position:absolute;top:8px;right:8px;opacity:0;transition:opacity .12s}.toast:hover .t-close{opacity:1}.toast .t-bar{position:absolute;left:0;bottom:0;height:2px;background:var(--accent);opacity:.6;transform-origin:left}@keyframes toast-in{0%{opacity:0;transform:translate(40px) scale(.92)}}@keyframes toast-out{to{opacity:0;transform:translate(30px) scale(.96);margin-top:-70px}}@media(max-width:720px){#toasts{left:12px;right:12px;width:auto}}.palette-scrim{place-items:start center;padding-top:14vh}.palette{width:min(640px,100%);border-radius:20px;overflow:hidden;animation:modal-in .26s var(--ease-spring)}.palette-input{display:flex;align-items:center;gap:12px;height:58px;padding:0 18px;border-bottom:1px solid var(--stroke-faint);color:var(--muted)}.palette-input input{flex:1;height:100%;border:0;outline:0;background:transparent;font-size:17px;color:var(--text);letter-spacing:-.01em}.palette-list{max-height:min(430px,56vh);overflow-y:auto;padding:8px}.palette-group{padding:8px 10px 4px;font-size:11px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2)}.palette-item{display:flex;align-items:center;gap:12px;width:100%;min-height:42px;padding:6px 10px;border-radius:11px;text-align:left;color:var(--text-2)}.palette-item .p-thumb{width:40px;height:28px;border-radius:7px;object-fit:cover;flex:none;background:var(--surface-soft)}.palette-item .p-icon{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;flex:none;background:var(--surface-soft);color:var(--accent)}.palette-item .p-sub{font-size:12px;color:var(--muted-2);margin-left:auto;white-space:nowrap}.palette-item.active{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 34%,transparent),color-mix(in srgb,var(--accent-2) 30%,transparent));color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 40%,transparent)}.palette-item.active .p-sub{color:var(--text-2)}.palette-foot{display:flex;gap:14px;padding:10px 16px;border-top:1px solid var(--stroke-faint);font-size:12px;color:var(--muted-2)}.palette-foot span{display:inline-flex;gap:6px;align-items:center}.shortcuts{display:grid;grid-template-columns:1fr auto;gap:10px 20px;font-size:13px}.shortcuts .keys{display:flex;gap:4px;justify-content:flex-end}.trail-dot{position:fixed;z-index:9999;pointer-events:none;left:0;top:0;border-radius:50%;will-change:transform,opacity}.boot-splash{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;background:var(--bg-base);transition:opacity .5s var(--ease-out)}.boot-splash.done{opacity:0;pointer-events:none}:root[data-guestbar]{--guestbar-h: 28px}#guestbar{--pct: 0;--fill: var(--accent);--fill-2: var(--accent-2);position:fixed;z-index:5900;top:var(--menubar-h);left:0;right:0;height:var(--guestbar-h);overflow:hidden;background:color-mix(in srgb,var(--bg-1) calc(var(--glass-alpha) * .7),transparent);-webkit-backdrop-filter:blur(calc(var(--glass-blur) * 1.2)) saturate(1.8);backdrop-filter:blur(calc(var(--glass-blur) * 1.2)) saturate(1.8);border-bottom:1px solid var(--stroke-faint);box-shadow:inset 0 1px #ffffff0a;font-size:12px;user-select:none}#guestbar[hidden]{display:none}:root[data-theme=light] #guestbar{background:color-mix(in srgb,#fff 50%,transparent)}#guestbar[data-level=warm]{--fill: #fbbf24;--fill-2: #d97706}#guestbar[data-level=over]{--fill: #fb7185;--fill-2: #e11d48}.gb-fill{position:absolute;inset:0;transform-origin:left center;transform:scaleX(var(--pct));background:linear-gradient(90deg,color-mix(in srgb,var(--fill-2) 30%,transparent),color-mix(in srgb,var(--fill) 42%,transparent));box-shadow:inset -1px 0 color-mix(in srgb,var(--fill) 70%,transparent);transition:transform 1s linear,background var(--dur-slow) var(--ease-out);pointer-events:none}.gb-inner{position:relative;height:100%;display:flex;align-items:center;gap:12px;padding:0 10px 0 14px}.gb-text{flex:1;min-width:0;color:var(--text-2);font-weight:500;font-variant-numeric:tabular-nums}#guestbar[data-level=over] .gb-text{color:var(--text);font-weight:600}.gb-actions{display:flex;align-items:center;gap:10px}.gb-link{color:var(--muted);font-size:12px;font-weight:500}.gb-link:hover{color:var(--text)}.gb-cta.btn.sm{height:20px;padding:0 10px;font-size:11.5px;border-radius:7px}.gb-cta.pulse{animation:gb-pulse .9s var(--ease-spring) 1}@keyframes gb-pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--accent) 70%,transparent);transform:scale(1)}40%{transform:scale(1.08)}to{box-shadow:0 0 0 12px transparent;transform:scale(1)}}@media(max-width:720px){:root[data-guestbar]{--guestbar-h: 22px}#guestbar{font-size:11px}.gb-inner{padding:0 8px 0 10px;gap:8px}.gb-cta.btn.sm{height:16px;padding:0 8px;font-size:10.5px;border-radius:6px}.gb-link{display:none}}@media(prefers-reduced-motion:reduce){.gb-fill{transition:none}.gb-cta.pulse{animation:none}}:root[data-motion=reduce] .gb-fill{transition:none}.trial-gate-wrap{position:absolute;inset:0;z-index:50;display:grid;place-items:center;padding:16px;background:color-mix(in srgb,var(--bg-base) 55%,transparent);-webkit-backdrop-filter:blur(14px) saturate(1.4);backdrop-filter:blur(14px) saturate(1.4);container-type:inline-size}.trial-gate{display:flex;flex-direction:column;align-items:center;gap:14px;width:min(360px,100%);padding:28px 24px 24px;border-radius:var(--radius-xl);text-align:center}.trial-gate h2{font-size:18px;line-height:1.25}@container (max-width: 300px){.trial-gate{padding:20px 14px;gap:10px}.trial-gate h2{font-size:15px}}.game-card{--px: 50%;--py: 50%;position:relative;display:block;border-radius:var(--radius-lg);isolation:isolate;transform:translateZ(0);transition:transform .26s var(--ease-spring),box-shadow .32s var(--ease-out);box-shadow:0 1px #ffffff0f inset,var(--shadow-sm);outline-offset:3px;-webkit-tap-highlight-color:transparent}.gc-media{position:relative;aspect-ratio:16 / 9;border-radius:inherit;overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 22%,var(--bg-3)),var(--bg-2))}.gc-media:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px #ffffff14,inset 0 1px #ffffff24;background:radial-gradient(400px circle at var(--px) var(--py),rgba(255,255,255,.12),transparent 45%);opacity:0;transition:opacity var(--dur) var(--ease-out);pointer-events:none}.gc-cover,.gc-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out),opacity .4s var(--ease-out),filter .4s}.gc-cover.broken,.gc-video{opacity:0}.gc-video.on{opacity:1}.gc-shade{position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,transparent 38%,rgba(6,3,16,.25) 58%,rgba(6,3,16,.86) 100%);pointer-events:none;transition:opacity var(--dur)}.gc-tags{position:absolute;top:8px;left:8px;display:flex;gap:4px;z-index:2;opacity:0;transform:translateY(-4px);transition:opacity var(--dur),transform var(--dur) var(--ease-out)}.gc-top-right{position:absolute;top:8px;right:8px;display:flex;gap:4px;align-items:center;z-index:2}.gc-rating{color:#fde68a!important;gap:3px}.gc-rating .icon{fill:currentColor}.gc-fav{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;color:#fff;background:#0a061873;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.12);opacity:0;transform:scale(.8);transition:opacity var(--dur-fast),transform var(--dur-fast) var(--ease-spring),color var(--dur-fast)}.gc-fav.on{opacity:1;transform:none;color:#fb7185}.gc-fav.on .icon{fill:currentColor}.gc-rank{position:absolute;left:10px;bottom:34px;z-index:2;font:800 44px/1 var(--font-display);letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.85);text-shadow:0 4px 24px rgba(0,0,0,.5)}.gc-info{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:10px 12px;color:#fff;transform:translateY(18px);transition:transform .3s var(--ease-out)}.gc-title{font:650 14.5px/1.25 var(--font-display);letter-spacing:-.01em;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.45);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gc-meta{display:flex;gap:10px;margin-top:3px;font-size:11.5px;color:#ffffffb8;opacity:0;transition:opacity .3s var(--ease-out);white-space:nowrap;overflow:hidden}.gc-meta span{display:inline-flex;align-items:center;gap:4px}.game-card:hover,.game-card:focus-visible{transform:translateY(-4px);box-shadow:0 1px #ffffff1a inset,0 18px 40px -12px #03010ab3,0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent),0 12px 48px -8px var(--accent-glow)}.game-card:hover .gc-media:after{opacity:1}.game-card:hover .gc-cover{transform:scale(1.06)}.game-card:hover .gc-info{transform:none}.game-card:hover .gc-meta,.game-card:hover .gc-tags,.game-card:hover .gc-fav{opacity:1;transform:none}.game-card:active{transform:translateY(-1px) scale(.985)}.game-card.lg .gc-media{aspect-ratio:16 / 10}.game-card.lg .gc-title{font-size:17px}.skeleton-card{box-shadow:none}@media(hover:none){.gc-info{transform:none}.gc-tags{opacity:1;transform:none}}.game-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px 16px}@media(max-width:720px){.game-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.gc-title{font-size:13px}}.row-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,calc((100% - 64px)/5));gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:-14px calc(var(--page-pad) * -1) -18px;padding:14px var(--page-pad) 18px;scroll-padding:0 var(--page-pad)}.row-track::-webkit-scrollbar{display:none}.row-track>*{scroll-snap-align:start}@media(max-width:1100px){.row-track{grid-auto-columns:minmax(220px,calc((100% - 16px * 2) / 3))}}@media(max-width:720px){.row-track{grid-auto-columns:64%;gap:12px}.row-nav{display:none}}.row-nav:disabled{opacity:.3;pointer-events:none}.section-icon{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:9px;background:var(--accent-soft);color:var(--accent)}.home-hero{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:16px;margin-top:clamp(16px,3vh,32px)}@media(max-width:960px){.home-hero{grid-template-columns:1fr}}.spotlight{position:relative;min-height:clamp(300px,42vh,440px);border-radius:var(--radius-xl);overflow:hidden;isolation:isolate;border:1px solid var(--stroke);box-shadow:var(--specular),var(--shadow-lg);background:var(--bg-2)}.spot-slide{position:absolute;inset:0;opacity:0;transition:opacity .9s var(--ease-out);pointer-events:none}.spot-slide.on{opacity:1;pointer-events:auto}.spot-bg{position:absolute;inset:-6%;width:112%;height:112%;object-fit:cover;transform:scale(1.02);transition:transform 8s linear}.spot-slide.on .spot-bg{transform:scale(1.1)}.spot-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#07050feb,#07050f99 42%,#07050f0d 75%),linear-gradient(0deg,rgba(7,5,15,.7),transparent 45%)}.spot-body{position:absolute;z-index:2;left:clamp(20px,3.4vw,40px);bottom:clamp(20px,3.4vw,36px);right:30%;display:flex;flex-direction:column;gap:12px;color:#fff}.spot-body h1{color:#fff;font-size:clamp(30px,4vw,52px);text-shadow:0 2px 30px rgba(0,0,0,.4)}.spot-body p{color:#ffffffbf;font-size:14px}.spot-slide.on .spot-body>*{animation:rise .7s var(--ease-out) both}.spot-slide.on .spot-body>*:nth-child(2){animation-delay:60ms}.spot-slide.on .spot-body>*:nth-child(3){animation-delay:.12s}.spot-slide.on .spot-body>*:nth-child(4){animation-delay:.18s}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}.spot-dots{position:absolute;z-index:3;right:20px;bottom:20px;display:flex;gap:6px}.spot-dots button{width:7px;height:7px;border-radius:9px;background:#ffffff59;transition:width var(--dur) var(--ease-out),background var(--dur)}.spot-dots button.on{width:22px;background:#fff}.spot-body .tag{background:#ffffff1f;color:#fff;border-color:#ffffff2e}.spot-body .btn:not(.btn-primary){--btn-bg: rgba(255, 255, 255, .12);color:#fff;border-color:#fff3}.hello-card{display:flex;flex-direction:column;gap:14px;overflow:hidden}.hello-card h2{font-size:26px;letter-spacing:-.03em}.hello-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stat-tile{padding:12px;border-radius:14px;background:var(--surface-soft);border:1px solid var(--stroke-faint)}.stat-tile .v{font:700 20px var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.stat-tile .l{font-size:11.5px;color:var(--muted)}.quick-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.quick{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:var(--surface-soft);border:1px solid var(--stroke-faint);font-weight:550;font-size:13px;transition:background var(--dur-fast),transform var(--dur-fast) var(--ease-out),border-color var(--dur-fast)}.quick:hover{background:var(--surface-hover);border-color:var(--stroke);transform:translateY(-1px)}.quick .qi{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;color:#fff;background:linear-gradient(160deg,var(--t1),var(--t2));box-shadow:inset 0 1px #ffffff4d}.cat-strip{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px 0 6px}.cat-strip::-webkit-scrollbar{display:none}.lib-head{position:sticky;top:0;z-index:5;margin:0 calc(var(--page-pad) * -1);padding:14px var(--page-pad) 12px;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-base) 70%,transparent),transparent);-webkit-mask-image:linear-gradient(180deg,#000 80%,transparent);mask-image:linear-gradient(180deg,#000 80%,transparent)}.lib-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:8px;border-radius:18px}.lib-bar .field{flex:1 1 260px;height:40px;border-radius:12px}.lib-bar .field input{font-size:14.5px}.lib-filters{display:flex;gap:8px;margin-top:10px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.lib-filters::-webkit-scrollbar{display:none}.lib-count{font-size:12.5px;color:var(--muted);margin:6px 2px 14px}.load-more{display:grid;place-items:center;padding:30px 0 10px}.player{position:absolute;inset:0;display:grid;place-items:center;padding:10px 10px 76px}.stage{position:relative;width:100%;height:100%;border-radius:18px;overflow:hidden;background:#000;border:1px solid var(--stroke);box-shadow:var(--shadow-lg),0 0 80px -30px var(--accent-glow)}.stage iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000}.stage.theater{border-radius:0;border:0}.player.theater{padding:0}.stage-loader{position:absolute;inset:0;z-index:3;display:grid;place-items:center;overflow:hidden;transition:opacity .5s var(--ease-out),visibility .5s}.stage-loader.done{opacity:0;visibility:hidden}.stage-loader .bg{position:absolute;inset:-40px;width:calc(100% + 80px);height:calc(100% + 80px);object-fit:cover;filter:blur(40px) saturate(1.4) brightness(.55);transform:scale(1.1)}.loader-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px;padding:26px 34px;border-radius:22px;text-align:center;min-width:260px}.loader-card img.cover{width:220px;aspect-ratio:16 / 9;object-fit:cover;border-radius:12px;box-shadow:var(--shadow)}.loader-card .status{font-size:12.5px;color:var(--muted);min-height:18px}.loader-card .progress{width:200px}.loader-card .progress span{width:30%;animation:indeterminate 1.4s var(--ease-out) infinite}@keyframes indeterminate{0%{transform:translate(-100%)}to{transform:translate(340%)}}.pill{position:fixed;z-index:4500;left:50%;bottom:14px;transform:translate(-50%);display:flex;align-items:center;gap:2px;padding:6px;border-radius:18px;max-width:calc(100vw - 20px);transition:transform var(--dur) var(--ease-out),opacity var(--dur)}.pill .icon-btn{width:38px;height:38px;border-radius:12px}.pill .icon-btn.on{color:var(--accent)}.pill .icon-btn.on .icon{fill:color-mix(in srgb,currentColor 30%,transparent)}.pill .pill-sep{width:1px;height:22px;background:var(--stroke);margin:0 4px}.pill .pill-title{display:flex;align-items:center;gap:10px;padding:0 10px 0 4px;max-width:240px;min-width:0}.pill .pill-title img{width:44px;height:28px;border-radius:7px;object-fit:cover;flex:none}.pill .pill-title strong{font:650 13.5px var(--font-display);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pill .vote-count{font-size:11.5px;font-variant-numeric:tabular-nums;color:var(--muted);margin:0 4px 0 -2px;min-width:14px}.pill.hidden{transform:translate(-50%,calc(100% + 20px));opacity:0}body[data-route="/g/:slug"] #dock-wrap{transform:translateY(calc(100% + 30px))}body[data-route="/g/:slug"] #dock-wrap.peek{transform:none}@media(max-width:720px){.player{padding:0 0 calc(var(--dock-h) + 64px)}.stage{border-radius:0;border-width:0 0 1px}.pill{bottom:calc(var(--dock-h) + 8px + env(safe-area-inset-bottom));overflow-x:auto;scrollbar-width:none}.pill .pill-title{display:none}body[data-route="/g/:slug"] #dock-wrap{transform:none}}.source-switch{display:flex;gap:6px}.related-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;width:420px;max-width:calc(100vw - 40px);padding:6px}.hello-foot{display:flex;align-items:center;gap:8px;margin-top:auto;padding-top:4px}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 color-mix(in srgb,var(--ok) 60%,transparent);animation:live 2s var(--ease-out) infinite}@keyframes live{0%{box-shadow:0 0 color-mix(in srgb,var(--ok) 55%,transparent)}to{box-shadow:0 0 0 9px transparent}}@media(max-width:720px){.spot-body{right:20px}.spot-body .row{flex-wrap:wrap}.spot-dots{top:16px;bottom:auto}.mb-brand span{display:none}}.game-card .tag,.spot-body .tag{background:#0a061880;color:#f4f1ff;border-color:#ffffff24}.game-card .tag.opal,.spot-body .tag.opal{color:#f0c6ff}.game-card .tag.quartz,.spot-body .tag.quartz{color:#a5d8ff}.game-card .tag.jade,.spot-body .tag.jade{color:#86efac}.game-card .gc-rating{color:#fde68a!important}
