/* KRU working surfaces: presentation only, no financial rules. */

/* Shared form, disclosure and navigation language across all modules. */
#page .visual-section-selector{display:none}
#page .visual-disclosure{border:1px solid #d5dce5;border-radius:12px;padding:14px 16px;background:#fff;margin:12px 0}
#page .visual-disclosure>summary{font-weight:700;cursor:pointer;min-height:28px;color:#344054}
#page .visual-disclosure[open]>summary{margin-bottom:16px}
#page .visual-disclosure>form,#page .visual-disclosure>section{margin:0!important}
#page .visual-advanced{flex:1 1 100%;grid-column:1/-1;margin:0}
#page .visual-advanced-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}
#page :is(.field,label)>:is(input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea){width:100%;min-height:46px;border:1px solid #bfc8d3;border-radius:9px;padding:10px 12px;background:#fff;color:#242229;box-sizing:border-box}
#page .form-grid,#page .toolbar{min-width:0}
#page .toolbar{gap:12px}
#page .field{min-width:0}
#page .status-chip{font-size:.8125rem;line-height:1.4}
#page .table-wrap{overflow:auto;max-width:100%}
#page .data-table{font-size:.9375rem}
#page .data-table th{font-size:.8125rem;white-space:normal}
#page .data-table td{line-height:1.5}
#page .data-table :is(button,a){min-height:40px}
#page .supplier-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:16px}
#page .supplier-card{padding:20px}
#page .supplier-card[hidden]{display:none!important}
#page .supplier-card header{gap:12px;flex-wrap:wrap}
#page .supplier-card h2{font-size:1.125rem}
#page .supplier-card .visual-disclosure{border:0;border-top:1px solid #e1e5ec;border-radius:0;margin:14px 0 0;padding:14px 0 0}
#page .supplier-conditions{gap:16px}
#page .supplier-conditions span,#page .supplier-list-status span{font-size:.875rem}
#page .supplier-actions{display:flex;flex-wrap:wrap;gap:8px}
#page .supplier-actions>*{flex:1 1 140px}
#page .supplier-overview{padding:14px 20px;margin-bottom:16px}
#page .supplier-overview span{font-size:.75rem}
#page .visual-search{margin:0 0 20px;max-width:680px}
#page .visual-configuration{display:grid;gap:16px}
#page .visual-main-total{border-top:4px solid #df211c}
#page #shared-net{display:block;font-size:2rem;font-weight:800;color:#242229;overflow-wrap:anywhere}
#page .visual-delivery-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#page .visual-delivery-summary>section{border-top:4px solid #df211c;margin-top:0!important}
#page .visual-delivery-summary>section>p:first-of-type{font-weight:700;font-size:1.125rem}
#page #shared-services>.visual-sync{padding:10px 14px;display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0}
#page .loyalty-validator{border-top:4px solid #df211c}
#page .code-search{display:flex;gap:10px;flex-wrap:wrap}
#page #redeem-code{min-width:0;flex:1 1 160px;min-height:48px;font-size:1.25rem}
#page .loyalty-grid{margin-bottom:20px}
#page .loyalty-kpis{margin-bottom:0}
#page .btn:disabled{cursor:not-allowed;opacity:.65}
#page[data-visual-page="reports"]>.panel,#page[data-visual-page="movements"]>.panel{padding:20px}
#page .closure-summary strong,#page .summary-bar strong{overflow-wrap:anywhere}
#page .visual-shortcuts{margin-top:16px}
#page .eyebrow{letter-spacing:.08em}
#closures-live-status{font-size:.875rem!important;margin:8px 0;color:#475467}
@media(max-width:640px){
 #page .visual-module-tabs{display:none!important}
 #page .visual-section-selector{display:block;margin:0 0 18px;font-size:.875rem}
 #page .visual-section-selector select{margin-top:4px}
 #page .form-grid,#page .visual-advanced-fields{grid-template-columns:minmax(0,1fr)}
 #page .toolbar{flex-wrap:wrap}
 #page .toolbar .field{width:100%}
 #page .supplier-card{padding:16px}
 #page .supplier-overview{gap:10px}
 #page .supplier-overview strong{font-size:1.35rem}
 #page .supplier-conditions{grid-template-columns:minmax(0,1fr)}
 #page .visual-delivery-summary{grid-template-columns:minmax(0,1fr)}
 #page .visual-disclosure{padding:14px}
 #page .modal-card{max-width:100%}
 #page .loyalty-grid{grid-template-columns:minmax(0,1fr)}
 #page .btn{white-space:normal}
 #page .supplier-list-status b{overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){#page *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
#page{font-size:1rem;line-height:1.5}
#page p,#page label,#page .btn{font-size:1rem}
#page small,#page .muted,#page .eyebrow{font-size:.875rem}
#page h1{font-family:Manrope,"DM Sans",sans-serif;font-size:clamp(1.65rem,3vw,2.25rem);line-height:1.2}
#page h2{font-family:Manrope,"DM Sans",sans-serif;line-height:1.3}
#page .page-head{margin-bottom:20px}
#page .tabs{gap:6px!important}
#page .tabs button{min-height:44px;font-size:.875rem}
#page .btn{min-height:44px}
#page :is(input,select,textarea){max-width:100%;min-width:0;font:inherit}
#page :is(button,input,select,textarea,summary):focus-visible{outline:3px solid #176ca4;outline-offset:3px}
#page .expense-movement,#page .extra-movement{padding:14px;border:1px solid #dce1e7;border-radius:12px;background:#f8fafc;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr)!important}
#page :is(.expense-movement,.extra-movement) :is(input,select){width:100%;min-height:48px;border:1px solid #bcc5d0;border-radius:8px;padding:10px;background:white;color:#20242b}
#page .cash-layout>div{min-width:0}
#page .cash-section{padding:22px}
#page .cash-section h2{margin-bottom:6px}
#page .cash-total{align-self:start}
#page .cash-total .grand{font-size:2.25rem}
#page .cash-total p{font-size:.875rem!important}
#page[data-visual-page="home"] .toolbar{gap:8px;flex-wrap:wrap}
#page[data-visual-page="home"] .visual-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:14px;margin-bottom:20px}
#page[data-visual-page="home"] .visual-shortcuts .btn{width:100%;white-space:normal}
#shared-services>.toolbar{padding:12px;gap:8px}
#page[data-visual-page="home"] .page-head{padding-bottom:0}
#sales-today{border-top:4px solid #df211c}
#sales-today-total{font-size:clamp(2rem,4vw,2.75rem);letter-spacing:-.03em}
#sales-today .summary-bar{gap:20px}
#page [data-service-period]{border-top:4px solid #df211c;margin-bottom:20px}
#page [data-service-period]>.form-grid{gap:12px}
#page [data-service-period]>.form-grid>div{padding:16px;background:#f3f5f8;border-radius:12px;min-width:0}
#page [data-service-period] h3{font-size:.875rem;color:#475467;margin:0 0 8px}
#page [data-month-hours],#page [data-month-advances]{font-size:1.8rem;font-weight:800;color:#242229;margin:0;overflow-wrap:anywhere}
#shared-services>.toolbar{font-size:.875rem;color:#475467;margin-bottom:16px}
#shared-services details{border:1px solid #dce1e7;border-radius:12px;padding:16px;margin:12px 0;background:#fff}
#shared-services summary{cursor:pointer;font-weight:700;min-height:28px}
@media(max-width:640px){
 .page{padding:20px 14px!important}
 .topbar{padding:12px 16px!important}
 #page .page-head{display:flex;flex-direction:column;align-items:stretch;gap:12px}
 #page .page-head h1{margin:4px 0 8px}
 #page .tabs{flex-wrap:nowrap!important;overflow-x:auto;max-width:100%;padding-bottom:6px}
 #page .tabs button{white-space:nowrap;flex-shrink:0}
 #page .expense-movement,#page .extra-movement{grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
 #page .cash-section{padding:16px}
 #page .cash-total{padding:20px}
 #page .reconcile-card{padding:16px;min-width:0}
 #page .panel-head{flex-wrap:wrap;gap:12px}
 #sales-today{padding:18px!important}
 #sales-today .summary-bar{display:flex;flex-direction:column;align-items:stretch}
 #sales-today .kpi strong{font-size:1.7rem}
 #page [data-service-period]>.form-grid{grid-template-columns:minmax(0,1fr)}
 #page[data-visual-page="home"] [data-quick]{flex:1 1 42%}
}

/* Keep intrinsic text and grid sizes usable with enlarged text. */
.drawer:not(.open){display:none}
.drawer{overflow-y:auto}
.drawer-head>div{min-width:0}
.drawer-head h2,.drawer-head p{overflow-wrap:anywhere}
#page > *,#page .panel,#page .kpi,#page .dashboard-grid>*,#page .order-form{min-width:0}
#page :is(h1,h2,h3,p,strong,b,small){overflow-wrap:anywhere}
#page .catalog-choice{min-width:0}
#page button{overflow-wrap:anywhere}
.sidebar .nav-button span,.sidebar .user-box>span{min-width:0;overflow-wrap:anywhere;white-space:normal}
.sidebar .workspace-chip{grid-template-columns:10px minmax(0,1fr) 28px}
@media(max-width:640px){
 .topbar{display:grid;grid-template-columns:44px minmax(0,1fr) auto;height:auto;min-height:64px;gap:10px}
 .topbar .crumb{min-width:0}
 .topbar .crumb>*{overflow-wrap:anywhere;white-space:normal}
 .topbar .menu-button{width:44px;min-height:44px;padding:0}
 .topbar .top-actions{min-width:0}
 .topbar .notice-button{max-width:96px}
 #page .branch-order-tabs{grid-template-columns:minmax(0,1fr)}
 #page .branch-order-tabs>button{grid-template-columns:minmax(0,1fr) auto;min-width:0}
 #page .branch-order-tabs>button>.branch-chip{display:none}
 #page .branch-order-tabs>button>span{white-space:normal;overflow-wrap:anywhere}
 #page .dashboard-grid{grid-template-columns:minmax(0,1fr)}
}
