:root{ --brand:#BD1D23; --brand-600:#a71a20; --bg:#fff; --surface:#fff; --text:#1f2937; --border:#e5e7eb; --muted:#6b7280;}
*{box-sizing:border-box} html,body{margin:0;padding:0}
body{font-family:'Poppins',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}
a{color:var(--brand);text-decoration:none} a:hover{color:var(--brand-600);text-decoration:underline}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:#fff;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20}
.topbar .brand{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--brand)}
.container{max-width:1120px;margin:24px auto;padding:0 16px}
.section-head{display:flex;justify-content:space-between;align-items:center;margin:8px 0 16px}
.section-head h2{margin:0;font-size:20px;font-weight:600}
button,.button{background:var(--brand);border:1px solid var(--brand);color:#fff;padding:9px 14px;border-radius:999px;cursor:pointer;font-weight:600;font-size:14px;line-height:1}
button:hover,.button:hover{background:var(--brand-600);border-color:var(--brand-600)}
.button.secondary{background:#fff;color:var(--brand);border:1px solid var(--brand)} .button.secondary:hover{color:var(--brand-600);border-color:var(--brand-600)}
.card{background:var(--surface);padding:16px;border:1px solid var(--border);border-radius:14px;box-shadow:0 6px 16px rgba(0,0,0,.06);margin-bottom:16px}
label{display:block;margin:8px 0 6px;font-weight:500;color:#374151}
input,select{width:100%;padding:10px 12px;border-radius:10px;border:1px solid #d1d5db;background:#fff;color:#111827;outline:none}
input:focus,select:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(189,29,35,0.15)}
table{width:100%;border-collapse:collapse;background:#fff}
th,td{border-bottom:1px solid var(--border);padding:10px 8px;text-align:left}
th{color:#374151;font-weight:600;background:#f8fafc} tr:nth-child(even) td{background:#fafafa}
.grid.two{display:grid;grid-template-columns:1fr 1fr;gap:16px} @media(max-width:900px){.grid.two{grid-template-columns:1fr}}
.alert{background:#fff3f3;border:1px solid #ffd0d0;color:#7a0000;padding:10px 12px;border-radius:10px;margin:10px 0}
@media print{.no-print,.no-print *{display:none !important} .topbar,nav,button,.button{display:none !important} .card{border:1px solid #999 !important;box-shadow:none !important;background:#fff !important} th,td{border:1px solid #999 !important} @page{margin:12mm}}
