body { margin:0; background:linear-gradient(180deg,#081527,#12213f); color:#edf4ff; min-height:100vh; font:16px/1.6 system-ui,sans-serif; }
* { box-sizing:border-box; }
a { color:#a9d0ff; text-underline-offset:3px; }
a:hover { color:#fff; }
.account-shell { max-width:1200px; margin:auto; padding:24px; }
.account-shell.narrow { max-width:650px; }
.account-header { display:flex; justify-content:space-between; flex-wrap:wrap; gap:16px; margin-bottom:32px; }
.account-header nav { display:flex; flex-wrap:wrap; gap:20px; }
.account-card { background:#101e32; border:1px solid #344a66; border-radius:18px; padding:24px; margin:24px 0; }
h1,h2 { line-height:1.2; } h1 { font-size:clamp(1.7rem,4vw,2.4rem); }
.account-form { display:grid; grid-template-columns:minmax(0,1fr); gap:14px; } .account-form label { display:grid; gap:6px; }
input:not([type=checkbox]),select { width:100%; min-width:0; background:#081527; color:#fff; border:1px solid #6b809d; border-radius:8px; padding:12px; font:inherit; }
input[type=checkbox] { width:20px; height:20px; accent-color:#7eb7ff; vertical-align:middle; }
.account-form .check-label { display:flex; align-items:center; gap:10px; }
button,.account-button { display:inline-block; cursor:pointer; padding:12px 18px; background:#b5d6ff; color:#081527; font:inherit; font-weight:650; border:0; border-radius:9px; text-decoration:none; }
.account-button:hover { color:#081527; background:#d6e7ff; }
button:disabled { opacity:.6; cursor:wait; }
.account-message { padding:16px; border:1px solid #7eb7ff; border-radius:10px; background:#153150; }
.account-error { color:#ffb4b4; }
.account-muted { color:#bdcce0; }
.account-table-wrap { min-width:0; max-width:100%; overflow-x:auto; }
table { border-collapse:collapse; width:100%; text-align:left; }
th,td { padding:12px; border-bottom:1px solid #344a66; vertical-align:top; }
.account-filters { display:flex; align-items:end; flex-wrap:wrap; gap:12px; }
.account-filters label { display:grid; gap:6px; flex:1 1 150px; }
.account-filters label:first-child { flex-basis:250px; }
.account-actions { display:flex; align-items:center; flex-wrap:wrap; gap:16px; margin:18px 0; }
.account-details { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:20px; }
.account-details dt { color:#bdcce0; } .account-details dd { margin:0; overflow-wrap:anywhere; }
fieldset { min-width:0; padding:16px; border:1px solid #344a66; border-radius:10px; }
:focus-visible { outline:3px solid #ffcc80; outline-offset:3px; }
pre { white-space:pre-wrap; overflow-wrap:anywhere; }
@media(max-width:600px) { .account-shell { padding:16px; } .account-card { padding:18px; } th,td { padding:10px 8px; } }

.account-shell,.account-card,[data-policy-editor] { min-width:0; }
.account-permissions { display:flex; flex-wrap:wrap; gap:6px; list-style:none; margin:0; padding:0; min-width:130px; }
.account-league-badge { padding:4px 9px; font:inherit; font-size:.875rem; font-weight:500; border:1px solid #50749c; background:#17334d; color:#c9e0ff; }
.account-league-badge:hover,.account-league-badge:focus-visible { background:#244a6e; }
.account-tooltip { position:fixed; z-index:1000; max-width:calc(100vw - 24px); width:max-content; padding:10px 14px; border:1px solid #7898bd; border-radius:9px; background:#081527; color:#edf4ff; white-space:pre-line; box-shadow:0 8px 24px #0006; pointer-events:none; font-size:.875rem; }

.account-form .account-column-toggle { display:inline-flex; align-items:center; gap:8px; }
.account-column-toggle input[type=checkbox] { width:16px; height:16px; flex-shrink:0; margin:0; }
