:root {
    --primary-blue: #0284c7;
    --primary-blue-dark: #0369a1;
    --light-blue-bg: #f0f7ff;
    --card-border: #e2e8f0;
    --text-dark: #0f172a;
    --text-muted: #64748b;
    --success: #16a34a;
    --danger: #ef4444;
    --gold: #d97706;
}
* { margin:0; padding:0; box-sizing:border-box; font-family:'Outfit', sans-serif; }
body { background: linear-gradient(180deg, #f0f6ff 0%, #ffffff 100%); color: var(--text-dark); min-height:100vh; }
a { color: inherit; text-decoration: none; }
.mono { font-family: monospace; color: var(--primary-blue); }

/* Login / setup */
.admin-wrap { min-height:100vh; display:flex; align-items:center; justify-content:center; padding:20px; }
.admin-card { background:#fff; border:1px solid var(--card-border); border-radius:20px; padding:32px; width:100%; max-width:380px; box-shadow:0 4px 20px rgba(2,132,199,0.08); }
.admin-card h1 { font-size:1.3rem; margin-bottom:4px; }
.admin-card .sub { color:var(--text-muted); font-size:.85rem; margin-bottom:18px; }
.field { margin-bottom:16px; display:flex; flex-direction:column; gap:6px; }
.field label { font-size:.8rem; color:var(--text-muted); font-weight:500; }
.field input { border:1px solid var(--card-border); padding:11px 13px; border-radius:10px; font-size:.9rem; outline:none; }
.field input:focus { border-color:var(--primary-blue); }
.warn-msg { background:#fef2f2; border:1px solid var(--danger); color:#b91c1c; padding:10px 14px; border-radius:10px; font-size:.85rem; margin-bottom:14px; }
.ok-msg { background:#f0fdf4; border:1px solid var(--success); color:#15803d; padding:10px 14px; border-radius:10px; font-size:.85rem; margin-bottom:14px; }
.setup-hint { margin-top:16px; font-size:.8rem; color:var(--text-muted); text-align:center; }
.btn-pay { background: var(--primary-blue); color:#fff; border:none; width:100%; padding:13px; border-radius:14px; font-size:.95rem; font-weight:600; cursor:pointer; }
.btn-pay:hover { background: var(--primary-blue-dark); }

/* Dashboard */
.dash-body { padding-bottom: 40px; }
.admin-topbar { background:#fff; border-bottom:1px solid var(--card-border); }
.admin-topbar-inner { max-width:1100px; margin:0 auto; padding:16px 20px; display:flex; align-items:center; justify-content:space-between; }
.admin-topbar-right { display:flex; align-items:center; gap:16px; font-size:.85rem; color:var(--text-muted); }
.admin-topbar-right a:first-child { color: var(--primary-blue); font-weight: 600; }
.btn-ghost-sm { border:1px solid var(--card-border); padding:6px 14px; border-radius:100px; font-size:.8rem; }
.admin-main { max-width:1100px; margin:0 auto; padding:26px 20px 60px; }
.admin-main.narrow { max-width: 560px; }
.page-title { font-size:1.3rem; margin-bottom:4px; }
.page-sub { color:var(--text-muted); font-size:.85rem; margin-bottom:20px; }

.stat-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(130px,1fr)); gap:14px; margin-bottom:22px; }
.stat-card { background:#fff; border:1px solid var(--card-border); border-radius:14px; padding:16px; }
.stat-card span { display:block; font-size:1.6rem; font-weight:700; font-family:monospace; }
.stat-card label { color:var(--text-muted); font-size:.78rem; }
.stat-card.pending span { color: var(--gold); }
.stat-card.ok span { color: var(--success); }
.stat-card.bad span { color: var(--danger); }

.filter-row { display:flex; gap:8px; margin-bottom:16px; flex-wrap:wrap; }
.filter-chip { padding:7px 16px; border-radius:100px; border:1px solid var(--card-border); font-size:.8rem; color:var(--text-muted); background:#fff; }
.filter-chip.active { background: var(--primary-blue); color:#fff; border-color: var(--primary-blue); font-weight:600; }

.table-wrap { overflow-x:auto; border:1px solid var(--card-border); border-radius:14px; background:#fff; }
.orders-table { width:100%; border-collapse:collapse; font-size:.83rem; white-space:nowrap; }
.orders-table th { text-align:left; background:#f8fafc; color:var(--text-muted); font-weight:600; padding:12px 14px; font-size:.72rem; text-transform:uppercase; letter-spacing:.03em; }
.orders-table td { padding:12px 14px; border-top:1px solid var(--card-border); }
.empty-row { text-align:center; color:var(--text-muted); padding:30px !important; }
.status-select { border:1px solid var(--card-border); padding:7px 10px; border-radius:8px; font-size:.8rem; background:#fff; }

/* Settings form */
.settings-form { background:#fff; border:1px solid var(--card-border); border-radius:16px; padding:24px; display:flex; flex-direction:column; gap:18px; }
.toggle-row { display:flex; align-items:flex-start; gap:12px; font-size:.88rem; cursor:pointer; }
.toggle-row input { margin-top:4px; width:18px; height:18px; accent-color: var(--primary-blue); }
.muted-sm { font-size:.78rem; color: var(--text-muted); font-weight: 400; }
