:root{color-scheme:dark;--bg:#0b101b;--panel:#141c2b;--line:#283348;--muted:#9caac1;--fg:#eef3fc;--accent:#7c9bff;--accent2:#a8baff;--danger:#ff858d;--green:#75d6aa}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 15% -10%,#192744 0,transparent 45%),var(--bg);font:15px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--fg);min-height:100vh}a{color:var(--accent2);text-decoration:none}a:hover{text-decoration:underline}.shell{max-width:1180px;margin:auto;padding:0 22px}.topbar{border-bottom:1px solid var(--line);background:#0e1521e8}.topbar-inner{height:74px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{font-weight:800;font-size:20px;color:var(--fg);display:flex;gap:9px;align-items:center}.brand:hover{text-decoration:none}.accent{color:var(--accent2)}nav{display:flex;align-items:center;gap:18px}main.shell{padding-top:42px;padding-bottom:48px;min-height:70vh}.foot{border-top:1px solid var(--line);padding:24px 22px 32px;font-size:12px;color:var(--muted)}h1{font-size:clamp(28px,4vw,40px);letter-spacing:-.04em;line-height:1.2;margin:8px 0 10px}h2{font-size:19px;margin:0 0 16px}h3{font-size:15px;margin:22px 0 6px}.muted{color:var(--muted)}.small{font-size:12px}.eyebrow{font-size:11px;letter-spacing:.18em;color:var(--accent2);font-weight:800;margin:0}.panel{background:linear-gradient(145deg,#182236,#121a28);border:1px solid var(--line);border-radius:16px;padding:24px;margin-bottom:20px;box-shadow:0 14px 45px #0002}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:20px}.stat{border:1px solid var(--line);border-radius:14px;padding:18px 22px;background:#121b2b}.stat span{display:block;color:var(--muted);font-size:12px}.stat strong{font-size:28px;display:block;margin-top:4px}.stack{display:flex;flex-direction:column;gap:15px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.inline-form{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.inline{display:inline}.search{margin-bottom:20px}.search-row{display:flex;gap:9px}.search-row input{flex:1}label{display:block;color:#c6d2e7;font-size:13px;font-weight:600;margin-bottom:6px}input,select,textarea{width:100%;background:#0d1523;color:var(--fg);border:1px solid #3a4760;border-radius:9px;padding:11px 12px;font:inherit;min-width:0}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px}input[type=checkbox]{width:auto;accent-color:#7796ff}.check{display:flex;gap:10px;align-items:center;font-weight:500;margin:0}.check input{flex-shrink:0}.button,button{display:inline-block;background:#647cf4;color:white;border:1px solid transparent;border-radius:9px;padding:11px 15px;font:600 14px/1.3 system-ui,sans-serif;cursor:pointer;text-align:center;white-space:nowrap}.button:hover,button:hover{filter:brightness(1.12);text-decoration:none}.button.secondary,button.secondary{background:#243249;border-color:#35435a;color:#e1eaff}.button.discord{background:#5865f2}.button.full{display:block;width:100%;margin-top:24px}.button.danger,button.danger{background:#682a3b;color:#ffe2e6;border-color:#95455a}.text-button{padding:0;background:none;border:0;color:var(--accent2)}.small-button{font-size:12px;padding:7px 9px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700}th,td{padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:middle}tr:last-child td{border-bottom:0}.empty{text-align:center;color:var(--muted);padding:32px}.game-chip{font-weight:650;color:#c8d7ff}.pill{background:#27344a;color:#c5d4ee;border:1px solid #394961;padding:4px 8px;border-radius:999px;font-size:11px;white-space:nowrap}.pill.ok{color:var(--green);border-color:#28614c}.pill.off{color:var(--danger);border-color:#70404a}.mono{font-family:ui-monospace,monospace}.back{display:inline-block;margin-bottom:20px}.details{margin:0}.details>div{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid var(--line)}dt{color:var(--muted)}dd{margin:0;text-align:right;overflow-wrap:anywhere}.pre-wrap{white-space:pre-wrap;overflow-wrap:anywhere}.notice{padding:12px 14px;background:#253149;border-radius:9px}.success-notice{border:1px solid #2b6a50;background:#123a2b;padding:14px 18px;border-radius:9px;margin-bottom:20px}.danger-zone{border-color:#683546}.auth-wrap{display:flex;justify-content:center;align-items:center;min-height:65vh}.auth-card{max-width:490px;width:100%;padding:40px}.auth-card h1{font-size:34px}.emblem{display:grid;place-items:center;width:58px;height:58px;background:#263766;border-radius:15px;color:#a8baff;font-size:34px;margin-bottom:24px}.narrow{max-width:650px}.secret{font-size:20px;font-family:ui-monospace,monospace;letter-spacing:.02em}.auth-card .small{margin-bottom:0}code{color:#a6c1ff;overflow-wrap:anywhere}@media(max-width:740px){.grid,.form-grid{grid-template-columns:1fr}.heading{align-items:flex-start;flex-direction:column}.topbar-inner{height:auto;min-height:70px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.hide-mobile{display:none}.panel{padding:18px}.search-row{flex-wrap:wrap}.search-row input{min-width:100%}.stats{gap:10px}nav{gap:10px}}

.copy-row{display:flex;gap:8px;align-items:center;margin-bottom:18px}.copy-row input{flex:1}.copy-row button{flex-shrink:0}.copy-row button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:740px){.copy-row{flex-wrap:wrap}.copy-row input{flex-basis:100%}}

