
:root{--bg:#f3f5f8;--card:#fff;--text:#18202b;--muted:#6b7280;--line:#e5e7eb;--dark:#111827;--gold:#d3ad32;--danger:#b91c1c;--ok:#047857;--warn:#9a3412}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}
.topbar{background:var(--dark);color:#fff;min-height:64px;padding:15px 22px;display:flex;justify-content:space-between;align-items:center;gap:12px;position:sticky;top:0;z-index:20}
.brand{font-size:20px;font-weight:850}.brand span{color:#e7c553}.session-badge{font-size:13px;color:#d1d5db}
.shell{max-width:1180px;margin:20px auto;padding:0 14px 50px}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px;margin-bottom:16px;box-shadow:0 6px 20px rgba(0,0,0,.04)}
.auth-card{max-width:430px;margin:60px auto}.auth-card h1{margin-top:0}
label{display:block;font-size:12px;font-weight:750;color:var(--muted);margin:10px 0 6px}
input,select,textarea{width:100%;padding:11px 12px;border:1px solid #cfd5df;border-radius:10px;background:#fff;font-size:15px;color:var(--text)}
input:focus,select:focus{outline:2px solid rgba(211,173,50,.35);border-color:#b89120}
input[readonly]{background:#f6f7f9}
button{font:inherit}
.btn{border:0;border-radius:10px;padding:10px 14px;font-weight:800;cursor:pointer}.btn.full{width:100%;margin-top:14px}
.btn.dark{background:var(--dark);color:#fff}.btn.gold{background:var(--gold);color:#151515}.btn.light{background:#fff;border:1px solid #cfd5df;color:#111827}.btn.danger{background:#fee2e2;color:#991b1b}
.small-btn{padding:8px 11px;font-size:13px}
.nav{display:flex;gap:8px;flex-wrap:wrap}.navbtn{border:1px solid #d7dce3;background:#fff;padding:9px 12px;border-radius:9px;font-weight:750;cursor:pointer}.navbtn.active{background:#111827;color:#fff}.danger-outline{margin-left:auto;color:#991b1b}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.summary-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.summary{background:#f8fafc;border:1px solid var(--line);border-radius:12px;padding:12px}.summary span{display:block;font-size:12px;color:var(--muted)}.summary b{display:block;font-size:20px;margin-top:5px}.summary.strong{border-color:#d8bd69;background:#fffbeb}
h1{font-size:24px;margin:0 0 4px}h2{font-size:18px;margin:16px 0 12px}h3{font-size:16px}
hr{border:0;border-top:1px solid var(--line);margin:22px 0}.muted{color:var(--muted)}.small{font-size:13px}.hidden{display:none!important}
.report-heading,.section-title-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.pill{background:#eef2ff;color:#3730a3;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:850}
.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:650px}th,td{padding:9px 8px;border-bottom:1px solid var(--line);text-align:left;font-size:13px}th{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}
table input,table select{padding:8px;font-size:13px}.count-input{max-width:92px}
.deduction-row{display:grid;grid-template-columns:2fr 1fr auto;gap:8px;margin:8px 0;align-items:center}
.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.msg{font-size:13px;margin-top:10px;min-height:18px}.msg.error{color:#b91c1c}.msg.ok{color:#047857}
.warning{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412}.inline-warning{padding:11px;border-radius:10px;margin-bottom:12px;font-size:13px}
.settings-cash-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.settings-cash-grid>div{padding:10px;background:#f8fafc;border:1px solid var(--line);border-radius:10px}
.print-meta{font-size:11px;color:#6b7280;margin-top:18px}
@media(max-width:780px){.grid2,.grid3,.summary-grid,.summary-grid.four,.settings-cash-grid{grid-template-columns:1fr 1fr}.danger-outline{margin-left:0}}
@media(max-width:520px){.grid2,.grid3,.summary-grid,.summary-grid.four,.settings-cash-grid{grid-template-columns:1fr}.topbar{position:static}.deduction-row{grid-template-columns:1fr 1fr}.deduction-row button{grid-column:1/-1}}
@media print{
  body{background:#fff}.topbar,.no-print,.nav,.actions{display:none!important}.shell{max-width:none;margin:0;padding:0}.card{box-shadow:none;border:0;padding:0;margin:0}.report-card{display:block!important}
  input,select{border:0;padding:2px;background:#fff!important}table{min-width:0}.hidden{display:none!important}
}

.carryover-panel{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:14px;padding:14px}
.carryover-panel h2{margin-top:0}

.reconcile-action-box{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:12px;border:1px dashed #d1d5db;border-radius:12px;background:#fafafa}
.manual-override-box{margin-top:16px;padding:12px;border:1px dashed #d1d5db;border-radius:12px;background:#fafafa}
@media(max-width:620px){.reconcile-action-box{align-items:flex-start;flex-direction:column}}
