:root{
  --brand:#c8102e;--brand-dark:#941025;--ink:#172033;--muted:#6b7280;--line:#e5e7eb;
  --soft:#f4f6f9;--card:#fff;--nav:#111827;--success:#15945f;--warning:#d18b16;--danger:#bd2c2c;
  --live-bg:#07111f;--live-card:#101d2e;--live-line:#26364b;--live-text:#f7fafc;--live-muted:#9aa9bd;
  --radius:16px;--shadow:0 10px 30px rgba(17,24,39,.08)
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink)}
a{color:inherit}.brand-mark{width:40px;height:40px;border-radius:12px;background:linear-gradient(145deg,#ed3653,var(--brand-dark));color:#fff;display:grid;place-items:center;font-weight:900;box-shadow:0 7px 18px rgba(200,16,46,.28)}.brand-mark.large{width:54px;height:54px;border-radius:16px;font-size:24px;margin:0 auto 18px}.eyebrow{text-transform:uppercase;letter-spacing:.11em;font-size:11px;font-weight:850;color:#8d9bb0}
button,input,select{font:inherit}button,.button{border:0;border-radius:10px;background:#202b3c;color:#fff;padding:10px 14px;font-weight:800;font-size:13px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;transition:.15s ease}.button:hover,button:hover{transform:translateY(-1px);background:#303d50}.button.primary,button.primary{background:var(--brand)}.button.danger,button.danger{background:var(--danger)}.button.small{padding:7px 10px;font-size:12px}.button:disabled,button:disabled{opacity:.45;cursor:not-allowed;transform:none}
input,select{width:100%;border:1px solid #cfd6df;background:#fff;color:var(--ink);border-radius:10px;padding:11px 12px;outline:none}input:focus,select:focus{border-color:#d8324d;box-shadow:0 0 0 3px rgba(200,16,46,.12)}label{font-size:13px;font-weight:750;color:#394457;display:grid;gap:7px}.stack-form{display:grid;gap:15px}.muted{color:var(--muted)}code{background:#f1f3f6;padding:2px 5px;border-radius:5px}
.landing-body{min-height:100vh;background:#eef1f5;display:grid;place-items:center;padding:20px}.landing-card,.access-card{width:min(520px,100%);background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 20px 60px rgba(17,24,39,.12);padding:38px;text-align:center}.landing-card h1,.access-card h1{margin:8px 0 10px;font-size:28px;letter-spacing:-.025em}.landing-card p,.access-card p{color:var(--muted);margin:0}.pin-form{display:flex;gap:10px;margin-top:22px}.pin-form input{flex:1}.inline-error{background:#fff0ef;color:#9c261e;border:1px solid #f0c6c2;padding:11px 12px;border-radius:10px;font-size:13px;margin-top:16px}.admin-login-card{text-align:left}.admin-login-card .brand-mark{margin-left:0}.admin-login-card h1{margin-top:7px}.admin-login-card .stack-form{margin-top:22px}
.admin-body{background:var(--soft);min-height:100vh}.admin-topbar{background:var(--nav);color:#fff;position:sticky;top:0;z-index:30;box-shadow:0 5px 20px rgba(0,0,0,.16)}.admin-topbar-inner{max-width:1440px;margin:auto;min-height:70px;padding:0 22px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand span:last-child{display:flex;flex-direction:column}.brand strong{font-size:15px}.brand small{font-size:10px;color:#aeb8c8;margin-top:2px}.admin-topbar nav{display:flex;gap:6px}.admin-topbar nav a{text-decoration:none;color:#cbd3df;font-size:13px;font-weight:750;padding:10px 11px;border-radius:8px}.admin-topbar nav a:hover{background:rgba(255,255,255,.08);color:#fff}.admin-main{max-width:1440px;margin:auto;padding:28px 22px 50px}.page-heading h1{margin:0 0 20px;font-size:29px;letter-spacing:-.03em}.notice{padding:13px 15px;border-radius:11px;border:1px solid;margin-bottom:18px;font-size:13px;font-weight:700}.notice-ok{background:#eaf8f1;color:#176943;border-color:#c3e7d3}.notice-error{background:#fff0ef;color:#9c261e;border-color:#efc7c3}.admin-actions{margin-bottom:16px}.admin-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:20px;margin-bottom:18px}.table-card{padding:0;overflow:auto}.admin-table{width:100%;border-collapse:collapse;min-width:760px}.admin-table th,.admin-table td{padding:13px 15px;border-bottom:1px solid var(--line);text-align:left;font-size:13px;vertical-align:middle}.admin-table th{background:#f7f8fa;color:#626d7e;text-transform:uppercase;letter-spacing:.045em;font-size:10px}.admin-table tr:last-child td{border-bottom:0}.admin-table td small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.narrow-card{max-width:760px}.status{display:inline-flex;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.04em;background:#eceff3;color:#556173}.status-ready{background:#e7f7ef;color:#116f47}.status-new,.status-priming,.status-catchup{background:#fff5da;color:#805400}.status-error{background:#ffeded;color:#9c201c}.event-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:#657083;font-size:12px;margin:-11px 0 18px}.event-meta>span:not(.status){background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 9px}.admin-grid{display:grid;gap:14px}.stats-row{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.stat-card{margin:0}.stat-card>span{font-size:11px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.055em}.stat-card>strong{display:block;font-size:28px;margin:8px 0 5px;letter-spacing:-.035em}.stat-card>strong.small-strong{font-size:21px}.stat-card>small{color:var(--muted)}.card-heading{display:flex;justify-content:space-between;gap:18px;margin-bottom:16px}.card-heading h2{margin:0 0 5px;font-size:18px}.card-heading p{margin:0;color:var(--muted);font-size:13px;max-width:840px}.progress-track{height:12px;background:#e9edf2;border-radius:999px;overflow:hidden;margin:16px 0}.progress-bar{height:100%;background:linear-gradient(90deg,var(--brand),#eb536b);border-radius:inherit;transition:width .25s ease}.actions-row{display:flex;align-items:center;gap:13px;flex-wrap:wrap}.type-list{border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:14px}.type-row{display:flex;align-items:center;gap:12px;padding:11px 13px;border-bottom:1px solid var(--line);cursor:pointer}.type-row:last-child{border-bottom:0}.type-row:hover{background:#fafbfc}.type-row input{width:auto}.type-row span{display:flex;flex-direction:column;gap:2px}.type-row small{color:var(--muted);font-weight:500}.link-create-grid{display:grid;grid-template-columns:1.4fr .8fr 1fr auto;gap:12px;align-items:end}.form-button-cell{padding-bottom:1px}.new-link-box{margin-top:18px;background:#eef8f3;border:1px solid #bfe2cf;border-radius:12px;padding:15px}.new-link-box>strong{display:block;color:#126a45;margin-bottom:9px}.copy-line{display:flex;gap:8px}.copy-line input{font-family:Consolas,monospace;font-size:12px}.pin-display{margin-top:9px;font-size:13px}.link-list{margin-top:18px}.link-row{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}.link-row small{display:block;color:var(--muted);margin-top:4px;font-size:11px}.link-row form{margin:0}.empty-cell{text-align:center!important;color:var(--muted)!important;padding:28px!important}
.live-body{background:var(--live-bg);color:var(--live-text);min-height:100vh}.live-shell{max-width:1500px;margin:0 auto;padding:26px 24px 34px}.live-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px}.live-header h1{font-size:34px;letter-spacing:-.035em;margin:5px 0 6px}.event-date{color:var(--live-muted);font-size:13px}.sync-pill{display:flex;align-items:center;gap:8px;border:1px solid var(--live-line);background:#0d1928;border-radius:999px;padding:8px 11px;color:#c8d3e2;font-size:12px;font-weight:750}.sync-dot{width:8px;height:8px;border-radius:50%;background:#32d58a;box-shadow:0 0 0 4px rgba(50,213,138,.11)}.has-warning .sync-dot{background:#efad3c;box-shadow:0 0 0 4px rgba(239,173,60,.12)}.metrics-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:18px}.metric{background:var(--live-card);border:1px solid var(--live-line);border-radius:15px;padding:17px 16px;min-height:108px}.metric-primary{background:linear-gradient(145deg,#b11532,#731027);border-color:#c8334f}.metric span{display:block;color:var(--live-muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.metric-primary span{color:#ffd9e0}.metric strong{display:block;font-size:31px;line-height:1;margin-top:15px;letter-spacing:-.04em}.metric strong small{font-size:12px;color:var(--live-muted);font-weight:700;letter-spacing:0}.live-panel{background:var(--live-card);border:1px solid var(--live-line);border-radius:16px;overflow:hidden}.panel-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:17px 18px;border-bottom:1px solid var(--live-line)}.panel-heading h2{margin:4px 0 0;font-size:20px}.panel-note{color:var(--live-muted);font-size:11px}.scanner-table-wrap{overflow:auto}.scanner-table{border-collapse:collapse;width:100%;min-width:760px}.scanner-table th,.scanner-table td{padding:13px 16px;border-bottom:1px solid var(--live-line);text-align:left;font-size:13px}.scanner-table th{color:#8797ad;text-transform:uppercase;letter-spacing:.05em;font-size:10px;background:#0d1928}.scanner-table tr:last-child td{border-bottom:0}.scanner-name{display:flex;align-items:center;gap:10px}.scanner-rank{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:#213249;color:#b9c6d7;font-size:10px;font-weight:900}.live-footer{color:#7f8fa6;font-size:11px;padding:12px 2px 0;text-align:right}
@media(max-width:1100px){.metrics-grid{grid-template-columns:repeat(3,1fr)}.stats-row{grid-template-columns:repeat(2,1fr)}.link-create-grid{grid-template-columns:1fr 1fr}.form-button-cell{grid-column:span 2}.form-button-cell .button{width:100%}}
@media(max-width:700px){.admin-topbar-inner{padding:0 12px}.brand small{display:none}.admin-topbar nav a{padding:9px 7px;font-size:12px}.admin-main{padding:20px 12px 40px}.stats-row{grid-template-columns:1fr 1fr}.live-shell{padding:18px 12px 28px}.live-header{align-items:flex-start}.live-header h1{font-size:27px}.metrics-grid{grid-template-columns:repeat(2,1fr);gap:9px}.metric{padding:14px 13px;min-height:98px}.metric strong{font-size:28px}.panel-heading{align-items:flex-start;flex-direction:column}.panel-note{display:none}.pin-form{flex-direction:column}.landing-card,.access-card{padding:28px 22px}.link-create-grid{grid-template-columns:1fr}.form-button-cell{grid-column:auto}.copy-line{flex-direction:column}.link-row{grid-template-columns:1fr auto}.link-row form{grid-column:1/-1}.link-row form .button{width:100%}}
