:root{--ink:#0f172a;--blue:#2563eb;--surface:#fff;--muted:#64748b}
*{box-sizing:border-box}body{background:#f4f7fb;color:var(--ink);min-height:100vh}.app-nav{background:var(--ink)}.navbar-brand span{color:#60a5fa}.app-card{border:0;border-radius:18px;box-shadow:0 10px 35px rgba(15,23,42,.07)}.checkpoint,.form-page{max-width:620px}.qr-page{max-width:520px}.qr-image{width:320px}.eyebrow{color:var(--blue);font-size:.74rem;font-weight:800;letter-spacing:.13em}.btn{border-radius:10px}.form-control,.form-select{border-radius:10px;border-color:#dbe2ea}.stat-card{background:white;border-radius:16px;padding:20px;display:flex;flex-direction:column;box-shadow:0 6px 20px rgba(15,23,42,.05);border-top:4px solid}.stat-card strong{font-size:2rem}.stat-card span{color:var(--muted);font-size:.86rem}.stat-card.working{border-color:#16a34a}.stat-card.left{border-color:#2563eb}.stat-card.absent{border-color:#94a3b8}.status{display:inline-flex;padding:.3rem .65rem;border-radius:999px;font-weight:700;font-size:.78rem}.status.working{background:#dcfce7;color:#166534}.status.left{background:#dbeafe;color:#1e40af}.status.absent{background:#f1f5f9;color:#475569}.table>:not(caption)>*>*{padding:1rem}thead th{font-size:.75rem;text-transform:uppercase;color:var(--muted);letter-spacing:.05em;background:#f8fafc!important}
.page-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.security-actions{display:grid;grid-template-columns:minmax(130px,1fr) auto;gap:.5rem}.report-card{height:100%;min-height:210px;border:1px solid #e2e8f0;border-radius:14px;padding:1.25rem;display:flex;flex-direction:column}.settings-save{position:sticky;bottom:1rem;display:flex;justify-content:flex-end;margin-top:1.5rem;z-index:5}.settings-save .btn{box-shadow:0 8px 24px rgba(37,99,235,.25)}
@media(max-width:991px){.navbar-nav{padding-top:.75rem}.navbar-nav .nav-link{padding:.65rem 0}.page-heading{align-items:flex-start}}
@media(max-width:575px){main.container{padding-left:14px;padding-right:14px}.stat-card{padding:14px}.stat-card strong{font-size:1.5rem}.stat-card span{font-size:.7rem}.table{font-size:.86rem}.security-actions{grid-template-columns:1fr}.report-card{min-height:0}}
@media print{.app-nav,.btn,.settings-save{display:none!important}body{background:white}.app-card{box-shadow:none}}
