/* =============================================================
   POSWEB RESTAURANTE v0.18.4 - PRODUCTION POLISH
   Una sola capa visual final para PC / Tablet / Celular.
   ============================================================= */

:root {
  --pwr-navy:#0b1633;
  --pwr-navy-2:#111f45;
  --pwr-blue:#2f63ea;
  --pwr-blue-2:#2454dc;
  --pwr-purple:#843cf1;
  --pwr-purple-2:#6830df;
  --pwr-green:#16a34a;
  --pwr-green-bg:#eefaf1;
  --pwr-green-border:#bcefc9;
  --pwr-green-badge:#a6ecc0;
  --pwr-red:#c6283f;
  --pwr-red-bg:#fff1f3;
  --pwr-red-border:#f4c4cd;
  --pwr-red-badge:#f6c7d0;
  --pwr-amber:#f59e0b;
  --pwr-bg:#f4f6fb;
  --pwr-panel:#f8fafc;
  --pwr-white:#fff;
  --pwr-text:#0d1631;
  --pwr-text-2:#344054;
  --pwr-muted:#667085;
  --pwr-faint:#98a2b3;
  --pwr-line:#e1e6ef;
  --pwr-line-2:#cfd7e5;
  --pwr-shadow:0 6px 20px rgba(15,23,42,.055);
  --pwr-shadow-hover:0 13px 30px rgba(15,23,42,.09);
  --pwr-radius:16px;
  --pwr-radius-sm:11px;
}

.pwr-dashboard-v17,
.pwr-commercial-app,
#pwr-app,
#pwr-kds-app,
.pwr-reports-shell,
.pwr-login-shell {
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  color:var(--pwr-text)!important;
}

.pwr-dashboard-v17 *,
.pwr-commercial-app *,
#pwr-app *,
#pwr-kds-app *,
.pwr-reports-shell *,
.pwr-login-shell * { box-sizing:border-box; }

/* ---------- Shared controls ---------- */
#pwr-app button,
#pwr-kds-app button,
.pwr-commercial-app button,
.pwr-dashboard-v17 button,
.pwr-reports-shell button,
.pwr-login-shell button { -webkit-tap-highlight-color:transparent; }

#pwr-app button:focus-visible,
#pwr-kds-app button:focus-visible,
.pwr-commercial-app button:focus-visible,
.pwr-dashboard-v17 a:focus-visible,
.pwr-reports-shell button:focus-visible,
.pwr-login-shell button:focus-visible {
  outline:3px solid rgba(47,99,234,.18)!important;
  outline-offset:2px!important;
}

/* =============================================================
   APP SHELL / DASHBOARD
   ============================================================= */
