:root{--navy:#1f3a5f;--bg:#f4f6f9;--card:#fff;--border:#e2e6ec;--text:#1a1f2b;--muted:#6b7482;--green:#2e7d32;--red:#c62828;--blue:#1565c0;--radius:10px;--shadow:0 1px 3px rgba(16,24,40,.08),0 1px 2px rgba(16,24,40,.04)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.45}a{color:var(--navy)}h1,h2,h3{margin:0}.page{max-width:1180px;margin:0 auto;padding:20px 16px 80px}.section{scroll-margin-top:72px;margin-bottom:44px}.section-title{font-size:20px;color:var(--navy);margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid var(--navy)}.grid-2{grid-template-columns:1fr 1fr;grid-gap:16px}.grid-2,.grid-stats{display:grid;gap:16px}.grid-stats{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:16px}.stack>*+*{margin-top:16px}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:var(--navy);color:#fff;box-shadow:0 2px 6px rgba(0,0,0,.15)}.topbar-inner{max-width:1180px;margin:0 auto;padding:10px 16px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.brand{font-weight:700;font-size:18px}.nav{display:flex;gap:4px;flex:1 1}.nav a{color:#dbe5f3;text-decoration:none;padding:6px 12px;border-radius:6px;font-weight:500}.nav a:hover{background:hsla(0,0%,100%,.14);color:#fff}.topbar-user{font-size:13px;color:#dbe5f3}.periodbar,.topbar-user{display:flex;align-items:center;gap:12px}.periodbar{justify-content:space-between;flex-wrap:wrap;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:10px 14px;margin-bottom:28px}.period-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.period-label{font-weight:600;color:var(--navy);min-width:190px;text-align:center}.toggle-group{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}.toggle{padding:7px 16px;border:none;background:#fff;cursor:pointer;font:inherit;color:var(--text)}.toggle+.toggle{border-left:1px solid var(--border)}.toggle.active{background:var(--navy);color:#fff}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.card-title{font-size:15px;font-weight:600;color:var(--navy);margin-bottom:12px}.stat-label{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:26px;font-weight:700;margin-top:4px}.callout{background:#eaf0f6;border:1px solid #c9d6e5;border-radius:var(--radius);padding:12px 14px}.empty{display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:13px;text-align:center}.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.chip{padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;background:#eef2f7}.chip-green{background:#e6f4e7;color:var(--green)}.chip-blue{background:#e3effc;color:var(--blue)}.chip-red{background:#fbe9e9;color:var(--red)}.chip-amber{background:#fff4d6;color:#8a5a00}.btn{padding:8px 16px;border-radius:6px;border:1px solid transparent;cursor:pointer;font:inherit;font-weight:500;text-decoration:none;display:inline-block;text-align:center}.btn:disabled{opacity:.6;cursor:default}.btn-sm{padding:6px 12px;font-size:13px}.btn-primary{background:var(--navy);color:#fff}.btn-primary:hover:not(:disabled){background:#16294a}.btn-ghost{background:#fff;color:var(--navy);border-color:var(--border)}.btn-ghost:hover{background:#f3f6fa}.btn-light{background:hsla(0,0%,100%,.15);color:#fff}.btn-light:hover{background:hsla(0,0%,100%,.25)}.btn-danger{background:#fff;color:var(--red);border-color:var(--red);padding:3px 10px;font-size:12px}.btn-danger:hover{background:#fbe9e9}.input{padding:8px 10px;border:1px solid #cfd5de;border-radius:6px;font:inherit;background:#fff;width:100%}.input:focus{outline:2px solid rgba(31,58,95,.25);border-color:var(--navy)}.field{display:flex;flex-direction:column;gap:4px}.field label{font-size:12px;color:var(--muted);font-weight:500}.fields-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));grid-gap:12px;gap:12px}.form-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.form-row .input{width:auto;flex:1 1 140px}.table-scroll{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{background:#f0f2f6;text-align:left;font-weight:600}.table td,.table th{padding:8px 10px;white-space:nowrap}.table td{border-top:1px solid #eef0f4}.table .num{text-align:right}.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-gap:12px;gap:12px}.shop-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.shop-card.open{grid-column:1/-1;border-color:var(--navy)}.shop-head{padding:14px;cursor:pointer}.shop-head:hover{background:#fafbfd}.shop-top{align-items:center}.shop-stats,.shop-top{display:flex;justify-content:space-between;gap:8px}.shop-stats{margin-top:10px;font-size:13px;flex-wrap:wrap}.detail{padding:16px;background:#fafbfc;border-top:1px solid var(--border)}.detail-block{margin-top:22px}.summary{cursor:pointer;font-weight:600;color:var(--navy)}.list-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid #eef0f4;font-size:13px}.muted{color:var(--muted);font-size:13px}.pos{color:var(--green)}.neg{color:var(--red)}.legend-row{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px}.legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.skeleton{background:linear-gradient(90deg,#eceff4 25%,#f6f8fb 37%,#eceff4 63%);background-size:400% 100%;animation:shimmer 1.4s ease infinite;border-radius:6px}@keyframes shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}.toast-host{position:fixed;right:16px;bottom:16px;z-index:100;display:flex;flex-direction:column;gap:8px}.toast{padding:10px 16px;border-radius:8px;color:#fff;font-size:14px;box-shadow:0 4px 14px rgba(0,0,0,.22);animation:toastIn .2s ease}.toast-success{background:var(--green)}.toast-error{background:var(--red)}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (max-width:720px){.grid-2{grid-template-columns:1fr}.stat-value{font-size:22px}.nav{order:3;flex-basis:100%}.nav a{flex:1 1;text-align:center;background:hsla(0,0%,100%,.08)}.topbar-user{margin-left:auto}.periodbar{flex-direction:column;align-items:stretch}.period-nav{justify-content:space-between}.period-label{min-width:0;flex-basis:100%;order:-1}.toggle-group{width:100%}.toggle{flex:1 1}.toast-host{left:16px;right:16px}.hide-mobile{display:none}.cell-input{width:88px;padding:6px 8px;text-align:right;border:1px solid #cfd5de;border-radius:6px;font:inherit;background:#fff}.cell-input:focus{outline:2px solid rgba(31,58,95,.25);border-color:var(--navy)}.cell-input.dirty{background:#fff8e1;border-color:#f9a825}.sticky-col{position:-webkit-sticky;position:sticky;left:0;background:#fff;z-index:1;box-shadow:1px 0 0 var(--border)}.table tfoot td,.table th.sticky-col{background:#f0f2f6}.table tfoot td{font-weight:700;border-top:2px solid #cfd5de}.status-cell{text-align:center;padding:4px 6px}.status-btn{border:none;border-radius:6px;width:34px;height:28px;cursor:pointer;font:inherit;font-weight:700}.status-ok{background:#e6f4e7;color:var(--green)}.status-miss{background:#fbe9e9;color:var(--red)}.status-future{background:#f0f2f6;color:var(--muted)}.status-sel{outline:2px solid var(--navy)}}.pagos-editor{display:flex;flex-direction:column;gap:4px}.pagos-cell{min-width:230px;text-align:left}.field.pagos-field{grid-column:1/-1;min-width:0}.pagos-editor-card{padding:10px;border:1px solid var(--border);border-radius:8px;background:#fafbfc}.pagos-editor-card .pagos-row{flex-wrap:wrap;gap:6px}.pagos-editor-card .pagos-note{flex:1 1 200px}.pagos-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:4px}.pagos-amount{width:70px;font-size:12px;text-align:right}.pagos-amount,.pagos-note{padding:3px 4px;border:1px solid #cfd5de;border-radius:4px}.pagos-note{flex:1 1 160px;width:auto;min-width:0;font-size:11px}.pagos-method{display:flex;border:1px solid #cfd5de;border-radius:4px;overflow:hidden}.pagos-method button{border:none;background:#fff;padding:3px 6px;font-size:11px;cursor:pointer;color:#666}.pagos-method button.active{background:var(--navy);color:#fff}.icon-btn{flex:0 0 auto;border:none;background:#f0f2f6;border-radius:4px;padding:3px 6px;font-size:12px;cursor:pointer;color:#333;text-decoration:none;display:inline-flex;align-items:center}.icon-btn:disabled{opacity:.5;cursor:not-allowed}.add-pagos{background:#e8f0fe;color:var(--navy);font-weight:600;align-self:flex-start}.pagos-total{font-size:11px;color:#666}.pagos-history-receipts{display:flex;gap:4px;justify-content:flex-end}.calc-cell{background:#f7f8fa;color:#333}.calc-link{color:var(--navy);text-decoration:underline;cursor:pointer;background:none;border:none;padding:0;font:inherit}.range-inputs{gap:10px}.range-field{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.range-field input{padding:6px 8px;border:1px solid var(--border);border-radius:6px;font:inherit;color:var(--text);background:#fff}