.site-footer{background:var(--panel-bg);border:1px solid var(--panel-border);padding:12px;min-width:100%}.footer-inner{display:grid;gap:12px}.footer-title{font-size:1.1rem;margin:0}.social-links{display:flex;flex-wrap:wrap;gap:12px;padding:0;margin:0;list-style:none}.social-links a{color:var(--accent);text-decoration:none;font-weight:600}.social-links a:hover,.social-links a:focus{text-decoration:underline}.footer-inner.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:20px;align-items:start}.footer-brand{display:grid;gap:10px}.footer-tagline{margin:0;color:var(--muted);font-size:14px}.footer-nav{display:grid;gap:10px}.footer-subtitle{margin:0;font-size:.95rem;color:var(--heading)}.footer-links{list-style:none;padding:0;margin:0;display:grid;gap:8px}.footer-links a{color:#ffd38a;text-decoration:none;font-weight:600}.footer-links a:hover,.footer-links a:focus{text-decoration:underline}.footer-legal{border-top:1px solid var(--panel-border);margin-top:12px;padding-top:12px;display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}.legal-text{margin:0;color:var(--muted);font-size:12px}.legal-links{list-style:none;display:flex;gap:12px;padding:0;margin:0}.legal-links a{color:var(--accent);text-decoration:none;font-weight:600}@media (max-width: 720px){.footer-inner.footer-grid{grid-template-columns:1fr}}.site-topbar{background:var(--panel-bg);border-bottom:1px solid var(--panel-border);padding:10px 14px;width:100%;min-width:100%}.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:16px}.brand-link{display:flex;align-items:center;gap:8px;color:var(--heading);text-decoration:none;font-weight:700;font-size:1.05rem}.brand-link:hover,.brand-link:focus{text-decoration:underline}.brand-logo{height:38px;display:inline-block;object-fit:contain}.topbar-nav{display:flex;align-items:center;gap:14px}.nav-link{text-decoration:none;color:var(--accent);font-weight:600}.nav-link:hover,.nav-link:focus{text-decoration:underline}@media (max-width: 720px){.topbar-inner{flex-direction:column;align-items:stretch;gap:10px}.topbar-nav{justify-content:space-between;flex-wrap:wrap}}:root{--bg-1: #ffd944;--bg-2: #f7b500;--panel-bg: rgba(12, 14, 18, .92);--panel-border: #222635;--panel-glow: 0 24px 48px rgba(0, 0, 0, .35), inset 0 0 0 1px rgba(255, 255, 255, .04);--text: #e9ecf6;--muted: #9aa3b4;--heading: #f4f7ff;--accent: #6d5ef5;--primary: #ffcc33;--danger: #ef4444;--neutral: #2a2f3a;--ring: 0 0 0 3px rgba(255, 204, 51, .25);--radius: 16px;--radius-sm: 10px;--shadow: 0 10px 30px rgba(0, 0, 0, .35)}*{box-sizing:border-box}html,body{min-height:100%;min-width:100%;margin:0;justify-items:center}html{background:linear-gradient(180deg,var(--bg-1),var(--bg-2));background-attachment:fixed}body{margin:0;color:var(--text);background:transparent;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,Helvetica Neue,Arial,"Apple Color Emoji","Segoe UI Emoji"}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.page-shell{min-height:100vh;display:flex;justify-content:center;padding:24px}.content-panel{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-glow);padding:28px;min-width:40vw;max-width:95vw}.panel-header{text-align:center;margin-bottom:20px}.panel-title{margin:0 0 6px;font-weight:800;font-size:clamp(26px,3.6vw,36px);color:var(--heading);letter-spacing:.3px}.health-text{margin:0;color:var(--muted);font-size:14px}.input-wrap{display:grid;gap:6px}.input-label{font-size:12px;color:var(--muted)}.input-field{width:100%;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--panel-border);background:#161a22;color:var(--text);outline:none;transition:border-color .15s,box-shadow .15s,transform .02s}.input-field:focus{border-color:var(--primary);box-shadow:var(--ring)}.controls-col{display:grid;grid-template-columns:1fr;gap:14px}.auth-col{margin-top:22px}.auth-fields{display:grid;gap:10px}.auth-actions{display:grid;gap:8px;align-content:start;justify-self:center}.auth-actions.stacked{max-width:260px}.controls-col.auth-col{display:grid;grid-template-columns:1fr;gap:14px}.controls-row{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:end;margin-top:22px}.badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#1b2030;color:#cfe4ff;border:1px solid rgba(255,255,255,.06);font-weight:700;font-size:12px}.role-badge.admin{background:var(--primary);color:#111;border-color:#00000014}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border-radius:var(--radius-sm);border:1px solid transparent;font-weight:700;font-size:14px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .02s,filter .15s,background-color .15s,border-color .15s,color .15s}.button:active{transform:translateY(1px)}.button-primary{background:var(--primary);color:#111}.button-primary:hover{filter:brightness(1.05)}.button-accent{background:var(--accent);color:#fff}.button-accent:hover{filter:brightness(1.05)}.button-neutral{background:var(--neutral);color:#fff}.button-neutral:hover{filter:brightness(1.05)}.button-ghost{background:transparent;border-color:#3a4050;color:#ffd38a}.button-ghost:hover{background:#1a1f2a}.button-danger{background:var(--danger);color:#fff}.button-danger:hover{filter:brightness(1.05)}.button[disabled]{opacity:.45;cursor:not-allowed;filter:grayscale(.2);pointer-events:none}.games-section{margin-top:26px}.section-title{margin:0 0 12px;font-size:20px;font-weight:700}.games-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.game-card{display:grid;grid-template-columns:1fr auto;gap:10px;padding:14px;background:#121720;border:1px solid var(--panel-border);border-radius:12px}.game-info{display:grid;gap:4px}.game-id{margin:0;font-size:13px;color:#e9ecf5}.game-meta{margin:0;font-size:12px;color:var(--muted)}.game-actions{display:flex;gap:8px;flex-wrap:wrap}.empty-text{color:var(--muted);margin:6px 0 0;justify-self:center}.profile-card{display:grid;grid-template-columns:auto 1fr;gap:16px;padding:14px;background:#121720;border:1px solid var(--panel-border);border-radius:12px;margin-top:14px}.avatar-wrap{width:72px;height:72px;border-radius:50%;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:#0f131b;display:grid;place-items:center}.avatar-wrap img{width:100%;height:100%;object-fit:cover;display:block}.profile-main{min-width:0}.profile-top{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.user-name{display:flex;align-items:center;gap:10px;font-size:18px}.role-badge{padding:4px 8px;border-radius:999px;background:#1b2030;border:1px solid rgba(255,255,255,.06);font-size:12px;color:#cfe4ff;font-weight:700}.profile-actions{display:flex;gap:8px;flex-wrap:wrap}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:10px;margin-top:10px}.stat{background:#0f141d;border:1px solid var(--panel-border);border-radius:10px;padding:10px 12px}.stat-num{font-weight:800;font-size:18px}.stat-label{color:var(--muted);font-size:12px}.profile-cta{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.friends-overlay-message{position:fixed;top:0;right:0;bottom:0;left:0;background:#070a12d1;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.friends-overlay-card{background:#10141eeb;color:#f5f6f9;padding:24px;border-radius:16px;border:1px solid rgba(255,255,255,.1);text-align:center;display:grid;gap:16px;max-width:340px}@media (max-width: 720px){.controls-row,.game-card,.profile-card{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}}