.pwr-app-sidebar {
  width:238px!important;
  flex-basis:238px!important;
  background:linear-gradient(180deg,var(--pwr-navy) 0%,#101d3e 100%)!important;
  border-right:0!important;
  box-shadow:12px 0 32px rgba(11,22,51,.08)!important;
}
.pwr-app-brand { min-height:80px!important; padding:16px 14px!important; border-bottom:1px solid rgba(255,255,255,.07)!important; }
.pwr-app-brand-logo { width:46px!important; height:46px!important; flex:0 0 46px!important; border-radius:13px!important; background:#fff!important; box-shadow:0 6px 18px rgba(0,0,0,.18)!important; }
.pwr-app-brand-copy strong { color:#fff!important; font-size:12px!important; font-weight:900!important; }
.pwr-app-brand-copy span { color:rgba(255,255,255,.47)!important; font-size:8px!important; }
.pwr-app-nav { padding:14px 9px!important; }
.pwr-app-nav-title { padding:0 10px 6px!important; color:rgba(255,255,255,.34)!important; font-size:7px!important; font-weight:900!important; letter-spacing:.13em!important; }
.pwr-app-nav-group { margin-bottom:15px!important; }
.pwr-app-nav-item { min-height:44px!important; margin:2px 0!important; padding:9px 10px!important; border-radius:11px!important; color:rgba(255,255,255,.72)!important; font-size:9px!important; font-weight:750!important; transition:.15s ease!important; }
.pwr-app-nav-item:hover { background:rgba(255,255,255,.07)!important; color:#fff!important; transform:translateX(2px)!important; }
.pwr-app-nav-item.active { background:#fff!important; color:var(--pwr-navy)!important; box-shadow:0 8px 22px rgba(0,0,0,.15)!important; }
.pwr-app-nav-icon svg { width:18px!important; height:18px!important; }
.pwr-app-sidebar-footer { border-top:1px solid rgba(255,255,255,.07)!important; background:rgba(0,0,0,.08)!important; }
.pwr-app-user-mini strong { color:#fff!important; }
.pwr-app-user-mini span,.pwr-app-sidebar-footer small { color:rgba(255,255,255,.42)!important; }
.pwr-app-signout { border-color:rgba(255,255,255,.11)!important; background:rgba(255,255,255,.05)!important; color:#fff!important; }

.pwr-app-mobilebar { min-height:60px!important; padding:0 12px!important; background:#fff!important; border-bottom:1px solid var(--pwr-line)!important; box-shadow:0 3px 12px rgba(15,23,42,.04)!important; }
.pwr-app-menu-toggle,.pwr-mobile-home { min-height:42px!important; border-radius:10px!important; }
.pwr-app-menu-toggle { width:42px!important; border:1px solid var(--pwr-line)!important; background:#fff!important; color:var(--pwr-text)!important; }
.pwr-mobile-home { display:inline-flex!important; align-items:center!important; gap:5px!important; color:var(--pwr-text-2)!important; font-size:9px!important; font-weight:850!important; text-decoration:none!important; }

.pwr-dashboard-v17,.pwr-dashboard-main-v17 { background:var(--pwr-bg)!important; }
.pwr-dashboard-top-v17 { min-height:116px!important; padding:26px 32px 21px!important; background:linear-gradient(180deg,var(--pwr-navy) 0%,var(--pwr-navy-2) 100%)!important; border-bottom:0!important; box-shadow:0 10px 28px rgba(11,22,51,.11)!important; }
.pwr-dashboard-top-v17 small { color:#cdd9ff!important; font-size:8px!important; font-weight:900!important; letter-spacing:.12em!important; }
.pwr-dashboard-top-v17 h1 { margin:4px 0 3px!important; color:#fff!important; font-size:29px!important; font-weight:950!important; letter-spacing:-.035em!important; }
.pwr-dashboard-top-v17 p { color:rgba(255,255,255,.68)!important; font-size:10px!important; }
.pwr-dashboard-status-v17 { min-height:50px!important; padding:9px 12px!important; border:1px solid rgba(255,255,255,.12)!important; border-radius:13px!important; background:#fff!important; box-shadow:0 8px 20px rgba(0,0,0,.10)!important; }
.pwr-dashboard-content-v17 { width:min(1380px,calc(100% - 52px))!important; padding:24px 0 40px!important; }
.pwr-dashboard-kpis-v17 { gap:11px!important; margin-bottom:24px!important; }
.pwr-dashboard-kpis-v17 article { min-height:112px!important; padding:17px!important; border:1px solid var(--pwr-line)!important; border-radius:16px!important; background:#fff!important; box-shadow:var(--pwr-shadow)!important; }
.pwr-dashboard-kpis-v17 article:nth-child(1){background:linear-gradient(180deg,#fff,#f4f7ff)!important}.pwr-dashboard-kpis-v17 article:nth-child(2){background:linear-gradient(180deg,#fff,#faf6ff)!important}.pwr-dashboard-kpis-v17 article:nth-child(3){background:linear-gradient(180deg,#fff,#f3fff7)!important}.pwr-dashboard-kpis-v17 article:nth-child(4){background:linear-gradient(180deg,#fff,#fff9f1)!important}
.pwr-dashboard-kpis-v17 span { color:var(--pwr-muted)!important; font-size:8px!important; font-weight:900!important; text-transform:uppercase!important; letter-spacing:.06em!important; }
.pwr-dashboard-kpis-v17 strong { margin:7px 0 3px!important; color:var(--pwr-text)!important; font-size:29px!important; font-weight:950!important; letter-spacing:-.04em!important; }
.pwr-dashboard-module-grid { grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:11px!important; }
.pwr-dashboard-module-card { min-height:120px!important; padding:16px!important; border:1px solid var(--pwr-line)!important; border-radius:16px!important; background:#fff!important; box-shadow:var(--pwr-shadow)!important; transition:.16s ease!important; }
.pwr-dashboard-module-card:hover { transform:translateY(-2px)!important; box-shadow:var(--pwr-shadow-hover)!important; }
.pwr-dashboard-module-icon { width:48px!important; height:48px!important; border-radius:13px!important; background:linear-gradient(135deg,rgba(47,99,234,.12),rgba(132,60,241,.10))!important; color:var(--pwr-blue)!important; }
.pwr-dashboard-module-copy h3,.pwr-dashboard-module-card h3 { color:var(--pwr-text)!important; font-size:13px!important; font-weight:900!important; }
.pwr-dashboard-module-copy p,.pwr-dashboard-module-card p { color:var(--pwr-muted)!important; font-size:8.5px!important; line-height:1.45!important; }
.pwr-dashboard-module-action { color:var(--pwr-blue)!important; font-size:8px!important; font-weight:900!important; }

/* =============================================================
   POS HEADER / MAIN LAYOUT
   ============================================================= */
#pwr-app { background:var(--pwr-bg)!important; color:var(--pwr-text)!important; }
#pwr-app .pwr-topbar { min-height:74px!important; flex:0 0 74px!important; padding:10px 14px 10px 16px!important; background:linear-gradient(180deg,var(--pwr-navy) 0%,var(--pwr-navy-2) 100%)!important; border-bottom:0!important; box-shadow:0 8px 24px rgba(11,22,51,.12)!important; }
#pwr-app .pwr-pos-brand { display:flex!important; align-items:center!important; gap:10px!important; min-width:0!important; }
#pwr-app .pwr-pos-brand-logo { width:48px!important; height:48px!important; flex:0 0 48px!important; display:grid!important; place-items:center!important; overflow:hidden!important; border-radius:13px!important; background:#fff!important; border:1px solid rgba(255,255,255,.12)!important; box-shadow:0 6px 18px rgba(0,0,0,.15)!important; }
#pwr-app .pwr-pos-brand-logo img { width:100%!important; height:100%!important; object-fit:cover!important; }
#pwr-app .pwr-pos-brand-copy small { display:block!important; color:#cbd8ff!important; font-size:7px!important; font-weight:900!important; letter-spacing:.1em!important; }
#pwr-app .pwr-pos-brand-copy h2 { margin:1px 0!important; max-width:420px!important; color:#fff!important; font-size:17px!important; font-weight:950!important; white-space:nowrap!important; overflow:hidden!important; text-overflow:ellipsis!important; }
#pwr-app .pwr-pos-brand-copy>span { display:flex!important; align-items:center!important; gap:6px!important; color:rgba(255,255,255,.68)!important; font-size:8px!important; }
#pwr-app .pwr-pos-brand-copy>span i { width:4px!important; height:4px!important; border-radius:999px!important; background:rgba(255,255,255,.34)!important; }
#pwr-app .pwr-top-actions { gap:6px!important; }
#pwr-app .pwr-top-action-icon,#pwr-app .pwr-top-action-text { min-height:44px!important; border:0!important; border-radius:11px!important; background:#fff!important; color:var(--pwr-text)!important; box-shadow:0 4px 12px rgba(0,0,0,.10)!important; }
#pwr-app .pwr-top-action-icon { width:44px!important; min-width:44px!important; padding:0!important; }
#pwr-app .pwr-top-action-text { display:inline-flex!important; align-items:center!important; justify-content:center!important; gap:5px!important; padding:8px 10px!important; font-size:9px!important; font-weight:900!important; text-decoration:none!important; }
#pwr-app .pwr-top-action-icon svg,#pwr-app .pwr-top-action-text svg { width:17px!important; height:17px!important; }
#pwr-app .pwr-logout-btn { color:#b42318!important; }

#pwr-app .pwr-layout { display:grid!important; grid-template-columns:minmax(350px,30%) minmax(0,70%)!important; min-height:0!important; overflow:hidden!important; background:var(--pwr-bg)!important; }
#pwr-app .pwr-tables-panel { padding:17px!important; overflow:auto!important; border-right:1px solid var(--pwr-line)!important; background:#f8fafc!important; }
#pwr-app .pwr-order-panel { padding:17px 19px!important; overflow:auto!important; border:0!important; background:var(--pwr-bg)!important; }
#pwr-app .pwr-section-title { position:sticky!important; top:-17px!important; z-index:5!important; margin-bottom:10px!important; padding:16px 0 9px!important; background:rgba(248,250,252,.96)!important; backdrop-filter:blur(10px)!important; }
#pwr-app .pwr-section-title h3 { color:var(--pwr-text)!important; font-size:21px!important; font-weight:950!important; }
#pwr-app .pwr-legend { color:var(--pwr-muted)!important; font-size:9px!important; }

/* ---------- Service actions ---------- */
#pwr-app .pwr-service-actions { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:8px!important; margin-bottom:14px!important; }
#pwr-app .pwr-service-new { min-width:0!important; min-height:62px!important; display:flex!important; align-items:center!important; justify-content:center!important; gap:6px!important; padding:9px 7px!important; border:0!important; border-radius:14px!important; color:#fff!important; font-size:10px!important; font-weight:900!important; line-height:1.1!important; box-shadow:0 8px 18px rgba(47,99,234,.14)!important; }
#pwr-app .pwr-service-takeaway { background:linear-gradient(135deg,var(--pwr-blue),var(--pwr-blue-2))!important; }
#pwr-app .pwr-service-delivery { background:linear-gradient(135deg,var(--pwr-purple),var(--pwr-purple-2))!important; box-shadow:0 10px 22px rgba(132,60,241,.18)!important; }
#pwr-app .pwr-service-icon { width:30px!important; height:30px!important; display:grid!important; place-items:center!important; border-radius:9px!important; background:rgba(255,255,255,.15)!important; color:#fff!important; }
#pwr-app .pwr-service-icon svg { width:18px!important; height:18px!important; }
#pwr-app .pwr-salon-title { margin:2px 0 9px!important; color:var(--pwr-muted)!important; font-size:8px!important; font-weight:900!important; letter-spacing:.09em!important; text-transform:uppercase!important; }

/* ---------- Tables ---------- */
#pwr-app .pwr-tables-grid { display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:11px!important; }
#pwr-app .pwr-table-card { min-height:122px!important; padding:13px 13px 12px!important; border:2px solid var(--pwr-line)!important; border-radius:17px!important; box-shadow:0 5px 16px rgba(15,23,42,.045)!important; transition:.15s ease!important; text-align:left!important; }
#pwr-app .pwr-table-card::before { display:none!important; }
#pwr-app .pwr-table-card:hover { transform:translateY(-1px)!important; box-shadow:var(--pwr-shadow-hover)!important; }
#pwr-app .pwr-table-card.free { background:var(--pwr-green-bg)!important; border-color:var(--pwr-green-border)!important; }
#pwr-app .pwr-table-card.busy { background:var(--pwr-red-bg)!important; border-color:var(--pwr-red-border)!important; }
#pwr-app .pwr-table-card.selected { border-color:var(--pwr-blue)!important; box-shadow:0 0 0 3px rgba(47,99,234,.10),var(--pwr-shadow-hover)!important; }
#pwr-app .pwr-table-state { width:max-content!important; padding:5px 9px!important; border-radius:999px!important; font-size:8px!important; font-weight:950!important; text-transform:uppercase!important; }
#pwr-app .pwr-table-card.free .pwr-table-state { background:var(--pwr-green-badge)!important; color:#087438!important; }
#pwr-app .pwr-table-card.busy .pwr-table-state { background:var(--pwr-red-badge)!important; color:#9f1239!important; }
#pwr-app .pwr-table-card strong { display:block!important; margin-top:7px!important; color:var(--pwr-text)!important; font-size:16px!important; font-weight:950!important; }
#pwr-app .pwr-table-card small { display:block!important; margin-top:4px!important; color:var(--pwr-muted)!important; font-size:9px!important; }
#pwr-app .pwr-table-card div { margin-top:8px!important; color:var(--pwr-text)!important; font-size:15px!important; font-weight:950!important; }

/* ---------- Order header & flow ---------- */
#pwr-app .pwr-order-head { min-height:58px!important; margin-bottom:10px!important; padding:0 0 10px!important; border-bottom:1px solid var(--pwr-line)!important; }
#pwr-app .pwr-order-head small { color:var(--pwr-blue)!important; font-size:7px!important; font-weight:950!important; letter-spacing:.09em!important; text-transform:uppercase!important; }
#pwr-app .pwr-order-head h3 { margin:2px 0 0!important; color:var(--pwr-text)!important; font-size:22px!important; font-weight:950!important; letter-spacing:-.025em!important; }
#pwr-app .pwr-status,#pwr-app .pwr-fulfillment-status { min-height:28px!important; padding:5px 9px!important; border-radius:999px!important; font-size:8px!important; font-weight:950!important; }
#pwr-app .pwr-back-tables { min-height:40px!important; display:none!important; align-items:center!important; gap:5px!important; padding:7px 9px!important; border:1px solid var(--pwr-line)!important; border-radius:10px!important; background:#fff!important; color:var(--pwr-text-2)!important; font-size:8px!important; font-weight:900!important; }
#pwr-app .pwr-back-tables svg { width:15px!important; height:15px!important; }
#pwr-app .pwr-order-flow-nav { display:none; }

/* ---------- Catalog ---------- */
#pwr-app .pwr-product-search { padding:11px!important; border:1px solid var(--pwr-line)!important; border-radius:15px!important; background:#fff!important; box-shadow:var(--pwr-shadow)!important; }
#pwr-app .pwr-product-search input[type=search] { width:100%!important; min-height:46px!important; padding:10px 13px!important; border:1px solid #d7deeb!important; border-radius:11px!important; background:#f9fafb!important; color:var(--pwr-text)!important; font-size:12px!important; box-shadow:none!important; }
#pwr-app .pwr-product-search input[type=search]:focus { outline:none!important; border-color:var(--pwr-blue)!important; background:#fff!important; box-shadow:0 0 0 3px rgba(47,99,234,.10)!important; }
#pwr-app .pwr-products { margin-top:9px!important; max-height:31dvh!important; overflow:auto!important; display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:8px!important; }
#pwr-app .pwr-product { position:relative!important; min-height:76px!important; display:grid!important; grid-template-columns:50px minmax(0,1fr) 32px!important; gap:9px!important; align-items:center!important; padding:9px!important; overflow:hidden!important; border:1px solid #dfe5ef!important; border-radius:14px!important; background:#fff!important; box-shadow:0 3px 12px rgba(15,23,42,.035)!important; transition:.14s ease!important; }
#pwr-app .pwr-product::before { content:""!important; position:absolute!important; inset:0 auto 0 0!important; width:3px!important; background:var(--pwr-amber)!important; }
#pwr-app .pwr-product.station-bar::before,
#pwr-app .pwr-product.station-type-bar::before { background:var(--pwr-purple)!important; }
#pwr-app .pwr-product.station-none::before,
#pwr-app .pwr-product.station-type-none::before { background:#98a2b3!important; }
#pwr-app .pwr-product:hover { transform:translateY(-1px)!important; border-color:#cbd5e1!important; box-shadow:var(--pwr-shadow-hover)!important; }
#pwr-app .pwr-product-visual { width:50px!important; height:50px!important; display:grid!important; place-items:center!important; overflow:hidden!important; border:1px solid var(--pwr-line)!important; border-radius:11px!important; background:#f8fafc!important; color:var(--pwr-muted)!important; }
#pwr-app .pwr-product-visual img { width:100%!important; height:100%!important; object-fit:cover!important; }
#pwr-app .pwr-product-visual svg { width:22px!important; height:22px!important; fill:none!important; stroke:currentColor!important; }
#pwr-app .pwr-product-copy { min-width:0!important; }
#pwr-app .pwr-product-copy strong { display:block!important; color:var(--pwr-text)!important; font-size:12px!important; font-weight:950!important; white-space:nowrap!important; overflow:hidden!important; text-overflow:ellipsis!important; }
#pwr-app .pwr-product-meta { display:block!important; margin-top:2px!important; color:var(--pwr-muted)!important; font-size:8px!important; }
#pwr-app .pwr-product-price { display:block!important; margin-top:3px!important; color:var(--pwr-text)!important; font-size:10px!important; font-weight:950!important; }
#pwr-app .pwr-product-add { width:31px!important; height:31px!important; display:grid!important; place-items:center!important; border-radius:9px!important; background:linear-gradient(135deg,var(--pwr-blue),var(--pwr-blue-2))!important; color:#fff!important; font-size:18px!important; box-shadow:0 5px 12px rgba(47,99,234,.18)!important; }

/* ---------- Ticket / command ---------- */
#pwr-app .pwr-ticket { margin-top:10px!important; padding:12px!important; border:1px solid var(--pwr-line)!important; border-radius:15px!important; background:#fff!important; box-shadow:var(--pwr-shadow)!important; }
#pwr-app .pwr-ticket-title { margin:0 0 8px!important; color:var(--pwr-text)!important; font-size:15px!important; font-weight:950!important; }
#pwr-app .pwr-item { margin-bottom:7px!important; padding:10px!important; border:1px solid #edf0f4!important; border-radius:11px!important; background:#fbfcfe!important; box-shadow:none!important; }
#pwr-app .pwr-item-main { display:grid!important; grid-template-columns:minmax(0,1fr) auto!important; gap:8px!important; }
#pwr-app .pwr-item-main strong { color:var(--pwr-text)!important; font-size:12px!important; font-weight:950!important; }
#pwr-app .pwr-item-main small { color:var(--pwr-muted)!important; font-size:8px!important; }
#pwr-app .pwr-item-modifiers { display:flex!important; flex-wrap:wrap!important; gap:5px!important; margin:7px 0!important; }
#pwr-app .pwr-item-modifiers span { padding:5px 7px!important; border:1px solid #fedf89!important; border-radius:7px!important; background:#fffaeb!important; color:#93370d!important; font-size:8px!important; font-weight:800!important; }
#pwr-app .pwr-item-controls { width:100%!important; margin-top:8px!important; display:grid!important; grid-template-columns:44px 50px 44px minmax(160px,1fr) 44px!important; grid-template-areas:"minus qty plus note delete"!important; gap:6px!important; align-items:center!important; }
#pwr-app .pwr-item-controls [data-action=minus]{grid-area:minus!important}#pwr-app .pwr-item-controls>span{grid-area:qty!important}#pwr-app .pwr-item-controls [data-action=plus]{grid-area:plus!important}#pwr-app .pwr-item-controls [data-action=notes]{grid-area:note!important}#pwr-app .pwr-item-controls [data-action=delete]{grid-area:delete!important}
#pwr-app .pwr-item-controls button,#pwr-app .pwr-item-controls>span,#pwr-app .pwr-item-controls input { min-height:40px!important; border:1px solid #d7deeb!important; border-radius:9px!important; background:#fff!important; color:var(--pwr-text)!important; }
#pwr-app .pwr-item-controls>span { display:flex!important; align-items:center!important; justify-content:center!important; font-weight:950!important; }
#pwr-app .pwr-item-controls input { width:100%!important; min-width:0!important; padding:0 11px!important; font-size:11px!important; }
#pwr-app .pwr-item-controls .danger { border-color:var(--pwr-red-border)!important; color:#b42318!important; }
#pwr-app .pwr-total-row { margin-top:8px!important; padding:12px 2px 3px!important; border-top:1px solid var(--pwr-line)!important; }
#pwr-app .pwr-total-row span { color:var(--pwr-muted)!important; font-size:11px!important; }
#pwr-app .pwr-total-row strong { color:var(--pwr-text)!important; font-size:27px!important; font-weight:950!important; letter-spacing:-.04em!important; }

/* ---------- Main actions ---------- */
#pwr-app .pwr-order-actions { position:sticky!important; bottom:-17px!important; z-index:9!important; padding:11px 0 17px!important; display:grid!important; grid-template-columns:.9fr 1.05fr 1.1fr 1.2fr!important; gap:7px!important; background:linear-gradient(180deg,rgba(244,246,251,0),#f4f6fb 24%,#f4f6fb)!important; box-shadow:none!important; }
#pwr-app .pwr-order-actions .pwr-btn { width:100%!important; min-height:50px!important; padding:8px 10px!important; border-radius:11px!important; font-size:10px!important; font-weight:950!important; }
#pwr-app .pwr-btn-danger { border:1px solid var(--pwr-red-border)!important; background:#fff!important; color:#b42318!important; }
#pwr-app .pwr-btn-secondary { border:1px solid var(--pwr-line)!important; background:#e9edf4!important; color:var(--pwr-text)!important; }
#pwr-app .pwr-btn-split { border:0!important; background:linear-gradient(135deg,var(--pwr-purple),var(--pwr-purple-2))!important; color:#fff!important; }
#pwr-app .pwr-btn-pay { border:0!important; background:linear-gradient(135deg,var(--pwr-blue),var(--pwr-blue-2))!important; color:#fff!important; box-shadow:0 8px 18px rgba(47,99,234,.20)!important; }
#pwr-app #pwr-open-checkout { font-size:12px!important; }

/* Mobile order flow UI hidden on desktop */
#pwr-app .pwr-mobile-cart-bar { display:none; }

/* ---------- Modals ---------- */
#pwr-app .pwr-modal-backdrop { background:rgba(11,22,51,.58)!important; backdrop-filter:blur(4px)!important; }
#pwr-app .pwr-modal-card { border:1px solid rgba(255,255,255,.65)!important; border-radius:20px!important; background:#fff!important; box-shadow:0 30px 90px rgba(11,22,51,.25)!important; }
#pwr-app .pwr-modal-close { width:42px!important; height:42px!important; border:1px solid var(--pwr-line)!important; border-radius:10px!important; background:#fff!important; }
#pwr-app .pwr-modifier-price-row,#pwr-app .pwr-checkout-total { border:1px solid var(--pwr-line)!important; border-radius:13px!important; background:#f8fafc!important; }
#pwr-app .pwr-modifier-group-ui { border:1px solid var(--pwr-line)!important; border-radius:13px!important; background:#fff!important; }
#pwr-app .pwr-modifier-option { border-color:var(--pwr-line)!important; border-radius:10px!important; }
#pwr-app .pwr-modifier-option:has(input:checked) { border-color:var(--pwr-blue)!important; background:#f4f7ff!important; }
#pwr-app .pwr-quantity-group-ui { border-color:#b2ddff!important; background:#f5fbff!important; }

/* =============================================================
   KDS
   ============================================================= */
#pwr-kds-app { background:var(--pwr-bg)!important; }
#pwr-kds-app .pwr-kds-topbar { min-height:74px!important; padding:10px 14px!important; background:linear-gradient(180deg,var(--pwr-navy),var(--pwr-navy-2))!important; border:0!important; box-shadow:0 8px 24px rgba(11,22,51,.12)!important; }
#pwr-kds-app .pwr-kds-brand { display:flex!important; align-items:center!important; gap:10px!important; }
#pwr-kds-app .pwr-kds-brand-logo { width:46px!important; height:46px!important; overflow:hidden!important; border-radius:12px!important; background:#fff!important; }
#pwr-kds-app .pwr-kds-brand-logo img { width:100%!important; height:100%!important; object-fit:cover!important; }
#pwr-kds-app .pwr-kds-brand small { color:#cbd8ff!important; font-size:7px!important; font-weight:900!important; }
#pwr-kds-app .pwr-kds-brand h1 { color:#fff!important; font-size:18px!important; font-weight:950!important; }
#pwr-kds-app .pwr-kds-brand span { color:rgba(255,255,255,.66)!important; font-size:8px!important; }
#pwr-kds-app .pwr-kds-online { min-height:36px!important; padding:6px 9px!important; border:1px solid #abefc6!important; border-radius:999px!important; background:#ecfdf3!important; color:#027a48!important; font-size:8px!important; font-weight:900!important; }
#pwr-kds-app .pwr-kds-icon-action { min-height:40px!important; padding:7px 9px!important; border:0!important; border-radius:10px!important; background:#fff!important; color:var(--pwr-text)!important; }
#pwr-kds-app .pwr-kds-orders,#pwr-kds-app .pwr-kds-grid { gap:11px!important; padding:13px!important; }
#pwr-kds-app .pwr-kds-card { overflow:hidden!important; border:1px solid var(--pwr-line)!important; border-radius:16px!important; background:#fff!important; box-shadow:var(--pwr-shadow)!important; }
#pwr-kds-app .pwr-kds-card::before { height:5px!important; background:linear-gradient(90deg,var(--pwr-amber),#ffbd45)!important; }
#pwr-kds-app .pwr-kds-card.late::before { background:linear-gradient(90deg,#f04438,#ff7c70)!important; }
#pwr-kds-app .pwr-kds-card-head { padding:14px 13px 11px!important; border-bottom:1px solid var(--pwr-line)!important; background:#fff!important; }
#pwr-kds-app .pwr-kds-card-head>div:first-child>strong { color:var(--pwr-text)!important; font-size:17px!important; font-weight:950!important; }
#pwr-kds-app .pwr-kds-item { margin-bottom:8px!important; padding:11px!important; border:1px solid #f0e7ce!important; border-radius:11px!important; background:#fffdf8!important; }
#pwr-kds-app .pwr-kds-qty-badge { min-height:30px!important; padding:5px 8px!important; border:0!important; border-radius:8px!important; background:#eff6ff!important; color:#1d4ed8!important; }
#pwr-kds-app .pwr-kds-item-name strong { color:var(--pwr-text)!important; font-size:15px!important; font-weight:950!important; }
#pwr-kds-app .pwr-kds-modifiers { margin-top:8px!important; padding:9px!important; border:1px solid #fedf89!important; border-radius:9px!important; background:#fffaeb!important; }
#pwr-kds-app .pwr-kds-item-actions button { min-height:48px!important; border-radius:10px!important; font-size:11px!important; font-weight:950!important; }

/* =============================================================
   MANAGEMENT / REPORTS / LOGIN
   ============================================================= */
.pwr-commercial-main,.pwr-reports-shell,body.pwr-reports-page { background:var(--pwr-bg)!important; }
.pwr-commercial-topbar,.pwr-reports-topbar { min-height:78px!important; padding:16px 24px!important; background:linear-gradient(180deg,var(--pwr-navy),var(--pwr-navy-2))!important; border:0!important; box-shadow:0 8px 24px rgba(11,22,51,.10)!important; color:#fff!important; }
.pwr-commercial-topbar small { color:#cbd8ff!important; }
.pwr-commercial-topbar h1 { color:#fff!important; font-size:22px!important; font-weight:950!important; }
.pwr-commercial-content,.pwr-reports-content { width:min(1340px,calc(100% - 44px))!important; margin:0 auto!important; padding:24px 0 38px!important; }
.pwr-commercial-section-head h2,.pwr-report-card h2 { color:var(--pwr-text)!important; font-weight:950!important; }
.pwr-commercial-section-head p { color:var(--pwr-muted)!important; }
.pwr-new-product-card,.pwr-crm-table-card,.pwr-crm-detail,.pwr-brand-card,.pwr-report-filter,.pwr-report-card,.pwr-crm-kpis article,.pwr-report-kpis article,.pwr-report-payment-grid article { border:1px solid var(--pwr-line)!important; border-radius:15px!important; background:#fff!important; box-shadow:var(--pwr-shadow)!important; }
.pwr-commercial-primary,.pwr-crm-filter button,.pwr-report-filter button { min-height:44px!important; border:0!important; border-radius:10px!important; background:linear-gradient(135deg,var(--pwr-blue),var(--pwr-blue-2))!important; color:#fff!important; font-weight:900!important; }
.pwr-new-product-grid input,.pwr-new-product-grid select,.pwr-new-product-grid textarea,.pwr-crm-filter input,.pwr-crm-filter select,.pwr-report-filter input,.pwr-report-filter select { min-height:44px!important; border:1px solid #d7deeb!important; border-radius:10px!important; background:#fff!important; }

body:has(.pwr-login-shell) { background:var(--pwr-bg)!important; }
.pwr-login-shell { overflow:hidden!important; border:1px solid var(--pwr-line)!important; border-radius:23px!important; background:#fff!important; box-shadow:0 30px 90px rgba(11,22,51,.20)!important; }
.pwr-login-brand { background:radial-gradient(circle at 8% 0%,rgba(47,99,234,.48),transparent 40%),linear-gradient(155deg,var(--pwr-navy),#101e45)!important; }
.pwr-login-card { background:#fff!important; }
.pwr-login-submit { background:linear-gradient(135deg,var(--pwr-blue),var(--pwr-blue-2))!important; color:#fff!important; }

/* =============================================================
   TABLET LANDSCAPE: keep two panels.
   ============================================================= */
@media (min-width:900px) and (max-width:1180px) {
  #pwr-app .pwr-layout { display:grid!important; position:relative!important; grid-template-columns:minmax(300px,36%) minmax(0,64%)!important; }
  #pwr-app .pwr-tables-panel,#pwr-app .pwr-order-panel { position:relative!important; inset:auto!important; display:block!important; width:auto!important; height:100%!important; }
  #pwr-app.pwr-order-active .pwr-tables-panel,#pwr-app.pwr-order-active .pwr-order-panel { display:block!important; }
  #pwr-app .pwr-tables-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
  #pwr-app .pwr-table-card { min-height:112px!important; }
  #pwr-app .pwr-products { grid-template-columns:1fr!important; max-height:32dvh!important; }
  #pwr-app .pwr-item-controls { grid-template-columns:40px 46px 40px 40px!important; grid-template-areas:"minus qty plus delete" "note note note note"!important; }
  #pwr-app .pwr-order-actions { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
}

/* =============================================================
   TABLET PORTRAIT + MOBILE: one task at a time.
   ============================================================= */
@media (max-width:899px) {
  #pwr-app .pwr-layout { display:block!important; position:relative!important; overflow:hidden!important; }
  #pwr-app .pwr-tables-panel,#pwr-app .pwr-order-panel { position:absolute!important; inset:0!important; width:100%!important; height:100%!important; padding:13px!important; border:0!important; overflow:auto!important; }
  #pwr-app .pwr-order-panel { display:none!important; }
  #pwr-app.pwr-order-active .pwr-tables-panel { display:none!important; }
  #pwr-app.pwr-order-active .pwr-order-panel { display:block!important; }
  #pwr-app .pwr-back-tables { display:inline-flex!important; }

  #pwr-app .pwr-order-flow-nav { position:sticky!important; top:-13px!important; z-index:8!important; display:grid!important; grid-template-columns:1fr 1fr!important; gap:4px!important; margin:0 0 10px!important; padding:5px!important; border:1px solid var(--pwr-line)!important; border-radius:12px!important; background:rgba(255,255,255,.96)!important; backdrop-filter:blur(10px)!important; box-shadow:0 4px 14px rgba(15,23,42,.05)!important; }
  #pwr-app .pwr-order-flow-nav button { min-height:40px!important; display:flex!important; align-items:center!important; justify-content:center!important; gap:7px!important; border:0!important; border-radius:9px!important; background:transparent!important; color:var(--pwr-muted)!important; font-size:9px!important; font-weight:900!important; }
  #pwr-app .pwr-order-flow-nav button.active { background:var(--pwr-navy)!important; color:#fff!important; box-shadow:0 4px 12px rgba(11,22,51,.12)!important; }
  #pwr-app .pwr-order-flow-nav b { min-width:21px!important; height:21px!important; display:inline-flex!important; align-items:center!important; justify-content:center!important; padding:0 5px!important; border-radius:999px!important; background:rgba(47,99,234,.11)!important; color:var(--pwr-blue)!important; font-size:8px!important; }
  #pwr-app .pwr-order-flow-nav button.active b { background:rgba(255,255,255,.18)!important; color:#fff!important; }

  #pwr-app[data-order-view=products] .pwr-ticket,#pwr-app[data-order-view=products] .pwr-order-actions { display:none!important; }
  #pwr-app[data-order-view=ticket] .pwr-product-search,#pwr-app[data-order-view=ticket] .pwr-mobile-cart-bar { display:none!important; }

  #pwr-app .pwr-mobile-cart-bar:not([hidden]) { position:sticky!important; bottom:4px!important; z-index:10!important; width:100%!important; min-height:58px!important; display:grid!important; grid-template-columns:minmax(0,1fr) auto auto!important; gap:9px!important; align-items:center!important; margin:10px 0 2px!important; padding:9px 12px!important; border:0!important; border-radius:14px!important; background:linear-gradient(135deg,var(--pwr-blue),var(--pwr-blue-2))!important; color:#fff!important; box-shadow:0 12px 28px rgba(47,99,234,.26)!important; text-align:left!important; }
  #pwr-app .pwr-mobile-cart-bar span small,#pwr-app .pwr-mobile-cart-bar span strong { display:block!important; color:#fff!important; }
  #pwr-app .pwr-mobile-cart-bar span small { opacity:.72!important; font-size:7px!important; text-transform:uppercase!important; letter-spacing:.07em!important; }
  #pwr-app .pwr-mobile-cart-bar span strong { margin-top:1px!important; font-size:11px!important; }
  #pwr-app .pwr-mobile-cart-bar>b { min-width:29px!important; height:29px!important; display:grid!important; place-items:center!important; border-radius:999px!important; background:rgba(255,255,255,.18)!important; font-size:10px!important; }
  #pwr-app .pwr-mobile-cart-bar>strong { color:#fff!important; font-size:14px!important; font-weight:950!important; }
  #pwr-app .pwr-mobile-cart-bar.is-checkout-action:not([hidden]) { background:linear-gradient(135deg,#16a34a,#0f8f3f)!important; box-shadow:0 12px 28px rgba(22,163,74,.24)!important; }

  #pwr-app .pwr-products { max-height:none!important; overflow:visible!important; }
  #pwr-app .pwr-order-actions { position:sticky!important; bottom:-13px!important; grid-template-columns:repeat(2,minmax(0,1fr))!important; }
  #pwr-app #pwr-open-checkout { grid-column:1/-1!important; min-height:56px!important; }
}

/* =============================================================
   MOBILE
   ============================================================= */
@media (max-width:680px) {
  #pwr-app .pwr-topbar { min-height:72px!important; flex-basis:72px!important; padding:7px!important; }
  #pwr-app .pwr-pos-brand-logo { display:none!important; }
  #pwr-app .pwr-pos-brand-copy small,#pwr-app .pwr-pos-brand-copy>span { display:none!important; }
  #pwr-app .pwr-pos-brand-copy h2 { max-width:27vw!important; font-size:12px!important; line-height:1.05!important; white-space:normal!important; }
  #pwr-app .pwr-top-actions { gap:4px!important; }
  #pwr-app .pwr-top-action-icon,#pwr-app .pwr-top-action-text { width:46px!important; min-width:46px!important; min-height:46px!important; padding:0!important; border-radius:11px!important; }
  #pwr-app .pwr-top-action-text>span { display:none!important; }
  #pwr-app .pwr-top-action-icon svg,#pwr-app .pwr-top-action-text svg { width:17px!important; height:17px!important; }
  #pwr-app .pwr-section-title h3 { font-size:18px!important; }
  #pwr-app .pwr-service-actions { gap:8px!important; }
  #pwr-app .pwr-service-new { min-height:58px!important; font-size:10px!important; }
  #pwr-app .pwr-service-icon { width:27px!important; height:27px!important; }
  #pwr-app .pwr-tables-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:8px!important; }
  #pwr-app .pwr-table-card { min-height:142px!important; padding:12px!important; border-radius:16px!important; }
  #pwr-app .pwr-table-card strong { font-size:15px!important; }
  #pwr-app .pwr-table-card small { font-size:9px!important; line-height:1.35!important; }
  #pwr-app .pwr-table-card div { font-size:15px!important; }
  #pwr-app .pwr-order-head { display:grid!important; grid-template-columns:auto minmax(0,1fr) auto!important; gap:8px!important; align-items:center!important; }
  #pwr-app .pwr-order-head h3 { font-size:18px!important; }
  #pwr-app .pwr-products { grid-template-columns:1fr!important; gap:7px!important; }
  #pwr-app .pwr-product { min-height:70px!important; grid-template-columns:46px minmax(0,1fr) 31px!important; }
  #pwr-app .pwr-product-visual { width:46px!important; height:46px!important; }
  #pwr-app .pwr-item-controls { grid-template-columns:42px 48px 42px 42px!important; grid-template-areas:"minus qty plus delete" "note note note note"!important; }
  #pwr-app .pwr-item-controls input { min-height:42px!important; }
  #pwr-app .pwr-total-row strong { font-size:25px!important; }
}

@media (max-width:520px) {
  #pwr-app #pwr-fullscreen { display:none!important; }
  #pwr-app .pwr-pos-brand-copy h2 { max-width:35vw!important; }
  #pwr-app .pwr-top-action-icon,#pwr-app .pwr-top-action-text { width:44px!important; min-width:44px!important; min-height:44px!important; }
}

@media (max-width:400px) {
  #pwr-app #pwr-refresh { display:none!important; }
  #pwr-app .pwr-pos-brand-copy h2 { max-width:38vw!important; font-size:11px!important; }
  #pwr-app .pwr-top-action-icon,#pwr-app .pwr-top-action-text { width:42px!important; min-width:42px!important; min-height:42px!important; }
  #pwr-app .pwr-table-card { min-height:132px!important; }
}

/* Dashboard/management responsive */
@media(max-width:900px){
  .pwr-dashboard-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.pwr-dashboard-content-v17{width:calc(100% - 24px)!important}.pwr-commercial-content,.pwr-reports-content{width:calc(100% - 24px)!important}.pwr-dashboard-top-v17{padding:20px 15px!important}
}
@media(max-width:620px){
  .pwr-dashboard-module-grid{grid-template-columns:1fr!important}.pwr-dashboard-kpis-v17{grid-template-columns:repeat(2,minmax(0,1fr))!important}.pwr-dashboard-kpis-v17 article{min-height:98px!important}.pwr-commercial-topbar,.pwr-reports-topbar{padding:13px!important}.pwr-crm-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}.pwr-crm-filter{grid-template-columns:1fr!important}
}


/* =============================================================
   v0.18.5 - QA FINAL DE MÓDULOS / RESPONSIVE
   Esta sección se carga al final y corrige inconsistencias detectadas
   en Dashboard, POS, Cocina, Barra, Administración y Reportes.
   ============================================================= */

/* ---------- App shell / Dashboard ---------- */
@media(max-width:880px){
  .pwr-app-menu-toggle[aria-expanded="true"]{
    background:linear-gradient(135deg,var(--pwr-blue),var(--pwr-blue-2))!important;
    border-color:transparent!important;
    color:#fff!important;
    box-shadow:0 8px 18px rgba(47,99,234,.24)!important;
  }
  .pwr-app-menu-toggle[aria-expanded="true"] svg{
    stroke:#fff!important;
  }
  .pwr-app-sidebar-close{
    background:linear-gradient(135deg,var(--pwr-blue),var(--pwr-blue-2))!important;
    border-color:rgba(255,255,255,.15)!important;
    color:#fff!important;
  }
  .pwr-app-sidebar-overlay{
    background:rgba(7,15,35,.58)!important;
  }
}

/* ---------- KDS Cocina / Barra: iconos y cabecera ---------- */
#pwr-kds-app .pwr-kds-topbar{
  overflow:visible!important;
}
#pwr-kds-app .pwr-kds-brand{
  min-width:0!important;
  flex:1 1 auto!important;
}
#pwr-kds-app .pwr-kds-brand>div:last-child{
  min-width:0!important;
}
#pwr-kds-app .pwr-kds-brand-logo{
  flex:0 0 46px!important;
  display:grid!important;
  place-items:center!important;
}
#pwr-kds-app .pwr-kds-brand-logo .pwr-brand-initials{
  color:var(--pwr-navy)!important;
  opacity:1!important;
  font-size:12px!important;
  font-weight:950!important;
  line-height:1!important;
}
#pwr-kds-app .pwr-kds-top-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex:0 0 auto!important;
  gap:6px!important;
  min-width:0!important;
}
#pwr-kds-app .pwr-kds-icon-action{
  width:auto!important;
  min-width:42px!important;
  height:42px!important;
  min-height:42px!important;
  max-height:42px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  padding:0 10px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:10px!important;
  background:#fff!important;
  color:var(--pwr-text)!important;
  text-decoration:none!important;
  line-height:1!important;
  box-shadow:0 4px 12px rgba(0,0,0,.08)!important;
}
#pwr-kds-app .pwr-kds-icon-action svg{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  max-width:18px!important;
  min-height:18px!important;
  max-height:18px!important;
  flex:0 0 18px!important;
  display:block!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
}
#pwr-kds-app .pwr-kds-icon-action span{
  display:inline!important;
  color:inherit!important;
  opacity:1!important;
  font-size:8px!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
}
#pwr-kds-app .pwr-kds-card-head>div:first-child{
  min-width:0!important;
}
#pwr-kds-app .pwr-kds-card-head>div:first-child span,
#pwr-kds-app .pwr-kds-card-head>div:first-child small{
  max-width:100%!important;
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
}
#pwr-kds-app .pwr-kds-card-tools{
  flex:0 0 auto!important;
  align-self:flex-start!important;
}
#pwr-kds-app .pwr-kds-time{
  max-width:86px!important;
  min-height:34px!important;
  padding:5px 8px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  line-height:1.1!important;
  white-space:normal!important;
}
#pwr-kds-app .pwr-kds-print{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:36px!important;
  white-space:nowrap!important;
}

@media(max-width:700px){
  #pwr-kds-app .pwr-kds-topbar{
    min-height:64px!important;
    padding:7px 8px!important;
    gap:6px!important;
  }
  #pwr-kds-app .pwr-kds-brand{
    gap:7px!important;
  }
  #pwr-kds-app .pwr-kds-brand-logo{
    width:40px!important;
    height:40px!important;
    flex-basis:40px!important;
    border-radius:10px!important;
  }
  #pwr-kds-app .pwr-kds-brand-logo .pwr-brand-initials{
    font-size:10px!important;
  }
  #pwr-kds-app .pwr-kds-brand small,
  #pwr-kds-app .pwr-kds-brand span{
    display:none!important;
  }
  #pwr-kds-app .pwr-kds-brand h1{
    max-width:32vw!important;
    margin:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:15px!important;
  }
  #pwr-kds-app .pwr-kds-online{
    display:none!important;
  }
  #pwr-kds-app .pwr-kds-top-actions{
    gap:4px!important;
  }
  #pwr-kds-app .pwr-kds-icon-action{
    width:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    height:40px!important;
    min-height:40px!important;
    max-height:40px!important;
    flex:0 0 40px!important;
    padding:0!important;
    border-radius:10px!important;
  }
  #pwr-kds-app .pwr-kds-icon-action svg{
    width:17px!important;
    height:17px!important;
    min-width:17px!important;
    max-width:17px!important;
    min-height:17px!important;
    max-height:17px!important;
    flex-basis:17px!important;
  }
  #pwr-kds-app .pwr-kds-icon-action span{
    display:none!important;
  }
  #pwr-kds-app .pwr-kds-content{
    padding:8px!important;
  }
  #pwr-kds-app .pwr-kds-grid{
    grid-template-columns:1fr!important;
    gap:8px!important;
    padding:0!important;
  }
  #pwr-kds-app .pwr-kds-card{
    border-radius:14px!important;
  }
  #pwr-kds-app .pwr-kds-card-head{
    padding:12px!important;
    align-items:flex-start!important;
  }
  #pwr-kds-app .pwr-kds-card-head>div:first-child>strong{
    font-size:16px!important;
  }
  #pwr-kds-app .pwr-kds-card-tools{
    gap:5px!important;
  }
  #pwr-kds-app .pwr-kds-time{
    max-width:66px!important;
    min-width:58px!important;
    font-size:9px!important;
  }
  #pwr-kds-app .pwr-kds-print{
    min-width:42px!important;
    min-height:36px!important;
    padding:6px 8px!important;
    font-size:0!important;
  }
  #pwr-kds-app .pwr-kds-print::before{
    content:"Imprimir"!important;
    font-size:8px!important;
    font-weight:900!important;
  }
  #pwr-kds-app .pwr-kds-item-row{
    align-items:center!important;
  }
  #pwr-kds-app .pwr-kds-item-name{
    min-width:0!important;
    align-items:center!important;
  }
  #pwr-kds-app .pwr-kds-qty-badge{
    flex:0 0 auto!important;
    white-space:nowrap!important;
  }
}

