[hidden]{display:none!important}
:root{
  --bg:#070a12;--panel:#0d1422;--panel2:#111a2c;--line:rgba(111,131,177,.16);
  --text:#edf2fb;--muted:#7786a5;--blue:#62baff;--violet:#8f6cff;--gold:#e4bd69;
  --green:#75deb0;--red:#ef8f9c;--amber:#e1b863;--radius:18px;
}
*{box-sizing:border-box}html{background:var(--bg);color-scheme:dark}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:
radial-gradient(circle at 75% -10%,rgba(117,76,255,.12),transparent 28%),
radial-gradient(circle at 0% 75%,rgba(33,131,230,.08),transparent 28%),var(--bg);color:var(--text);min-height:100vh}
button,input{font:inherit}button{cursor:pointer}.eyebrow{color:#7386aa;font-size:10px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
.login-view{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(440px,100%);text-align:center;padding:38px 30px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(160deg,rgba(18,27,48,.94),rgba(7,11,20,.96));box-shadow:0 28px 90px rgba(0,0,0,.38)}
.login-orb-wrap{width:108px;height:108px;margin:0 auto 17px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle,rgba(116,80,255,.16),transparent 68%)}.login-orb{width:88px;height:88px;object-fit:cover;border-radius:50%;filter:drop-shadow(0 0 24px rgba(127,86,255,.4))}
.login-card h1{font-family:Georgia,serif;font-size:36px;margin:8px 0 9px}.login-card>p{color:#8795b2;line-height:1.6;font-size:14px;margin:0 auto 18px;max-width:340px}.login-seal{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border-radius:999px;border:1px solid rgba(105,129,181,.18);background:#0b1322;color:#a7b5d0;font-size:11px;font-weight:800}.login-seal span{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 9px rgba(117,222,176,.55)}
.telegram-login{min-height:52px;margin:23px auto 10px;display:grid;place-items:center}.login-card .login-help{font-size:11px;color:#64728f;margin-top:10px}
.app-shell{min-height:100vh;display:grid;grid-template-columns:230px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;padding:22px 14px;display:flex;flex-direction:column;border-right:1px solid var(--line);background:rgba(6,9,16,.88);backdrop-filter:blur(18px)}
.brand{display:flex;align-items:center;gap:10px;padding:0 8px 21px}.brand img{width:38px;height:38px;border-radius:50%;object-fit:cover}.brand strong{display:block;font-family:Georgia,serif;font-size:19px}.brand span{display:block;font-size:7px;letter-spacing:.18em;color:#7383a1;font-weight:900;margin-top:2px}
.side-nav{display:grid;gap:5px}.nav-item{display:flex;align-items:center;gap:10px;width:100%;min-height:42px;border:0;border-radius:11px;background:transparent;color:#7887a5;padding:0 12px;text-align:left;font-size:13px;font-weight:750}.nav-item span{width:19px;text-align:center;color:#7b8fb7}.nav-item:hover{background:#101828;color:#c9d5eb}.nav-item.active{background:linear-gradient(100deg,rgba(63,109,213,.18),rgba(124,74,222,.14));color:#edf2fb;box-shadow:inset 0 0 0 1px rgba(110,91,220,.14)}.nav-item.active span{color:#a88aff}
.sidebar-foot{margin-top:auto;padding:14px 8px 0;border-top:1px solid var(--line)}.admin-id strong,.admin-id small{display:block}.admin-id strong{margin-top:6px;font-size:12px}.admin-id small{margin-top:2px;color:#657592;font-size:10px}.role-chip{display:inline-flex;padding:4px 7px;border-radius:999px;background:rgba(95,77,183,.2);border:1px solid rgba(139,111,226,.18);color:#b7a0ff;font-size:7px;font-weight:950;letter-spacing:.07em}.ghost-btn{width:100%;height:34px;margin-top:10px;border-radius:9px;border:1px solid var(--line);background:#0c1321;color:#7786a2;font-size:11px}
.main-panel{min-width:0;padding:0 28px 28px}.topbar{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);margin-bottom:24px}.topbar h2{font-family:Georgia,serif;font-size:27px;margin:4px 0 0}.top-actions{display:flex;align-items:center;gap:9px}.safe-badge{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(213,171,84,.16);border-radius:999px;background:rgba(77,55,20,.23);color:#c8aa6c;font-size:8px;font-weight:950;letter-spacing:.07em}.safe-badge i{width:6px;height:6px;border-radius:50%;background:#d2aa55}.safe-badge.live{color:#89dcb1;border-color:rgba(85,194,138,.18);background:rgba(22,74,53,.24)}.safe-badge.live i{background:#65d79f}.icon-btn{width:38px;height:38px;border:1px solid var(--line);border-radius:11px;background:#0d1525;color:#96a5c4;font-size:18px}
.page{display:none}.page.active{display:block}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.kpi{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:16px;padding:15px;background:linear-gradient(145deg,rgba(17,26,45,.88),rgba(10,15,27,.88));min-height:98px}.kpi:after{content:"";position:absolute;width:80px;height:80px;border-radius:50%;right:-28px;top:-30px;background:radial-gradient(circle,rgba(120,87,255,.12),transparent 70%)}.kpi span{display:block;color:#6d7b99;font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.kpi b{display:block;margin-top:9px;font-size:22px}.kpi small{display:block;margin-top:5px;color:#70809e;font-size:9px}.kpi.good b{color:var(--green)}.kpi.gold b{color:var(--gold)}.kpi.blue b{color:#85cbff}.kpi.violet b{color:#b397ff}
.two-col{display:grid;grid-template-columns:1.25fr .75fr;gap:12px;margin-top:12px}.panel{border:1px solid var(--line);border-radius:var(--radius);padding:16px;background:linear-gradient(150deg,rgba(14,21,36,.91),rgba(8,13,23,.91));margin-bottom:12px}.panel-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:13px}.panel-head span{display:block;color:#6e7e9e;font-size:7px;font-weight:950;letter-spacing:.12em}.panel-head h3{font-family:Georgia,serif;font-size:18px;margin:4px 0 0}.panel-head small{color:#687794;font-size:9px}
.activity-chart{height:196px;display:flex;align-items:flex-end;gap:5px;padding-top:16px}.day-bar{flex:1;min-width:5px;height:100%;display:flex;flex-direction:column;justify-content:flex-end;gap:2px;position:relative}.day-bar .new,.day-bar .dau,.day-bar .ads{border-radius:5px 5px 2px 2px;min-height:2px}.day-bar .dau{background:linear-gradient(#7965ff,#4239a6)}.day-bar .new{background:linear-gradient(#5ec6ff,#2879b7)}.day-bar .ads{background:linear-gradient(#e2be6e,#8d6e2c)}.day-bar label{font-size:6px;color:#52617d;text-align:center;margin-top:4px}.status-stack{display:grid;gap:7px}.status-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:9px 10px;border:1px solid rgba(86,103,144,.12);border-radius:11px;background:#0b1321}.status-row div strong{display:block;font-size:10px}.status-row div small{display:block;color:#62718e;font-size:8px;margin-top:2px}.flag{display:inline-flex;align-items:center;gap:6px;padding:5px 7px;border-radius:999px;font-size:7px;font-weight:950}.flag:before{content:"";width:6px;height:6px;border-radius:50%}.flag.on{color:#8cdfb3;background:rgba(23,82,58,.32);border:1px solid rgba(69,184,128,.18)}.flag.on:before{background:#65d99f}.flag.off{color:#cfb16f;background:rgba(83,61,23,.28);border:1px solid rgba(199,155,66,.15)}.flag.off:before{background:#c59a45}
.split-stats{display:grid;grid-template-columns:1fr 1fr;gap:7px}.split-stat{padding:10px;border:1px solid rgba(84,100,139,.12);background:#0c1423;border-radius:11px}.split-stat span{display:block;color:#63718d;font-size:7px;text-transform:uppercase;font-weight:900}.split-stat b{display:block;margin-top:4px;font-size:12px}
.rows{display:grid;gap:7px}.row{border:1px solid rgba(86,103,145,.14);border-radius:12px;background:#0b1321;padding:11px}.row-top{display:flex;justify-content:space-between;gap:12px}.row-main{min-width:0}.row-main b{display:block;font-size:11px;line-height:1.35;word-break:break-word}.row-main small{display:block;margin-top:4px;color:#64738f;font-size:9px;line-height:1.45}.amount{color:#84ddb0;font-weight:950;font-size:11px;white-space:nowrap}.row-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.action-btn,.secondary-btn{min-height:34px;border-radius:10px;border:1px solid rgba(91,111,158,.22);background:#121c30;color:#b6c4df;padding:0 11px;font-size:9px;font-weight:850}.action-btn.primary{border:0;color:white;background:linear-gradient(110deg,#2b80e1,#6850e7 55%,#933bd1)}.action-btn.good{color:#91dfb5;background:rgba(23,75,55,.32);border-color:rgba(65,174,121,.2)}.action-btn.warn{color:#e1c37c;background:rgba(80,59,23,.3);border-color:rgba(194,150,60,.18)}.action-btn.danger{color:#efa1ab;background:rgba(79,30,40,.28);border-color:rgba(192,78,95,.18)}.action-btn:disabled{opacity:.42}.inline-input{width:100%;height:35px;margin-top:8px;padding:0 10px;background:#080e19;border:1px solid rgba(89,107,151,.2);border-radius:9px;color:#dce5f5;outline:none}.empty{padding:18px;text-align:center;color:#63718d;border:1px dashed rgba(93,108,148,.18);border-radius:12px;font-size:10px}
.page-tools{display:flex;align-items:end;gap:8px;margin-bottom:12px}.page-tools label{display:grid;gap:5px;color:#687896;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.page-tools input{height:37px;min-width:190px;border:1px solid var(--line);border-radius:10px;background:#0b1321;color:#e5ecf7;padding:0 10px;outline:none}.flag-row{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}.league-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.league-card{border-radius:13px;border:1px solid var(--line);padding:11px;background:#0c1423}.league-card h4{margin:0;font-family:Georgia,serif;font-size:16px}.league-card>span{display:block;color:#dcb760;font-size:13px;font-weight:900;margin-top:4px}.mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:9px}.mini{padding:7px;border-radius:9px;background:#101a2d}.mini span{display:block;color:#63718c;font-size:6px;text-transform:uppercase}.mini b{display:block;margin-top:3px;font-size:8px}
.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:720px}.data-table th{text-align:left;color:#657591;font-size:8px;text-transform:uppercase;letter-spacing:.07em;padding:9px;border-bottom:1px solid var(--line)}.data-table td{padding:10px 9px;border-bottom:1px solid rgba(86,101,139,.1);font-size:10px;color:#b9c5dc}.player-cell b{display:block;color:#e3e9f6}.player-cell small{display:block;color:#62708a;margin-top:2px}.trust-pill{display:inline-flex;padding:4px 7px;border-radius:999px;background:#111c30;color:#93a2c1;font-size:7px;font-weight:900}.trust-pill.active,.trust-pill.qualified{background:rgba(23,77,56,.34);color:#8cddb2}.trust-pill.observing{background:rgba(81,59,21,.32);color:#ddbf78}
.role-row{display:grid;grid-template-columns:minmax(120px,1fr) repeat(3,auto);align-items:center;gap:9px}.role-tog{display:flex;align-items:center;gap:5px;color:#8492ad;font-size:8px}.role-tog input{accent-color:#745cff}.admin-footer{text-align:center;color:#4f5e78;font-size:8px;padding:17px}
.toast{position:fixed;right:18px;bottom:18px;z-index:100;width:min(340px,calc(100vw - 36px));padding:11px 13px;border:1px solid rgba(93,111,153,.24);border-radius:12px;background:#111a2a;color:#dce5f5;box-shadow:0 14px 48px rgba(0,0,0,.34);font-size:10px;opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}.toast.error{border-color:rgba(202,82,100,.28);color:#f0b0b8}.toast.good{border-color:rgba(73,190,132,.25);color:#a1e7c4}
@media(max-width:1050px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}.league-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:fixed;z-index:30;left:0;right:0;bottom:0;top:auto;height:auto;padding:7px 8px calc(7px + env(safe-area-inset-bottom));border-right:0;border-top:1px solid var(--line)}.brand,.sidebar-foot{display:none}.side-nav{display:flex;overflow:auto;gap:4px}.nav-item{flex:0 0 auto;min-height:44px;padding:0 10px;font-size:9px}.nav-item span{width:auto}.main-panel{padding:0 14px 78px}.topbar{min-height:82px;margin-bottom:15px}.safe-badge{display:none}.league-grid{grid-template-columns:1fr}.page-tools{align-items:stretch;flex-direction:column}.page-tools label,.page-tools input,.page-tools button{width:100%}.page-tools input{min-width:0}.role-row{grid-template-columns:1fr}.topbar h2{font-size:24px}}
@media(max-width:460px){.kpi-grid{grid-template-columns:1fr 1fr;gap:7px}.kpi{padding:11px;min-height:86px}.kpi b{font-size:18px}.split-stats{grid-template-columns:1fr 1fr}.panel{padding:12px}.main-panel{padding-left:10px;padding-right:10px}}


.telegram-login-btn{
  min-width:238px;min-height:50px;border:0;border-radius:14px;padding:0 18px;
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  background:linear-gradient(135deg,#2aabee,#1688cf);
  color:white;font-size:14px;font-weight:900;letter-spacing:.01em;
  box-shadow:0 12px 30px rgba(31,142,211,.22);
  transition:.18s ease;
}
.telegram-login-btn:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.06)}
.telegram-login-btn:disabled{opacity:.55;cursor:wait;transform:none}
.telegram-mark{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.16);font-size:13px}
.telegram-login-status{margin-top:8px;color:#657796;font-size:9px}
.telegram-login-status.error{color:#e69aa5}

.login-build{margin-top:8px!important;font-size:8px!important;color:#43516b!important;letter-spacing:.08em;text-transform:uppercase}

.admin-load-banner{
  margin:-10px 0 16px;padding:10px 12px;border-radius:12px;
  border:1px solid rgba(229,169,73,.25);background:rgba(89,58,18,.25);
  display:flex;align-items:center;gap:9px;flex-wrap:wrap;color:#d6bc82;font-size:10px
}
.admin-load-banner[hidden]{display:none}
.admin-load-banner strong{color:#f0d69c}
.admin-load-banner span{flex:1;min-width:180px}
.admin-load-banner button{
  min-height:30px;border-radius:9px;border:1px solid rgba(224,177,83,.25);
  background:rgba(98,69,23,.45);color:#efd395;padding:0 10px;font-size:9px;font-weight:900
}
.nav-item:active,.icon-btn:active,.action-btn:active,.secondary-btn:active,.ghost-btn:active{transform:scale(.98)}
.nav-item{user-select:none}

.admin-session-status{
  margin-top:7px;color:#536583;font-size:8px;letter-spacing:.035em
}
.admin-session-status.ok{color:#79d8ac}
.admin-session-status.error{color:#e69aa5}
body.auth-loading .telegram-login-btn{pointer-events:none}

.system-card{
  border:1px solid rgba(86,103,145,.14);border-radius:14px;background:#0b1321;padding:13px;
}
.system-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.system-card-head div{min-width:0}
.system-card-head b{display:block;font-size:11px;color:#e5ecf8}
.system-card-head small{display:block;margin-top:3px;color:#697996;font-size:8px;line-height:1.4}
.system-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:10px}
.system-mini{padding:8px;border-radius:10px;background:#101a2d;border:1px solid rgba(84,100,139,.1);min-width:0}
.system-mini span{display:block;color:#64738f;font-size:6px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
.system-mini b{display:block;margin-top:4px;color:#cbd6e9;font-size:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.system-note{margin-top:9px;color:#71809c;font-size:8px;line-height:1.5}
@media(max-width:900px){.system-grid{grid-template-columns:1fr 1fr}}

/* v1.10 — First Pulse campaign controls */
.prize-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:4px}
.prize-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:7px;padding:10px;border:1px solid rgba(86,103,145,.14);border-radius:12px;background:#0b1321}
.prize-card>span{font-size:9px;font-weight:950;color:#d7b962}
.prize-card>small{font-size:7px;color:#657591;font-weight:900}
.prize-card input{min-width:0;width:100%;height:32px;border:1px solid rgba(89,107,151,.2);border-radius:8px;background:#080e19;color:#e5ecf7;padding:0 8px;font-size:10px;font-weight:900;outline:none}
.prize-card input:disabled{opacity:.68;color:#a9b6cd}
.muted-note{display:inline-flex;align-items:center;min-height:34px;color:#687794;font-size:9px}
@media(max-width:1050px){.prize-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.prize-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:460px){.prize-grid{grid-template-columns:1fr 1fr}.prize-card{padding:8px;gap:5px}}
