/* ===== Gift Arbitrage Admin — design tokens ===== */
:root{
  --adm-section:#0e1826;
  --adm-section-2:#101b2b;
  --adm-field-bg:rgba(255,255,255,.04);
  --adm-field-border:rgba(255,255,255,.10);
  --adm-field-focus:rgba(42,171,238,.55);
  --adm-shadow:0 18px 44px rgba(0,0,0,.45);
  --adm-shadow-sm:0 4px 14px rgba(0,0,0,.30);
  --section:var(--adm-section);
}
html.light-theme{
  /* shared cabinet tokens */
  --bg:#eef2f8;
  --panel:#ffffff;
  --border:rgba(15,30,55,.10);
  --border-2:rgba(15,30,55,.18);
  --text:#0e1b2e;
  --muted:#5a6a82;
  --accent:#1f8fd0;
  --green:#1aa86a;
  --gold:#c8920f;
  --shadow:0 18px 48px rgba(30,50,90,.16);
  /* admin tokens */
  --adm-section:#ffffff;
  --adm-section-2:#f6f9fe;
  --adm-field-bg:#f3f6fb;
  --adm-field-border:rgba(15,30,55,.14);
  --adm-field-focus:rgba(31,143,208,.55);
  --adm-shadow:0 18px 48px rgba(30,50,90,.18);
  --adm-shadow-sm:0 4px 14px rgba(30,50,90,.10);
  --section:var(--adm-section);
}

