:root{--brand-50: #ecf7f0;--brand-100: #d3eddc;--brand-200: #a8dbbb;--brand-500: #2f8f57;--brand-600: #237a48;--brand-700: #1c623a;--brand-900: #0f3520;--bg: #f4f6f5;--surface: #ffffff;--surface-2: #f8faf9;--border: #e3e8e5;--border-strong: #cfd7d2;--text: #17211b;--text-2: #4b5a51;--text-3: #7c8a82;--amber-50: #fff7e6;--amber-600: #b26b00;--red-50: #fdecec;--red-600: #c62828;--blue-50: #eaf2fd;--blue-600: #1d5fbf;--violet-50: #f1ecfd;--violet-600: #6a3fc8;--radius-sm: 8px;--radius: 12px;--radius-lg: 16px;--shadow-sm: 0 1px 2px rgba(16, 32, 22, .06);--shadow: 0 1px 3px rgba(16, 32, 22, .08), 0 4px 16px rgba(16, 32, 22, .05);--shadow-lg: 0 12px 40px rgba(16, 32, 22, .18);--sidebar-w: 256px;--topbar-h: 60px;--font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-ur: "Noto Nastaliq Urdu", "Jameel Noori Nastaleeq", var(--font);--tap: 44px;color-scheme:light}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 var(--font);-webkit-font-smoothing:antialiased;overflow-x:hidden}html[lang=ur] body{font-family:var(--font-ur);line-height:1.9}html[lang=ur] .num,html[lang=ur] input,html[lang=ur] .mono{font-family:var(--font)}h1,h2,h3,h4{margin:0;line-height:1.25;letter-spacing:-.01em}h1{font-size:1.375rem;font-weight:700}h2{font-size:1.125rem;font-weight:650}h3{font-size:1rem;font-weight:650}p{margin:0}a{color:var(--brand-600);text-decoration:none}a:hover{text-decoration:underline}small{font-size:.8125rem}img{max-width:100%}.muted{color:var(--text-3)}.text-2{color:var(--text-2)}.num{text-align:end;font-variant-numeric:tabular-nums;white-space:nowrap}.mono{font-variant-numeric:tabular-nums}.pos{color:var(--brand-600)}.neg{color:var(--red-600)}.strong{font-weight:650}.nowrap{white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}input,select,textarea,button{font:inherit;color:inherit}input,select,textarea{width:100%;min-height:var(--tap);padding:9px 12px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);transition:border-color .15s,box-shadow .15s;font-size:16px}textarea{min-height:80px;resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand-500);box-shadow:0 0 0 3px #2f8f572e}input:disabled,select:disabled{background:var(--surface-2);color:var(--text-3)}input.invalid,input[aria-invalid=true]{border-color:var(--red-600);box-shadow:0 0 0 3px #c628281f}.readonly-bar{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px;background:var(--blue-600);color:#fff;font-size:.875rem;font-weight:600;text-align:center}.offline-bar{position:sticky;top:var(--topbar-h);z-index:25;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px;background:var(--amber-600);color:#fff;font-size:.875rem;font-weight:600}html[lang=en] body,html[lang=en] input,html[lang=en] select,html[lang=en] textarea,html[lang=en] button,html[lang=en] option{text-transform:uppercase}html[lang=en] input[type=password],html[lang=en] pre,html[lang=en] .login,html[lang=en] .login *{text-transform:none}input[type=checkbox],input[type=radio]{width:18px;height:18px;min-height:0;accent-color:var(--brand-600)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-inline-end:34px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%237c8a82' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}html[dir=rtl] select{background-position:left 10px center}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field>span{font-size:.8125rem;font-weight:550;color:var(--text-2)}.field:has(:is(input,select,textarea)[required])>span:first-child:after{content:" *";color:var(--red-600);font-weight:700}.field .hint{font-size:.75rem;color:var(--text-3)}.check{display:inline-flex;align-items:center;gap:8px;min-height:var(--tap);cursor:pointer}.form-grid{display:grid;gap:14px;grid-template-columns:1fr}.form-grid .span-2,.form-grid .span-all{grid-column:1 / -1}@media (min-width: 640px){.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.form-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.form-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;margin-top:4px}.form-actions.start{justify-content:flex-start}.input-group{display:flex}.input-group>input{border-start-end-radius:0;border-end-end-radius:0;flex:1;min-width:0}.input-group>select{width:auto;flex:none;border-start-start-radius:0;border-end-start-radius:0;border-inline-start:0;background-color:var(--surface-2)}.btn,button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--tap);padding:0 16px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-weight:550;font-size:.9375rem;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,box-shadow .15s,transform .05s;text-decoration:none}.btn:hover,button:hover{background:var(--surface-2);text-decoration:none}.btn:active,button:active{transform:translateY(1px)}.btn:focus-visible,button:focus-visible{outline:3px solid rgba(47,143,87,.35);outline-offset:1px}button:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;transform:none}.btn-primary,button.primary{background:var(--brand-600);border-color:var(--brand-600);color:#fff}.btn-primary:hover,button.primary:hover{background:var(--brand-700);border-color:var(--brand-700)}.btn-danger,button.danger{background:var(--red-600);border-color:var(--red-600);color:#fff}.btn-danger:hover,button.danger:hover{background:#a61f1f}.btn-soft{background:var(--brand-50);border-color:var(--brand-100);color:var(--brand-700)}.btn-soft:hover{background:var(--brand-100)}.btn-ghost,button.ghost{background:transparent;border-color:transparent}.btn-ghost:hover,button.ghost:hover{background:#17211b0f}.btn-sm{min-height:34px;padding:0 12px;font-size:.8125rem;border-radius:7px}.btn-lg{min-height:52px;padding:0 22px;font-size:1rem}.btn-block{width:100%}.btn-icon{padding:0;width:var(--tap)}.btn-icon.btn-sm{width:34px}button.link{min-height:0;padding:0;border:0;background:none;color:var(--brand-600);font-weight:550}button.link:hover{text-decoration:underline;background:none}.btn svg,button svg{flex:none}.shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:8px;height:var(--topbar-h);padding:0 12px;background:#ffffffeb;-webkit-backdrop-filter:saturate(180%) blur(8px);backdrop-filter:saturate(180%) blur(8px);border-bottom:1px solid var(--border)}.topbar .title{font-weight:650;font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar .spacer{flex:1}.topbar .who{display:none}.topbar .bell{position:relative}.topbar .bell .dot{position:absolute;top:4px;inset-inline-end:4px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--red-600);color:#fff;font-size:.6875rem;font-weight:700;line-height:18px;text-align:center}.sidebar{position:fixed;inset-block:0;inset-inline-start:0;z-index:50;width:min(84vw,var(--sidebar-w));display:flex;flex-direction:column;background:var(--brand-900);color:#dfeee5;transform:translate(-100%);transition:transform .22s ease;overflow-y:auto;overscroll-behavior:contain}html[dir=rtl] .sidebar{transform:translate(100%)}.sidebar.open{transform:none!important;box-shadow:var(--shadow-lg)}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#0a140e73;animation:fade .2s}.brand{display:flex;align-items:center;gap:10px;padding:18px 18px 14px;color:#fff}.brand img,.brand .logo{width:38px;height:38px;border-radius:10px;object-fit:contain;background:#ffffff1a;display:grid;place-items:center;flex:none}.brand strong{display:block;font-size:.9375rem;line-height:1.25}.brand small{color:#9fc4ad;font-size:.75rem}.nav-group{padding:6px 10px}.nav-group>span{display:block;padding:10px 10px 4px;font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#7fa891}.nav-group a{display:flex;align-items:center;gap:12px;min-height:42px;padding:0 12px;border-radius:9px;color:#d6e9dd;font-weight:500;font-size:.9375rem}.nav-group a:hover{background:#ffffff12;text-decoration:none}.nav-group a.active{background:#ffffff24;color:#fff}.nav-group a .count{margin-inline-start:auto;background:#f0b429;color:#3a2700;border-radius:10px;padding:0 7px;font-size:.75rem;font-weight:700}.sidebar-foot{margin-top:auto;padding:12px 18px 18px;font-size:.8125rem;color:#9fc4ad;border-top:1px solid rgba(255,255,255,.08)}.content{padding:16px 16px 96px;max-width:1360px;margin:0 auto}@media (min-width: 1024px){.sidebar,html[dir=rtl] .sidebar{transform:none}.scrim,.menu-btn{display:none!important}.main{margin-inline-start:var(--sidebar-w)}.topbar{padding:0 24px}.topbar .who{display:inline;color:var(--text-2);font-size:.875rem}.topbar .who-btn{gap:6px}.content{padding:24px 28px 48px}}.page-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:18px}.page-head .sub{color:var(--text-3);font-size:.875rem;margin-top:2px}.page-head .actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}@media (max-width: 639px){.page-head .actions{width:100%}.page-head .actions>*{flex:1 1 auto}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:16px;margin-bottom:16px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}.card-head h2,.card-head h3{display:flex;align-items:center;gap:8px}.card.flush{padding:0;overflow:hidden}.card.flush>.card-head{padding:14px 16px 0}@media (min-width: 768px){.card{padding:20px}.card.flush>.card-head{padding:16px 20px 0}}.grid{display:grid;gap:16px}.grid-2,.grid-3{grid-template-columns:1fr}@media (min-width: 768px){.grid-2,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1200px){.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.split{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}.stack{display:flex;flex-direction:column;gap:12px}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.row.between{justify-content:space-between}.stats{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:16px}@media (min-width: 900px){.stats{grid-template-columns:repeat(4,minmax(0,1fr))}}.stats.two{grid-template-columns:repeat(2,minmax(0,1fr))!important}.stat{display:flex;flex-direction:column;gap:4px;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);color:var(--text);min-width:0}a.stat:hover{border-color:var(--brand-200);text-decoration:none;box-shadow:var(--shadow)}.stat .label{display:flex;align-items:center;gap:8px;font-size:.8125rem;color:var(--text-2);font-weight:550}.stat .label .ico{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--brand-50);color:var(--brand-600)}.stat .value{font-size:1.375rem;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat .foot{font-size:.75rem;color:var(--text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat.amber .ico{background:var(--amber-50);color:var(--amber-600)}.stat.blue .ico{background:var(--blue-50);color:var(--blue-600)}.stat.violet .ico{background:var(--violet-50);color:var(--violet-600)}.stat.red .ico{background:var(--red-50);color:var(--red-600)}@media (min-width: 768px){.stat .value{font-size:1.625rem}}.badge{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;font-size:.75rem;font-weight:650;line-height:1.6;white-space:nowrap;background:#eef1ef;color:var(--text-2)}.badge.ok,.badge.green{background:var(--brand-50);color:var(--brand-700)}.badge.warn,.badge.amber{background:var(--amber-50);color:var(--amber-600)}.badge.neg,.badge.red{background:var(--red-50);color:var(--red-600)}.badge.blue{background:var(--blue-50);color:var(--blue-600)}.badge.violet{background:var(--violet-50);color:var(--violet-600)}.badge .dot{width:6px;height:6px;border-radius:50%;background:currentColor}.error,.alert{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:var(--radius-sm);font-size:.875rem;margin:8px 0}.error{background:var(--red-50);color:var(--red-600);border:1px solid #f6c9c9}.alert.info{background:var(--blue-50);color:var(--blue-600);border:1px solid #c9dcf6}.alert.warn{background:var(--amber-50);color:var(--amber-600);border:1px solid #f4dcae}.alert.ok{background:var(--brand-50);color:var(--brand-700);border:1px solid var(--brand-100)}.tabs{display:flex;gap:4px;padding:4px;background:#e9eeeb;border-radius:10px;overflow-x:auto;scrollbar-width:none;max-width:100%}.tabs::-webkit-scrollbar{display:none}.tabs button{min-height:36px;padding:0 14px;border:0;background:transparent;color:var(--text-2);border-radius:7px;font-size:.875rem;flex:none}.tabs button:hover{background:#fff9}.tabs button.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.segmented{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;padding:4px;background:#e9eeeb;border-radius:10px}.segmented button{border:0;background:transparent;min-height:40px;border-radius:7px;color:var(--text-2)}.segmented button.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.segmented button.active.cash{background:var(--brand-600);color:#fff}.segmented button.active.credit{background:var(--amber-600);color:#fff}.segmented button.active.unpaid{background:var(--red-600);color:#fff}.ss{position:relative;min-width:0}.ss-control{width:100%;justify-content:space-between;gap:8px;font-weight:400;text-align:start;padding:0 12px;background:var(--surface);border-color:var(--border-strong)}.ss-control:hover{background:var(--surface);border-color:var(--brand-200)}.ss.open .ss-control{border-color:var(--brand-500);box-shadow:0 0 0 3px #2f8f572e}.ss-control>svg{flex:none;color:var(--text-3)}.ss-value,.ss-placeholder{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss-placeholder{color:var(--text-3)}.ss-sub{color:var(--text-3);font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:40%}.ss-required{position:absolute;inset-inline-start:12px;bottom:0;width:1px;height:1px;min-height:0;padding:0;border:0;opacity:0;pointer-events:none}.ss-pop{position:absolute;z-index:70;top:calc(100% + 4px);inset-inline:0;min-width:240px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);overflow:hidden;animation:fade .1s}.ss.up .ss-pop{top:auto;bottom:calc(100% + 4px)}.ss-search-wrap{display:flex;align-items:center;gap:8px;padding:6px 10px;border-bottom:1px solid var(--border);color:var(--text-3)}.ss-search{border:0;box-shadow:none!important;padding:6px 0;min-height:36px}.ss-list{list-style:none;margin:0;padding:4px;max-height:min(320px,45vh);overflow-y:auto;overscroll-behavior:contain}.ss-option{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:9px 10px;border-radius:6px;cursor:pointer;min-height:40px}.ss-option small{color:var(--text-3);font-size:.75rem;text-align:end}.ss-option.active{background:var(--brand-50)}.ss-option.selected{font-weight:650;color:var(--brand-700)}.ss-option.disabled{opacity:.45;cursor:not-allowed}.ss-group{padding:8px 10px 4px;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.ss-empty{padding:12px 10px;color:var(--text-3);text-align:center}.filters .ss,.period-custom .ss{min-width:200px}.pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-top:1px solid var(--border);font-size:.875rem}.pager-buttons{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.pager-buttons .btn-sm{min-width:34px}@media (max-width: 639px){.pager{justify-content:center}.pager>.muted{width:100%;text-align:center}}.period{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px}.period .tabs{flex:0 1 auto}.period-step{display:flex;align-items:center;gap:6px;padding:2px;background:var(--surface);border:1px solid var(--border);border-radius:10px}.period-step .strong{min-width:150px;text-align:center;font-size:.875rem}.period-step button{border-color:transparent}.period-custom{display:flex;gap:10px;flex-wrap:wrap}.period-custom .field{min-width:150px}@media (max-width: 639px){.period{align-items:stretch}.period .tabs,.period-step,.period-custom{width:100%}.period-step{justify-content:space-between}.period-custom .field{flex:1 1 140px}}@media print{.period{display:none!important}}.table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}table{width:100%;border-collapse:collapse;font-size:.875rem}th,td{padding:10px 12px;text-align:start;vertical-align:middle;border-bottom:1px solid var(--border)}th{position:sticky;top:0;background:var(--surface-2);color:var(--text-2);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}tbody tr:hover td{background:#fafcfb}tfoot th,tfoot td{background:var(--surface-2);font-weight:650;text-transform:none;font-size:.875rem;color:var(--text);letter-spacing:0}tr.sub td{background:var(--surface-2);font-weight:600}tr.inactive td{opacity:.55}tr.clickable{cursor:pointer}.card>.table-wrap{margin:0 -16px -16px;width:calc(100% + 32px)}.card.flush>.table-wrap{margin:14px 0 0;width:100%}@media (min-width: 768px){.card>.table-wrap{margin:0 -20px -20px;width:calc(100% + 40px)}}td .actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}@media (max-width: 719px){table.responsive thead{display:none}table.responsive,table.responsive tbody,table.responsive tr,table.responsive td,table.responsive tfoot,table.responsive tfoot tr{display:block;width:100%}table.responsive tbody tr{position:relative;padding:12px 14px;border-bottom:1px solid var(--border)}table.responsive tbody tr:hover td{background:none}table.responsive td{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:3px 0;border:0;text-align:end;min-height:26px}table.responsive td:before{content:attr(data-label);flex:none;color:var(--text-3);font-size:.8125rem;font-weight:500;text-align:start}table.responsive td.primary{display:block;text-align:start;font-size:.9375rem;font-weight:650;padding-bottom:4px;padding-inline-end:90px}table.responsive td.primary:before{display:none}table.responsive td.badge-cell{position:absolute;top:12px;inset-inline-end:14px;width:auto;padding:0;min-height:0}table.responsive td.badge-cell:before{display:none}table.responsive td.empty-cell,table.responsive td[data-label=""]{justify-content:flex-end}table.responsive td[data-label=""]:before{display:none}table.responsive td.hide-sm{display:none}table.responsive tfoot tr{display:flex;flex-wrap:wrap;gap:4px 16px;padding:12px 14px;background:var(--surface-2)}table.responsive tfoot th,table.responsive tfoot td{display:flex;gap:8px;padding:0;border:0;background:none}table.responsive tfoot th:empty,table.responsive tfoot td:empty{display:none}table.responsive tfoot [data-label]:not([data-label=""]):before{content:attr(data-label);color:var(--text-3);font-weight:500}table.responsive tr.sub{background:var(--surface-2)}}.empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:36px 16px;text-align:center;color:var(--text-3)}.empty svg{color:var(--border-strong)}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:flex-end;justify-content:center;background:#0a140e80;animation:fade .15s}.modal{width:100%;max-height:92vh;overflow-y:auto;background:var(--surface);border-radius:18px 18px 0 0;box-shadow:var(--shadow-lg);animation:up .2s ease;padding-bottom:env(safe-area-inset-bottom)}.modal-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;background:var(--surface);border-bottom:1px solid var(--border)}.modal-body{padding:16px}.modal-foot{position:sticky;bottom:0;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;padding:12px 16px;background:var(--surface);border-top:1px solid var(--border)}.btn-pair{display:flex;gap:10px}@media (max-width: 639px){.modal-foot>*,.modal-foot .btn-pair>*{flex:1}}@media (min-width: 640px){.modal-back{align-items:center;padding:24px}.modal{max-width:560px;border-radius:var(--radius-lg);max-height:88vh}.modal.wide{max-width:880px}}@keyframes fade{0%{opacity:0}}@keyframes up{0%{transform:translateY(24px);opacity:0}}.toasts{position:fixed;z-index:80;inset-inline:12px;bottom:16px;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:10px;max-width:480px;width:100%;padding:12px 14px;border-radius:10px;background:#17211b;color:#fff;box-shadow:var(--shadow-lg);font-size:.875rem;animation:up .2s ease}.toast.ok svg{color:#7ee2a8}.toast.err{background:var(--red-600)}@media (min-width: 1024px){.toasts{inset-inline:auto 24px;align-items:flex-end}html[dir=rtl] .toasts{inset-inline:24px auto}}.bunkers{display:grid;gap:14px;grid-template-columns:1fr}@media (min-width: 680px){.bunkers{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1200px){.bunkers{grid-template-columns:repeat(3,minmax(0,1fr))}}.bunker{display:flex;flex-direction:column;gap:12px;margin:0}.bunker .meter{height:10px;border-radius:6px;background:#e8eeea;overflow:hidden}.bunker .meter>span{display:block;height:100%;background:linear-gradient(90deg,var(--brand-500),var(--brand-600));border-radius:6px}.bunker dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.bunker dt{font-size:.6875rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);font-weight:600}.bunker dd{margin:0;font-weight:650;font-variant-numeric:tabular-nums}.steps{display:flex;gap:4px}.steps span{flex:1;height:4px;border-radius:2px;background:#e3e8e5}.steps span.done{background:var(--brand-500)}.lines{display:flex;flex-direction:column;gap:10px}.line{display:grid;gap:10px;grid-template-columns:1fr 1fr;align-items:end;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.line .full{grid-column:1 / -1}.line .remove{justify-self:end}@media (min-width: 900px){.line{grid-template-columns:130px minmax(0,2fr) minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr) auto;padding:10px}.line.cols-4{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) auto}.line .full{grid-column:auto}}.totals{display:flex;flex-direction:column;gap:6px;padding:14px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border)}.totals .row{justify-content:space-between;flex-wrap:nowrap}.totals .grand{font-size:1.25rem;font-weight:750;padding-top:8px;border-top:1px dashed var(--border-strong)}.net-box{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:16px;border-radius:var(--radius);background:var(--brand-900);color:#fff;text-align:center}.net-box .big{font-size:2rem;font-weight:750;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.net-box small{color:#a9cfb8}.gate-search input{min-height:56px;font-size:1.125rem;text-transform:uppercase}.pass{display:flex;flex-direction:column;gap:10px;border-inline-start:5px solid var(--border-strong)}.pass.paid{border-inline-start-color:var(--brand-500)}.pass.credit{border-inline-start-color:var(--amber-600)}.pass.unpaid{border-inline-start-color:var(--red-600)}.pass.out{opacity:.7}.pass .vehicle{font-size:1.375rem;font-weight:750;letter-spacing:.03em}.login{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(1200px 600px at 10% -10%,#cfe9d9 0%,transparent 60%),radial-gradient(900px 500px at 110% 110%,#d9efe2 0%,transparent 55%),var(--bg)}.login .card{width:100%;max-width:400px;padding:28px 24px;box-shadow:var(--shadow)}.login .logo-mark{width:56px;height:56px;border-radius:16px;background:var(--brand-600);color:#fff;display:grid;place-items:center;margin-bottom:14px;overflow:hidden}.login .logo-mark img{width:100%;height:100%;object-fit:contain;background:#fff}.perm-grid{display:grid;gap:4px 16px;grid-template-columns:1fr}@media (min-width: 640px){.perm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.perm-grid label{display:flex;gap:10px;align-items:flex-start;padding:8px 0;cursor:pointer}.perm-grid label small{display:block;color:var(--text-3)}.logo-preview{width:88px;height:88px;border-radius:12px;border:1px dashed var(--border-strong);display:grid;place-items:center;overflow:hidden;background:var(--surface-2)}.logo-preview img{width:100%;height:100%;object-fit:contain}pre.diff{margin:0;max-height:320px;overflow:auto;padding:12px;background:#0f1a14;color:#cfe7d8;border-radius:var(--radius-sm);font-size:.75rem;white-space:pre-wrap;word-break:break-word}.report-picker{display:grid;gap:12px;grid-template-columns:1fr}@media (min-width: 640px){.report-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1100px){.report-picker{grid-template-columns:repeat(3,minmax(0,1fr))}}.report-picker a{display:flex;gap:14px;align-items:flex-start;padding:16px;margin:0;color:var(--text)}.report-picker a:hover{border-color:var(--brand-200);text-decoration:none;box-shadow:var(--shadow)}.report-picker .ico{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:var(--brand-50);color:var(--brand-600);flex:none}.filters{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin-bottom:16px}.filters .field{flex:1 1 140px;max-width:220px}@media (max-width: 639px){.filters .field{max-width:none;flex-basis:calc(50% - 5px)}.filters>button{flex:1 1 100%}}.spinner{width:22px;height:22px;border:3px solid var(--brand-100);border-top-color:var(--brand-600);border-radius:50%;animation:spin .7s linear infinite}.loading{display:flex;justify-content:center;padding:32px}@keyframes spin{to{transform:rotate(360deg)}}.print-only{display:none}.letterhead{display:flex;align-items:center;gap:14px;padding-bottom:10px;margin-bottom:12px;border-bottom:2px solid var(--brand-600)}.letterhead img{width:64px;height:64px;object-fit:contain}.letterhead .co{font-size:1.25rem;font-weight:750;color:#111;line-height:1.2}.letterhead .co-ur{font-family:var(--font-ur);font-size:1rem}.letterhead .meta{font-size:.8125rem;color:#444}.doc-title{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:12px;flex-wrap:wrap}.doc-title h2{font-size:1.125rem}.doc-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 18px;font-size:.875rem;margin-bottom:12px}.doc-meta div{display:flex;justify-content:space-between;gap:8px;border-bottom:1px dotted #ccc;padding:3px 0}.doc-meta div span:first-child{color:#555}.doc{background:#fff}.doc table{font-size:.8125rem}.doc th{position:static}.sign{display:flex;justify-content:space-between;gap:24px;margin-top:36px;font-size:.8125rem}.sign span{flex:1;border-top:1px solid #333;padding-top:4px;text-align:center}.stamp{display:inline-block;padding:6px 14px;border:3px solid currentColor;border-radius:8px;font-size:1.25rem;font-weight:800;letter-spacing:.1em;transform:rotate(-4deg)}.stamp.paid{color:var(--brand-600)}.stamp.credit{color:var(--amber-600)}.stamp.unpaid{color:var(--red-600)}@media print{body{background:#fff;font-size:12px}.no-print,.topbar,.sidebar,.scrim,.toasts,.modal-head,.modal-foot,.page-head .actions,.filters,.tabs{display:none!important}.print-only{display:block}.main{margin:0!important}.content{padding:0!important;max-width:none}.card{border:0;box-shadow:none;padding:0;margin:0 0 12px}.card>.table-wrap{margin:0;width:100%}.modal-back{position:static;background:none;display:block;padding:0}.modal{max-width:none!important;max-height:none;box-shadow:none;border-radius:0;overflow:visible;animation:none}.modal-body{padding:0}body.printing-doc .content>*:not(.modal-back){display:none!important}table.responsive thead{display:table-header-group!important}table.responsive,table.responsive tbody,table.responsive tfoot{display:table-row-group!important}table.responsive{display:table!important}table.responsive tr{display:table-row!important;position:static!important;padding:0!important}table.responsive td,table.responsive th{display:table-cell!important;padding:5px 6px!important;border-bottom:1px solid #ddd!important;text-align:inherit}table.responsive td:before{display:none!important}table.responsive td.num{text-align:right}th{background:#eef4f0!important;color:#222;-webkit-print-color-adjust:exact;print-color-adjust:exact}tr{break-inside:avoid}a{color:inherit}.badge{border:1px solid #ccc}body.thermal{font-size:11px}body.thermal .doc{width:72mm}body.thermal .letterhead{flex-direction:column;text-align:center;gap:4px;border-bottom:1px dashed #000}body.thermal .letterhead img{width:40px;height:40px}body.thermal .letterhead .co{font-size:14px}body.thermal .doc-meta{grid-template-columns:1fr}body.thermal .doc table{font-size:10.5px}body.thermal .sign{margin-top:24px}body.thermal .hide-thermal{display:none!important}}
