/* Shared list system. Checkout retains its own order editor. */
:root{--list-line:color-mix(in srgb,var(--theme-font,#344054) 10%,transparent);--list-muted:color-mix(in srgb,var(--theme-font,#344054) 65%,var(--theme-background,#fff));--list-soft:color-mix(in srgb,var(--theme-background,#fff) 95%,var(--theme-font,#344054) 5%)}
#adminView .admin-list-container{min-width:0;border-radius:12px;border-color:var(--list-line)!important;box-shadow:0 3px 14px #00000003}
#adminView .table-wrap:has(>.admin-data-list){width:100%;max-width:100%;min-width:0;border-radius:10px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--theme-font,#344054) 20%,transparent) transparent}
#adminView table.admin-data-list{width:100%;border-collapse:separate;border-spacing:0;font-variant-numeric:tabular-nums;color:var(--theme-font,#344054)}
#adminView table.admin-data-list thead th{padding:13px 12px!important;font-size:10px!important;font-weight:650!important;letter-spacing:.055em;line-height:1.4;text-transform:uppercase;vertical-align:middle;background:var(--list-soft)!important;color:var(--list-muted)!important;border:0!important;border-bottom:1px solid var(--list-line)!important}
#adminView table.admin-data-list tbody td{padding:14px 12px!important;font-size:12px;line-height:1.55;vertical-align:middle;border:0!important;border-bottom:1px solid var(--list-line)!important;color:var(--theme-font,#344054)}
#adminView table.admin-data-list tbody tr:last-child td{border-bottom:0!important}
#adminView table.admin-data-list tbody tr:hover{background:color-mix(in srgb,var(--theme-button,#315f9f) 3%,transparent)!important}
#adminView table.admin-data-list tbody td strong{font-weight:600}
#adminView table.admin-data-list .cell-note{display:block;margin-top:4px;font-size:11px;font-weight:400;line-height:1.5;color:var(--list-muted)!important}
#adminView table.admin-data-list :is(.status,.status-badge,.attendance-badge,.dining-occupancy){display:inline-flex!important;align-items:center;justify-content:center;box-sizing:border-box;width:128px!important;min-width:128px!important;max-width:100%;height:30px!important;min-height:30px!important;padding:0 10px!important;border-radius:8px!important;border:1px solid color-mix(in srgb,var(--theme-font,#344054) 6%,transparent);background:var(--list-soft)!important;color:var(--list-muted)!important;font-size:12px!important;font-weight:600!important;line-height:1.2;white-space:nowrap;box-shadow:none!important;vertical-align:middle}
#adminView table.admin-data-list :is(.status.yes,.status-badge.success,.status-badge.present,.is-settled){background:#37785b0b!important;border-color:#37785b12!important;color:#477362!important}
#adminView table.admin-data-list :is(.status.no,.status-badge.neutral){background:var(--list-soft)!important;color:var(--list-muted)!important}
#adminView table.admin-data-list :is(.status-badge.danger,.is-returned){background:#9c70360c!important;border-color:#9c70361a!important;color:#8b6c45!important}
#adminView table.admin-data-list .row-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-width:0;margin:0}
#adminView table.admin-data-list :is(.row-actions button,.row-actions a,.document-button,.edit-action,.invoice-button,td>.reset-button){display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:34px;height:auto;min-width:72px;max-width:100%;padding:7px 11px!important;border-radius:8px!important;font-size:11px!important;font-weight:600!important;line-height:1.4;white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;box-shadow:none!important;text-decoration:none}
#adminView table.admin-data-list .product-thumb{width:52px!important;height:52px!important;object-fit:cover;border-radius:8px}
#adminView .admin-list-container>.toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:14px 0;margin:0 0 12px;border-bottom:1px solid var(--list-line)}
#adminView .admin-list-container .search-field{min-width:180px;flex:1;min-height:42px;border-radius:9px!important}
#adminView :is(.table-pagination,.attendance-pagination){display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;min-height:0;margin-top:16px;padding:12px 0 0;border-top:1px solid var(--list-line);font-size:11px;color:var(--list-muted)}
#adminView :is(.table-pagination,.attendance-pagination) button{min-height:36px;min-width:36px;padding:7px 11px;border-radius:8px;font-size:11px;font-weight:600;box-shadow:none}
#adminView .table-pagination:empty{display:none!important}
#adminView .admin-data-list .empty-row,#adminView .admin-data-list td[colspan]{text-align:center;padding:24px 16px!important;color:var(--list-muted);font-size:12px}
@media screen and (max-width:700px){
 #adminView table.admin-data-list.mobile-card-list>tbody>tr,#adminView table.admin-data-list.mobile-card-list>tfoot>tr{gap:0 12px!important;padding:4px 12px!important;border:1px solid var(--list-line)!important;border-radius:12px!important;background:var(--admin-surface,var(--theme-background,#fff))!important;box-shadow:0 2px 8px #00000003!important}
 #adminView table.admin-data-list.mobile-card-list>tbody>tr>:is(td,th){padding:10px 0!important;font-size:12px;line-height:1.5;border-bottom:1px solid var(--list-line)!important;background:transparent!important}
 #adminView table.admin-data-list.mobile-card-list>tbody>tr>:is(td,th)::before{font-size:10px!important;font-weight:600!important;color:var(--list-muted)!important;letter-spacing:.02em!important;margin-bottom:5px!important}
 #adminView table.admin-data-list :is(.status,.status-badge,.attendance-badge,.dining-occupancy){max-width:100%!important;min-width:0!important;width:128px!important}
 #adminView table.admin-data-list .mobile-list-actions{display:flex!important;align-items:center;flex-wrap:wrap;gap:8px!important}
 #adminView table.admin-data-list .mobile-list-actions:before{width:100%!important;flex:0 0 100%}
 #adminView table.admin-data-list .mobile-list-actions :is(a,button){min-height:40px!important;flex:0 1 auto;margin:0!important}
 #adminView .admin-list-container .toolbar .search-field{width:100%;min-width:0;flex-basis:100%}
 #adminView .table-pagination{justify-content:center;text-align:center;padding-top:12px}
 #adminView table.admin-data-list.mobile-card-list>tbody>tr.mobile-list-empty{background:var(--list-soft)!important;box-shadow:none!important}
}

#adminView table.admin-data-list .attendance-badge.status-hadir{background:#37785b0b!important;border-color:#37785b12!important;color:#477362!important}
#adminView table.admin-data-list :is(.attendance-badge.status-izin,.attendance-badge.status-sakit){background:#9c70360c!important;border-color:#9c70361a!important;color:#8b6c45!important}
/* Jarak antar blok konten; tidak menambah tinggi kosong di dalam panel. */
#adminView .content>.panel:not(#checkoutPanel)>:is(.section-card,.finance-summary,.balance-sheet-grid,.sales-recap-grid,.cashier-session-layout)+:is(.section-card,.finance-summary,.balance-sheet-grid,.sales-recap-grid,.cashier-session-layout){margin-top:20px!important}
#balanceSheetPanel>#balanceSheetSummary{margin-top:20px!important}
#balanceSheetPanel>.balance-sheet-grid{gap:20px!important}
#adminView .finance-summary:empty{display:none!important}
@media(max-width:700px){#adminView .content>.panel:not(#checkoutPanel)>:is(.section-card,.finance-summary,.balance-sheet-grid,.sales-recap-grid,.cashier-session-layout)+:is(.section-card,.finance-summary,.balance-sheet-grid,.sales-recap-grid,.cashier-session-layout){margin-top:14px!important}#balanceSheetPanel>#balanceSheetSummary{margin-top:14px!important}#balanceSheetPanel>.balance-sheet-grid{gap:14px!important}}
/* Header dan pencarian Data Produk. */
#productsPanel>.section-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}
#productsPanel>.section-intro>div:first-child{min-width:240px;flex:1}
#productsPanel>.section-intro h2{font-size:clamp(24px,2.1vw,30px);letter-spacing:-.035em;margin:7px 0 8px}
#productsPanel>.section-intro p{margin:0;font-size:13px;line-height:1.6;color:var(--list-muted)}
#productsPanel .intro-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin:0}
#productsPanel .intro-actions>button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;height:42px;min-width:125px;padding:9px 14px;border-radius:9px;font-size:12px;font-weight:600;line-height:1.4;white-space:nowrap;box-shadow:none}
#productsPanel .scan-toolbar{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(190px,245px) auto!important;align-items:end!important;gap:12px!important;padding:0 0 16px!important;margin:0 0 14px!important;border-bottom:1px solid var(--list-line)}
#productsPanel .scan-toolbar>.search-field{display:flex;align-items:center;min-width:0;min-height:44px!important;height:44px!important;margin:0;flex-basis:auto;border-radius:9px!important;padding:0 12px!important;grid-column:auto!important}
#productsPanel .scan-toolbar>.search-field>input{min-width:0;height:42px!important;min-height:42px!important;padding:8px!important;font-size:13px;font-weight:500;border:0!important;background:transparent!important;box-shadow:none}
#productsPanel .scan-toolbar>.search-field>span{font-size:20px;line-height:1;width:20px;text-align:center;color:var(--list-muted)}
#productsPanel .scan-toolbar>.scanner-field{display:grid;gap:7px;font-size:11px;font-weight:600;color:var(--list-muted);min-width:0;margin:0}
#productsPanel .scan-toolbar>.scanner-field>input{height:44px!important;min-height:44px!important;padding:10px 12px;font-size:12px;font-weight:500;border-radius:9px!important;width:100%;min-width:0}
#productsPanel .scan-toolbar>.camera-scan-button{height:44px!important;min-height:44px!important;padding:10px 16px;border-radius:9px;font-size:12px;font-weight:600;margin:0;white-space:nowrap}
@media(max-width:1200px){#productsPanel>.section-intro{flex-direction:column;align-items:stretch;gap:16px}#productsPanel .intro-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%}#productsPanel .intro-actions>button{min-width:0;width:100%;font-size:11px;padding:8px}}
@media(max-width:700px){#productsPanel .intro-actions{grid-template-columns:repeat(2,minmax(0,1fr))}#productsPanel .scan-toolbar{grid-template-columns:minmax(0,1fr) auto!important;gap:12px!important}#productsPanel .scan-toolbar>.search-field{grid-column:1/-1!important;width:100%;flex-basis:auto}#productsPanel .scan-toolbar>.scanner-field{grid-column:1}#productsPanel .scan-toolbar>.camera-scan-button{grid-column:2;width:auto!important;max-width:145px}}
@media(max-width:390px){#productsPanel .scan-toolbar{grid-template-columns:1fr!important}#productsPanel .scan-toolbar>.search-field,#productsPanel .scan-toolbar>.scanner-field,#productsPanel .scan-toolbar>.camera-scan-button{grid-column:1!important;max-width:none;width:100%!important}}

/* Status meja mengikuti ukuran dan warna status pada daftar promo. */
#adminView table.admin-data-list .dining-occupancy::before{display:none!important}
#adminView table.admin-data-list .dining-occupancy.available{background:#37785b0b!important;border-color:#37785b12!important;color:#477362!important}
#adminView table.admin-data-list .dining-occupancy.occupied{background:#9c70360c!important;border-color:#9c70361a!important;color:#8b6c45!important}
#adminView table.admin-data-list .dining-occupancy.inactive{background:var(--list-soft)!important;color:var(--list-muted)!important}
#adminView table.admin-data-list :is(th,td).list-status-cell{min-width:152px;vertical-align:middle}

/* Acuan daftar Promo Produk & Kupon untuk seluruh daftar admin. */
#adminView .admin-list-container{border-radius:14px!important;overflow:hidden}
#adminView .admin-list-container>.card-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;padding:22px!important;margin:0!important;border-bottom:1px solid var(--list-line);background:color-mix(in srgb,var(--theme-background,#fff) 98%,white)}
#adminView .admin-list-container>.card-heading h3{margin:5px 0 0;font-size:18px;line-height:1.35;font-weight:650;letter-spacing:-.02em}
#adminView table.admin-data-list :is(.delete-action,.danger-button){background:#fff5f6!important;color:#b74c5c!important;border:1px solid #f0d7dc!important}
#adminView table.admin-data-list :is(.edit-action,.document-button,.invoice-button){border:1px solid color-mix(in srgb,var(--theme-font,#344054) 14%,transparent)!important;background:var(--theme-background,#fff)!important;color:var(--theme-font,#344054)!important}
#adminView table.admin-data-list td:last-child:has(.row-actions){min-width:168px}
#adminView table.admin-data-list .row-actions{justify-content:center}
@media(max-width:700px){#adminView .admin-list-container>.card-heading{padding:16px!important;gap:12px}#adminView table.admin-data-list td:last-child:has(.row-actions){min-width:0}#adminView table.admin-data-list .row-actions{justify-content:flex-start}}

/* Kartu Stok: filter memenuhi panel, informasi ringkas, angka sejajar. */
#stockCardPanel>.section-intro{margin-bottom:20px}
#adminView #stockCardFilter{display:grid!important;grid-template-columns:minmax(150px,180px) minmax(150px,180px) minmax(220px,1fr) auto;align-items:end!important;gap:12px!important;margin:0 0 14px!important;padding:0 0 16px!important}
#stockCardFilter>label{display:grid;gap:7px;min-width:0!important;width:auto!important;flex:none!important;font-size:12px;font-weight:600}
#stockCardFilter :is(input,select){height:44px!important;min-height:44px!important;width:100%!important;min-width:0!important;padding:9px 12px!important;border-radius:9px!important;font-size:13px!important;box-sizing:border-box}
#stockCardFilter>button{align-self:end;height:44px!important;min-height:44px!important;margin:0!important;padding:10px 20px!important;border-radius:9px!important;font-size:12px!important;white-space:nowrap}
#stockCardStatus{margin:0 0 12px!important;padding:10px 12px!important;min-height:0!important;border-radius:8px;font-size:12px;line-height:1.5;background:var(--list-soft)}
#stockCardStatus:empty{display:none}
#stockCardReconciliation{margin:0 0 16px!important;padding:12px 14px!important;min-height:0!important;border:1px solid var(--list-line);border-left:3px solid color-mix(in srgb,var(--theme-button,#315f9f) 50%,transparent);border-radius:9px;background:var(--list-soft)!important;color:var(--list-muted)!important;font-size:12px!important;line-height:1.65!important}
#stockCardPanel .table-wrap{margin-top:0!important;padding-top:0!important}
#stockCardPanel table.admin-data-list :is(th,td):nth-child(n+5){text-align:right;font-variant-numeric:tabular-nums}
#stockCardPanel table.admin-data-list td:nth-child(2){min-width:190px}
@media(max-width:1000px){#adminView #stockCardFilter{grid-template-columns:repeat(2,minmax(0,1fr))}#stockCardFilter>button{width:100%}}
@media(max-width:700px){#stockCardPanel>.section-card{padding:16px!important}#adminView #stockCardFilter{gap:12px!important}#stockCardFilter>label:nth-child(3),#stockCardFilter>button{grid-column:1/-1}#stockCardPanel table.admin-data-list td:nth-child(2){min-width:0}#stockCardPanel table.admin-data-list :is(th,td):nth-child(n+5){text-align:left}}

#adminView .master-list-card>.card-heading{justify-content:flex-end}#adminView .product-list-footer:has(>.table-pagination:empty){display:none}

/* Header panel daftar mengikuti Daftar Stock Opname. */
#adminView .admin-list-container>.card-heading.unified-list-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 22px!important;margin:calc(-1 * var(--list-card-inset,0px)) calc(-1 * var(--list-card-inset,0px)) 18px!important;border:0!important;border-bottom:1px solid var(--list-line)!important;border-radius:0;background:var(--theme-background,#fff)!important;min-height:88px;box-sizing:border-box}
#adminView .unified-list-heading>div:first-child{min-width:0}
#adminView .unified-list-heading .eyebrow{display:block;margin:0 0 7px;font-size:11px;font-weight:750;line-height:1.4;letter-spacing:.12em;color:var(--theme-button,#315f9f)}
#adminView .unified-list-heading :is(h3,h4){margin:0!important;font-size:18px!important;line-height:1.4!important;font-weight:650!important;letter-spacing:-.02em;color:var(--theme-font,#344054)}
#adminView .unified-list-heading>button{flex:none;align-self:center;margin:0!important;min-height:40px}
@media(max-width:700px){#adminView .admin-list-container>.card-heading.unified-list-heading{padding:18px 16px!important;min-height:78px;gap:12px;flex-wrap:wrap;margin-bottom:14px!important}#adminView .unified-list-heading :is(h3,h4){font-size:16px!important}}

#adminView :is(.promotion-heading-actions,.list-heading-actions){display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-left:auto;flex:0 0 auto}
#adminView :is(.promotion-heading-actions,.list-heading-actions)>button{display:inline-flex;align-items:center;justify-content:center;height:40px!important;min-height:40px!important;margin:0!important;padding:9px 16px!important;border-radius:9px!important;font-size:12px!important;line-height:1.4;white-space:nowrap}
@media(max-width:700px){#adminView :is(.promotion-heading-actions,.list-heading-actions){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin-left:0;gap:8px}#adminView :is(.promotion-heading-actions,.list-heading-actions)>button{width:100%;height:auto!important;min-height:42px!important;white-space:normal;padding:9px 10px!important}}
