.sf-workspace{background:#fff;border:1px solid #c7ddd7;border-radius:12px;padding:18px;margin:16px 0;color:#24343d}.sf-workspace *,.sf-dialog *{box-sizing:border-box}.sf-title{display:flex;justify-content:space-between;align-items:center;gap:12px}.sf-title h3{margin:0;font-size:20px}.sf-note{font-size:13px;color:#586c75;line-height:1.7}.sf-workspace button,.sf-dialog button{background:#fff;border:1px solid #c8d6dd;border-radius:6px;padding:9px 12px;color:#24343d;font:inherit;cursor:pointer}.sf-workspace button[aria-pressed=true],.sf-dialog [data-submit]{background:#167460;color:#fff;border-color:#167460}.sf-workspace button:disabled{opacity:.4;cursor:default}.sf-tabs,.sf-filters,.sf-stats,.sf-pages{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin:14px 0}.sf-filters label{display:grid;gap:5px;font-size:13px}.sf-workspace input,.sf-workspace select,.sf-dialog textarea{font:inherit;max-width:100%;padding:9px;border:1px solid #c8d6dd;border-radius:6px;background:#fff;color:#24343d}.sf-stats button{min-width:130px;text-align:left}.sf-stats strong{display:block;font-size:22px;margin-top:4px}.sf-table-wrap{overflow:auto}.sf-table{width:100%;border-collapse:collapse;table-layout:fixed}.sf-table th{font-size:13px;text-align:left;background:#f1f6f6;padding:10px}.sf-table td{vertical-align:top;border-bottom:1px solid #dce7e5;padding:12px 10px;overflow-wrap:anywhere;line-height:1.6}.sf-table th:nth-child(2){width:25%}.sf-table th:last-child{width:20%}.sf-workspace small,.sf-dialog small{display:block;font-size:12px;color:#657880;line-height:1.6}.sf-table td button{display:block;margin-top:8px;font-size:13px}.sf-pages{justify-content:flex-end}.sf-reminder{background:#fff7e8!important;padding:12px;border-radius:6px;color:#765719}.sf-dialog{width:min(720px,94vw);max-height:88vh;overflow:auto;border:1px solid #bfd6cf;border-radius:12px;padding:22px;color:#24343d;background:#fff}.sf-dialog::backdrop{background:#102d2966}.sf-dialog p{overflow-wrap:anywhere;line-height:1.6}.sf-dialog textarea{display:block;width:100%;margin:8px 0}.sf-detail-money,.sf-form-guide{background:#eef7f3;padding:12px;border-radius:8px;line-height:1.6;margin-bottom:12px}.sf-form-guide p{margin:5px 0;font-size:13px}.sf-form-guide{grid-column:1/-1}.sf-dialog summary{padding:12px 0;cursor:pointer}
@media(max-width:700px){.sf-workspace{padding:12px;margin:12px 0}.sf-title h3{font-size:18px}.sf-filters{display:grid;grid-template-columns:1fr 1fr}.sf-filters label:last-child{grid-column:1/-1}.sf-filters input,.sf-filters select{width:100%;min-width:0}.sf-stats{display:grid;grid-template-columns:1fr 1fr}.sf-stats button{min-width:0}.sf-table-wrap{overflow:visible}.sf-table,.sf-table tbody,.sf-table tr,.sf-table td{display:block;width:100%}.sf-table thead{display:none}.sf-table tr{border:1px solid #dce7e5;border-radius:8px;margin:10px 0;padding:8px}.sf-table td{border:0;padding:6px;display:grid;grid-template-columns:115px minmax(0,1fr);gap:4px}.sf-table td::before{content:attr(data-label);grid-column:1;font-size:12px;color:#657880}.sf-table td>*{grid-column:2}.sf-table td button{width:100%;margin-top:4px}.sf-dialog{padding:16px}.sf-tabs button{flex:1;font-size:13px}.sf-pages{font-size:13px}}
/* One cashier navigation; legacy operational panels remain only in their page. */
#cashier[data-cashier-page] #financeTabs,#cashier[data-cashier-page] .cashier-home-secondary,#cashier[data-cashier-page] .cashier-focus-head,#cashier[data-cashier-page] .cashier-primary-actions,#cashier[data-cashier-page] .cashier-secondary-actions{display:none!important}
#cashier[data-cashier-page]:not([data-cashier-page=tasks]) #cashierFocusedWorkbench{display:none!important}
#cashier[data-cashier-page=receipts] .task-col,#cashier[data-cashier-page=business] .task-col{display:none!important}
#cashier[data-cashier-page=tasks] #cashierTodayKpis{display:none!important}
#cashier[data-cashier-page]>.section-head{display:none!important}
#homeView[data-cashier-page]>.panel{display:none!important}
.sf-actions{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}.sf-totals{display:flex;flex-wrap:wrap;gap:24px;background:#f1f7f5;padding:16px;border-radius:8px;margin:14px 0}.sf-totals span{font-size:13px;color:#53696a}.sf-totals strong{display:block;color:#1c4b44;font-size:19px;margin-top:6px}.sf-tabs[aria-label="出纳工作入口"]{display:grid;grid-template-columns:repeat(4,1fr)}.sf-field-hidden{display:none!important}.sf-duplicate-note{padding:12px;background:#fff4dd;border-radius:8px;grid-column:1/-1}.sf-duplicate-note:empty{display:none}.sf-workspace [role=alert]{background:#fff4dd;padding:12px}
@media(max-width:700px){.sf-totals{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sf-tabs[aria-label="出纳工作入口"]{grid-template-columns:repeat(2,1fr)}.sf-actions>button{flex:1 1 44%}.sf-table td{display:block}.sf-table td::before{display:block;margin-bottom:4px}.sf-table td>*{display:block}}

#cashier[data-cashier-page]>.split>.panel>.panel-head,[data-sf-receipt-form] #redemptionSubmitSummary{display:none!important}

body:has(#cashier[data-cashier-page]) #kpiGrid{display:none!important}
#cashier[data-cashier-page=entry] #cashierPaymentOverview>.section-actions,#cashier[data-cashier-page=daily] #cashierCashflowOverview>.section-actions{display:none!important}

.sf-journey{padding:12px;border:1px solid #d8e3e8;border-radius:8px;background:#f8fbfa;min-width:0}.sf-journey h4{margin:8px 0}.sf-journey-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.sf-journey small,.sf-journey-facts strong{display:block;overflow-wrap:anywhere}.sf-journey small{color:#5c6c7c}.sf-trace{padding-left:22px}.sf-trace li{padding:8px 0;border-top:1px solid #dde6eb;overflow-wrap:anywhere}@media(max-width:700px){.sf-journey-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.sf-journey{padding:10px}}

/* The desktop shell gives generic tables a 960px minimum. Finance cards must
   reset that minimum, including when the desktop URL is opened on a phone. */
@media(max-width:700px){
  .sf-workspace,.sf-table-wrap,.sf-table,.sf-table tbody,.sf-table tr,.sf-table td{min-width:0;max-width:100%}
  .sf-table td button{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
  .sf-filters{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sf-filters label,.sf-totals>span{min-width:0;overflow-wrap:anywhere}
}

/* Business navigation must survive every cashier work tab. The replaced home
   cards stay hidden, including on the tasks page, to avoid duplicate entries. */
#cashier[data-cashier-page] #cashierDomainEntries,#cashier[data-cashier-page] .cashier-domain-coverage{display:none!important}
.sf-business-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0;padding:0}
.sf-business-nav section{min-width:0;padding:12px;background:#f1f7f5;border:1px solid #d8e6e2;border-radius:8px}
.sf-business-nav p{font-size:13px;color:#586c75;margin:6px 0}.sf-business-nav button{margin:4px 6px 0 0;max-width:100%;white-space:normal}
@media(max-width:700px){.sf-business-nav{grid-template-columns:1fr}.sf-business-nav section{padding:10px}.sf-business-nav button{min-height:40px}}

#cashier[data-cashier-page=receipts]>.split,#cashier[data-cashier-page=business]>.split,#cashier[data-cashier-page=verification]>.split,#cashier[data-cashier-page=archive]>.split{display:none!important}

#cashier[data-cashier-page=contracts]>.split{display:none!important}
.mf-stages{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.mf-stages [aria-pressed=true]{background:#16765f;color:#fff}.mf-card{border:1px solid #d5e2de;border-radius:12px;padding:16px;margin:12px 0;overflow-wrap:anywhere}.mf-card header{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.mf-card p{margin:10px 0}.mf-card details{margin-top:14px}.mf-money{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.mf-money span,.mf-money strong{display:block}.mf-money strong{font-size:18px}.mf-unsettled{color:#bb3025!important}.mf-pending{color:#925d06!important}@media(max-width:600px){.mf-money{grid-template-columns:repeat(2,minmax(0,1fr))}.mf-card{padding:12px}.mf-stages button{min-height:44px}.sf-workspace input[type=search]{font-size:16px;width:100%;min-width:0}}
