:root{--primary:#2563eb;--dark:#172033;--bg:#f4f7fb;--border:#dce3ed;--danger:#c62828}*{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:Arial,sans-serif;color:#273142}.top{background:var(--dark);padding:15px max(20px,calc((100% - 1120px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{color:#fff;font-size:23px;font-weight:700;text-decoration:none}.top nav{display:flex;gap:8px;flex-wrap:wrap}.top nav a{color:#dce5f6;text-decoration:none;padding:8px}.container{max-width:1120px;margin:25px auto;padding:0 18px;min-height:75vh}h1{font-size:27px}.card{background:#fff;border:1px solid var(--border);border-radius:10px;padding:20px;margin-bottom:20px;box-shadow:0 3px 12px #1e293b0b}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.stat{font-size:30px;font-weight:bold;color:var(--primary)}label{display:block;font-weight:600;margin:12px 0 5px}input,select,textarea{width:100%;padding:10px;border:1px solid #bdc7d6;border-radius:6px;font:inherit}textarea{min-height:85px}.btn{display:inline-block;border:0;border-radius:6px;background:var(--primary);color:#fff;text-decoration:none;padding:10px 15px;cursor:pointer;font-weight:600}.btn.gray{background:#64748b}.btn.red{background:var(--danger)}.actions{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;background:#fff}th,td{text-align:left;padding:11px;border-bottom:1px solid var(--border)}th{background:#eef3fa}.alert{background:#dcfce7;border:1px solid #86efac;padding:12px;border-radius:7px;margin-bottom:15px}.login{max-width:410px;margin:10vh auto}.inline{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:8px;align-items:end;margin-bottom:10px}.total{font-size:20px;text-align:right}.muted{color:#687386;font-size:14px}.badge{padding:4px 8px;background:#e5edff;border-radius:20px;font-size:12px}footer{text-align:center;padding:22px;color:#718096}@media(max-width:700px){.top{align-items:flex-start;flex-direction:column}.inline{grid-template-columns:1fr}.top nav a{padding:5px}.container{margin-top:15px}}
@media print{.top,footer,.no-print{display:none!important}.container{max-width:none;margin:0}.card{box-shadow:none;border:0}.print-doc{font-size:12px}body{background:#fff}}