@media(max-width:440px){
  #pwr-kds-app .pwr-kds-brand-logo{
    display:none!important;
  }
  #pwr-kds-app .pwr-kds-brand h1{
    max-width:30vw!important;
    font-size:14px!important;
  }
  #pwr-kds-app #pwr-kds-fullscreen{
    display:none!important;
  }
}

/* ---------- POS mobile/tablet: cap controls and prevent overflow ---------- */
@media(max-width:899px){
  #pwr-app .pwr-order-panel,
  #pwr-app .pwr-tables-panel{
    overscroll-behavior:contain!important;
  }
  #pwr-app .pwr-order-flow-nav{
    width:100%!important;
    max-width:100%!important;
  }
  #pwr-app .pwr-mobile-cart-bar{
    max-width:100%!important;
  }
}
@media(max-width:680px){
  #pwr-app .pwr-topbar{
    overflow:hidden!important;
  }
  #pwr-app .pwr-top-actions{
    flex:0 0 auto!important;
  }
  #pwr-app .pwr-top-action-icon svg,
  #pwr-app .pwr-top-action-text svg{
    width:17px!important;
    height:17px!important;
    min-width:17px!important;
    max-width:17px!important;
  }
  #pwr-app .pwr-table-card{
    min-width:0!important;
  }
}

