:root { --ink:#10202d; --muted:#62717e; --line:#dce4e8; --canvas:#f5f7f8; --panel:#fff; --brand:#0e5d67; --brand-dark:#073b43; --high:#b42318; --medium:#b54708; --low:#175cd3; --good:#067647; }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:var(--canvas); font:15px/1.45 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
h1,h2,h3,h4,p { margin:0; } h1 { font-size:25px; } h2 { font-size:25px; } h3 { font-size:18px; } h4 { font-size:16px; }
button,input,textarea,select { font:inherit; } button { cursor:pointer; border:0; border-radius:8px; background:var(--brand); color:#fff; font-weight:700; padding:10px 15px; } button:hover { background:var(--brand-dark); } button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible { outline:3px solid #8bd8dc; outline-offset:2px; }
label { display:grid; gap:6px; color:#344452; font-weight:650; } input,textarea,select { border:1px solid #b9c7ce; border-radius:7px; background:#fff; color:var(--ink); padding:9px 10px; width:100%; } textarea { min-height:170px; resize:vertical; }
.topbar { display:flex; justify-content:space-between; align-items:center; padding:19px max(28px, calc((100vw - 1380px) / 2)); color:#fff; background:#102a35; }.topbar-actions { display:flex; align-items:center; gap:18px; }.button-quiet { background:transparent; color:inherit; border:1px solid currentColor; padding:7px 11px; }.button-quiet:hover { background:rgba(255,255,255,.12); }.eyebrow { color:#4f9aa1; letter-spacing:.11em; font-size:11px; font-weight:800; }.topbar .eyebrow { color:#91d1d5; }.muted,.hint { color:var(--muted); }.layout { display:grid; grid-template-columns:220px minmax(0, 1fr); max-width:1380px; margin:auto; }.sidebar { min-height:calc(100vh - 79px); padding:32px 18px; border-right:1px solid var(--line); background:#ecf1f2; }.sidebar a { display:block; color:#23404b; text-decoration:none; font-weight:700; padding:10px 12px; border-radius:7px; }.sidebar a:hover { background:#d9e8e9; }.sidebar-note { border-top:1px solid var(--line); margin:25px 10px; padding-top:18px; color:#596b74; font-size:13px; }.content { padding:34px; display:grid; gap:54px; }.section-heading { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:18px; gap:20px; }.metrics { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }.metric,.panel { background:var(--panel); border:1px solid var(--line); border-radius:11px; box-shadow:0 1px 1px rgba(13,30,40,.03); }.metric { display:grid; gap:7px; padding:18px; }.metric span { color:var(--muted); font-weight:600; }.metric strong { font-size:29px; }.two-columns { display:grid; grid-template-columns:minmax(270px,.8fr) minmax(350px,1.2fr); gap:18px; }.panel { padding:20px; }.stack { display:grid; gap:15px; }.form-actions,.filter-row { display:flex; align-items:center; gap:10px; }.seller-list { display:grid; gap:10px; margin-top:16px; }.seller-card { display:grid; grid-template-columns:1fr auto; align-items:start; gap:6px 12px; padding:14px 0; border-top:1px solid var(--line); }.seller-card:first-child { border-top:0; padding-top:0; }.seller-card p,.seller-meta { color:var(--muted); font-size:13px; }.seller-meta { display:flex; gap:12px; }.button-small { justify-self:end; grid-column:2; grid-row:1 / span 2; padding:7px 10px; font-size:13px; }.status,.badge,.risk { display:inline-flex; align-items:center; width:max-content; border-radius:999px; padding:3px 8px; font-size:12px; font-weight:800; }.status-connected { color:var(--good); background:#e7f6ec; }.status-qr_ready,.status-connecting,.status-disconnected { color:var(--medium); background:#fff4e5; }.status-not_connected,.status-logged_out,.status-error { color:#56636b; background:#edf0f1; }.badge { color:#075763; background:#d8f1f1; }.table-wrap { padding:0; overflow:auto; } table { border-collapse:collapse; width:100%; min-width:760px; } th,td { padding:13px 16px; border-bottom:1px solid var(--line); text-align:left; vertical-align:top; } th { color:#546771; font-size:12px; letter-spacing:.04em; text-transform:uppercase; background:#f8fafb; } td { max-width:280px; }.risk-high { color:var(--high); background:#fef0ef; }.risk-medium { color:var(--medium); background:#fff4e5; }.risk-low { color:var(--low); background:#eef4ff; }.risk-none { color:#4b5e68; background:#edf0f1; }.empty { color:var(--muted); padding:20px; text-align:center; }.modal { width:min(620px, calc(100vw - 30px)); border:0; border-radius:13px; padding:0; box-shadow:0 20px 70px rgba(0,0,0,.3); }.modal::backdrop { background:rgba(5,20,26,.6); }.modal-head { display:flex; align-items:center; justify-content:space-between; padding:18px 21px; color:#fff; background:#102a35; }.modal-head .button-quiet { color:#fff; }.qr-content,#report-content { padding:22px; }.qr-content { display:grid; justify-items:center; gap:13px; text-align:center; }.qr-status { font-weight:800; }.qr-image { width:280px; height:280px; border:10px solid #fff; box-shadow:0 1px 10px #cad7dc; }.success { color:var(--good); font-weight:700; }.report-details { display:grid; grid-template-columns:170px 1fr; gap:9px 14px; margin:0 0 20px; }.report-details dt { color:var(--muted); font-weight:700; }.report-details dd { margin:0; }.compact { margin-top:20px; } pre { white-space:pre-wrap; overflow-wrap:anywhere; border:1px solid var(--line); border-radius:7px; background:#f7f9fa; padding:11px; font:13px/1.5 ui-monospace, SFMono-Regular, Menlo, monospace; }.login-body { display:grid; min-height:100vh; place-items:center; padding:20px; background:radial-gradient(circle at top right,#d8f0ee,#f6f8f9 42%); }.login-card { width:min(410px,100%); padding:34px; border-radius:15px; border:1px solid var(--line); background:#fff; box-shadow:0 18px 50px rgba(12,42,49,.13); }.login-card h1 { margin:8px 0; }.brand-mark { display:grid; place-items:center; width:47px; height:47px; border-radius:12px; background:var(--brand); color:#fff; font-weight:900; }.login-card form { margin-top:27px; }.form-error { min-height:20px; color:var(--high); font-weight:650; }
@media (max-width:850px) { .layout { grid-template-columns:1fr; }.sidebar { min-height:auto; display:flex; gap:3px; overflow:auto; padding:10px 18px; }.sidebar-note { display:none; }.content { padding:25px 17px; }.metrics { grid-template-columns:repeat(2,1fr); }.two-columns { grid-template-columns:1fr; }.topbar { padding:15px 17px; } }
@media (max-width:520px) { .metrics { grid-template-columns:1fr; }.section-heading { align-items:flex-start; flex-direction:column; }.report-details { grid-template-columns:1fr; gap:3px; }.report-details dt { margin-top:10px; } }
.seller-actions { display:grid; gap:8px; justify-items:end; grid-column:2; grid-row:1 / span 2; }.seller-actions .button-small { grid-column:auto; grid-row:auto; }.button-danger { background:#b42318; }.button-danger:hover { background:#8e1c13; }
.seller-summary-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(275px, 1fr)); gap:16px; }.seller-summary-card { display:grid; gap:14px; }.seller-summary-heading,.seller-summary-footer { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }.seller-summary-heading h3 { margin:0; }.seller-summary-heading p,.seller-summary-footer { margin:4px 0 0; color:var(--muted); font-size:13px; }.summary-metrics { display:grid; grid-template-columns:repeat(4,1fr); gap:7px; }.summary-metrics span { display:grid; gap:2px; padding:8px; border-radius:7px; background:#f3f7f8; color:#5b6d76; font-size:12px; text-align:center; }.summary-metrics strong { color:#142935; font-size:18px; }.seller-summary-footer { align-items:center; }.seller-summary-footer .button-small { grid-column:auto; grid-row:auto; justify-self:auto; }.seller-report-detail { margin-top:20px; }.seller-report-detail[hidden] { display:none; }
