/* Giftbuy24 console — dark shell (#0F1411 / #CDF24A / JetBrains Mono) */
:root{--bg:#0F1411;--panel:#141A16;--line:#22291F;--ink:#E6E9E2;--muted:#7E877F;--accent:#CDF24A;--warn:#FF8A5B;--ok:#CDF24A;--bad:#FF6B6B}
*{box-sizing:border-box}body.console-body{margin:0;background:var(--bg);color:var(--ink);font:500 14px/1.5 Manrope,system-ui,sans-serif;display:grid;grid-template-columns:230px 1fr;min-height:100vh}
a{color:inherit}h1{font:700 28px "Bricolage Grotesque",sans-serif;letter-spacing:-.02em;margin:0 0 18px}h3{font:700 16px "Bricolage Grotesque",sans-serif;margin:0 0 12px}
.mono{font-family:"JetBrains Mono",monospace}.muted{color:var(--muted)}.small{font-size:12px}.tiny{font-size:11px}.pos{color:var(--ok)}.neg{color:var(--bad)}.warn-text{color:var(--warn)}
.side{background:#0B0F0D;border-inline-end:1px solid var(--line);padding:18px 14px;display:flex;flex-direction:column;gap:18px;position:sticky;top:0;height:100vh}
.brand{display:inline-flex;align-items:center;gap:8px;font:800 18px "Bricolage Grotesque",sans-serif;text-decoration:none;color:#fff}.brand-mark{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--accent);color:#0F1411}
.side nav{display:grid;gap:2px;flex:1}.side nav a{display:flex;justify-content:space-between;align-items:center;text-decoration:none;padding:9px 12px;border-radius:10px;color:#A7AEA6;font-weight:600}.side nav a.on,.side nav a:hover{background:#1C241F;color:#fff}
.pill{background:var(--accent);color:#0F1411;border-radius:999px;padding:1px 7px;font:700 11px "JetBrains Mono",monospace}
.me{display:grid;gap:2px;padding-top:12px;border-top:1px solid var(--line)}.linklike{background:none;border:0;padding:0;color:var(--muted);font:600 13px Manrope,sans-serif;cursor:pointer;text-decoration:underline;text-align:start}
main.console{padding:28px 32px 80px;max-width:1400px}
.flash{background:#1C241F;border-inline-start:3px solid var(--accent);padding:10px 14px;border-radius:10px;margin-bottom:16px}.flash.err{border-inline-start-color:var(--bad)}
.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px;margin-bottom:16px}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px}.stat{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:14px;display:grid;gap:4px;text-decoration:none}.stat b{font-size:22px}.stat.warn{border-color:var(--warn)}
.bars{display:flex;align-items:flex-end;gap:6px;height:160px;padding-top:10px}.bar{flex:1;background:linear-gradient(to top,var(--accent) var(--v),#1C241F var(--v));border-radius:6px 6px 0 0;height:100%;position:relative}.bar span{position:absolute;bottom:-18px;left:0;right:0;text-align:center;font:600 10px "JetBrains Mono",monospace;color:var(--muted)}
table.grid{width:100%;border-collapse:collapse;background:var(--panel);border-radius:14px;overflow:hidden;margin-bottom:16px}table.grid th{text-align:start;font:600 11px "JetBrains Mono",monospace;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:10px 12px;border-bottom:1px solid var(--line)}table.grid td{padding:10px 12px;border-bottom:1px solid #1C241F;vertical-align:middle}table.grid.small td{padding:7px 10px;font-size:13px}td.empty{text-align:center;color:var(--muted);padding:40px}
.status{font:700 11px "JetBrains Mono",monospace;padding:3px 8px;border-radius:6px;background:#22291F;white-space:nowrap}.status.captured,.status.resolved,.status.completed,.status.active,.status.approved,.status.published{background:var(--accent);color:#0F1411}.status.needs_review,.status.late,.status.partially_refunded,.status.pending_approval,.status.review{background:#FFD166;color:#0F1411}.status.awaiting_manual,.status.processing,.status.pending{background:#DCE9F6;color:#0F1411}.status.failed,.status.cancelled,.status.suspended,.status.rejected,.status.refunded{background:var(--bad);color:#0F1411}
.health.ok{color:var(--ok)}.health.degraded{color:#FFD166}.health.down{color:var(--warn)}.mode-badge{font:700 11px "JetBrains Mono",monospace;border:1px solid var(--line);border-radius:8px;padding:3px 8px;color:var(--accent)}.mode-badge.manual{color:var(--warn);border-color:var(--warn)}
.fam{display:inline-block;background:var(--accent);color:#0F1411;font:700 10px "JetBrains Mono",monospace;padding:3px 6px;border-radius:5px;text-transform:uppercase}
.btn{display:inline-flex;align-items:center;gap:6px;background:#E6E9E2;color:#0F1411;border:0;border-radius:10px;padding:9px 14px;font:700 13px Manrope,sans-serif;cursor:pointer;text-decoration:none}.btn.small{padding:6px 10px;font-size:12px}.btn.primary{background:var(--accent)}.btn.ghost{background:transparent;color:var(--ink);border:1px solid #2A332D}.btn.full{width:100%;justify-content:center}
label{display:block;margin:10px 0 4px;font-weight:600}input:not([type=radio]):not([type=checkbox]):not([type=file]),select,textarea{width:100%;background:#0F1411;color:#fff;border:1px solid #2A332D;border-radius:10px;padding:10px;font:14px Manrope,sans-serif}input.code{font-size:24px;letter-spacing:.4em;text-align:center}.narrow{width:160px!important}.wide{min-width:320px}textarea.mono{font-family:"JetBrains Mono",monospace;font-size:12px}
form.inline{display:inline-flex;gap:8px;align-items:end;flex-wrap:wrap;margin:4px 8px 4px 0}form.inline label{margin:0}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.filters{display:flex;gap:10px;align-items:center;margin-bottom:12px;flex-wrap:wrap}.filters a{color:var(--muted);text-decoration:none;padding:6px 10px;border-radius:8px}.filters a.on{background:#1C241F;color:#fff}.filters input,.filters select{width:auto}
dl.kv{display:grid;grid-template-columns:120px 1fr;gap:6px 12px;margin:0}dl.kv dt{color:var(--muted)}dl.kv dd{margin:0;word-break:break-word}
.warn-note{background:rgba(255,138,91,.1);border:1px dashed var(--warn);border-radius:10px;padding:10px 12px;font-size:13px}
.kyc-images{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:14px 0}.kyc-images figure{margin:0;background:#000;border-radius:12px;overflow:hidden}.kyc-images img{width:100%;max-height:520px;object-fit:contain;display:block}.kyc-images figcaption{padding:8px;color:var(--muted);font-size:12px}
.qr-wrap{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin:12px 0}.qr-wrap canvas{border-radius:10px;background:#fff}
.pager{display:flex;gap:16px}pre{background:#0B0F0D;padding:12px;border-radius:10px;overflow:auto;max-height:400px}
/* auth */
body.auth-body{display:grid;place-items:center;grid-template-columns:1fr}.auth-card{width:min(400px,92vw);background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:30px;display:grid;gap:10px}.auth-card h1{font-size:24px;margin:10px 0 0}
@media (max-width:900px){body.console-body{grid-template-columns:1fr}.side{position:static;height:auto}.two,.kyc-images{grid-template-columns:1fr}main.console{padding:16px}}

/* fulfilment pages */
.console .tabs a{color:#A7AEA6;text-decoration:none;padding:8px 12px;border-radius:10px;font-weight:600}
.console .tabs a.on{background:#1C241F;color:#fff}
.console .card.danger{border-color:#5a2a1e}
.console .card h3{margin:0 0 12px;font:700 16px "Bricolage Grotesque",sans-serif}
.console .console-top{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-bottom:20px}.console .console-top h1{margin:0}.console .tabs a{color:#A7AEA6;text-decoration:none;padding:8px 12px;border-radius:10px;font-weight:600}.console .tabs a.on{background:#1C241F;color:#fff}.console .mode-badge{margin-inline-start:auto}
.console fieldset{border:1px solid var(--line);border-radius:12px;padding:12px 16px;margin:12px 0}.console legend{padding:0 6px;font-weight:700}.console .row{display:flex;gap:14px;align-items:center;padding:6px 0}.console .chk{display:flex;gap:8px;align-items:center;min-width:180px;margin:0;font-weight:600}.console .chk input{width:auto}.console .segmented label{display:block;padding:10px 12px;border:1px solid #2A332D;border-radius:10px;margin:8px 0;font-weight:500;cursor:pointer}.console .segmented input{width:auto;margin-inline-end:8px}
