:root{
  --nav:#0c1326; --nav-2:#111a31; --bg:#f5f7fb; --paper:#ffffff; --ink:#111827; --muted:#8aa0bd; --line:#e5ebf4;
  --green:#16bf87; --purple:#5a4ee6; --amber:#f5a200; --red:#ef4444; --blue:#6676ff;
  --shadow:0 22px 65px rgba(30,46,88,.10); --soft:0 20px 50px rgba(82,92,255,.12); --radius:36px;
}
*{box-sizing:border-box} html{background:var(--bg)} body{margin:0;background:linear-gradient(180deg,#f8fafc 0,#f5f7fb 60%,#eef3fa 100%);color:var(--ink);font:14px/1.45 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}.topbar{height:66px;background:var(--nav);color:white;display:flex;align-items:center;justify-content:space-between;padding:0 26px 0 24px;box-shadow:0 14px 34px rgba(7,13,28,.26);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:14px}.brand-mark{width:38px;height:38px;border-radius:18px;background:linear-gradient(145deg,#6b5cff,#4430d7);display:grid;place-items:center;color:#fff;box-shadow:0 12px 24px rgba(86,70,220,.38)}.brand-mark svg{width:23px;height:23px}.brand h1{margin:0;font-size:16px;line-height:1;font-weight:950;text-transform:uppercase;letter-spacing:.03em}.brand h1 span{color:#8b80ff}.brand p{margin:7px 0 0;color:#94a3c7;font-size:10px;font-weight:850;letter-spacing:.18em;text-transform:uppercase}.top-actions{display:flex;align-items:center;gap:12px}.sync-card{border-left:1px solid rgba(255,255,255,.12);padding-left:24px;text-transform:uppercase}.sync-card span{display:block;color:#a8b5d4;font-size:8px;font-weight:950;letter-spacing:.08em}.sync-card strong{display:flex;align-items:center;gap:6px;color:#19c999;font-size:10px;font-weight:950;letter-spacing:.08em}.sync-card i{width:7px;height:7px;border-radius:999px;background:#10b981;box-shadow:0 0 0 5px rgba(16,185,129,.12)}button,a{font:inherit}.ghost-btn,.add-client-btn{height:36px;border:0;border-radius:15px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-weight:950;text-transform:uppercase;letter-spacing:.09em;font-size:10px;cursor:pointer}.ghost-btn{color:#cbd5f4;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.09)}.ghost-btn:hover{background:rgba(255,255,255,.11)}.add-client-btn{background:linear-gradient(145deg,#6657f2,#4f46e5);color:#fff;box-shadow:0 16px 28px rgba(72,60,218,.32)}.app-shell{max-width:1300px;margin:0 auto;padding:32px 24px 42px}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:26px}.kpi-card{min-height:216px;border-radius:34px;padding:26px 28px;border:1px solid rgba(226,232,240,.9);background:#fff;box-shadow:var(--shadow);position:relative;overflow:hidden}.kpi-card:after{content:"";position:absolute;inset:auto -10% -35% 30%;height:120px;filter:blur(28px);opacity:.45}.kpi-card.green{background:linear-gradient(145deg,#ecfff6 0,#fff 78%)}.kpi-card.green:after{background:#86efac}.kpi-card.purple{background:linear-gradient(145deg,#f0f3ff 0,#fff 78%)}.kpi-card.purple:after{background:#a5b4fc}.kpi-card.amber{background:linear-gradient(145deg,#fff9e6 0,#fff 78%)}.kpi-card.amber:after{background:#fde68a}.kpi-card.blue{background:linear-gradient(145deg,#eef4ff 0,#fff 78%)}.kpi-card.blue:after{background:#bfdbfe}.kpi-top{display:flex;align-items:flex-start;justify-content:space-between}.kpi-icon{width:46px;height:46px;border-radius:17px;display:grid;place-items:center;color:white;font-weight:950;font-size:23px}.green .kpi-icon{background:var(--green)}.purple .kpi-icon{background:var(--purple)}.amber .kpi-icon{background:var(--amber)}.blue .kpi-icon{background:var(--blue)}.kpi-pill{background:rgba(255,255,255,.8);border:1px solid rgba(226,232,240,.8);border-radius:999px;padding:8px 13px;font-size:9px;font-weight:950;text-transform:uppercase;letter-spacing:.14em}.green .kpi-pill{color:#059669}.purple .kpi-pill{color:#4f46e5}.amber .kpi-pill{color:#d97706}.blue .kpi-pill{color:#2563eb}.kpi-body{position:absolute;left:28px;right:28px;bottom:26px}.kpi-body p,.micro-label{margin:0 0 8px;color:#94a3b8;font-size:10px;text-transform:uppercase;letter-spacing:.23em;font-weight:950}.kpi-body strong{font-size:51px;line-height:.9;letter-spacing:-.07em;font-weight:950}.kpi-body span{margin-left:7px;color:#9aacbf;font-size:11px;font-weight:950;text-transform:uppercase}.kpi-body small{display:block;margin-top:12px;color:#9aacbf;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.ops-grid{display:grid;grid-template-columns:minmax(0,1fr) 416px;gap:26px}.scoreboard-card{background:#fff;border:1px solid #dfe7f2;border-radius:32px;box-shadow:var(--shadow);overflow:hidden}.scoreboard-head{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 26px}.scoreboard-head h2,.channel-panel h2,.detail-panel h2,.source-card h3{margin:0;color:#1f2937;font-size:17px;line-height:1;font-weight:950;text-transform:uppercase;letter-spacing:-.02em}.scoreboard-head p{margin:8px 0 0;color:#8ea1bf;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.14em}.search-wrap{width:242px;height:40px;border:1px solid #dbe4f1;border-radius:16px;background:#f8fbff;display:flex;align-items:center;padding:0 12px;gap:8px;color:#8ea1bf}.search-wrap input{border:0;outline:0;background:transparent;width:100%;font-size:12px;font-weight:750;color:#344054}.table-wrap{overflow:auto}.score-table{width:100%;border-collapse:collapse;min-width:1080px}.score-table thead{background:#f8fbff;border-top:1px solid #edf1f7;border-bottom:1px solid #edf1f7}.score-table th{text-align:left;color:#8ea1bf;font-size:9px;text-transform:uppercase;letter-spacing:.18em;font-weight:950;padding:16px 26px}.score-table th:nth-child(n+2),.score-table td:nth-child(n+2){text-align:center}.score-table td{padding:17px 26px;border-bottom:1px solid transparent;vertical-align:middle}.score-table tbody tr{cursor:pointer;transition:.18s ease}.score-table tbody tr:hover,.score-table tbody tr.selected{background:#fbfdff}.client-profile strong{display:block;max-width:260px;color:#172033;font-size:13px;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-profile span{display:block;margin-top:6px;color:#7f93b3;font-size:9px;text-transform:uppercase;letter-spacing:.035em;font-weight:900;max-width:320px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric-chip{min-width:33px;height:24px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:11px;font-weight:950;box-shadow:0 12px 18px rgba(20,184,130,.22)}.metric-chip.green{background:var(--green)}.zero{color:#d7e0ed;font-weight:950}.week-num{color:#4f46e5;font-weight:950}.mtd-num{color:#101828;font-size:15px;font-weight:950}.forms-calls{display:flex;align-items:center;justify-content:center;gap:10px;color:#1f2a44;font-size:12px;font-weight:950}.forms-calls b{display:block;color:#8ea1bf;text-transform:uppercase;font-size:8px;letter-spacing:.09em}.forms-calls i{width:1px;height:20px;background:#dbe4f1}.qual-pill{width:34px;height:34px;border-radius:13px;background:#0d1730;color:#fff;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;font-weight:950;box-shadow:0 12px 20px rgba(13,23,48,.25);line-height:1}.qual-pill small{text-transform:uppercase;font-size:6px;color:#b8c4e9}.control-cell{white-space:nowrap}.control-cell button,.detail-actions button{border:0;border-radius:999px;background:#eef2ff;color:#4f46e5;padding:7px 10px;font-size:9px;font-weight:950;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;margin:0 2px}.control-cell button:hover,.detail-actions button:hover{background:#4f46e5;color:#fff}.side-stack{display:grid;grid-template-rows:auto auto;gap:18px}.channel-panel{background:linear-gradient(160deg,#10192f 0,#0d1426 55%,#121a35 100%);color:#fff;border-radius:32px;padding:28px 28px 24px;box-shadow:0 26px 60px rgba(10,17,36,.24);min-height:520px}.panel-title{display:flex;align-items:center;gap:11px;margin-bottom:28px}.panel-title span{color:#8f84ff;font-size:18px}.panel-title h2{color:#b8c2ff;font-size:13px;letter-spacing:.18em}.mix-row{margin:0 0 22px}.mix-row>div:first-child{display:flex;justify-content:space-between;gap:12px;margin-bottom:9px}.mix-row strong{font-size:9px;text-transform:uppercase;letter-spacing:.03em;color:#e5ebff;max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mix-row span{font-size:10px;color:#8f84ff;font-weight:950}.mix-bar{height:6px;border-radius:999px;background:rgba(148,163,184,.12);overflow:hidden}.mix-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#6d5df7,#8a7cff);box-shadow:0 0 16px rgba(109,93,247,.55)}.aggregate-line{height:1px;background:rgba(148,163,184,.12);margin:30px 0}.aggregate-footer{display:flex;align-items:end;justify-content:space-between}.aggregate-footer span{font-size:10px;text-transform:uppercase;letter-spacing:.24em;color:#8f84ff;font-weight:950}.aggregate-footer strong{font-size:42px;line-height:.8;letter-spacing:-.06em}.detail-panel,.source-card{background:#fff;border:1px solid #dfe7f2;border-radius:28px;padding:22px;box-shadow:var(--shadow)}.small-title{margin-bottom:16px}.small-title h2{color:#1f2937;font-size:12px}.selected-account h3{margin:0;color:#172033;font-size:18px}.muted{color:#7f93b3;margin:6px 0 0}.muted.dark{color:#94a3b8}.detail-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.detail-metrics span{padding:10px;border-radius:15px;background:#f8fbff;color:#7f93b3;font-size:10px;font-weight:900;text-transform:uppercase}.detail-metrics b{display:block;color:#172033;font-size:15px}.mini-statuses{display:flex;gap:6px;flex-wrap:wrap}.mini-status{border-radius:999px;padding:6px 9px;font-size:8px;font-weight:950;text-transform:uppercase;letter-spacing:.06em;background:#f1f5f9;color:#64748b}.mini-status.ok{background:#ecfdf5;color:#047857}.mini-status.warn{background:#fffbeb;color:#b45309}.warning-detail{margin-top:13px;border-radius:17px;background:#fffbeb;color:#b45309;padding:10px;font-size:12px}.warning-detail p{margin:8px 0 0}.detail-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.detail-actions a{border-radius:999px;background:#f1f5f9;color:#334155;padding:8px 10px;text-decoration:none;font-size:9px;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.source-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:18px;margin-top:24px}.source-card{min-height:128px}.source-card h3{font-size:16px;text-transform:none;letter-spacing:-.03em}.source-pills{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.source-pill{border-radius:999px;padding:8px 12px;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.06em}.source-pill.ok{background:#ecfdf5;color:#047857}.source-pill.warn{background:#fff7ed;color:#c2410c}.source-pill b{margin-right:6px}code{display:block;background:#0c1326;color:#c7d2fe;border-radius:14px;padding:12px;margin-top:14px;white-space:pre-wrap;word-break:break-word;font-size:12px}.empty-row{text-align:center!important;color:#94a3b8!important;padding:32px!important}.modal-backdrop[hidden]{display:none!important}.modal-backdrop{position:fixed;inset:0;background:rgba(10,17,36,.5);z-index:50;display:grid;place-items:center;padding:22px;backdrop-filter:blur(10px)}.modal{width:min(520px,100%);background:#fff;border-radius:28px;box-shadow:0 32px 90px rgba(10,17,36,.28);padding:26px;position:relative}.modal h2{margin:0;font-size:30px;letter-spacing:-.06em}.modal label{display:block;margin-top:14px;color:#52637d;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.09em}.modal input{margin-top:7px;width:100%;border:1px solid #dbe4f1;border-radius:14px;padding:13px 14px;font:inherit;font-weight:750;outline:none}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.modal .ghost-btn{background:#f1f5f9;color:#334155;border:0}.modal-close{position:absolute;right:18px;top:14px;border:0;background:transparent;color:#94a3b8;font-size:28px;cursor:pointer}.toast{position:fixed;right:24px;bottom:24px;max-width:420px;background:#0c1326;color:#fff;border-radius:18px;padding:14px 16px;font-weight:850;box-shadow:0 20px 60px rgba(10,17,36,.24);opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s;z-index:80}.toast.show{opacity:1;transform:none}.toast.warn{background:#92400e}.toast.bad{background:#991b1b}@media(max-width:1120px){.ops-grid{grid-template-columns:1fr}.side-stack{grid-template-columns:1fr 1fr}.channel-panel{min-height:420px}.kpi-grid{grid-template-columns:1fr 1fr}.source-grid{grid-template-columns:1fr}}@media(max-width:760px){.topbar{height:auto;padding:16px;align-items:flex-start;gap:14px;flex-direction:column}.top-actions{width:100%;flex-wrap:wrap}.sync-card{border-left:0;padding-left:0}.app-shell{padding:20px 14px}.kpi-grid,.side-stack{grid-template-columns:1fr}.kpi-card{min-height:190px}.scoreboard-head{height:auto;padding:20px;align-items:flex-start;flex-direction:column}.search-wrap{width:100%}.score-table th,.score-table td{padding:13px 16px}.source-grid{grid-template-columns:1fr}}.spend-num,.cpl-num{color:#101828;font-size:12px;font-weight:950;white-space:nowrap}.mix-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:7px}.mix-meta span{font-size:8px!important;color:#aeb9ff!important;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:3px 7px}.aggregate-footer strong{font-size:28px}.detail-metrics{grid-template-columns:repeat(2,1fr)}@media(max-width:1280px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.score-table{min-width:840px}.score-table th{padding:13px 9px;font-size:8px}.score-table td{padding:13px 9px}.client-profile strong{max-width:200px}.client-profile span{max-width:220px}.spend-num,.cpl-num{font-size:11px}.control-cell button{padding:6px 8px;margin:0 1px}.forms-calls{gap:6px}.qual-pill{width:31px;height:31px}
/* Wide expandable channel dashboard overrides */
.app-shell{max-width:min(1880px,calc(100vw - 24px));padding-left:12px;padding-right:12px}.ops-grid{grid-template-columns:minmax(0,1fr) 500px}.score-table{min-width:1160px}.score-table th{padding:13px 8px;font-size:8px}.score-table td{padding:13px 8px}.client-profile strong{max-width:230px}.client-profile span{max-width:255px}.spend-num,.budget-num,.cpl-num{color:#101828;font-size:11px;font-weight:950;white-space:nowrap}.control-cell{min-width:136px}.control-cell button.expand-toggle{background:#0d1730;color:#fff}.score-table tbody tr.expanded-main{background:#f8fbff}.channel-detail-row td{padding:0 12px 18px!important;text-align:left!important;background:#fbfdff}.channel-expanded{border:1px solid #dce6f4;background:linear-gradient(180deg,#ffffff,#f8fbff);border-radius:24px;padding:18px;box-shadow:0 18px 44px rgba(30,46,88,.08)}.channel-expanded-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}.channel-expanded-head h3{margin:0;color:#172033;font-size:18px;letter-spacing:-.03em}.channel-kpis{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:8px;min-width:min(620px,100%)}.channel-kpis span{border:1px solid #e4ebf6;background:#fff;border-radius:15px;padding:9px 10px;color:#7f93b3;font-size:9px;font-weight:950;text-transform:uppercase}.channel-kpis b{display:block;color:#172033;font-size:15px}.channel-detail-scroll{overflow:auto}.channel-detail-table{width:100%;min-width:1080px;border-collapse:separate;border-spacing:0;border:1px solid #e5ebf4;border-radius:18px;overflow:hidden;background:#fff}.channel-detail-table th{background:#0d1730;color:#b8c4e9;text-align:left;font-size:8px;text-transform:uppercase;letter-spacing:.16em;padding:11px}.channel-detail-table td{border-bottom:1px solid #edf2f8;padding:12px 11px!important;color:#172033;font-size:12px;vertical-align:top}.channel-detail-table tbody tr:last-child td{border-bottom:0}.channel-detail-table td b{display:block;font-size:12px}.channel-detail-table td span,.channel-detail-table td small{color:#7f93b3;font-size:9px;font-weight:850;text-transform:uppercase}.campaign-strip{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:13px}.campaign-strip>span{color:#7f93b3;font-size:9px;font-weight:950;text-transform:uppercase;letter-spacing:.16em}.campaign-chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:#eef2ff;color:#4f46e5;padding:7px 10px;font-size:10px;font-weight:850}.campaign-chip b{color:#172033;max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.budget-note{font-size:11px;margin:12px 0 0}@media(max-width:1400px){.ops-grid{grid-template-columns:1fr}.side-stack{grid-template-columns:1fr 1fr}.score-table{min-width:1120px}.channel-kpis{grid-template-columns:repeat(2,1fr)}}

/* Tab System for Ops Control */
.detail-tabs {
  display: flex;
  gap: 6px;
  margin-left: auto;
}
.tab-btn {
  background: transparent;
  border: 1px solid var(--line);
  color: var(--muted);
  border-radius: 8px;
  padding: 4px 8px;
  font-size: 10px;
  font-weight: 850;
  text-transform: uppercase;
  cursor: pointer;
  letter-spacing: 0.05em;
  transition: all 0.15s ease;
}
.tab-btn:hover {
  border-color: #cbd5e1;
  color: var(--ink);
}
.tab-btn.active {
  background: var(--nav);
  color: white;
  border-color: var(--nav);
}

/* PPC Drilldown layout styles */
.ppc-drilldown {
  margin-top: 14px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.drilldown-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.drilldown-head h4 {
  margin: 0;
  font-size: 13px;
  font-weight: 850;
  color: var(--ink);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.cache-time {
  font-size: 10px;
  color: var(--muted);
}
.drilldown-kpis {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}
.drilldown-kpi {
  background: #f8fafc;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 10px;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.drilldown-kpi .label {
  font-size: 8px;
  font-weight: 850;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.drilldown-kpi .value {
  font-size: 14px;
  font-weight: 950;
  color: var(--ink);
}
.drilldown-kpi .delta {
  font-size: 9px;
  color: var(--muted);
}
.drilldown-section {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.drilldown-section h5 {
  margin: 0;
  font-size: 10px;
  font-weight: 850;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.drilldown-chart-wrap {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 8px;
  overflow: hidden;
}
#harvHourLineChart {
  width: 100%;
  height: auto;
  display: block;
}
.chart-grid { stroke: #edf2f7; stroke-width: 1; }
.chart-axis { stroke: #cbd5e0; stroke-width: 1.5; }
.chart-fill { fill: rgba(22, 191, 135, 0.08); }
.chart-line { fill: none; stroke: var(--green); stroke-width: 3; stroke-linecap: round; }
.chart-dot { fill: #fff; stroke: var(--green); stroke-width: 2.5; }
.chart-hour { font-size: 10px; fill: var(--muted); font-weight: 600; }
.chart-value { font-size: 10px; fill: var(--ink); font-weight: 850; }

.drilldown-platforms {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.drilldown-platform-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.drilldown-platform-name {
  font-weight: 850;
  font-size: 12px;
  color: var(--ink);
  display: flex;
  align-items: center;
  gap: 8px;
}
.drilldown-platform-stats {
  display: flex;
  flex-direction: column;
  font-size: 11px;
  color: var(--muted);
  align-items: flex-end;
}
.drilldown-platform-stats span b {
  color: var(--ink);
  font-weight: 850;
}

.terminal-card {
  background: #0f172a;
  border-radius: 12px;
  padding: 12px;
  border: 1px solid #1e293b;
}
.terminal-text {
  margin: 0;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 10.5px;
  line-height: 1.5;
  color: #38bdf8;
  white-space: pre-wrap;
  word-break: break-all;
}

/* Login Screen Styling */
.login-container {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  padding: 24px;
  background: var(--bg);
}
.login-card {
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: 24px;
  padding: 36px;
  width: 100%;
  max-width: 400px;
  box-shadow: var(--shadow);
  text-align: center;
}
.brand-mark-login {
  width: 52px;
  height: 52px;
  border-radius: 26px;
  background: linear-gradient(145deg, #6b5cff, #4430d7);
  display: grid;
  place-items: center;
  color: #fff;
  box-shadow: 0 12px 24px rgba(86, 70, 220, .38);
  margin: 0 auto 18px;
}
.brand-mark-login svg {
  width: 32px;
  height: 32px;
}
.login-card h2 {
  margin: 0;
  font-size: 22px;
  font-weight: 950;
  color: var(--ink);
}
.login-card p {
  margin: 6px 0 24px;
}
.login-error {
  background: #fef2f2;
  border: 1px solid #fee2e2;
  color: var(--red);
  font-size: 12px;
  font-weight: 850;
  border-radius: 12px;
  padding: 10px;
  margin-bottom: 16px;
  text-align: left;
}
.google-btn {
  width: 100%;
  height: 44px;
  border: 1px solid var(--line);
  background: #fff;
  border-radius: 14px;
  color: #374151;
  font-size: 13px;
  font-weight: 850;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  cursor: pointer;
  transition: all 0.15s ease;
}
.google-btn:hover {
  background: #f9fafb;
  border-color: #d1d5db;
}
.separator {
  display: flex;
  align-items: center;
  text-align: center;
  margin: 20px 0;
  color: var(--muted);
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.separator::before, .separator::after {
  content: '';
  flex: 1;
  border-bottom: 1px solid var(--line);
}
.separator:not(:empty)::before {
  margin-right: .5em;
}
.separator:not(:empty)::after {
  margin-left: .5em;
}
#adminLoginForm {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
#adminLoginForm input {
  height: 40px;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 0 12px;
  font-size: 13px;
  color: var(--ink);
  background: #fff;
  width: 100%;
}
#adminLoginForm input:focus {
  outline: none;
  border-color: #6b5cff;
}
.login-submit-btn {
  height: 40px;
  border: 0;
  background: var(--nav);
  color: white;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  cursor: pointer;
  transition: background 0.15s ease;
}
.login-submit-btn:hover {
  background: var(--nav-2);
}
