@font-face{font-family:Manrope;src:url('/brand/Manrope-Variable.ttf') format('truetype');font-weight:200 800;font-style:normal;font-display:swap}
.terminal-root{--terminal-ink:#373737;--terminal-accent:#96b914;--terminal-accent-light:#c8d741;--terminal-muted:#626262;--terminal-line:#e2e2e2;--terminal-surface:#f2f2f2;--terminal-paper:#fff;--terminal-note:#f6f8ec;--terminal-link:#586f0c;color:var(--terminal-ink);font-family:Manrope,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.terminal-root .terminal-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.terminal-root h2{margin:0;font-size:24px;letter-spacing:-.045em}.terminal-root h3{margin:0;font-size:18px}.terminal-root p{line-height:1.7;margin:10px 0;color:var(--terminal-muted)}
.terminal-root .terminal-tabs,.terminal-root .terminal-actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}
.terminal-root .terminal-card{background:var(--terminal-paper);border:1px solid var(--terminal-line);border-radius:12px;padding:22px;margin:16px 0;box-shadow:none}
.terminal-root .terminal-button,.terminal-root .terminal-primary{border:1px solid var(--terminal-line);background:var(--terminal-paper);color:var(--terminal-ink);border-radius:7px;min-height:44px;padding:10px 14px;font:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:background .15s ease}
.terminal-root .terminal-primary,.terminal-root .terminal-tabs [aria-pressed=true]{background:var(--terminal-accent);color:#373737;border-color:var(--terminal-accent)}
.terminal-root .terminal-button:hover{background:var(--terminal-surface)}.terminal-root .terminal-primary:hover,.terminal-root .terminal-tabs [aria-pressed=true]:hover{background:var(--terminal-accent-light);border-color:var(--terminal-accent-light)}
.terminal-root button:disabled{opacity:.5;cursor:wait}.terminal-root button:focus-visible,.terminal-root input:focus-visible,.terminal-root select:focus-visible,.terminal-root summary:focus-visible{outline:3px solid var(--terminal-ink);outline-offset:4px}
.terminal-root .terminal-form,.terminal-root .terminal-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;border:0;padding:0;margin:18px 0;min-width:0}
.terminal-root label{display:grid;gap:8px;font-size:14px;font-weight:600}.terminal-root input,.terminal-root select{box-sizing:border-box;width:100%;min-width:0;min-height:44px;border:1px solid var(--terminal-line);border-radius:7px;background:var(--terminal-paper);padding:10px 12px;color:var(--terminal-ink);font:inherit;font-weight:400}
.terminal-root .terminal-form .terminal-actions{grid-column:1/-1}.terminal-root .terminal-status{border-radius:6px;background:#fff0df;color:#8d5512;font-size:12px;font-weight:700;padding:7px 11px}
.terminal-root .terminal-status[data-status=registered]{background:#e4f6ef;color:#167a59}.terminal-root .terminal-status[data-status=disabled]{background:var(--terminal-surface);color:var(--terminal-muted)}
.terminal-root summary{cursor:pointer;font-size:14px;color:var(--terminal-link)}.terminal-root .terminal-message{background:var(--terminal-note);border:1px solid var(--terminal-accent);border-radius:7px;padding:14px;color:var(--terminal-ink)}.terminal-root .terminal-empty{padding:28px;background:var(--terminal-surface);border-radius:12px;text-align:center}
@media(max-width:520px){.terminal-root .terminal-card{padding:16px}.terminal-root .terminal-form,.terminal-root .terminal-filters{grid-template-columns:1fr}.terminal-root .terminal-status{max-width:100%}}
@media(prefers-reduced-motion:reduce){.terminal-root .terminal-button,.terminal-root .terminal-primary{transition:none}}


/* Explicit appearance choice applies to customer and operator terminals. */
:root[data-theme=dark] .terminal-root{--terminal-ink:#f1f1ee;--terminal-muted:#b8bab3;--terminal-line:#41443d;--terminal-surface:#30342c;--terminal-paper:#272a25;--terminal-note:#343e21;--terminal-link:#c8d741}
:root[data-theme=dark] .terminal-root h2,:root[data-theme=dark] .terminal-root h3,:root[data-theme=dark] .terminal-root label{color:var(--terminal-ink)}
:root[data-theme=dark] .terminal-root .terminal-status{background:#3c3423;color:#f5c47e}
:root[data-theme=dark] .terminal-root .terminal-status[data-status=registered]{background:#233b2d;color:#a7e2bc}
:root[data-theme=dark] .terminal-root .terminal-status[data-status=disabled]{background:var(--terminal-surface);color:var(--terminal-muted)}