/* light-theme overrides for the cabinet shell (hardcoded colors) */
html.light-theme body{background:var(--bg)}
html.light-theme header{background:rgba(255,255,255,.85)!important}
html.light-theme .card .img{background:#eef2f8}
html.light-theme .auth-box,
html.light-theme .auth-close,
html.light-theme .skel{background:#fff}
html.light-theme .skel .ph{background:linear-gradient(100deg,#eef2f8 30%,#e2e9f4 50%,#eef2f8 70%);background-size:200% 100%}

/* ===== layout ===== */
#adminMount{display:none}
body.admin-mode #adminMount{display:block}
#adminPanel{margin-top:4px}

.adm-scope{font-family:"Onest",system-ui,sans-serif}

.adm-scope .adm-head{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  margin-bottom:16px;flex-wrap:wrap;
}
.adm-scope .adm-head h2{font-size:1.5rem;font-weight:800;margin:0;letter-spacing:-.02em}
.adm-scope .adm-sub{color:var(--muted);font-size:13px;font-weight:600}

/* status bar */
.adm-scope .statusbar{
  display:flex;align-items:center;gap:10px;padding:14px 18px;
  background:var(--panel);border:1px solid var(--border);border-radius:16px;
  margin-bottom:16px;font-size:13.5px;font-weight:600;box-shadow:var(--adm-shadow-sm);
}
.adm-scope .dot{width:9px;height:9px;border-radius:50%;background:#9aa7b8;flex:0 0 auto;box-shadow:0 0 0 4px rgba(154,167,184,.15)}
.adm-scope .dot.live{background:var(--green);box-shadow:0 0 0 4px rgba(57,217,138,.18)}
.adm-scope .dot.dry{background:var(--gold);box-shadow:0 0 0 4px rgba(245,197,66,.18)}
.adm-scope .dot.paused{background:#ff6b7a;box-shadow:0 0 0 4px rgba(255,107,122,.18)}

/* tabs */
.adm-scope .adm-tabs{
  display:flex;gap:8px;padding:6px;margin-bottom:18px;
  background:var(--panel);border:1px solid var(--border);border-radius:16px;
  overflow-x:auto;scrollbar-width:none;position:sticky;top:8px;z-index:30;
  box-shadow:var(--adm-shadow-sm);
}
.adm-scope .adm-tabs::-webkit-scrollbar{display:none}
.adm-scope .adm-tab{
  flex:1 1 auto;min-width:max-content;padding:10px 18px;border-radius:11px;
  background:transparent;color:var(--muted);border:none;
  font-size:13.5px;font-weight:700;cursor:pointer;font-family:inherit;
  transition:.16s;white-space:nowrap;
}
.adm-scope .adm-tab:hover{color:var(--text);background:var(--adm-field-bg)}
.adm-scope .adm-tab.active{
  background:linear-gradient(135deg,#2aabee,#1d8fd4);color:#fff;
  box-shadow:0 6px 16px rgba(42,171,238,.35);
}

/* pages */
.adm-scope .adm-page{display:none;padding-bottom:24px;animation:admFade .22s ease}
.adm-scope .adm-page.active{display:block}
@keyframes admFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* section */
.adm-scope .section-title{
  color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em;
  padding:16px 6px 9px;font-weight:800;
}
.adm-scope .section{
  background:var(--adm-section);border:1px solid var(--border);border-radius:16px;
  overflow:hidden;margin-bottom:14px;box-shadow:var(--adm-shadow-sm);
}

/* fields */
.adm-scope .field{padding:13px 18px;border-bottom:1px solid var(--border)}
.adm-scope .field:last-child{border-bottom:none}
.adm-scope .field label{display:block;color:var(--muted);font-size:12px;font-weight:600;margin-bottom:7px}
.adm-scope .field input,
.adm-scope .field select,
.adm-scope .field textarea{
  width:100%;background:var(--adm-field-bg);border:1px solid var(--adm-field-border);
  border-radius:11px;color:var(--text);font-size:15px;outline:none;padding:11px 13px;
  font-family:inherit;transition:.15s;
}
.adm-scope .field input::placeholder,
.adm-scope .field textarea::placeholder{color:var(--muted);opacity:.7}
.adm-scope .field input:focus,
.adm-scope .field select:focus,
.adm-scope .field textarea:focus{
  border-color:var(--adm-field-focus);box-shadow:0 0 0 3px var(--adm-field-focus);
  background:var(--panel);
}
.adm-scope .field textarea{resize:vertical;min-height:64px;line-height:1.5}

/* switch rows */
.adm-scope .switch-row{
  display:flex;justify-content:space-between;align-items:center;gap:14px;
  padding:14px 18px;border-bottom:1px solid var(--border);font-size:14.5px;font-weight:600;
}
.adm-scope .switch-row:last-child{border-bottom:none}
.adm-scope .switch{position:relative;width:48px;height:28px;flex:0 0 auto}
.adm-scope .switch input{opacity:0;width:0;height:0}
.adm-scope .slider{position:absolute;inset:0;background:var(--border-2);border-radius:28px;transition:.2s;cursor:pointer}
.adm-scope .slider:before{content:"";position:absolute;height:22px;width:22px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s;box-shadow:0 2px 5px rgba(0,0,0,.35)}
.adm-scope .switch input:checked+.slider{background:linear-gradient(135deg,#2aabee,#1d8fd4)}
.adm-scope .switch input:checked+.slider:before{transform:translateX(20px)}

/* buttons */
.adm-scope .btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  width:calc(100% - 12px);margin:9px 6px;padding:13px 18px;border:none;border-radius:13px;
  background:linear-gradient(135deg,#2aabee,#1d8fd4);color:#fff;font-size:15px;font-weight:700;
  cursor:pointer;font-family:inherit;transition:.15s;box-shadow:0 6px 16px rgba(42,171,238,.30);
}
.adm-scope .btn:hover{filter:brightness(1.06);transform:translateY(-1px)}
.adm-scope .btn:active{transform:translateY(0)}
.adm-scope .btn.secondary{background:var(--adm-field-bg);color:var(--accent);border:1px solid var(--border-2);box-shadow:none}
.adm-scope .btn.secondary:hover{background:var(--panel)}
.adm-scope .btn.danger{background:linear-gradient(135deg,#ff5d6c,#e53935);box-shadow:0 6px 16px rgba(229,57,53,.30)}
.adm-scope .btn.half{width:auto;flex:1;margin:6px}
.adm-scope .row-btns{display:flex;padding:0 6px;gap:8px}

/* list items (accounts / proxies) */
.adm-scope .list-item{
  display:flex;justify-content:space-between;align-items:center;gap:12px;
  padding:15px 18px;border-bottom:1px solid var(--border);flex-wrap:wrap;
}
.adm-scope .list-item:last-child{border-bottom:none}
.adm-scope .list-item .meta{color:var(--muted);font-size:13px}

/* stats */
.adm-scope .statgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;padding:6px 0 16px}
.adm-scope .stat{background:var(--adm-section);border:1px solid var(--border);padding:18px;border-radius:16px;text-align:center;box-shadow:var(--adm-shadow-sm)}
.adm-scope .stat b{display:block;font-size:1.7rem;font-weight:800;margin-bottom:4px}
.adm-scope .stat span{color:var(--muted);font-size:12px;font-weight:600}

/* misc */
.adm-scope .muted{color:var(--muted);font-size:13px;line-height:1.5}
.adm-scope .muted a{color:var(--accent);font-weight:600}
.adm-scope a{color:var(--accent)}
.adm-scope .hide{display:none!important}
.adm-scope #loginBanner{
  border-radius:16px;margin-bottom:16px;border:1px solid rgba(255,107,122,.35);
  background:rgba(255,107,122,.08)!important;
}

/* segmented control */
.adm-scope .seg{display:flex;background:var(--adm-field-bg);border:1px solid var(--border);border-radius:12px;padding:4px;margin-bottom:14px;gap:4px}
.adm-scope .seg button{flex:1;padding:11px;border:none;background:transparent;color:var(--muted);border-radius:9px;font-size:14px;font-weight:700;cursor:pointer;font-family:inherit;transition:.15s}
.adm-scope .seg button:hover{color:var(--text)}
.adm-scope .seg button.active{background:linear-gradient(135deg,#2aabee,#1d8fd4);color:#fff;box-shadow:0 4px 12px rgba(42,171,238,.3)}

/* QR box */
.adm-scope .qrbox{display:flex;justify-content:center;padding:18px;background:#fff;border-radius:14px;margin:6px 0 12px}

/* ===== modal ===== */
#admAcctModal,.adm-modal{
  position:fixed;inset:0;background:rgba(6,11,18,.72);backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  display:none!important;align-items:center;justify-content:center;padding:20px;
  z-index:600;pointer-events:none!important;visibility:hidden;
}
#admAcctModal.open,.adm-modal.open{display:flex!important;pointer-events:auto!important;visibility:visible;animation:admOverlay .2s ease}
@keyframes admOverlay{from{opacity:0}to{opacity:1}}
.adm-modal .sheet,#admAcctModal .sheet{
  background:var(--panel);width:100%;max-width:440px;margin:0;border-radius:20px;
  padding:24px;max-height:88vh;overflow-y:auto;border:1px solid var(--border-2);
  box-shadow:var(--adm-shadow);pointer-events:auto;animation:admSheet .24s cubic-bezier(.2,.8,.3,1);
}
@keyframes admSheet{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}
.adm-scope .sheet h3{margin:2px 0 16px;font-size:1.25rem;font-weight:800;letter-spacing:-.01em}
.adm-modal .sheet .field,#admAcctModal .sheet .field{
  background:var(--adm-field-bg);border:1px solid var(--border);border-radius:12px;margin-bottom:10px;
}
.adm-modal .sheet .field:last-of-type,#admAcctModal .sheet .field:last-of-type{border-bottom:1px solid var(--border)}

/* responsive */
@media(max-width:640px){
  .adm-scope .adm-head h2{font-size:1.3rem}
  .adm-scope .adm-tab{padding:9px 14px}
}
