/* Vegis Clienti: un singur fisier de stil (CSP: style-src 'self', fara stiluri inline). */
:root { --fg: #1d2421; --muted: #5d6a64; --line: #d7ddd9; --accent: #2f6b4f; --bad: #9b2c2c; --warn-bg: #fff4d6; }
* { box-sizing: border-box; }
body { margin: 0; font: 15px/1.45 system-ui, sans-serif; color: var(--fg); background: #fafbfa; }
header.top { display: flex; gap: 1.5rem; align-items: center; padding: .6rem 1rem; background: var(--accent); color: #fff; }
header.top a, header.top .who { color: #fff; margin-right: 1rem; }
.brand { font-weight: 600; }
.logout { margin-left: auto; display: flex; gap: .5rem; align-items: center; }
main { padding: 1rem; max-width: 100rem; }
.info { margin: 0; padding: .4rem 1rem; background: #eef3f0; color: var(--muted); font-size: .9rem; }
.info.stale { background: var(--warn-bg); color: var(--fg); }
.error { color: var(--bad); font-weight: 600; }
.notice { background: var(--warn-bg); padding: .6rem; border: 1px solid #e6c56a; }
.hint { color: var(--muted); font-size: .9rem; }
label { display: block; margin: .5rem 0; }
.row label, .filters label { display: inline-block; margin-right: 1rem; }
.check { display: block !important; }
form.narrow { max-width: 24rem; }
form.inline { display: inline; }
input, select, textarea, button { font: inherit; }
input:not([type=checkbox]), select, textarea { display: block; width: 100%; padding: .35rem; border: 1px solid var(--line); }
.row input, .row select, .filters select { width: auto; }
button { padding: .35rem .8rem; border: 1px solid var(--accent); background: var(--accent); color: #fff; cursor: pointer; }
button:disabled { opacity: .5; }
fieldset.filters { border: 1px solid var(--line); margin: 1rem 0; }
table { border-collapse: collapse; }
table.data { width: 100%; font-size: .88rem; }
table.data th, table.data td, table.counts th, table.counts td { border: 1px solid var(--line); padding: .3rem .45rem; text-align: left; vertical-align: top; }
table.counts th { background: #eef3f0; font-weight: 500; }
tr.deleted td { color: var(--muted); font-style: italic; }
.scroll { overflow-x: auto; margin: 1rem 0; }
.pages { display: flex; gap: .5rem; align-items: center; }
.actions form { margin-right: .3rem; }
img.qr { width: 220px; height: 220px; background: #fff; }
code { font-size: .85em; }
