/* Super Farmacia Saucedo · UI v2. Shared visual layer; business logic stays in each module. */
body.saucedo-app, body.saucedo-auth {
    --sf-navy:#001C5B; --sf-blue:#005AD5; --sf-blue-hover:#064BA4; --sf-red:#FF1621;
    --sf-danger:#BE123C; --sf-bg:#F4F7FC; --sf-white:#FFFFFF; --sf-ink:#172B4D;
    --sf-muted:#52647B; --sf-border:#DEE6F1; --sf-success:#167347; --sf-warning:#8A5200;
    --brand-navy:var(--sf-navy); --brand-navy-deep:#071737; --brand-blue:var(--sf-blue);
    --brand-red:var(--sf-red); --page-bg:var(--sf-bg); --text:var(--sf-ink); --muted:var(--sf-muted);
    --bs-primary:#005AD5; --bs-primary-rgb:0,90,213;
    --bs-link-color:var(--sf-blue); --bs-link-hover-color:var(--sf-blue-hover);
    background:var(--sf-bg); color:var(--sf-ink); font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
.saucedo-app .content-area { max-width:1880px; margin:0 auto; padding:28px clamp(16px,2.4vw,36px) 42px; }
.saucedo-app .content-area:focus { outline:none; }
.saucedo-app :is(button,a,input,select,textarea,[tabindex]):focus-visible { outline:3px solid #68A1F3; outline-offset:3px; }
.saucedo-app .ui-skip-link { position:fixed; z-index:2000; top:10px; left:12px; padding:12px 18px; border-radius:10px; background:#fff; color:var(--sf-navy); box-shadow:0 4px 18px #001c5b30; transform:translateY(-150%); }
.saucedo-app .ui-skip-link:focus { transform:translateY(0); }
/* Navigation */
.saucedo-app .app-sidebar { background:linear-gradient(180deg,#001C5B,#071737); box-shadow:8px 0 30px #001c5b0a; }
.saucedo-app .sidebar-brand { border-color:#ffffff14; }
.saucedo-app .brand-mark { background:#001C5B; box-shadow:none; border:1px solid #ffffff25; border-radius:12px; }
.saucedo-app .nav-section { font-size:10px; color:#ADBFDF; letter-spacing:.10em; margin-top:18px; }
.saucedo-app .nav-item-app { min-height:44px; margin:3px 0; border-radius:10px; font-size:12px; color:#DFE8F8; }
.saucedo-app .nav-item-app:hover { background:#ffffff10; color:#fff; transform:none; }
.saucedo-app .nav-item-app.active { background:#FFFFFF18; color:#fff; box-shadow:inset 3px 0 var(--sf-red); }
.saucedo-app .nav-item-app.active .nav-icon { background:#ffffff12; color:#fff; }
.saucedo-app .ui-nav-search-wrap { position:relative; margin:16px 16px 4px; flex-shrink:0; }
.saucedo-app .ui-nav-search-wrap>i { position:absolute; left:12px; top:50%; transform:translateY(-50%); color:#BCD0EF; }
.saucedo-app .ui-nav-search-wrap input { width:100%; min-width:0; height:42px; padding:8px 10px 8px 36px; color:#fff; border:1px solid #ffffff25; background:#FFFFFF09; border-radius:10px; font-size:12px; }
.saucedo-app .ui-nav-search-wrap input::placeholder { color:#B6C9E8; }
.saucedo-app .ui-nav-search-status { padding:8px 20px 0; margin:0; color:#DBE7FC; font-size:11px; }
.saucedo-app .app-sidebar.is-collapsed :is(.ui-nav-search-wrap,.ui-nav-search-status) { display:none; }
.saucedo-app .ui-search-hidden { display:none !important; }
.saucedo-app .ui-sidebar-close { display:none; position:absolute; right:10px; top:15px; width:44px; height:44px; color:#fff; background:#ffffff12; border:1px solid #ffffff25; border-radius:10px; z-index:2; }
.saucedo-app .topbar { background:#FFFFFFF5; border-bottom:1px solid var(--sf-border); box-shadow:none; gap:12px; }
.saucedo-app .page-eyebrow { font-size:10px; color:var(--sf-muted); line-height:1.5; overflow-wrap:anywhere; }
.saucedo-app .page-name { font-size:16px; color:var(--sf-navy); line-height:1.4; }
.saucedo-app .topbar-date { color:var(--sf-muted); font-size:12px; white-space:nowrap; }
.saucedo-app :is(.mobile-toggle,.sidebar-toggle) { min-width:42px; min-height:42px; border-radius:10px; }
/* Buttons, inputs and dialog chrome */
.saucedo-app .btn { min-height:44px; display:inline-flex; justify-content:center; align-items:center; gap:6px; border-radius:10px; font-size:13px; font-weight:650; line-height:1.45; white-space:normal; }
.saucedo-app .btn.btn-sm { min-height:38px; font-size:12px; }
.saucedo-app .btn.btn-primary { color:#fff; background:var(--sf-blue); border-color:var(--sf-blue); box-shadow:0 3px 8px #005ad512; }
.saucedo-app .btn.btn-primary:is(:hover,:focus-visible,:active) { color:#fff; background:var(--sf-blue-hover); border-color:var(--sf-blue-hover); }
.saucedo-app .btn.btn-outline-primary { color:var(--sf-blue); background:transparent; border-color:#BCD0ED; }
.saucedo-app .btn.btn-outline-primary:is(:hover,:active) { color:#fff; background:var(--sf-blue); border-color:var(--sf-blue); }
.saucedo-app .btn.btn-outline-secondary { color:var(--sf-muted); border-color:#CBD7E6; background:#fff; }
.saucedo-app .btn.btn-outline-secondary:hover { color:var(--sf-navy); background:#EEF3FA; border-color:#AEBFD7; }
.saucedo-app .btn.btn-danger { background:var(--sf-danger); border-color:var(--sf-danger); color:#fff; }
.saucedo-app .btn.btn-danger:hover { background:#9F1239; border-color:#9F1239; }
.saucedo-app .btn.btn-outline-danger { color:var(--sf-danger); border-color:#E8BDC8; background:transparent; }
.saucedo-app .btn.btn-outline-danger:hover { background:var(--sf-danger); border-color:var(--sf-danger); color:#fff; }
.saucedo-app .btn:disabled, .saucedo-app .btn.disabled { box-shadow:none; cursor:not-allowed; }
.saucedo-app :is(.form-control,.form-select,.ts-control) { min-height:44px; border-color:#CBD7E6; border-radius:10px; color:var(--sf-ink); font-size:14px; box-shadow:none; }
.saucedo-app :is(.form-control,.form-select):focus { border-color:var(--sf-blue); box-shadow:0 0 0 3px #005AD51A; }
.saucedo-app .form-control::placeholder { color:#6B7C91; opacity:1; }
.saucedo-app .content-area .form-label { color:var(--sf-muted); font-size:12px; font-weight:650; text-transform:none; letter-spacing:0; margin-bottom:7px; }
.saucedo-app .form-text { font-size:11px; color:var(--sf-muted); line-height:1.6; }
.saucedo-app .input-group { min-width:0; }.saucedo-app .input-group-text { border-color:#CBD7E6; color:var(--sf-muted); background:var(--sf-bg); }
.saucedo-app .form-check-input { cursor:pointer; }.saucedo-app .form-check-input:checked { background-color:var(--sf-blue); border-color:var(--sf-blue); }
.saucedo-app .ts-wrapper { min-width:0; }.saucedo-app .ts-control { padding:10px 12px; }.saucedo-app .ts-control input { font-size:14px; }
.saucedo-app .ts-dropdown { border:1px solid var(--sf-border); background:#fff; color:var(--sf-ink); box-shadow:0 12px 35px #001c5b1a; border-radius:12px; padding:5px; }
.saucedo-app .ts-dropdown :is(.option,.no-results) { color:var(--sf-ink); font-size:13px; border-radius:7px; }
.saucedo-app .ts-dropdown :is(.option:hover,.option.active) { color:var(--sf-navy); background:#EDF4FF; padding-left:11px; }
.saucedo-app .ts-dropdown .option.selected { color:var(--sf-blue); background:#EAF2FF; box-shadow:none; }
.saucedo-app .ts-dropdown .dropdown-input { color:var(--sf-ink); border-color:var(--sf-border); background:var(--sf-bg); }
.saucedo-app .ts-dropdown .dropdown-input::placeholder { color:var(--sf-muted); }
.saucedo-app .modal-dialog { max-width:min(var(--bs-modal-width,800px),calc(100vw - 24px)); }
.saucedo-app .modal-content { border:1px solid var(--sf-border); border-radius:18px; box-shadow:0 22px 80px #001c5b24; }
.saucedo-app .modal-header { padding:20px 22px; gap:14px; }.saucedo-app .modal-title { font-size:18px; line-height:1.4; font-weight:700; }
.saucedo-app .modal-body { padding:22px; overflow-wrap:anywhere; }.saucedo-app .modal-footer { padding:14px 22px; gap:8px; flex-wrap:wrap; }
.saucedo-app .modal-footer>form { display:flex; gap:8px; flex-wrap:wrap; margin:0; }
.saucedo-app .btn-close { min-width:22px; min-height:22px; padding:10px; flex-shrink:0; }
.saucedo-app .alert { border-radius:12px; font-size:13px; line-height:1.6; }
.saucedo-app .invalid-feedback { font-size:12px; }
.saucedo-app .offcanvas { max-width:100vw; }
/* Common page language */
.saucedo-app .ui-page-heading { display:flex; flex-direction:row; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:18px; margin:3px 0 24px; }
.saucedo-app .ui-page-heading>div:first-child { min-width:0; flex:1 1 260px; }
.saucedo-app .ui-page-heading :is(h1,h2) { font-size:clamp(24px,2.2vw,31px); color:var(--sf-navy); line-height:1.25; font-weight:780; letter-spacing:-.035em; margin:7px 0; overflow-wrap:anywhere; }
.saucedo-app .ui-page-heading p { color:var(--sf-muted); font-size:13px; line-height:1.65; margin:0; max-width:740px; }
.saucedo-app .ui-page-heading> :is(div:last-child,a,button) { max-width:100%; }
.saucedo-app .ui-page-heading>div:last-child:not(:first-child) { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.saucedo-app .ui-page-heading :is([class$="-kicker"],.heading-kicker) { color:var(--sf-blue); font-size:10px; line-height:1.5; letter-spacing:.075em; text-transform:uppercase; font-weight:750; }
.saucedo-app .ui-summary-grid { gap:16px; margin-bottom:24px; }
.saucedo-app .ui-summary-grid>* { min-width:0; border-color:var(--sf-border); border-radius:14px; }
.saucedo-app .ui-summary-grid small { font-size:11px; color:var(--sf-muted); line-height:1.5; }
.saucedo-app .ui-summary-grid strong { font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.saucedo-app :is(.card,.card-soft,.bd-card,.ba-card,.bd-form-card,.bd-detail-card,.customers-card,.detail-card,.expense-detail-card,.fin-card,.er-card,.ic-card,.quote-form-card,.quote-submit-card,.ticket-card,.ticket-save-card,.type-card,.rr-card,.report-builder,.kit-panel,.kit-card,.user-form-card,.ue-card,.profile-card,.return-card,.review-card,.purchase-panel,.purchase-summary-card,.import-card,.sat-table-card,.lots-table-card,.users-table-card,.returns-table-card,.sales-table-card,.cd-table-card,.cdr-card,.rx-card,.category-summary) { border-color:var(--sf-border); border-radius:16px; box-shadow:0 4px 20px #001c5b06; }
.saucedo-app :is(.users-table-heading,.returns-table-heading,.lots-table-heading,.sales-table-head,.rr-card-head,.fin-card-head,.purchase-panel-header,.expense-list-head,.catalog-card-head,.supplier-card-head,.cash-panel-head,.closure-panel-head,.history-card-head,.ic-list-head,.profile-card-head,.ticket-card-head,.user-section-heading,.ue-card-head) { gap:12px; flex-wrap:wrap; }
.saucedo-app :is(.users-table-heading,.returns-table-heading,.lots-table-heading,.sales-table-head,.rr-card-head,.fin-card-head,.purchase-panel-header,.expense-list-head,.catalog-card-head,.supplier-card-head,.cash-panel-head,.closure-panel-head,.history-card-head,.ic-list-head,.profile-card-head,.ticket-card-head) :is(h2,h3,h4,h5) { font-size:15px; font-weight:720; color:var(--sf-navy); }
.saucedo-app :is(.users-table-heading,.returns-table-heading,.lots-table-heading,.sales-table-head,.rr-card-head,.fin-card-head,.purchase-panel-header,.expense-list-head,.report-builder-head,.user-section-heading,.ue-card-head,.profile-card-head) :is(p,small) { color:var(--sf-muted); font-size:11px; line-height:1.6; }
.saucedo-app :is(.user-identity,.customer-name,.supplier-name,.salary-person) strong { font-size:13px; }
.saucedo-app :is(.user-identity,.salary-person,.customer-meta,.role-description) small, .saucedo-app .customer-meta { font-size:11px; color:var(--sf-muted); }
.saucedo-app :is(.user-role,.user-status,.customer-status,.customer-list-pill,.salary-badge,.bd-status) { font-size:11px; }
/* Responsive tables preserve DOM nodes, inputs, listeners and server-rendered permissions. */
.saucedo-app table[data-ui-table] { width:100%; font-variant-numeric:tabular-nums; }
.saucedo-app table[data-ui-table] :is(th,td) { overflow-wrap:anywhere; }
.saucedo-app table[data-ui-table]>thead>tr>th { background:#F1F5FB; color:var(--sf-muted); font-size:11px; padding:14px 16px; border-color:var(--sf-border); white-space:normal; }
.saucedo-app table[data-ui-table]>tbody>tr>td { padding:16px; font-size:13px; line-height:1.55; border-color:#E9EEF6; }
.saucedo-app table[data-ui-table]>tbody>tr:hover { background:#F8FAFF; }
.saucedo-app table[data-ui-table] :is(.btn,.icon-action,.icon-sale-action) { min-height:38px; min-width:38px; }
.saucedo-app .ui-table-region { max-width:100%; min-width:0; width:100%; }
.saucedo-app .ui-table-region.is-card-view { overflow-x:visible; }
.saucedo-app table.ui-table-cards { display:block; min-width:0 !important; width:100% !important; table-layout:auto; border-collapse:separate; background:transparent; }
.saucedo-app table.ui-table-cards>thead { display:table-header-group; position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.saucedo-app table.ui-table-cards>tbody { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:14px; padding:14px; background:var(--sf-bg); }
.saucedo-app table.ui-table-cards>tbody>tr { position:relative; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; border:1px solid var(--sf-border); background:#fff; border-radius:13px; padding:0; overflow:hidden; }
.saucedo-app table.ui-table-cards>tbody>tr> :is(td,th) { display:block; width:auto !important; min-width:0 !important; max-width:100% !important; padding:12px 14px !important; text-align:left !important; border:0; background:transparent; white-space:normal; box-shadow:none; }
.saucedo-app table.ui-table-cards>tbody>tr> :is(td,th)[data-ui-label]::before { content:attr(data-ui-label); display:block; color:var(--sf-muted); font-size:10px; font-weight:650; line-height:1.4; margin-bottom:7px; text-transform:uppercase; letter-spacing:.025em; }
.saucedo-app table.ui-table-cards>tbody>tr>[data-ui-primary] { grid-column:1/-1; border-bottom:1px solid #E9EEF6; padding-top:17px !important; padding-bottom:17px !important; font-weight:650; }
.saucedo-app table.ui-table-cards>tbody>tr>[data-ui-primary]::before { color:var(--sf-blue); }
.saucedo-app table.ui-table-cards>tbody>tr>[data-ui-actions] { grid-column:1/-1; border-top:1px solid #E9EEF6; }
.saucedo-app table.ui-table-cards>tbody>tr>[data-ui-actions] :is(.d-flex,.user-actions,.category-actions,.sale-actions,.action-buttons) { flex-wrap:wrap; justify-content:flex-start !important; gap:8px; }
.saucedo-app table.ui-table-cards>tbody>tr>.ui-wide-cell { grid-column:1/-1; }
.saucedo-app table.ui-table-cards>tbody>tr.ui-table-message { grid-column:1/-1; display:block; text-align:center; }
.saucedo-app table.ui-table-cards>tbody>tr.ui-table-message>td { text-align:center !important; padding:28px 18px !important; }
.saucedo-app table.ui-table-cards .category-tree-cell { padding-left:min(var(--tree-indent,0px),28px) !important; }.saucedo-app table.ui-table-cards .tree-connector { display:none; }
.saucedo-app table.ui-table-cards>tfoot { display:block; padding:12px 16px; border-top:1px solid var(--sf-border); background:#fff; }
.saucedo-app table.ui-table-cards>tfoot>tr { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }.saucedo-app table.ui-table-cards>tfoot>tr>* { display:block; border:0; min-width:0; text-align:left !important; white-space:normal; overflow-wrap:anywhere; }
.saucedo-app table.ui-table-cards>tfoot .ui-wide-cell { grid-column:1/-1; }
.saucedo-app table.ui-table-cards>tfoot [data-ui-label]::before { content:attr(data-ui-label); display:block; color:var(--sf-muted); font-size:10px; font-weight:650; margin-bottom:6px; text-transform:uppercase; }
.saucedo-app table.ui-table-cards.ui-table-single>tbody { grid-template-columns:1fr; }
.saucedo-app table[data-ui-table] [hidden], .saucedo-app .ui-search-hidden { display:none !important; }
.saucedo-app .ui-scroll-note { display:flex; align-items:center; gap:8px; color:var(--sf-muted); font-size:11px; padding:10px 14px; background:var(--sf-bg); border-bottom:1px solid var(--sf-border); }
.saucedo-app .ui-scroll-note[hidden] { display:none; }
.saucedo-app .premium-pagination { flex-wrap:wrap; gap:14px; background:#fff; border-color:var(--sf-border); }
.saucedo-app :is(.premium-page-number,.premium-page-arrow,.premium-page-button) { min-height:40px; }
.saucedo-app .premium-pagination__desktop { flex-wrap:wrap; }
/* Specific workspaces: preserve their task-specific controls. */
.saucedo-app .dashboard-heading h1 { font-size:clamp(26px,2.7vw,36px); }
.saucedo-app .dashboard-metrics { grid-template-columns:repeat(4,minmax(0,1fr)); }
.saucedo-app :is(.report-builder-head h2,.report-builder label) { font-size:13px; }.saucedo-app .report-builder-head p,.saucedo-app .report-helper { font-size:12px; }
.saucedo-app .report-actions .btn { min-width:44px; }.saucedo-app .report-actions .btn:first-child { flex:1; }
.saucedo-app .kit-sale-panel { top:96px; }.saucedo-app .kits-eyebrow,.saucedo-app .kits-kicker { color:var(--sf-blue); }
.saucedo-app .tw-views { border-color:var(--sf-border); }.saucedo-app .tw-view-tabs a.is-active { color:var(--sf-blue); border-color:var(--sf-blue); }.saucedo-app .tw-scope.is-active { color:var(--sf-blue); background:#EAF2FF; }
.saucedo-app .tw-task-card { border-color:var(--sf-border); border-radius:13px; box-shadow:0 3px 12px #001c5b06; }.saucedo-app .tw-task-title { font-size:14px; }
.saucedo-app .pos-wrap { border:1px solid var(--sf-border); border-radius:18px; box-shadow:0 5px 24px #001c5b08; min-height:620px; }
.saucedo-app .pos-header { background:#F8FAFE; border-color:var(--sf-border); gap:10px; }.saucedo-app .pos-title { color:var(--sf-navy); font-size:20px; }.saucedo-app .pos-kicker { color:var(--sf-blue); }
.saucedo-app .pos-product-card { border:1px solid var(--sf-border); border-radius:13px; padding:13px; }.saucedo-app .pos-product-card:hover { border-color:var(--sf-blue); transform:none; box-shadow:0 0 0 2px #005ad510; }
.saucedo-app .pos-card-img { object-fit:contain; background:#fff; }.saucedo-app .pos-card-name { color:var(--sf-ink); font-size:13px; line-height:1.45; }.saucedo-app .pos-card-price { color:var(--sf-blue); }
.saucedo-app .sale-header { background:var(--sf-navy); color:#fff; gap:10px; }.saucedo-app .sale-title { color:#fff; }.saucedo-app .sale-subtitle { color:#D2E0F7; }
.saucedo-app .pos-wrap :is(.btn-charge,.btn-confirm-pay) { background:var(--sf-blue); border-color:var(--sf-blue); min-height:50px; }.saucedo-app .pos-wrap :is(.btn-charge,.btn-confirm-pay):hover { background:var(--sf-blue-hover); }
.saucedo-app .pos-wrap :is(.btn-new-sale,.btn-sale-options) { min-height:40px; }.saucedo-app .cart-item-name { font-size:13px; }.saucedo-app .pos-right { min-width:0; }
.saucedo-app :is(.payment-choice-grid,.payment-term-card,.purchase-product-main,.purchase-product-meta,.return-product-info,.product-header,.quote-item-info,.compact-product-name) { min-width:0; overflow-wrap:anywhere; }
/* Responsive forms and summary panels. */
@media (max-width:1199.98px) {
    .saucedo-app .ui-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .saucedo-app .kit-editor { grid-template-columns:minmax(0,1fr); }.saucedo-app .kit-sale-panel { position:static; }
    .saucedo-app:is([data-ui-module$="-create"],[data-ui-module$="-edit"]) .content-area .row> :is(.col-lg-8,.col-lg-4,.col-lg-9,.col-lg-3) { flex:0 0 auto; width:100%; }
    .saucedo-app :is(.purchase-summary-sticky,.product-form-sidebar .sticky-top) { position:static; }
    .saucedo-app .purchase-product-row { grid-template-columns:minmax(0,1fr) repeat(3,minmax(70px,.4fr)); }
}
@media (max-width:991.98px) {
    .saucedo-app .content-area { padding:22px 16px 36px; }.saucedo-app .app-sidebar { width:min(320px,calc(100vw - 36px)); }
    .saucedo-app .app-sidebar.is-mobile-open { width:min(320px,calc(100vw - 36px)); }.saucedo-app .ui-sidebar-close { display:grid; place-items:center; }.saucedo-app .sidebar-brand { padding-right:62px; }
    .saucedo-app .app-sidebar.is-collapsed :is(.ui-nav-search-wrap,.ui-nav-search-status) { display:block; }.saucedo-app .ui-nav-search-status[hidden] { display:none; }
    .saucedo-app .ui-page-heading { align-items:flex-start; }.saucedo-app .ui-page-heading>div:first-child { flex-basis:100%; }
    .saucedo-app .pos-wrap { height:auto; min-height:0; flex-direction:column; overflow:visible; }.saucedo-app .pos-left,.saucedo-app .pos-right { width:100%; max-width:100%; }
    .saucedo-app .pos-left { border-right:0; }.saucedo-app .pos-products-area { max-height:42dvh; min-height:180px; overflow-y:auto; }.saucedo-app .pos-header { flex-wrap:wrap; }.saucedo-app .search-pos-wrap { flex:1 1 100%; order:3; }
    .saucedo-app .cart-items { max-height:44dvh; min-height:180px; }.saucedo-app .sale-header { border-radius:0; }
    .saucedo-app .purchase-product-row { grid-template-columns:repeat(2,minmax(0,1fr)); }.saucedo-app .purchase-product-row>:first-child { grid-column:1/-1; }
    .saucedo-app .tw-board { grid-template-columns:repeat(2,minmax(0,1fr)); overflow:visible; }.saucedo-app .tw-column { min-width:0; }
}
@media (max-width:575.98px) {
    .saucedo-app .content-area { padding:18px 12px 32px; }.saucedo-app .topbar { padding-inline:12px; gap:9px; }.saucedo-app .page-name { font-size:14px; }.saucedo-app .page-eyebrow { font-size:9px; }.saucedo-app .topbar-date { display:none; }
    .saucedo-app .ui-page-heading { gap:14px; margin-bottom:20px; }.saucedo-app .ui-page-heading>div:last-child:not(:first-child) { width:100%; }.saucedo-app .ui-page-heading> :is(a,button) { width:100%; }
    .saucedo-app .ui-page-heading>div:last-child:not(:first-child)>.btn { flex:1 1 135px; }
    .saucedo-app :is(.form-control,.form-select,.ts-control input) { font-size:16px; }.saucedo-app .ts-control { min-height:46px; }
    .saucedo-app .ui-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }.saucedo-app .ui-summary-grid strong { font-size:19px; }
    .saucedo-app .ui-summary-grid small { font-size:10px; }.saucedo-app .kits-overview-note { grid-column:1/-1; }
    .saucedo-app table.ui-table-cards>tbody { gap:12px; padding:10px; }.saucedo-app table.ui-table-cards>tbody>tr>:is(td,th) { padding:11px 12px !important; }
    .saucedo-app :is(.card-body.p-4,.modal-body.p-4) { padding:18px !important; }
    .saucedo-app .modal-dialog { margin:12px auto; }.saucedo-app .modal-body { padding:16px; }.saucedo-app .modal-header { padding:16px; }.saucedo-app .modal-footer { padding:12px 16px max(14px,env(safe-area-inset-bottom)); }.saucedo-app .modal-footer>.btn { flex:1 1 120px; }
    .saucedo-app .modal-title { font-size:17px; }.saucedo-app .modal-footer>.me-auto { flex-basis:100%; }
    .saucedo-app :is(.expense-filter,.sales-filter-card,.customers-filter,.lots-filter-actions,.ic-filter-card,.sat-filter-card,.quote-index-heading) .d-flex { flex-wrap:wrap; }
    .saucedo-app :is(.expense-filter,.sales-filter-card,.customers-filter,.lots-filter-actions,.ic-filter-card,.sat-filter-card) .d-flex>.btn { flex:1 1 100px; }
    .saucedo-app .content-area form.ui-filter-form.d-flex { flex-wrap:wrap; }.saucedo-app .ui-filter-form.d-flex>.form-control { flex:1 1 100%; }
    .saucedo-app .premium-pagination { padding:14px; }.saucedo-app .premium-pagination__summary { flex-wrap:wrap; text-align:center; }
    .saucedo-app .tw-board { grid-template-columns:minmax(0,1fr); }.saucedo-app .tw-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }.saucedo-app .tw-search { grid-column:1/-1; }
    .saucedo-app .kits-grid { grid-template-columns:1fr; }.saucedo-app .kit-panel { padding:18px; }.saucedo-app .kit-card-heading { padding:18px; }.saucedo-app .kit-state { white-space:normal; }
    .saucedo-app .sale-header { align-items:flex-start; flex-direction:column; }.saucedo-app .sale-header-actions { width:100%; justify-content:space-between; }
    .saucedo-app .pos-products-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.saucedo-app .pos-header .register-select { max-width:100%; min-width:0; }
    .saucedo-app .pos-product-card { padding:10px; }.saucedo-app .pos-card-name { font-size:12px; }.saucedo-app .pos-products-area { padding:14px; }
    .saucedo-app :is(.salary-summary,.purchase-info-grid,.bd-info-grid,.cdr-info-grid,.detail-grid,.ba-data) { grid-template-columns:minmax(0,1fr); }
    .saucedo-app :is(.return-product-row.is-partial,.purchase-return-row) { grid-template-columns:36px minmax(0,1fr); }.saucedo-app .return-product-row.is-partial>.qty-stepper { grid-column:2; }
}
@media (max-width:359.98px) { .saucedo-app .ui-summary-grid { grid-template-columns:1fr; } .saucedo-app table.ui-table-cards>tbody>tr { grid-template-columns:minmax(0,1fr); } }
/* Authentication shares the palette without changing the login form or redirects. */
.saucedo-auth .ui-auth-container { min-height:100dvh; display:flex; align-items:center; justify-content:center; padding:28px; }
.saucedo-auth .login-shell { box-shadow:0 18px 60px #001c5b14; border-color:var(--sf-border); }
.saucedo-auth .login-brand-panel { background:linear-gradient(145deg,#001C5B,#073B86); }
.saucedo-auth .login-submit { background:var(--sf-blue); min-height:48px; box-shadow:none; }.saucedo-auth .login-submit:hover { background:var(--sf-blue-hover); }
.saucedo-auth .login-field label,.saucedo-auth .login-form-help { font-size:12px; }.saucedo-auth .login-input-wrap input { font-size:15px; }
.saucedo-auth .login-remember { font-size:12px !important; }.saucedo-auth .login-form-heading small { font-size:10px; color:var(--sf-blue); }
.saucedo-auth .login-security-note { font-size:11px; color:var(--sf-muted); }.saucedo-auth .login-benefits small { font-size:10px; color:#DBE6F8; }.saucedo-auth .login-benefits strong { font-size:12px; }
@media(max-width:575.98px) { .saucedo-auth .ui-auth-container { padding:14px; }.saucedo-auth .login-shell { min-width:0; border-radius:18px; }.saucedo-auth .login-form-panel { padding:28px 20px; }.saucedo-auth .login-input-wrap input { font-size:16px; } }
@media(prefers-reduced-motion:reduce) { .saucedo-app *, .saucedo-auth * { scroll-behavior:auto !important; transition-duration:.01ms !important; animation-duration:.01ms !important; } }
@media print {
 .saucedo-app :is(.app-sidebar,.topbar,.ui-skip-link,.ui-scroll-note) { display:none !important; }.saucedo-app .app-shell { margin:0; }.saucedo-app .content-area { padding:0; }
 .saucedo-app table.ui-table-cards { display:table; border-collapse:collapse; }.saucedo-app table.ui-table-cards>thead { display:table-header-group; position:static; width:auto; height:auto; clip-path:none; white-space:normal; }
 .saucedo-app table.ui-table-cards>tbody { display:table-row-group; }.saucedo-app table.ui-table-cards>tfoot { display:table-footer-group; }.saucedo-app table.ui-table-cards>:is(tbody,tfoot)>tr { display:table-row; }.saucedo-app table.ui-table-cards>:is(tbody,tfoot)>tr>:is(td,th) { display:table-cell; }.saucedo-app table.ui-table-cards>:is(tbody,tfoot)>tr>:is(td,th)::before { display:none; }
}

.saucedo-app .rr-metrics {gap:16px;} .saucedo-app .rr-metric {border-color:var(--sf-border);border-radius:14px;} .saucedo-app .rr-metric small {font-size:11px;color:var(--sf-muted);}
@media(max-width:1199.98px){.saucedo-app .rr-metrics{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:359.98px){.saucedo-app .rr-metrics{grid-template-columns:1fr;}}
/* Status filters stay visible without lateral scrolling. */
.saucedo-app .sales-status-tabs { flex-wrap:wrap; overflow:visible; }
.saucedo-app .sales-status-tab { flex:1 1 125px; justify-content:center; }
.saucedo-app .dashboard-chart canvas { max-width:100%; }
/* Keep full product names and a compact cart on small screens. */
.saucedo-app .pos-card-name { display:block; -webkit-line-clamp:unset; overflow:visible; overflow-wrap:anywhere; }
@media (max-width:991.98px) {
 .saucedo-app .pos-left,.saucedo-app .pos-right { min-height:0; }
 .saucedo-app .pos-products-area { flex:0 1 auto; }
}
@media (max-width:575.98px) {
 .saucedo-app .cart-item-row { display:grid; grid-template-columns:46px minmax(0,1fr) auto 32px; align-items:center; gap:10px; }
 .saucedo-app .cart-item-info { grid-column:2/-1; }
 .saucedo-app .cart-item-name { white-space:normal; overflow:visible; overflow-wrap:anywhere; line-height:1.5; }
 .saucedo-app .cart-item-row>.qty-controls { grid-column:2; justify-self:start; }
 .saucedo-app .qty-btn-pos { min-width:32px; min-height:40px; }
 .saucedo-app .remove-line-btn { min-height:40px; }
}
