:root{--ink:#1f2937;--muted:#6b7280;--purple:#5b2a86;--light:#f5f3f8;--line:#e5e7eb;--red:#b42318}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:#f7f7f9}header{background:var(--purple);color:#fff;padding:14px max(20px,calc((100% - 1200px)/2));display:flex;gap:24px;align-items:center;justify-content:space-between;flex-wrap:wrap}.brand{font-size:1.25rem;font-weight:800;color:#fff;text-decoration:none}nav{display:flex;gap:14px;flex-wrap:wrap}nav a{color:#fff;text-decoration:none}main{max-width:1200px;margin:0 auto;padding:24px 18px 50px}h1{margin-top:0}h2{font-size:1.15rem}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:0 3px 12px #1111;margin-bottom:20px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.metrics span{display:block;color:var(--muted)}.metrics strong{display:block;font-size:1.65rem;margin-top:6px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.narrow,.auth{max-width:520px;margin-inline:auto}label{display:block;font-weight:650;margin-bottom:12px}input,select,textarea{display:block;width:100%;margin-top:5px;border:1px solid #cfd3da;border-radius:8px;padding:10px;font:inherit}textarea{min-height:80px}button{border:0;background:var(--purple);color:#fff;padding:10px 16px;border-radius:8px;font-weight:750;cursor:pointer}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px 14px;align-items:end}.inline{display:flex;gap:6px;min-width:310px}.inline input{margin:0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;border-bottom:1px solid var(--line);padding:10px 8px;white-space:nowrap}th{font-size:.85rem;color:var(--muted)}.flash{padding:12px 14px;border-radius:8px;margin-bottom:18px;background:#e8f5ea;color:#176b2c}.flash.error{background:#feeceb;color:var(--red)}.muted{color:var(--muted)}footer{text-align:center;color:var(--muted);padding:24px}@media(max-width:800px){.metrics,.grid,.form-grid{grid-template-columns:1fr}.metrics{grid-template-columns:1fr 1fr}header{align-items:flex-start}nav{width:100%}}.order-row{display:grid;grid-template-columns:2fr 2fr .6fr .8fr;gap:8px;margin-bottom:8px}.order-row select,.order-row input{margin:0}@media(max-width:800px){.order-row{grid-template-columns:1fr}}
@media print{header,footer,.no-print{display:none!important}body{background:#fff}.card{box-shadow:none;border:0}}
