/* LAICO identity (laico_brand.py 1.0, 03/11/2026): red AD2624 as accent only, ink 373435, Dubai. */
:root{--red:#AD2624;--ink:#373435;--text:#1A1A1A;--muted:#595959;--grid:#BFBFBF;--soft:#D9D9D9;--light:#F2F2F2;
--pale:#F7F7F7;--good:#E8F3EE;--good-ink:#2E7D32;--warn:#FDF0E6;--warn-ink:#9C6500;--bad:#F8D7DA;--bad-ink:#9C0006}
*{box-sizing:border-box}
html{font-size:15px}
body{margin:0;font-family:Dubai,"Segoe UI",Tahoma,Arial,sans-serif;color:var(--text);background:#fff;line-height:1.6}
a{color:var(--ink)}
.demo-band{background:repeating-linear-gradient(-45deg,var(--warn),var(--warn) 14px,#fff7ef 14px,#fff7ef 28px);
color:var(--warn-ink);text-align:center;font-weight:700;padding:3px 12px;font-size:.88rem;border-bottom:1px solid #f0d6bf}
header.top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 28px 10px;border-bottom:3px solid var(--red)}
header.top .sys{font-size:1.5rem;font-weight:700;color:var(--ink);line-height:1.3}
header.top .sub{color:var(--muted);font-size:.9rem}
header.top img{height:44px}
nav.nav{display:flex;flex-wrap:wrap;align-items:center;background:var(--ink);padding:0 18px}
nav.nav a{color:#fff;text-decoration:none;padding:8px 11px;font-size:.93rem;border-bottom:3px solid transparent}
nav.nav a:hover,nav.nav a.on{border-bottom-color:var(--red)}
nav.nav .who{margin-inline-start:auto;color:#d9d9d9;font-size:.85rem;padding:0 8px}
nav.nav form{margin:0}
button.link{background:none;border:0;color:#fff;cursor:pointer;font:inherit;font-size:.9rem;padding:8px;text-decoration:underline}
main{padding:18px 28px 36px;max-width:1360px;margin:0 auto}
footer{color:var(--muted);font-size:.8rem;text-align:center;padding:12px;border-top:1px solid var(--soft)}
h1{font-size:1.32rem;color:var(--ink);margin:2px 0 14px;padding-bottom:6px;position:relative}
h1::after{content:"";position:absolute;bottom:0;inset-inline-start:0;width:60px;height:3px;background:var(--red)}
h2{font-size:1.04rem;color:var(--ink);background:var(--light);border-inline-start:4px solid var(--red);padding:4px 12px;margin:20px 0 10px}
h3{font-size:.98rem;color:var(--ink);margin:12px 0 6px}
.muted{color:var(--muted)}.small{font-size:.85rem}
.msg{padding:8px 14px;margin:0 0 12px;background:var(--pale);border-inline-start:4px solid var(--ink)}
.msg.success{background:var(--good);border-color:var(--good-ink);color:#1d4d20}
.msg.error{background:var(--bad);border-color:var(--bad-ink);color:var(--bad-ink)}
.flag{background:var(--warn);color:var(--warn-ink);padding:6px 12px;border-inline-start:4px solid var(--warn-ink);margin:8px 0}
.redline{background:var(--bad);color:var(--bad-ink);padding:7px 12px;border-inline-start:4px solid var(--bad-ink);margin:6px 0;font-weight:600}
.okline{background:var(--good);color:var(--good-ink);padding:6px 12px;border-inline-start:4px solid var(--good-ink);margin:6px 0}
.btn.big{font-size:1.05rem;padding:8px 28px}
.links span+span::before{content:"·";margin:0 7px;color:var(--muted)}
details.more{margin-top:12px;border-top:1px solid var(--soft);padding-top:6px}
details.more summary{cursor:pointer;color:var(--muted);font-size:.9rem}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:12px;margin:6px 0 16px}
.tile{background:var(--light);border-inline-start:4px solid var(--red);padding:8px 14px}
.tile .n{font-size:1.4rem;font-weight:700;color:var(--ink)}
.tile .l{color:var(--muted);font-size:.86rem}
table{border-collapse:collapse;width:100%;margin:4px 0 14px;font-size:.9rem}
th{background:var(--ink);color:#fff;font-weight:600;padding:6px 8px;text-align:right;white-space:nowrap}
td{padding:5px 8px;border-bottom:1px solid var(--soft);vertical-align:top}
tbody tr:nth-child(even) td{background:#fafafa}
.num{text-align:left!important;white-space:nowrap;font-variant-numeric:tabular-nums}
tr.total td{background:var(--light);font-weight:700}
td.ok,span.ok{color:var(--good-ink);font-weight:700}td.no,span.no{color:var(--bad-ink);font-weight:700}
tr.bad td{background:var(--bad)!important}tr.good td{background:var(--good)!important}
.badge{display:inline-block;padding:0 9px;border-radius:10px;font-size:.8rem;white-space:nowrap;border:1px solid var(--soft);background:#fff}
.st-new{background:var(--pale);border-color:var(--grid)}
.st-warn{background:var(--warn);color:var(--warn-ink);border-color:#efcda9}
.st-sent{border-color:var(--ink);color:var(--ink)}
.st-good{background:var(--good);color:var(--good-ink);border-color:#bfe0c9}
.st-ink{background:var(--ink);color:#fff;border-color:var(--ink)}
.st-bad{background:var(--bad);color:var(--bad-ink);border-color:#efb5bb}
.btn{display:inline-block;background:var(--ink);color:#fff;border:1px solid var(--ink);padding:5px 15px;border-radius:3px;
font:inherit;font-size:.93rem;cursor:pointer;text-decoration:none;margin:2px 0}
.btn:hover{filter:brightness(1.2)}.btn.red{background:var(--red);border-color:var(--red)}.btn.ghost{background:#fff;color:var(--ink)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:900px){.grid2{grid-template-columns:1fr}main{padding:14px}}
.card{border:1px solid var(--soft);padding:10px 16px;margin-bottom:14px;background:#fff}
.card.act{background:var(--pale)}
.acts form{border-top:1px solid var(--soft);padding:8px 0;margin:0}
.acts form:first-child{border-top:0}
.row{margin:0 0 9px}
label{display:block;font-weight:600;color:var(--ink);font-size:.9rem;margin-bottom:2px}
input[type=text],input[type=number],input[type=date],input[type=password],input[type=file],select,textarea{width:100%;max-width:520px;
padding:5px 8px;border:1px solid var(--grid);border-radius:3px;font:inherit;background:var(--light)}
input:focus,select:focus,textarea:focus{outline:2px solid var(--ink);background:#fff}
.inl{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.inl input,.inl select{width:auto;max-width:230px}
.errorlist{color:var(--bad-ink);margin:2px 0;padding:0;list-style:none;font-size:.86rem}
dl.kv{display:grid;grid-template-columns:max-content 1fr;gap:3px 14px;margin:0}dl.kv dt{color:var(--muted)}dl.kv dd{margin:0;font-weight:600}
.filters{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-bottom:10px}
.filters a{padding:1px 10px;border:1px solid var(--soft);border-radius:12px;text-decoration:none;font-size:.86rem;background:#fff}
.filters a.on{background:var(--ink);color:#fff;border-color:var(--ink)}
pre.mail{white-space:pre-wrap;background:var(--pale);border:1px solid var(--soft);padding:12px;font-family:inherit;font-size:.9rem;margin:0}
ol.steps li{margin-bottom:5px}