/* ---------- Management / CRM ---------- */
@media(max-width:880px){
  .pwr-commercial-main{
    min-width:0!important;
  }
  .pwr-commercial-content{
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  .pwr-new-product-grid,
  .pwr-form-grid,
  .pwr-system-summary{
    min-width:0!important;
  }
  .pwr-crm-table-wrap,
  .pwr-table-admin-wrap{
    max-width:100%!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
}

/* ---------- Reports: replace emoji style with consistent SVG actions ---------- */
.pwr-reports-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  flex-wrap:wrap!important;
}
.pwr-report-top-action{
  min-height:40px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  padding:7px 10px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  text-decoration:none!important;
  font-size:9px!important;
  font-weight:900!important;
}
.pwr-report-top-action svg{
  width:16px!important;
  height:16px!important;
  flex:0 0 16px!important;
  fill:none!important;
  stroke:currentColor!important;
}
.pwr-report-top-action span{
  color:inherit!important;
  font-size:inherit!important;
  opacity:1!important;
  text-transform:none!important;
  letter-spacing:0!important;
}
@media(max-width:580px){
  .pwr-reports-topbar{
    gap:10px!important;
    padding:12px!important;
  }
  .pwr-reports-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .pwr-report-top-action{
    width:100%!important;
    min-width:0!important;
    padding:7px 5px!important;
  }
  .pwr-report-top-action span{
    font-size:8px!important;
  }
}

/* ---------- Login ---------- */
@media(max-width:520px){
  .pwr-login-shell{
    width:calc(100% - 18px)!important;
    border-radius:17px!important;
  }
  .pwr-login-card{
    padding-left:20px!important;
    padding-right:20px!important;
  }
}


/* ==========================================================
   v0.18.6 - Browser/AirPrint print isolation
   Mantiene únicamente el ticket durante la hoja de impresión iOS.
   ========================================================== */
@media print {
  body.pwr-printing {
    margin:0!important;
    padding:0!important;
    width:auto!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
    background:#fff!important;
  }

  body.pwr-printing > *:not(#pwr-print-receipt) {
    display:none!important;
    visibility:hidden!important;
  }

  body.pwr-printing #pwr-print-receipt {
    display:block!important;
    visibility:visible!important;
    position:static!important;
    inset:auto!important;
    width:55mm!important;
    max-width:55mm!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    opacity:1!important;
    transform:none!important;
    background:#fff!important;
    color:#000!important;
    box-shadow:none!important;
  }

  body.pwr-printing #pwr-print-receipt,
  body.pwr-printing #pwr-print-receipt * {
    box-sizing:border-box!important;
    color:#000!important;
    text-shadow:none!important;
    box-shadow:none!important;
  }
}


