/* Operational accessibility layer shared by ORMU contexts. */
:where(button, a, input, select, textarea, summary):focus-visible {
  outline: 3px solid color-mix(in srgb, var(--brand, #3b82f6) 72%, white);
  outline-offset: 2px;
}
:where(button, input, select, textarea) { min-height: 2.65rem; }
.pagination { display:flex; align-items:center; justify-content:center; gap:.75rem; margin:1rem 0; color:var(--muted); font-size:.75rem; }
.pagination button { min-width:6rem; }
@media (max-width:760px) {
  .pagination { justify-content:space-between; }
  .pagination button { min-width:5.5rem; }
}
@media (prefers-reduced-motion:reduce) {
  *, *::before, *::after { scroll-behavior:auto !important; transition-duration:.01ms !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; }
}

/* Mercadinho desktop retail finish. Kept in the shared layer so all admin
   routes inherit one visual contract without changing their behavior. */
@media (min-width: 1181px) {
  [data-theme="mercadinho"] {
    --brand:#087a5b; --brand-strong:#065c45; --brand-soft:#ddf5ec;
    --contrast:#fff; --accent:#2a6f76; --sidebar:#102a2e; --side-soft:#15383d;
    --side-text:#fff; --side-muted:#b8ccca; --page:#f5f7f6; --surface:#fff;
    --surface-alt:#f5f7f6; --text:#172126; --muted:#607078; --border:#dce3e5;
    --danger:#b42318; --danger-soft:#fff4f3; --success:#087a5b;
    --success-soft:#ddf5ec; --warning:#a35c00; --warning-soft:#fff0ce;
    --gradient:#087a5b; --radius:10px; --shadow:0 8px 24px rgb(16 42 46/.07);
    font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif;
  }
  [data-theme="mercadinho"] .workspace { min-width:0; background:#f5f7f6; }
  [data-theme="mercadinho"] .topbar { min-height:62px; height:62px; padding-inline:24px; border-bottom:1px solid #dce3e5; background:#fff; }
  [data-theme="mercadinho"] .topbar h1 { margin:.12rem 0; font-size:1.05rem; font-weight:650; letter-spacing:-.02em; }
  [data-theme="mercadinho"] .content { padding:20px 24px 28px; }
  [data-theme="mercadinho"] .section-head,
  [data-theme="mercadinho"] .page-heading { margin:0 0 14px; align-items:center; gap:16px; }
  [data-theme="mercadinho"] .section-head h2,
  [data-theme="mercadinho"] .page-heading h2 { margin:.1rem 0; color:#172126; font-size:1.3rem; letter-spacing:-.025em; }
  [data-theme="mercadinho"] .section-head p,
  [data-theme="mercadinho"] .page-heading p { margin:.22rem 0 0; color:#607078; font-size:.78rem; }
  [data-theme="mercadinho"] .panel,
  [data-theme="mercadinho"] .metrics article,
  [data-theme="mercadinho"] .quick button { border-color:#dce3e5; border-radius:10px; box-shadow:0 2px 8px rgb(16 42 46/.035); }
  [data-theme="mercadinho"] .panel { padding:16px; }
  [data-theme="mercadinho"] .primary,
  [data-theme="mercadinho"] .secondary,
  [data-theme="mercadinho"] .ghost { min-height:36px; padding:.48rem .8rem; border-radius:8px; font-size:.78rem; font-weight:650; box-shadow:none; }
  [data-theme="mercadinho"] .primary { border-color:#087a5b; background:#087a5b; color:#fff; }
  [data-theme="mercadinho"] .primary:hover { background:#065c45; }
  [data-theme="mercadinho"] .secondary { border-color:#cfd9db; background:#fff; color:#263238; }
  [data-theme="mercadinho"] .secondary:hover { border-color:#87949a; background:#f5f7f6; }
  [data-theme="mercadinho"] input,
  [data-theme="mercadinho"] select,
  [data-theme="mercadinho"] textarea { min-height:36px; height:36px; padding:0 10px; border-color:#cfd9db; border-radius:6px; background:#fff; color:#172126; font-size:.82rem; }
  [data-theme="mercadinho"] textarea { height:auto; min-height:88px; padding:9px 10px; }
  [data-theme="mercadinho"] input:focus,
  [data-theme="mercadinho"] select:focus,
  [data-theme="mercadinho"] textarea:focus { border-color:#2a6f76; box-shadow:0 0 0 3px rgb(42 111 118/.13); }
  [data-theme="mercadinho"] .summary,
  [data-theme="mercadinho"] .dashboard-head { padding:16px 20px; border:1px solid #1b474d; border-radius:10px; background:#15383d; color:#fff; }
  [data-theme="mercadinho"] .summary .kicker,
  [data-theme="mercadinho"] .dashboard-head .section-label { color:#c4ddda; }
  [data-theme="mercadinho"] .summary h2 { margin:.14rem 0; font-size:1.2rem; }
  [data-theme="mercadinho"] .summary p,
  [data-theme="mercadinho"] .dashboard-head p { color:#d4e3e1; opacity:1; }
  [data-theme="mercadinho"] .summary .health { border:1px solid rgb(255 255 255/.18); background:rgb(255 255 255/.1); }
  [data-theme="mercadinho"] .dashboard-metrics,
  [data-theme="mercadinho"] .dashboard-grid { gap:12px; margin-top:12px; }
  [data-theme="mercadinho"] .dashboard-metrics article { gap:5px; padding:14px 16px; border-radius:10px; }
  [data-theme="mercadinho"] .dashboard-metrics b { color:#15383d; font-size:1.42rem; letter-spacing:-.025em; }
  [data-theme="mercadinho"] .dashboard-grid .panel { padding:14px 16px; }
  [data-theme="mercadinho"] .data-list { gap:7px; }
  [data-theme="mercadinho"] .data-row { grid-template-columns:minmax(0,1fr) auto auto; gap:14px; padding:11px 14px; border-color:#e1e7e8; border-radius:8px; box-shadow:none; }
  [data-theme="mercadinho"] .data-row .row-main { min-width:0; }
  [data-theme="mercadinho"] .data-row .row-main b,
  [data-theme="mercadinho"] .data-row .row-main>span { overflow:visible; white-space:normal; text-overflow:clip; overflow-wrap:anywhere; }
  [data-theme="mercadinho"] .data-row .row-main b { color:#172126; font-size:.82rem; }
  [data-theme="mercadinho"] .data-row .row-main>span { color:#607078; font-size:.74rem; }
  [data-theme="mercadinho"] .data-row .badge,
  [data-theme="mercadinho"] .data-row .status { display:inline-flex; width:max-content; min-width:0; height:auto; min-height:0; align-items:center; justify-content:center; padding:4px 9px; border-radius:999px; font-size:.68rem; line-height:1.2; }
  [data-theme="mercadinho"] .data-row .actions { grid-column:auto; display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }
  [data-theme="mercadinho"] .data-row .actions button,
  [data-theme="mercadinho"] .product-actions button { min-height:32px; padding:.38rem .65rem; white-space:nowrap; font-size:.72rem; }
  [data-theme="mercadinho"] .category-list .data-row { grid-template-columns:minmax(0,1fr) auto auto; }
  [data-theme="mercadinho"] .category-list .row-main b { white-space:normal; overflow:visible; text-overflow:clip; }
  [data-theme="mercadinho"] .category-list .product-actions { justify-content:flex-end; }
  [data-theme="mercadinho"] #customer-list .customer-row { grid-template-columns:minmax(0,1fr) minmax(90px,auto) auto; }
  [data-theme="mercadinho"] #user-list .data-row { grid-template-columns:minmax(260px,1.2fr) auto minmax(350px,1.3fr); }
  [data-theme="mercadinho"] #user-list .data-row .actions { flex-wrap:nowrap; }
  [data-theme="mercadinho"] #user-list .data-row .actions button { min-width:64px; }
  [data-theme="mercadinho"] #user-create { grid-template-columns:repeat(5,minmax(130px,1fr)); gap:10px; margin:0 0 14px; padding:14px; }
  [data-theme="mercadinho"] #user-create .actions { grid-column:1/-1; margin-top:0; }
  [data-theme="mercadinho"] #user-create .actions button { margin-left:auto; }
  [data-theme="mercadinho"] .search-bar { gap:8px; margin:0 0 12px; }
  [data-theme="mercadinho"] .products-toolbar { gap:10px; padding:12px; }
  [data-theme="mercadinho"] .product-list-head,
  [data-theme="mercadinho"] .products-page .product-row { grid-template-columns:minmax(230px,1.8fr) minmax(130px,1.05fr) minmax(90px,.65fr) minmax(100px,.7fr) minmax(75px,.55fr) minmax(250px,1.7fr); }
  [data-theme="mercadinho"] .inventory-page .product-list-head,
  [data-theme="mercadinho"] .inventory-page .product-row { grid-template-columns:minmax(260px,1.8fr) minmax(150px,1fr) minmax(90px,.6fr) minmax(280px,1.5fr); }
  [data-theme="mercadinho"] .product-list-head { position:sticky; top:0; z-index:1; padding:9px 14px; background:#f5f7f6; color:#607078; font-size:.66rem; font-weight:700; }
  [data-theme="mercadinho"] .product-row { gap:12px; padding:10px 14px; border-color:#e1e7e8; border-radius:8px; }
  [data-theme="mercadinho"] .product-row>div:first-child b { color:#172126; font-size:.82rem; }
  [data-theme="mercadinho"] .product-row>div:first-child small { color:#607078; }
  [data-theme="mercadinho"] .product-row>strong { color:#172126; font-size:.8rem; }
  [data-theme="mercadinho"] .product-actions button { border:1px solid #cfd9db; border-radius:7px; background:#fff; color:#263238; font-weight:600; }
  [data-theme="mercadinho"] .product-actions button:hover { border-color:#87949a; background:#f5f7f6; }
  [data-theme="mercadinho"] .product-actions button.danger,
  [data-theme="mercadinho"] #user-list [data-user-toggle][data-active="true"] { color:#b42318 !important; }
  [data-theme="mercadinho"] .product-actions button { border:1px solid #cfd9db; border-radius:7px; background:#fff; color:#263238; font-weight:600; }
  [data-theme="mercadinho"] .product-actions button:hover { border-color:#87949a; background:#f5f7f6; }
  [data-theme="mercadinho"] .product-actions button.danger,
  [data-theme="mercadinho"] #user-list [data-user-toggle][data-active="true"] { color:#b42318 !important; }
  [data-theme="mercadinho"] .inventory-toolbar label { max-width:none; grid-template-columns:minmax(170px,.45fr) minmax(300px,1.55fr); align-items:center; gap:12px; }
  [data-theme="mercadinho"] .inventory-page .product-row>strong { text-align:left; }
  [data-theme="mercadinho"] .form-grid { gap:12px; margin-top:0; }
  [data-theme="mercadinho"] .form-grid label { gap:5px; color:#42545a; font-size:.74rem; font-weight:600; }
  [data-theme="mercadinho"] dialog { width:min(720px,calc(100vw - 48px)); max-width:calc(100vw - 48px); max-height:min(88vh,820px); padding:0; border:1px solid #dce3e5; border-radius:12px; box-shadow:0 20px 60px rgb(16 42 46/.22); }
  [data-theme="mercadinho"] dialog::backdrop { background:rgb(16 42 46/.48); }
  [data-theme="mercadinho"] dialog form.panel { padding:22px; }
  [data-theme="mercadinho"] dialog .form-grid { padding:20px; }
  [data-theme="mercadinho"] dialog .actions { gap:8px; padding-top:8px; }
  [data-theme="mercadinho"] dialog form label:has(input[name="active"]) { display:flex; align-items:center; justify-self:start; gap:9px; width:max-content; padding:8px 11px; border:1px solid #dce3e5; border-radius:7px; background:#f5f7f6; color:#263238; }
  [data-theme="mercadinho"] dialog form label:has(input[name="active"]) input[type="checkbox"],
  [data-theme="mercadinho"] .permission-editor input[type="checkbox"] { width:17px; min-width:17px; height:17px; min-height:17px; margin:0; accent-color:#087a5b; }
  [data-theme="mercadinho"] dialog.permission-dialog,
  [data-theme="mercadinho"] dialog:has(.permission-editor) { width:min(860px,calc(100vw - 56px)); }
  [data-theme="mercadinho"] .permission-editor { display:grid; gap:12px; max-height:min(82vh,780px); overflow:auto; padding:22px; }
  [data-theme="mercadinho"] .permission-editor h3 { margin:0; color:#15383d; font-size:1.12rem; }
  [data-theme="mercadinho"] .permission-editor>p { margin:0; color:#607078; font-size:.78rem; line-height:1.5; }
  [data-theme="mercadinho"] .permission-editor fieldset,
  [data-theme="mercadinho"] .reserved-permissions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:0; padding:12px; border:1px solid #dce3e5; border-radius:8px; }
  [data-theme="mercadinho"] .permission-editor legend { padding:0 6px; color:#15383d; font-size:.72rem; font-weight:750; text-transform:uppercase; letter-spacing:.04em; }
  [data-theme="mercadinho"] .permission-editor fieldset label,
  [data-theme="mercadinho"] .reserved-permissions>div { display:flex; align-items:flex-start; gap:9px; min-width:0; padding:9px; border:1px solid #e5ebec; border-radius:7px; background:#fafbfa; }
  [data-theme="mercadinho"] .permission-editor fieldset label span,
  [data-theme="mercadinho"] .reserved-permissions>div { color:#263238; font-size:.75rem; }
  [data-theme="mercadinho"] .permission-editor fieldset label small,
  [data-theme="mercadinho"] .reserved-permissions small { display:block; margin-top:3px; color:#607078; font-size:.67rem; }
  [data-theme="mercadinho"] .permission-editor .actions { position:sticky; bottom:-22px; z-index:2; justify-content:flex-end; margin:0 -22px -22px; padding:12px 22px 18px; border-top:1px solid #dce3e5; background:#fff; }
  [data-theme="mercadinho"] .health-grid { gap:12px; margin-top:12px; }
  [data-theme="mercadinho"] .health-card { padding:14px 16px; }
  [data-theme="mercadinho"] .health-card .badge { width:max-content; }
  [data-theme="mercadinho"] .market-pos-header { background:#15383d; border-color:#1b474d; }
  [data-theme="mercadinho"] .market-pos-header nav { gap:6px; }
  [data-theme="mercadinho"] .market-pos-header nav button { min-height:34px; padding:.4rem .68rem; border:1px solid rgb(255 255 255/.18); border-radius:7px; background:transparent; font-size:.72rem; }
  [data-theme="mercadinho"] .market-pos-header nav button.active { border-color:#10a97b; background:#087a5b; color:#fff; }
  [data-theme="mercadinho"] .market-pos-header nav .consult-button { background:#225a61; }
  [data-theme="mercadinho"] .market-pos-meta>strong { border-radius:7px; background:#ddf5ec; color:#065c45; }
  [data-theme="mercadinho"] .market-checkout { border-color:#dce3e5; background:#fff; box-shadow:0 5px 16px rgb(16 42 46/.07); }
  [data-theme="mercadinho"] .market-values>strong { border:1px solid #dce3e5; border-radius:9px; background:#f5f7f6; color:#15383d; }
  [data-theme="mercadinho"] .market-values>strong b { color:#15383d; }
  [data-theme="mercadinho"] .market-actions-primary .primary { background:#087a5b; }
  [data-theme="mercadinho"] .market-secondary-action { border-color:#dce3e5; color:#42545a; }
}

@media (min-width: 1181px) and (max-width: 1320px) {
  [data-theme="mercadinho"] #user-list .data-row { grid-template-columns:minmax(220px,1fr) auto minmax(290px,1.2fr); }
  [data-theme="mercadinho"] #user-list .data-row .actions button { min-width:56px; padding-inline:.5rem; }
  [data-theme="mercadinho"] .products-page .product-list-head,
  [data-theme="mercadinho"] .products-page .product-row { grid-template-columns:minmax(190px,1.5fr) minmax(110px,1fr) minmax(70px,.6fr) minmax(90px,.7fr) minmax(65px,.55fr) minmax(210px,1.5fr); }
}

/* Compact cashier layout: reserve vertical space for the active sale on the
   short-height Edge/PWA terminal, without changing the shared admin pages. */
@media (min-width: 901px) {
  [data-theme="mercadinho"] .market-pos .market-pos-header {
    box-sizing:border-box;
    height:auto;
    min-height:3rem;
    flex:0 0 auto;
    grid-template-columns:minmax(9rem,auto) auto minmax(0,1fr) auto;
    gap:.45rem;
    padding:.22rem .5rem;
  }
  [data-theme="mercadinho"] .market-pos-brand { min-width:0; gap:.4rem; }
  [data-theme="mercadinho"] .market-logo-crop { width:2.15rem; height:2.35rem; border-radius:4px; }
  [data-theme="mercadinho"] .market-logo-crop img { height:2.55rem; transform:none; }
  [data-theme="mercadinho"] .market-pos-brand b { font-size:.82rem; line-height:1.1; }
  [data-theme="mercadinho"] .market-pos-brand small { margin-top:.08rem; font-size:.64rem; }
  [data-theme="mercadinho"] .market-pos-header>#pos-scale-connect {
    min-width:0;
    min-height:2rem;
    height:2rem;
    padding:0 .48rem;
    border:1px solid rgb(255 255 255/.24);
    border-radius:6px;
    background:#225a61;
    color:#fff;
    font-size:.68rem;
    font-weight:700;
    white-space:nowrap;
  }
  [data-theme="mercadinho"] .market-pos .market-pos-header nav {
    order:0;
    grid-column:auto;
    min-width:0;
    justify-content:stretch;
    flex-wrap:nowrap;
    gap:.18rem;
  }
  [data-theme="mercadinho"] .market-pos-header nav button {
    flex:1 1 auto;
    min-width:0;
    min-height:2rem;
    height:2rem;
    padding:.25rem .38rem;
    border-radius:6px;
    font-size:.67rem;
    line-height:1.1;
    white-space:nowrap;
  }
  [data-theme="mercadinho"] .market-pos-header nav kbd { font-size:.58rem; }
  [data-theme="mercadinho"] .market-pos .market-pos-meta { order:0; grid-column:auto; min-width:max-content; gap:.35rem; }
  [data-theme="mercadinho"] .market-pos-meta>span b { font-size:.72rem; }
  [data-theme="mercadinho"] .market-pos-meta small { margin-top:0; font-size:.6rem; }
  [data-theme="mercadinho"] .market-pos-meta>strong { padding:.28rem .42rem; border-radius:6px; font-size:.62rem; }
}

/* One native command bar and one financial total, at every POS viewport. */
[data-theme="mercadinho"] .market-pos-header nav button,
[data-theme="mercadinho"] .market-pos-header nav .consult-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.3rem;
  border:1px solid rgb(255 255 255/.24);
  background:rgb(255 255 255/.07);
  color:#f4faf8;
  font-weight:700;
  line-height:1.1;
  text-align:center;
}
[data-theme="mercadinho"] .market-pos-header nav button:hover,
[data-theme="mercadinho"] .market-pos-header nav button:focus-visible { background:#225a61; color:#fff; }
[data-theme="mercadinho"] .market-pos-header nav button:focus-visible { outline:2px solid #7ce4bd; outline-offset:2px; }
[data-theme="mercadinho"] .market-pos-header nav button.active { border-color:#10a97b; background:#087a5b; color:#fff; }
[data-theme="mercadinho"] .market-nav-icon { flex:none; width:.9rem; height:.9rem; }
[data-theme="mercadinho"] .market-pos-header nav button>span { white-space:nowrap; }
[data-theme="mercadinho"] .market-values .market-total {
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.6rem;
  width:100%;
  min-width:0;
  min-height:2.75rem;
  padding:.35rem .65rem;
  border:1px solid #b6d4ca;
  border-radius:7px;
  background:#eaf5f0;
  color:#15383d;
  line-height:1.1;
}
[data-theme="mercadinho"] .market-values .market-total strong { flex:none; font-size:.8rem; font-weight:800; letter-spacing:.04em; }
[data-theme="mercadinho"] .market-values .market-total b {
  min-width:0;
  color:#0c5746;
  font-size:clamp(1.45rem,2.1vw,1.8rem);
  font-weight:800;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}
@media (min-width:901px) {
  [data-theme="mercadinho"] .market-pos-header nav { gap:.2rem; }
  [data-theme="mercadinho"] .market-pos-header nav button { flex:1 1 auto; min-width:0; padding-inline:.28rem; font-size:.67rem; }
  [data-theme="mercadinho"] .market-nav-icon { width:.82rem; height:.82rem; }
}
@media (min-width:901px) and (max-width:1100px) {
  [data-theme="mercadinho"] .market-pos .market-pos-header { gap:.25rem; }
  [data-theme="mercadinho"] .market-pos-header nav { gap:.12rem; }
  [data-theme="mercadinho"] .market-pos-header nav button { gap:.12rem; }
  [data-theme="mercadinho"] .market-pos-header nav button>span { letter-spacing:-.03em; }
}
@media (max-width:900px) {
  [data-theme="mercadinho"] .market-pos-header nav button { flex:none; min-width:max-content; }
}

/* Keep the cashier's command bar inside the available tablet column. */
@media (min-width:761px) and (max-width:900px) {
  [data-theme="mercadinho"] .market-pos .market-pos-header {
    box-sizing:border-box;
    height:auto;
    min-height:0;
    grid-template-columns:minmax(0,1fr) auto auto;
    grid-template-rows:auto auto;
    align-items:center;
    gap:.35rem;
    padding:.4rem .5rem;
  }
  [data-theme="mercadinho"] .market-pos .market-pos-brand { grid-column:1; grid-row:1; min-width:0; gap:.35rem; }
  [data-theme="mercadinho"] .market-pos .market-logo-crop { flex:0 0 2.4rem; width:2.4rem; height:2.4rem; }
  [data-theme="mercadinho"] .market-pos .market-logo-crop img { height:2.5rem; transform:none; }
  [data-theme="mercadinho"] .market-pos .market-pos-brand b { font-size:.76rem; line-height:1.1; }
  [data-theme="mercadinho"] .market-pos .market-pos-brand small { margin-top:.05rem; font-size:.62rem; }
  [data-theme="mercadinho"] .market-pos .market-pos-header>#pos-scale-connect {
    grid-column:2;
    grid-row:1;
    min-width:0;
    min-height:2.35rem;
    height:auto;
    padding:.25rem .35rem;
    font-size:.64rem;
    white-space:normal;
  }
  [data-theme="mercadinho"] .market-pos .market-pos-meta {
    display:flex;
    grid-column:3;
    grid-row:1;
    min-width:0;
    max-width:100%;
    gap:.25rem;
    font-size:.62rem;
  }
  [data-theme="mercadinho"] .market-pos .market-pos-meta>span { min-width:0; }
  [data-theme="mercadinho"] .market-pos .market-pos-meta small { margin-top:0; white-space:normal; }
  [data-theme="mercadinho"] .market-pos .market-pos-meta>strong { min-width:0; padding:.25rem .35rem; white-space:normal; font-size:.6rem; }
  [data-theme="mercadinho"] .market-pos .market-pos-header nav {
    grid-column:1/-1;
    grid-row:2;
    order:0;
    width:100%;
    min-width:0;
    max-width:100%;
    flex-wrap:wrap;
    overflow:visible;
    justify-content:stretch;
    gap:.25rem;
  }
  [data-theme="mercadinho"] .market-pos .market-pos-header nav button {
    flex:1 1 calc(25% - .25rem);
    min-width:0;
    min-height:2.65rem;
    height:auto;
    padding:.25rem .2rem;
    font-size:.64rem;
    line-height:1.1;
    white-space:normal;
  }
  [data-theme="mercadinho"] .market-pos .market-pos-header nav button>span { white-space:normal; overflow-wrap:anywhere; }
  [data-theme="mercadinho"] .market-pos-header nav kbd { font-size:.54rem; }
}

@media (min-width: 901px) and (max-height: 820px) {
  [data-theme="mercadinho"] .market-pos-body {
    grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
    gap:.35rem;
    padding:.3rem;
  }
  [data-theme="mercadinho"] .market-sale,
  [data-theme="mercadinho"] .market-shortcuts {
    min-height:0;
    padding:.42rem;
    border-radius:8px;
  }
  [data-theme="mercadinho"] .market-sale { gap:.22rem; }
  [data-theme="mercadinho"] .market-sale>.market-section-title h2 { font-size:.95rem; }
  [data-theme="mercadinho"] .pos-scale-status { min-height:1.9rem; padding:.2rem .45rem; }
  [data-theme="mercadinho"] .pos-scale-status [data-scale-live-weight] { font-size:1rem; }
  [data-theme="mercadinho"] .market-cart-head { height:1.8rem; padding:.22rem .4rem; font-size:.63rem; }
  [data-theme="mercadinho"] .market-cart-head,
  [data-theme="mercadinho"] .market-cart article {
    grid-template-columns:minmax(0,1.9fr) 6.4rem 4.8rem 5.3rem 1.8rem;
    gap:.3rem;
  }
  [data-theme="mercadinho"] .market-cart article { padding:.38rem .4rem; }
  [data-theme="mercadinho"] .market-cart article>span,
  [data-theme="mercadinho"] .market-cart article>strong { font-size:.76rem; }
  [data-theme="mercadinho"] .market-qty { grid-template-columns:1.7rem minmax(2.4rem,1fr) 1.7rem; }
  [data-theme="mercadinho"] .market-qty button,
  [data-theme="mercadinho"] .market-qty input { height:1.9rem; }
  [data-theme="mercadinho"] .market-checkout { gap:.25rem; padding:.35rem; border-radius:8px; }
  [data-theme="mercadinho"] .market-values { gap:.08rem; }
  [data-theme="mercadinho"] .market-values>span { font-size:.7rem; line-height:1.15; }
  [data-theme="mercadinho"] .market-values>strong {
    box-sizing:border-box;
    display:flex;
    width:100%;
    height:2.75rem;
    min-height:2.75rem;
    align-items:center;
    justify-content:space-between;
    gap:.5rem;
    padding:.3rem .55rem;
    border:1px solid #dce3e5;
    border-radius:7px;
    background:#f5f7f6;
    color:#15383d;
    font-size:.88rem;
    line-height:1;
  }
  [data-theme="mercadinho"] .market-values>strong b {
    flex:0 0 auto;
    color:#15383d;
    font-size:clamp(1.45rem,2.1vw,1.8rem);
    font-variant-numeric:tabular-nums;
    line-height:1;
  }
  [data-theme="mercadinho"] .market-payment { grid-template-columns:minmax(0,1.1fr) minmax(0,.85fr) minmax(6rem,.75fr); gap:.35rem; }
  [data-theme="mercadinho"] .market-payment label { min-width:0; gap:.12rem; font-size:.66rem; line-height:1.1; }
  [data-theme="mercadinho"] .market-payment select,
  [data-theme="mercadinho"] .market-payment input,
  [data-theme="mercadinho"] .market-payment output {
    box-sizing:border-box;
    width:100%;
    min-width:0;
    height:2.1rem;
    min-height:2.1rem;
    padding:.25rem .45rem;
    border-radius:5px;
    font-size:.76rem;
  }
  [data-theme="mercadinho"] .market-payment output { display:grid; place-items:center; line-height:1.1; }
  [data-theme="mercadinho"] .market-actions-primary { grid-template-columns:minmax(8.5rem,.72fr) minmax(0,1.55fr); gap:.35rem; }
  [data-theme="mercadinho"] .market-actions-primary button { box-sizing:border-box; min-width:0; height:2.5rem; padding:0 .45rem; border-radius:6px; font-size:.77rem; line-height:1.1; }
  [data-theme="mercadinho"] .market-actions-primary button>span { margin-right:.2rem; font-size:.95rem; }
  [data-theme="mercadinho"] .market-finalize { border:0; background:#087a5b; color:#fff; box-shadow:none; }
  [data-theme="mercadinho"] .market-finalize:hover { background:#065c45; }
  [data-theme="mercadinho"] .market-finalize kbd { margin-left:.25rem; }
  [data-theme="mercadinho"] .market-actions-secondary { grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,.85fr); gap:.3rem; }
  [data-theme="mercadinho"] .market-print-option,
  [data-theme="mercadinho"] .market-secondary-action { box-sizing:border-box; min-width:0; height:2rem; min-height:2rem; padding:.2rem .3rem; border-radius:5px; font-size:.64rem; line-height:1.1; }
  [data-theme="mercadinho"] .market-print-option { gap:.28rem; white-space:nowrap; }
  [data-theme="mercadinho"] .market-print-option input { flex:0 0 auto; width:1rem; height:1rem; min-height:0; }
  [data-theme="mercadinho"] .market-secondary-action { white-space:normal; }
  [data-theme="mercadinho"] .market-close { font-size:.67rem; }
  [data-theme="mercadinho"] .market-close form { gap:.3rem; }
  [data-theme="mercadinho"] .market-close input,
  [data-theme="mercadinho"] .market-close button { box-sizing:border-box; height:1.9rem; }
  [data-theme="mercadinho"] .market-search>.market-scan-row {
    box-sizing:border-box;
    width:100%;
    min-width:0;
    grid-template-columns:4.4rem minmax(0,1fr) 7.6rem;
    gap:.35rem;
  }
  [data-theme="mercadinho"] .market-search>.market-scan-row>#pos-quantity,
  [data-theme="mercadinho"] .market-search>.market-scan-row>#pos-code,
  [data-theme="mercadinho"] .market-search>.market-scan-row>button {
    box-sizing:border-box;
    width:100%;
    min-width:0;
    max-width:100%;
    height:2.55rem!important;
    min-height:2.55rem!important;
    margin:0;
    align-self:stretch;
  }
  [data-theme="mercadinho"] .market-categories { padding:.1rem 0 .25rem; }
  [data-theme="mercadinho"] .market-categories button { min-height:2rem; padding:.34rem .55rem; font-size:.7rem; }
  [data-theme="mercadinho"] .market-product-grid { gap:.3rem; }
  [data-theme="mercadinho"] .market-product-grid>button { min-height:4.3rem; padding:.35rem; }
  [data-theme="mercadinho"] .market-product-grid>button b { font-size:.74rem; }
}
