:root{--g:#1f7a4d;--bg:#f4f6f5;--tx:#17211c;--mut:#667;--card:#fff;--bd:#dde3df}
*{box-sizing:border-box}
body{margin:0;font:16px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--tx)}
.top{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--g);color:#fff}
.brand{color:#fff;font-weight:700;text-decoration:none}
.lang select{padding:4px;border-radius:6px;border:0}
.menu{display:flex;gap:14px;flex-wrap:wrap;padding:10px 16px;background:#fff;border-bottom:1px solid var(--bd)}
.menu a{color:var(--g);text-decoration:none;font-weight:600}
main{max-width:640px;margin:0 auto;padding:16px}
h1{font-size:1.4rem;margin:.4em 0}h2{font-size:1.1rem;margin:1.4em 0 .5em}
.card{background:var(--card);border:1px solid var(--bd);border-radius:12px;padding:14px;margin:10px 0}
label{display:block;margin:10px 0;font-weight:600;font-size:.9rem}
input,select{display:block;width:100%;padding:11px;margin-top:4px;border:1px solid #bcc7c1;border-radius:8px;font-size:1rem;background:#fff}
.btn{display:inline-block;padding:10px 16px;border-radius:10px;border:1px solid var(--g);background:#fff;color:var(--g);font-size:1rem;font-weight:600;text-decoration:none;cursor:pointer}
.btn.primary{background:var(--g);color:#fff}
.btn.big{flex:1;padding:18px 10px;font-size:1.2rem}
.btn.small{padding:6px 10px;font-size:.85rem}
.btn:disabled{opacity:.5}
.row{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
form.inline{display:inline;margin:0}
.small{color:var(--mut);font-size:.85rem}
.flash{padding:10px 12px;border-radius:8px;margin:10px 0}
.flash.ok{background:#e1f4e8}.flash.err{background:#fde4e4}.flash.warn{background:#fff3cd}
.status{min-height:1.4em;margin-top:10px;font-weight:600}
.status.ok{color:var(--g)}.status.err{color:#b3261e}.status.busy{color:var(--mut)}
.results{list-style:none;margin:0;padding:0}
.results li{padding:12px;border:1px solid var(--bd);border-top:0;background:#fff;cursor:pointer}
.results li.none{color:var(--mut);cursor:default}
.tag{font-size:.75rem;padding:2px 8px;border-radius:99px;background:#e9eeeb;margin-left:4px}
.tag.active{background:#d6f0df}.tag.pending{background:#fff3cd}.tag.refused,.tag.disabled{background:#fde4e4}
.scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.85rem}
th,td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--bd);white-space:nowrap}tr.bad td{color:#b3261e}
.qrpage{text-align:center}#qr svg{width:min(80vw,380px);height:auto}
@media print{.top,.menu,.noprint{display:none}}
