
.st-v100-auth-gate,.st-v100-admin-overlay{
  position:fixed;inset:0;z-index:2147483640;overflow:auto;
  padding:max(18px,env(safe-area-inset-top)) 14px max(22px,env(safe-area-inset-bottom));
  background:
    radial-gradient(circle at 10% 4%,rgba(249,213,117,.12),transparent 24%),
    radial-gradient(circle at 90% 8%,rgba(63,169,160,.14),transparent 25%),
    linear-gradient(145deg,#111a29,#142334 56%,#0d2027);
  color:#fff;font-family:'DM Sans',system-ui,sans-serif;
}
.st-v100-auth-shell{
  position:relative;width:min(560px,100%);margin:18px auto;padding:34px;
  border:1px solid rgba(255,255,255,.10);border-radius:30px;
  background:rgba(24,38,55,.94);box-shadow:0 30px 80px rgba(0,0,0,.34);
}
.st-v100-auth-back{
  position:absolute;left:18px;top:18px;width:39px;height:39px;border-radius:50%;
  border:1px solid #3b4e64;background:#142235;color:#fff;font-size:18px;cursor:pointer;
}
.st-v100-auth-brand{text-align:center;color:#FFD84D;font:900 23px 'Syne','DM Sans',sans-serif}
.st-v100-auth-icon{
  width:64px;height:64px;display:grid;place-items:center;margin:22px auto 12px;
  border-radius:21px;background:#1b2c40;border:1px solid rgba(249,213,117,.20);font-size:31px;
}
.st-v100-auth-shell h1,.st-v100-access-state h2{
  margin:0;text-align:center;font:900 clamp(27px,5vw,40px)/1.05 'Syne','DM Sans',sans-serif;letter-spacing:-.04em;
}
.st-v100-auth-shell p{color:#aebccd;line-height:1.55;text-align:center;font-size:14px}
.st-v100-auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:25px 0 18px;padding:5px;border-radius:15px;background:#101c2a}
.st-v100-auth-tabs button{border:0;border-radius:11px;background:transparent;color:#95a6b9;padding:11px 9px;font-weight:900;cursor:pointer}
.st-v100-auth-tabs button.on{background:#25384d;color:#FFD84D}
.st-v100-auth-form{display:grid;gap:8px}
.st-v100-auth-form label{font-size:12px;font-weight:800;color:#dce5ee;margin-top:5px}
.st-v100-auth-form input[type=email],
.st-v100-auth-form input[type=text],
.st-v100-auth-form input[type=password]{
  width:100%;padding:13px 14px;border:1px solid #40536a;border-radius:13px;
  background:#101d2c;color:#fff;outline:none;font-size:15px;
}
.st-v100-auth-form input:focus{border-color:#f9d575}
.st-v100-primary{
  min-height:48px;margin-top:8px;border:0;border-radius:13px;padding:12px 16px;
  background:linear-gradient(110deg,#f9d575,#ff9d77);color:#182334;font-weight:900;cursor:pointer;
}
.st-v100-primary:disabled{opacity:.48;cursor:wait}
.st-v100-link{border:0;background:none;color:#f9d575;padding:10px;font-weight:800;cursor:pointer}
.st-v100-check{display:flex!important;align-items:flex-start;gap:9px;margin:7px 0!important;color:#aebccd!important;font-weight:600!important;line-height:1.4}
.st-v100-check input{margin-top:3px}
.st-v100-auth-msg{min-height:20px;margin-top:10px;text-align:center;color:#aebccd;font-size:12px;line-height:1.4}
.st-v100-auth-msg.ok{color:#68dfb8}.st-v100-auth-msg.err{color:#ff8098}
.st-v100-auth-foot{margin-top:18px;padding:11px;border:1px solid rgba(255,255,255,.07);border-radius:12px;color:#8597aa;font-size:10px;line-height:1.45;text-align:center}
.st-v100-config-warning{padding:14px;border:1px solid rgba(255,209,102,.28);border-radius:14px;background:rgba(255,209,102,.07);color:#ffe39a;font-size:12px;line-height:1.5;margin:18px 0}
.st-v100-access-state{padding:15px 2px;text-align:center}
.st-v100-state-icon{font-size:48px;margin:10px 0 14px}
.st-v100-access-state .st-v100-primary{width:100%;margin-top:16px}

.st-v100-profile-account{
  display:flex;align-items:center;gap:12px;margin:0 0 14px;padding:14px;
  border:1px solid var(--brd);border-radius:18px;background:var(--card);
}
.st-v100-profile-avatar{width:43px;height:43px;display:grid;place-items:center;border-radius:13px;background:#101c2a;font-size:21px}
.st-v100-profile-copy{flex:1;min-width:0}
.st-v100-profile-kicker{display:block;color:var(--accent2);font-size:.52rem;font-weight:900;letter-spacing:.10em}
.st-v100-profile-copy strong{display:block;margin-top:2px;font:900 .86rem 'Syne',sans-serif;overflow:hidden;text-overflow:ellipsis}
.st-v100-profile-copy small{display:block;color:var(--muted);font-size:.56rem;margin-top:2px;overflow:hidden;text-overflow:ellipsis}
.st-v100-profile-actions{display:flex;gap:6px;flex-direction:column}
.st-v100-profile-actions button{border:1px solid rgba(255,201,60,.25);border-radius:10px;background:rgba(255,201,60,.07);color:var(--accent2);padding:7px 9px;font-size:.58rem;font-weight:800;cursor:pointer}

.st-v100-admin-overlay{z-index:2147483645}
.st-v100-admin-shell{width:min(1050px,100%);margin:10px auto;padding:26px;border:1px solid rgba(255,255,255,.10);border-radius:28px;background:#152438}
.st-v100-admin-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}
.st-v100-admin-head span{color:#FFD84D;font-size:10px;font-weight:900;letter-spacing:.14em}
.st-v100-admin-head h2{margin:4px 0 0;font:900 clamp(27px,4vw,40px) 'Syne',sans-serif}
.st-v100-admin-head>button{width:40px;height:40px;border-radius:50%;border:1px solid #3b4e64;background:#101d2d;color:#fff;cursor:pointer}
.st-v100-admin-note{color:#9eb0c2;line-height:1.5;font-size:13px}
.st-v100-admin-tools{display:flex;gap:8px;margin:18px 0}
.st-v100-admin-tools button,.st-v100-admin-tools select{border:1px solid #3d5167;background:#101e2e;color:#fff;border-radius:11px;padding:9px 12px;font-weight:800}
.st-v100-admin-list{display:grid;gap:10px}
.st-v100-admin-user{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(110px,.7fr) minmax(260px,1.4fr);gap:12px;align-items:center;padding:14px;border:1px solid #31465c;border-radius:16px;background:#17283b}
.st-v100-admin-user strong{display:block}
.st-v100-admin-user small{display:block;color:#91a5b8;margin-top:3px;font-size:11px}
.st-v100-status{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:900;background:#24384c}
.st-v100-status.active{color:#70e7bd}.st-v100-status.pending{color:#ffd879}.st-v100-status.blocked,.st-v100-status.expired{color:#ff839a}
.st-v100-admin-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}
.st-v100-admin-actions button{border:1px solid #40566e;background:#101e2e;color:#dce6ef;border-radius:9px;padding:7px 8px;font-size:10px;font-weight:800;cursor:pointer}
.st-v100-admin-actions button.good{border-color:#3b806b;color:#73e1bd}
.st-v100-admin-actions button.bad{border-color:#774352;color:#ff92a7}

@media(max-width:680px){
  .st-v100-auth-shell{margin:3px auto;padding:28px 15px 22px;border-radius:24px}
  .st-v100-auth-back{left:11px;top:11px}
  .st-v100-admin-shell{padding:17px 12px}
  .st-v100-admin-user{grid-template-columns:1fr}
  .st-v100-admin-actions{justify-content:flex-start}
}