/* =============================================================
   v0.18.7 - QA final: iconos y catálogo visual
   ============================================================= */
.pwr-app-nav-icon{
  width:34px!important;
  height:34px!important;
  flex:0 0 34px!important;
  border-radius:9px!important;
  background:rgba(255,255,255,.075)!important;
  color:#cbd6ef!important;
}
.pwr-app-nav-icon svg,
.pwr-mobile-home svg{
  display:block!important;
  width:18px!important;
  height:18px!important;
  opacity:1!important;
  fill:none!important;
  stroke:currentColor!important;
}
.pwr-app-nav-item.active .pwr-app-nav-icon{
  background:#eef4ff!important;
  color:#2f63ea!important;
}
.pwr-menu-bars,.pwr-close-glyph{
  display:flex!important;
  opacity:1!important;
  visibility:visible!important;
}
.pwr-app-menu-toggle{
  color:#0b1633!important;
}
.pwr-app-menu-toggle[aria-expanded="true"]{
  color:#fff!important;
}
.pwr-mobile-home{
  color:#2454dc!important;
}
.pwr-catalog-card-grid .pwr-product-card-v187{
  background:#fff!important;
  border-color:var(--pwr-line)!important;
  box-shadow:var(--pwr-shadow)!important;
}
.pwr-product-card-body>h3,
.pwr-product-card-price{
  color:var(--pwr-text)!important;
}
.pwr-product-save-button{
  background:linear-gradient(135deg,var(--pwr-blue),var(--pwr-blue-2))!important;
}
