:root{
  --admin-bg:#1a1a1d;
  --admin-panel:#25201b;
  --admin-soft:#2f241c;
  --admin-ink:#ffffff;
  --admin-muted:#aaaaaa;
  --admin-line:#838388;
  --admin-accent:#ff8107;
  --admin-accent-2:#ff5b08;
  --admin-accent-soft:#ffa743;
  --admin-row-alt:#422613;
  --admin-ok:#77c39b;
  --admin-bad:#f0a0aa;
  --admin-shadow:0 18px 36px rgba(0,0,0,.42);
  color-scheme:dark;
}

html[data-theme="light"]{
  --admin-bg:#f8efe5;
  --admin-panel:#fffaf5;
  --admin-soft:#fff1dd;
  --admin-ink:#24170e;
  --admin-muted:#6f6256;
  --admin-line:#d9c6b4;
  --admin-accent:#ff8107;
  --admin-accent-2:#ff5b08;
  --admin-accent-soft:#ffcc7e;
  --admin-row-alt:#ffe4c2;
  --admin-ok:#23654a;
  --admin-bad:#8c2f39;
  --admin-shadow:0 24px 48px rgba(16,27,40,.08);
  color-scheme:light;
}

*{box-sizing:border-box}
.hidden{display:none !important}
body{
  margin:0;
  font-family:"Segoe UI","Helvetica Neue",Arial,sans-serif;
  background:var(--admin-bg);
  color:var(--admin-muted);
}

a{color:var(--admin-accent);font-weight:700}
h1,h2,h3,h4,p{margin:0}
h1,h2,h3,h4{color:var(--admin-ink)}

.card,
.modal-card{
  background:var(--admin-panel);
  border:1px solid var(--admin-line);
  border-radius:12px;
  box-shadow:var(--admin-shadow);
}

.btn,
.icon-btn,
.link-chip,
.tab-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  border:1px solid var(--admin-line);
  border-radius:8px;
  background:var(--admin-soft);
  color:var(--admin-ink);
  cursor:pointer;
  text-decoration:none;
  font:inherit;
}

.btn{padding:8px 12px}
.btn.icon-only-btn{
  width:42px;
  height:42px;
  padding:0;
  gap:0;
  line-height:0;
}
.btn.icon-only-btn svg{
  display:block;
  width:20px;
  height:20px;
  flex:0 0 auto;
}
.icon-glyph{
  display:block;
  font-size:1.5rem;
  line-height:1;
  font-weight:800;
  transform:translateY(-1px);
}
.btn.primary{
  background:var(--admin-accent);
  border-color:var(--admin-accent);
  color:#fff;
}
.btn.primary:hover,
.btn:hover,
.icon-btn:hover,
.link-chip:hover,
.tab-btn:hover{
  border-color:var(--admin-accent);
}
.btn.primary:hover,
.tab-btn.active{
  background:var(--admin-accent-2);
  border-color:var(--admin-accent-2);
  color:#fff;
}
.btn.mode-toggle.live-mode{
  background:#1f8f4e;
  border-color:#1f8f4e;
  color:#fff;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
}
.btn.mode-toggle.live-mode:hover{
  background:#187341;
  border-color:#187341;
  color:#fff;
}
.btn.mode-toggle.sandbox-mode{
  background:#b12b35;
  border-color:#b12b35;
  color:#fff;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
}
.btn.mode-toggle.sandbox-mode:hover{
  background:#92222b;
  border-color:#92222b;
  color:#fff;
}

.danger{color:var(--admin-bad)}
.icon-btn{width:34px;height:34px}
.notice{
  margin-bottom:16px;
  padding:10px 12px;
  border:1px solid var(--admin-line);
  border-radius:10px;
  background:var(--admin-panel);
  color:var(--admin-muted);
}
.notice.success{color:var(--admin-ok)}
.notice.error{color:var(--admin-bad)}
.sub{color:var(--admin-muted)}
.label-text{display:inline-flex;align-items:center;gap:4px}
.required-mark{color:var(--admin-bad);font-weight:700}
