/* Cashier and KKM sheets share the same spacing without changing financial controls. */
.day-closeout,.payroll-payment{display:grid;gap:20px;min-width:0;line-height:1.6;overflow-wrap:anywhere}
.day-closeout section{border-top:1px solid var(--line);padding-top:18px;min-width:0}
.day-closeout h3,.day-closeout h4{margin:0 0 10px}
.day-closeout .button,.payroll-payment .button{min-height:44px;white-space:normal}
.closeout-status{padding:16px;border-radius:14px;background:var(--sage,#edf1ea)}
.closeout-status.attention{background:#fff5dc;color:#644b15}
.closeout-status p{margin:6px 0 0}
.closeout-kpis,.closeout-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.closeout-kpis>div,.closeout-methods article{padding:16px;border:1px solid var(--line);border-radius:14px;min-width:0}
.closeout-kpis span{display:block;font-size:12px;color:var(--muted)}
.closeout-kpis strong{display:block;font-size:21px;font-variant-numeric:tabular-nums}
.closeout-issues{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.closeout-issues li,.day-closeout .detail-row{display:flex;justify-content:space-between;align-items:baseline;gap:14px}
.closeout-issues strong{font-variant-numeric:tabular-nums}
.closeout-shift{padding:16px;border:1px solid var(--line);border-radius:14px;margin:12px 0}
.payroll-payment :is(input,select){min-width:0;max-width:100%}
.payroll-payment .checkbox{min-height:44px;align-items:flex-start;line-height:1.6}
@media(min-width:821px){#dialog:has(.day-closeout){width:min(900px,calc(100vw - 64px));max-width:calc(100vw - 64px)}.closeout-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.closeout-kpis,.closeout-methods{grid-template-columns:minmax(0,1fr)}.day-closeout .item-line,.payroll-payment .item-line{flex-wrap:wrap}.payroll-payment .item-line>.button{width:100%}.day-closeout .detail-row{font-size:12px}}
.cashier-workspace,.fiscal-register-workspace{min-width:0;overflow-wrap:anywhere}
.cashier-overview,.cashier-form,.cashier-payment,.cashier-list,.fiscal-register-workspace{display:grid;gap:18px;min-width:0}
.cashier-workspace :is(input,select),.fiscal-register-workspace :is(input,select){min-width:0;max-width:100%}
.cashier-workspace .button,.fiscal-register-workspace .button,.cashier-entry .button{min-width:0;max-width:100%;min-height:44px;white-space:normal;line-height:1.5;text-align:center}
#dialog:is(:has(.cashier-workspace),:has(.fiscal-register-workspace)) .dialog-footer .button{min-width:0;max-width:100%;white-space:normal;line-height:1.5;text-align:center}
.cashier-workspace .workspace-note{margin:0;line-height:1.65}
.cashier-workspace .workspace-section{min-width:0;display:grid;align-content:start;gap:14px;border:1px solid var(--line);border-radius:14px;padding:18px;background:var(--surface,#fff)}
.cashier-workspace .workspace-section>h3{margin:0;font-size:15px;line-height:1.4}
.cashier-workspace .dialog-total{margin:0;gap:12px;flex-wrap:wrap;min-width:0}
.cashier-workspace .dialog-total>*{min-width:0;overflow-wrap:anywhere}
.cashier-workspace .dialog-total strong,.cashier-workspace .detail-row strong,.cashier-method-totals strong{font-variant-numeric:tabular-nums}
.cashier-workspace .detail-row{min-width:0;align-items:flex-start;gap:12px}
.cashier-workspace .detail-row>*{min-width:0;overflow-wrap:anywhere}
.cashier-actions,.fiscal-actions{display:flex;flex-wrap:wrap;align-items:stretch;gap:9px}
.cashier-actions>.button,.fiscal-actions>.button{flex:1 1 150px}
.cashier-method-summary-list{display:grid;gap:14px}
.cashier-method-summary{min-width:0;border-bottom:1px solid var(--line);padding-bottom:14px}
.cashier-method-summary:last-child{border-bottom:0;padding-bottom:0}
.cashier-method-summary h4{font-size:13px;font-weight:600;line-height:1.4;margin:0 0 8px}
.cashier-method-totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.cashier-method-totals>div{display:grid;align-content:start;gap:4px;min-width:0}
.cashier-method-totals span{font-size:11px;line-height:1.5;color:var(--muted)}
.cashier-method-totals strong{font-size:14px;line-height:1.5;font-weight:550;overflow-wrap:anywhere}
.cashier-form .form-field,.cashier-payment .form-field,.fiscal-register-workspace .form-field{min-width:0;margin:0}
.cashier-form .form-field label,.cashier-payment .form-field label,.fiscal-register-workspace .form-field label{line-height:1.5;overflow-wrap:anywhere}
.cashier-payment-methods{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;min-width:0}
.cashier-payment .cashier-payment-method[hidden]{display:none}
.cashier-payment-methods:has(>.cashier-payment-method[hidden]){grid-template-columns:minmax(0,1fr)}
.cashier-payment [data-cashier-payment-error]{margin:0;color:var(--danger,#a33131);line-height:1.6}
.cashier-payment .cashier-payment-method{padding:18px;gap:14px}
.cashier-payment .cashier-change{background:var(--sage);border:0;border-radius:12px;padding:14px 16px;align-items:center;flex-wrap:wrap}
.cashier-change strong{font-size:17px}
.cashier-workspace .checkbox,.fiscal-register-workspace .checkbox{min-height:44px;align-items:flex-start;gap:10px;line-height:1.6}
.cashier-workspace .checkbox>span,.fiscal-register-workspace .checkbox>span{min-width:0;overflow-wrap:anywhere}
.cashier-workspace .checkbox input,.fiscal-register-workspace .checkbox input{flex-shrink:0}
.fiscal-register-workspace{gap:18px;font-size:13px;line-height:1.65}
.fiscal-register-workspace>p,.fiscal-register-workspace>h3{margin:0}
.fiscal-register-workspace>h3{font-size:15px;line-height:1.4;padding-top:4px}
.fiscal-checks,.fiscal-intents{min-width:0;list-style:none;margin:0;padding:0;display:grid;gap:10px}
.fiscal-checks{border:1px solid var(--line);background:#f8faf6;padding:16px;border-radius:12px}
.fiscal-checks>li{min-width:0;display:grid;grid-template-columns:20px minmax(0,1fr);gap:8px;align-items:start}
.fiscal-check-symbol{color:var(--muted);text-align:center}
.fiscal-intent{min-width:0;display:grid;gap:12px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface,#fff)}
.fiscal-intent>p{font-size:13px;font-weight:550;line-height:1.6;min-width:0}
.fiscal-document-id{display:block;min-width:0;overflow-wrap:anywhere;font-size:11px;line-height:1.6;color:var(--muted);font-variant-numeric:tabular-nums}
.fiscal-actions:empty{display:none}
.cashier-entry .card-head{gap:16px}
.cashier-entry .card-head>div{min-width:0;overflow-wrap:anywhere}
@media(min-width:821px){
  #dialog:has(.cashier-overview),#dialog:has(.cashier-payment){width:min(820px,calc(100vw - 64px));max-width:calc(100vw - 64px)}
  #dialog:has(.cashier-payment-method[hidden]){width:min(600px,calc(100vw - 64px))}
  .cashier-overview{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
  .cashier-payment-methods{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
}
@media(max-width:820px){
  .cashier-workspace,.fiscal-register-workspace{font-size:13px}
  .cashier-workspace .workspace-section{padding:16px}
  .cashier-payment .cashier-payment-method{padding:16px}
  .cashier-workspace .form-field label,.fiscal-register-workspace .form-field label{font-size:13px}
  .cashier-workspace input:not([type=checkbox]):not([type=radio]),.cashier-workspace select,.fiscal-register-workspace input:not([type=checkbox]):not([type=radio]),.fiscal-register-workspace select{min-height:48px;font-size:16px}
  .cashier-workspace .cashier-actions>.button,.fiscal-register-workspace .fiscal-actions>.button{flex:1 1 100%;width:100%;min-height:48px}
  .cashier-method-totals strong{font-size:15px}
  .cashier-entry .card-head>.button{width:100%}
}
@media(max-width:380px){
  .cashier-workspace .workspace-section,.cashier-payment .cashier-payment-method,.fiscal-intent,.fiscal-checks{padding:14px}
  .cashier-method-totals{gap:8px}
  .cashier-method-totals strong{font-size:14px}
}

/* Keep checkout controls reachable while the transaction details scroll. */
#dialog:is(:has(.cashier-workspace),:has(.fiscal-register-workspace)){overflow:hidden}
#dialog:is(:has(.cashier-workspace),:has(.fiscal-register-workspace)) #dialog-content{display:flex;flex-direction:column;min-height:0;max-height:inherit}
#dialog:is(:has(.cashier-workspace),:has(.fiscal-register-workspace)) #modal-form{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}
#dialog:is(:has(.cashier-workspace),:has(.fiscal-register-workspace)) :is(.dialog-header,.dialog-footer){flex-shrink:0}
#dialog:is(:has(.cashier-workspace),:has(.fiscal-register-workspace)) .dialog-body{min-height:0;overflow-y:auto;overscroll-behavior-y:contain}