/* Rangfarben: ausschließlich visuelle Unterscheidung, keine offiziellen Rang-Icons.
   Palette auf Wunsch unter diesen Klassen individuell anpassbar. */
.snd-badge{
  --rank-bg:#283348;--rank-color:#e5eaf5;--rank-border:#566681;
  display:inline-block;padding:.34rem .72rem;border:1px solid var(--rank-border);
  border-radius:10px;background:var(--rank-bg);color:var(--rank-color);
  font-size:.86em;font-weight:800;letter-spacing:.025em;line-height:1.5;
  white-space:nowrap;box-shadow:inset 0 1px 0 #ffffff12,0 2px 9px #0002;
}
.snd--bronze{--rank-bg:#33251f;--rank-color:#f8bc94;--rank-border:#aa6a45}
.snd--silver{--rank-bg:#222d3c;--rank-color:#e6efff;--rank-border:#90a4b9}
.snd--gold{--rank-bg:#392d10;--rank-color:#ffe18a;--rank-border:#d8ac35}
.snd--platinum{--rank-bg:#112e55;--rank-color:#91d0ff;--rank-border:#459dea}
.snd--diamond{--rank-bg:#143c2f;--rank-color:#9af3b4;--rank-border:#36b87a}
.snd--master{--rank-bg:#30244a;--rank-color:#d5b8ff;--rank-border:#9670e4}
.snd--grandmaster{--rank-bg:#4d2025;--rank-color:#ffb7b9;--rank-border:#ed616c}
.snd--legend{--rank-bg:#412514;--rank-color:#ffcb81;--rank-border:#e48b30}
.snd--mythical{--rank-bg:#15274b;--rank-color:#b5d2ff;--rank-border:#4a7de6}
.snd--epical{--rank-bg:#27401a;--rank-color:#d2ffa0;--rank-border:#85be41}
.snd--titan{--rank-bg:#4c1a42;--rank-color:#ffc3ee;--rank-border:#e365be}
.snd--top100{--rank-bg:#393319;--rank-color:#fff5b0;--rank-border:#e6c65f}
.snd--unranked{--rank-bg:#263141;--rank-color:#ccd6e7;--rank-border:#566984}

.bulk-accounts{max-height:285px;overflow-y:auto;border:1px solid #334866;border-radius:10px;padding:12px;display:grid;gap:8px}.bulk-actions{display:flex;gap:10px;flex-wrap:wrap}.bulk-accounts .check{display:flex;align-items:center;gap:8px}

/* Spieltermin-Filter und Countdown */
.filter-search{display:grid;grid-template-columns:1fr 1.2fr;gap:12px}
.filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}
.filter-actions{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}
.accounts-table{min-width:1050px}
.play-pill{display:inline-block;border-radius:9px;padding:5px 10px;font-size:12px;font-weight:700;white-space:nowrap;border:1px solid #4a5a76}
.play-ok{background:#143c2f;color:#a6f1c5;border-color:#277f59}
.play-soon{background:#443518;color:#ffdc91;border-color:#a57c2f}
.play-due,.play-overdue{background:#4a2027;color:#ffb5bb;border-color:#b45164}
.play-unknown{background:#293144;color:#c2cde0;border-color:#55617b}
@media (max-width:740px){.filter-search,.filter-grid{grid-template-columns:1fr}}

/* Historical seasons are intentionally neutral, unlike current ranked badges. */
.previous-rank{font-weight:600;color:#cbd5e1;display:inline-block;white-space:nowrap}
.archive-list{display:grid;gap:.5rem;margin:1rem 0}
.archive-entry{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;border-bottom:1px solid #344053;padding:.4rem 0}
.archive-entry strong{min-width:5rem}
.season-control details{padding:.5rem 0}
.season-control summary{cursor:pointer;color:#cbd5e1}
.season-control .danger{background:#8a2e3b}

/* On-demand password reveal in dashboard (plain text never delivered in initial HTML). */
.inline-vault{min-width:140px;max-width:225px;display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.inline-vault-mask{font-size:12px;color:#c9d3e5;white-space:nowrap}
.inline-vault-secret{width:100%;padding:6px 8px;font-size:12px;min-height:29px;letter-spacing:0}
.inline-vault-actions{display:flex;flex-wrap:wrap;gap:5px}
.inline-vault-actions button{padding:5px 8px}
.inline-vault-status{max-width:195px;overflow-wrap:anywhere}

/* GamingVault left navigation and personal Watchlist */
.app-layout{display:flex;min-height:100vh}.sidebar{position:sticky;top:0;align-self:flex-start;display:flex;flex-direction:column;width:260px;flex:0 0 260px;height:100vh;padding:25px 13px 18px;background:#0d1220;border-right:1px solid #283247;overflow-y:auto}.app-main{min-width:0;flex:1}.app-main main.shell,.app-main footer.shell{max-width:1600px}.side-brand{display:flex;align-items:center;gap:12px;color:#f1f5ff;font-size:20px;font-weight:800;padding:6px 10px 28px}.side-brand:hover{text-decoration:none}.side-brand-icon{display:grid;place-items:center;width:39px;height:39px;border-radius:12px;background:#253355;color:#b3c5ff;font-size:25px}.side-brand small{display:block;font-size:9px;letter-spacing:.18em;color:#8796b0;font-weight:750}.side-label{font-size:10px;letter-spacing:.19em;color:#71809c;font-weight:800;padding:0 12px;margin:9px 0 13px}.side-label-admin{margin-top:26px}.side-link{display:flex;align-items:center;gap:12px;padding:12px 11px;border-radius:11px;color:#aebbd1;border:1px solid transparent;margin-bottom:5px}.side-link:hover{background:#1b2538;color:#fff;text-decoration:none}.side-link.active{background:#232d41;border-color:#3d4b65;color:#fff;box-shadow:inset 3px 0 #8aa5ff}.side-link strong,.side-link small{display:block}.side-link strong{font-size:14px}.side-link small{font-size:10px;color:#9aa9c0;line-height:1.35;margin-top:3px}.side-icon{font-size:22px;line-height:1;width:24px;text-align:center;color:#a9baff}.side-bottom{margin-top:auto;border-top:1px solid #2a354a;padding:17px 10px 4px;display:flex;flex-direction:column;gap:4px;overflow-wrap:anywhere}.side-bottom .side-label{padding:0;margin:0 0 6px}.side-bottom>small{color:#8190aa;font-size:10px}.side-logout{width:100%;text-align:left;background:#1b2739;color:#cbd8f0;margin-top:11px}.mobile-top{display:none}.watchlist-count{border:1px solid #47577a;border-radius:12px;background:#1a2740;padding:10px 14px;color:#c8d7ff;font-weight:800;white-space:nowrap}.watchlist-add-form{display:grid;grid-template-columns:minmax(220px,2fr) minmax(160px,1fr) auto;gap:13px;align-items:end}.watchlist-add-form button{min-height:46px}.watchlist-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:15px}.watchlist-card{padding:20px;background:#101a2a;border:1px solid #34435b;border-radius:15px;min-width:0}.watchlist-card-top{display:flex;justify-content:space-between;gap:10px}.watchlist-card h3{font-size:19px;margin:6px 0 5px;overflow-wrap:anywhere}.watchlist-kicker{font-size:10px;letter-spacing:.14em;font-weight:800;color:#8799b7}.watchlist-status{border:1px solid #596078;color:#b5bed3;background:#273044;border-radius:99px;padding:4px 8px;font-size:10px;white-space:nowrap;height:max-content}.watchlist-status.ok{border-color:#317457;background:#153b30;color:#99ebc1}.watchlist-rank{padding:19px 0 17px}.watchlist-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-top:1px solid #2d3950;border-bottom:1px solid #2d3950;padding:13px 0}.watchlist-meta>div{display:flex;flex-direction:column;gap:2px}.watchlist-meta span{font-size:11px;color:#9cabc3}.watchlist-meta strong{font-size:13px}.watchlist-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:15px}.watchlist-actions form{margin:0}.watchlist-rename summary{cursor:pointer;font-size:12px;color:#afc4f5}.watchlist-rename[open]{flex-basis:100%}.watchlist-rename form{display:flex;gap:8px;margin-top:8px}.watchlist-empty{padding:32px;text-align:center;border:1px dashed #45546d;border-radius:13px;grid-column:1/-1}.watchlist-empty>span{font-size:35px;color:#93aaff}.watchlist-empty h3{font-size:20px}.page-head{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}
@media(max-width:900px){.sidebar{width:205px;flex-basis:205px}.side-link{gap:8px}.side-link small{font-size:9px}.app-main main.shell{padding-left:18px;padding-right:18px}.watchlist-add-form{grid-template-columns:1fr 1fr}.watchlist-add-form button{grid-column:1/-1}}
@media(max-width:650px){.app-layout{display:block}.sidebar{position:static;width:100%;height:auto;flex-direction:row;flex-wrap:wrap;align-items:center;padding:8px 12px;gap:5px}.side-brand{padding:6px 10px 8px;width:100%}.side-label,.side-bottom{display:none}.side-link{flex:1 1 140px;padding:9px}.side-link small{display:none}.side-icon{font-size:18px}.mobile-top{display:none}.app-main main.shell{padding:24px 15px}.watchlist-add-form{grid-template-columns:1fr}.watchlist-add-form button{grid-column:auto}.watchlist-count{align-self:flex-start}}
