/* One visual language across public pages, player tools and administration. */
:root{--accent-rgb:139,92,246;--accent-a:#8b5cf6;--accent-b:#c4b5fd;--surface:linear-gradient(145deg,var(--bg-3),var(--bg-2));--card-shadow:0 16px 48px #00000020;--bg-1:var(--bg);--motion-ease:cubic-bezier(.22,1,.36,1)}
html[data-theme=graphite]{--bg:#101112;--bg-2:#191a1c;--bg-3:#222326;--bg-glass:#ffffff04;--bg-glass-2:#ffffff09;--border:#ffffff13;--border-hover:#ffffff29;--text:#f2f3f5;--text-2:#b0b2bb;--text-3:#898c98;--accent-rgb:113,185,250;--accent-a:#6ec7fa;--accent-b:#9b75ff;--emerald:#9b75ff;--emerald-light:#bba6ff;--emerald-dark:#6144ac;--emerald-glow:#9b75ff30;--emerald-soft:#9b75ff12;--purple:var(--emerald);--purple-light:var(--emerald-light);--purple-dark:var(--emerald-dark);--purple-glow:var(--emerald-glow);--purple-soft:var(--emerald-soft);--gold:#bfa5ff;--diamond:#78b8fb;--surface:linear-gradient(150deg,#222326,#191a1c);--card-shadow:0 16px 48px #00000028;color-scheme:dark}
html body{background-color:var(--bg);background-image:radial-gradient(ellipse at 10% 0,rgba(var(--accent-rgb),.065),transparent 55%),radial-gradient(ellipse at 95% 30%,var(--emerald-soft),transparent 45%)}
html[data-theme=graphite] body{background-image:radial-gradient(ellipse at 8% 0,#6ec7fa06,transparent 55%)}
html :is(.l-card,.panel-card,.wallet,.simple-card,.webplay-card,.settings-card,.admin-layout .card){background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);transition:border-color .3s,box-shadow .3s,transform .4s var(--motion-ease);position:relative}
html :is(.l-card,.panel-card,.wallet,.simple-card,.webplay-card,.settings-card,.admin-layout .card):hover{border-color:var(--border-hover);box-shadow:0 20px 60px #00000030}
html :is(.l-link-card,.board-category,.l-member,.wallet):hover{transform:translateY(-4px);border-color:rgba(var(--accent-rgb),.4)}
html :is(.l-card,.panel-card,.wallet,.simple-card,.webplay-card) h2{font-family:'Space Grotesk',sans-serif;letter-spacing:-.025em}
html :is(.l-hero,.panel-heading,.webplay-head){position:relative;isolation:isolate}
html .l-hero{padding:64px 24px 54px;margin-bottom:24px;border-radius:var(--radius-xl);overflow:hidden}
html .l-hero:before{inset:0;z-index:-2;background:linear-gradient(180deg,transparent,var(--bg)),linear-gradient(90deg,var(--bg),transparent,var(--bg)),url('/img/spawn.png') center 52%/cover;opacity:.18;transform:scale(1.03)}
html .l-hero:after{content:'';position:absolute;z-index:-1;pointer-events:none;width:240px;height:240px;right:3%;top:10%;border:1px solid rgba(var(--accent-rgb),.13);border-radius:34px;transform:rotate(35deg);animation:ludere-orbit 18s ease-in-out infinite}
html :is(.l-hero h1,.panel-heading h1,.webplay-head h1){font-family:'Space Grotesk',sans-serif;letter-spacing:-.055em;font-weight:700}
html :is(.l-hero em,.hero-title .gradient-text){background:linear-gradient(110deg,var(--accent-a),var(--accent-b));background-clip:text;-webkit-background-clip:text;color:transparent}
html .l-hero .pixel-tag,html .eyebrow{color:var(--emerald-light);font-weight:700;font-size:.7rem;letter-spacing:.16em}
html .l-hero .pixel-tag{display:inline-flex;padding:7px 14px;border:1px solid rgba(var(--accent-rgb),.24);background:var(--emerald-soft);border-radius:999px}
html :is(.l-hero,.webplay-head) .l-actions{justify-content:center}
html :is(.btn,.panel-button,.webplay-btn){transition:transform .25s var(--motion-ease),box-shadow .25s,background .25s,border-color .25s;cursor:pointer;font-family:inherit}
html .btn-primary,html .webplay-btn{background:linear-gradient(120deg,var(--emerald),var(--emerald-dark));color:#fff;box-shadow:0 6px 24px var(--emerald-glow);border:1px solid transparent}
html[data-theme=graphite] .btn-primary,html[data-theme=graphite] .webplay-btn{background:linear-gradient(110deg,var(--accent-a),var(--accent-b));color:#11121a;font-weight:700;box-shadow:0 6px 24px #9b75ff1c}
html :is(.btn-secondary,.panel-button,.btn-outline){color:var(--text);background:var(--bg-glass);border:1px solid var(--border-hover);border-radius:12px}
html :is(.btn,.panel-button,.webplay-btn):hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--emerald-soft)}
html :is(.btn,.panel-button,.webplay-btn):active{transform:translateY(0)}
html :is(.btn,.panel-button){white-space:normal;text-align:center}
html :is(input,select,textarea){accent-color:var(--emerald)}
html :is(input,select,textarea):focus-visible{outline:2px solid var(--emerald-light);outline-offset:3px;box-shadow:0 0 0 5px var(--emerald-soft)}
html :is(a,button,summary):focus-visible{outline:2px solid var(--emerald-light);outline-offset:4px}
html :is(.player-hero,.pass-card,.power-card){background:var(--surface);border-color:rgba(var(--accent-rgb),.25)}
html :is(.hero-level,.board-category.active,.job-tabs a.active){background:var(--emerald-soft);border-color:var(--emerald);color:var(--text)}
html .board-category.active{box-shadow:inset 0 -3px var(--emerald)}
html :is(.hero-level small,.hero-rank strong,.board-category i,.sync-note a,.panel-notice a){color:var(--emerald-light)}
html .my-row{background:var(--emerald-soft)}html .my-row td{color:var(--text)}
html .panel-notice{background:var(--bg-2);border-color:var(--border-hover)}
html :is(.board-category,.job-tabs a){transition:transform .3s,border-color .3s,background .3s}
html :is(.board-table,.account-table,.table) tbody tr{transition:background .2s}
html :is(.board-table,.account-table,.table) tbody tr:hover{background:var(--bg-glass-2)}
html .l-skin{background:radial-gradient(ellipse at bottom,rgba(var(--accent-rgb),.18),transparent 75%)}
html .l-skin img{transition:transform .5s var(--motion-ease)}html .l-member:hover .l-skin img{transform:translateY(-5px) scale(1.025)}
html .l-pill{color:var(--emerald-light);border-color:rgba(var(--accent-rgb),.25);background:var(--emerald-soft)}
html .l-section-heading{padding-top:12px}html .l-section-heading:after{content:'';height:1px;flex:1;background:linear-gradient(90deg,var(--border-hover),transparent)}
html .appearance-control{margin:8px 6px;padding:8px 0;border-bottom:1px solid var(--border)}
html .appearance-control button{width:100%;display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg-3);border:1px solid var(--border);border-radius:12px;color:var(--text);font:500 .8rem 'Inter',sans-serif;cursor:pointer;text-align:left}
html .appearance-control button:hover{border-color:var(--emerald)}
html .appearance-control small{display:block;font-size:.65rem;color:var(--text-2);margin-top:4px}
html .appearance-swatch{flex:0 0 23px;height:23px;border-radius:50%;background:linear-gradient(130deg,#6ec7fa,#9b75ff);border:4px solid #202124}
html .user-dropdown{min-width:280px}
html .admin-layout .sidebar{border-right:1px solid var(--border)}
html .admin-layout .card{margin-bottom:24px}
html[data-theme=graphite] :is(.navbar,.navbar.scrolled,.nav-dropdown-menu,.user-dropdown,.mobile-menu){background:#191a1cf5;border-color:var(--border)}
html[data-theme=graphite] :is(.hero-bg-overlay,.rules-hero .hero-bg-overlay,.settings-hero .hero-bg-overlay){background:linear-gradient(180deg,#10111270,#101112e6 85%,#101112)}
html[data-theme=graphite] :is(.hero-shapes,.hero-particles){opacity:.45}
html[data-theme=graphite] :is(.rules-category,.discord-cta-inner,.feature-card,.stat-card){background:var(--surface);border-color:var(--border)}
html[data-theme=graphite] :is(.hero-title,.rules-hero h1,.settings-hero h1) span{background-image:linear-gradient(100deg,var(--accent-a),var(--accent-b))}
html[data-theme=graphite] .footer{background:var(--bg-2);border-color:var(--border)}
html[data-theme=graphite] ::-webkit-scrollbar-thumb{background:#44464c}
html[data-theme=graphite] ::selection{background:#9b75ff;color:#101112}
@keyframes ludere-orbit{50%{transform:translateY(-16px) rotate(42deg)}}
@media(max-width:700px){html .l-hero{padding:38px 12px 32px}html .l-hero h1{font-size:clamp(2.3rem,10vw,3.3rem)}html .l-hero:after{width:160px;height:160px}html .player-panel .panel-heading h1{font-size:2.3rem}html .user-dropdown{min-width:min(280px,calc(100vw - 32px));right:0}html .admin-layout .appearance-control{min-width:220px}html .l-hero p{font-size:.95rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}html *,html *:before,html *:after{animation:none!important;transition:none!important}html [data-reveal],html [data-stagger]{opacity:1!important;transform:none!important}}

html[data-theme=graphite] :is(.hero-stats,.ip-chip,.server-status-card,.rules-toc,.settings-section,.modal-content){background-color:var(--bg-2);border-color:var(--border)}
html[data-theme=graphite] #adminBar{background:#191a1cf5;border-color:var(--border)}
html[data-theme=graphite] .hero-title .accent{background-image:linear-gradient(100deg,var(--accent-a),var(--accent-b));text-shadow:none}
html .ideas-page .l-hero:before{opacity:.12}
html .simple-page-wrap{min-height:75vh}
@media(hover:none){html :is(.l-link-card,.board-category,.l-member,.wallet):hover{transform:none}}

html .appearance-control .appearance-settings-link{display:block;padding:10px 4px;font-size:.75rem;color:var(--emerald-light);text-decoration:none}
