/* =====================================================================
   KAIROS 1.5.0 · Modo móvil (teléfono y tablet)
   Todo va bajo html.km: en las computadoras de las cajas no cambia nada.
   ===================================================================== */
html.km{--km-bg:var(--bg,#f3f4f6);--km-panel:var(--panel,#fff);--km-ink:var(--ink,#111827);--km-muted:var(--muted,#6b7280);--km-line:var(--line,#e5e7eb);--km-brand:#f05a1a;--km-brand-2:#ff7a1a;--km-soft:#fff4ed;--km-ok:#16a34a;--km-okbg:#dcfce7;--km-warn:#d97706;--km-warnbg:#fef3c7;--km-bad:#dc2626;--km-badbg:#fee2e2;--km-top:56px;--km-nav:64px;--km-safe-b:env(safe-area-inset-bottom,0px);--km-safe-t:env(safe-area-inset-top,0px);-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}
html.km[data-theme="dark"]{--km-soft:#2a1a10;--km-okbg:#0f2a1b;--km-warnbg:#2c220d;--km-badbg:#2d1414;--km-ok:#4ade80;--km-warn:#fbbf24;--km-bad:#f87171}
html.km body{background:var(--km-bg);color:var(--km-ink)}
/* En el teléfono se desplaza la página completa (en la computadora se desplaza solo el contenido). */
html.km{height:auto!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:none}
html.km body{height:auto!important;min-height:100%!important;overflow:visible!important;overscroll-behavior:auto}
html.km body.auth-locked{overflow:visible!important}
.km-ic{width:22px;height:22px;flex:none;display:block}
html.km [hidden]{display:none!important}

/* ---------- estructura ---------- */
html.km .sidebar,html.km .topbar,html.km .test-mode-banner,html.km #nav-flyout{display:none!important}
html.km .app-shell{display:block!important;min-height:100vh}
html.km body:not(.auth-locked){display:block!important}
html.km .main{padding:calc(var(--km-top) + var(--km-safe-t)) 0 calc(var(--km-nav) + var(--km-safe-b) + 18px)!important;min-width:0;height:auto!important;overflow:visible!important}
html.km .content{padding:12px!important;height:auto!important;overflow:visible!important;max-width:1100px;margin:0 auto}
html.km body.pos-fullscreen{overflow:auto!important}
html.km body.auth-locked #km-top,html.km body.auth-locked #km-nav{display:none}
html:not(.km) #km-top,html:not(.km) #km-nav{display:none}

#km-top{position:fixed;z-index:60;top:0;left:0;right:0;height:calc(var(--km-top) + var(--km-safe-t));padding:var(--km-safe-t) 10px 0;display:flex;align-items:center;gap:8px;background:color-mix(in srgb,var(--km-panel) 92%,transparent);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--km-line)}
.km-brand{width:38px;height:38px;border:0;border-radius:11px;background:linear-gradient(135deg,#ff7a1a,#e04e0f);color:#fff;font-weight:900;font-size:20px;display:grid;place-items:center;box-shadow:0 6px 14px rgba(240,90,26,.3);font-style:italic}
.km-top-title{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.1}
.km-top-title b{font-size:17px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--km-ink)}
.km-branch{border:0;background:none;padding:2px 0 0;color:var(--km-muted);font-size:12.5px;display:flex;align-items:center;gap:5px;max-width:100%;text-align:left}
.km-branch span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.km-branch .km-ic{width:14px;height:14px}
.km-dot{width:8px;height:8px;border-radius:50%;background:#9ca3af;display:inline-block;flex:none}
.km-dot.on{background:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.18)}
.km-icon-btn{width:40px;height:40px;border:0;border-radius:12px;background:transparent;color:var(--km-ink);display:grid;place-items:center;flex:none}
.km-icon-btn:active{background:var(--km-line)}
#km-top .km-icon-btn{background:var(--km-bg)}
.km-avatar{width:38px;height:38px;border-radius:50%;border:2px solid var(--km-brand);background:var(--km-soft);color:var(--km-brand);font-weight:800;font-size:14px;display:grid;place-items:center;flex:none}
.km-avatar.big{width:54px;height:54px;font-size:19px}

#km-nav{position:fixed;z-index:60;left:0;right:0;bottom:0;height:calc(var(--km-nav) + var(--km-safe-b));padding:4px 6px var(--km-safe-b);display:grid;grid-template-columns:repeat(5,1fr);background:color-mix(in srgb,var(--km-panel) 95%,transparent);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-top:1px solid var(--km-line)}
#km-nav button{border:0;background:none;color:var(--km-muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:11px;font-weight:600;border-radius:14px;min-width:0}
#km-nav button[hidden]{display:none}
#km-nav .km-nav-ic{width:46px;height:30px;border-radius:15px;display:grid;place-items:center;transition:background .15s}
#km-nav button.active{color:var(--km-brand)}
#km-nav button.active .km-nav-ic{background:var(--km-soft)}
#km-nav .km-nav-main .km-nav-ic{width:48px;height:48px;margin-top:-20px;border-radius:50%;background:linear-gradient(135deg,#ff7a1a,#e04e0f);color:#fff;box-shadow:0 8px 18px rgba(240,90,26,.38);border:4px solid var(--km-bg)}
#km-nav .km-nav-main.active .km-nav-ic{background:linear-gradient(135deg,#ff7a1a,#e04e0f)}
#km-nav .km-nav-main .km-ic{width:26px;height:26px}
html.km body.km-typing #km-nav,html.km body.km-typing .km-paybar{display:none}
html.km body.km-typing .main{padding-bottom:12px!important}

/* ---------- piezas comunes ---------- */
.km-page{display:flex;flex-direction:column;gap:12px}
.km-card{background:var(--km-panel);border:1px solid var(--km-line);border-radius:18px;padding:14px;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.km-card>header{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px}
.km-card>header h3{margin:0;font-size:16px;font-weight:800;color:var(--km-ink)}
.km-card>header small{color:var(--km-muted);font-size:12px}
.km-link{color:var(--km-brand);font-weight:700;font-size:13px;text-decoration:none;border:0;background:none;display:inline-flex;align-items:center;gap:4px;padding:6px 2px}
.km-link.danger{color:var(--km-bad)}
.km-link .km-ic{width:16px;height:16px}
.km-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:26px 12px;color:var(--km-muted)}
.km-empty span{width:56px;height:56px;border-radius:18px;background:var(--km-soft);color:var(--km-brand);display:grid;place-items:center}
.km-empty b{color:var(--km-ink);font-size:15px}
.km-empty small{font-size:13px;max-width:280px}
.km-badge{display:inline-block;font-style:normal;font-size:11px;font-weight:700;padding:3px 8px;border-radius:999px;background:var(--km-line);color:var(--km-ink)}
.km-badge.bad{background:var(--km-badbg);color:var(--km-bad)}
.km-badge.warn{background:var(--km-warnbg);color:var(--km-warn)}
.km-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;background:var(--km-bg);border:1px solid var(--km-line);border-radius:6px;padding:1px 6px;color:var(--km-muted)}
.km-cat{font-size:11px;font-weight:700;padding:2px 8px;border-radius:6px;background:#475569;color:#fff;text-transform:uppercase;letter-spacing:.02em}
.km-neg{color:var(--km-bad);font-weight:700}
.km-search{display:flex;align-items:center;gap:6px;background:var(--km-panel);border:1.5px solid var(--km-line);border-radius:14px;padding:0 6px 0 12px;height:50px;transition:border-color .15s,box-shadow .15s}
.km-search:focus-within{border-color:var(--km-brand);box-shadow:0 0 0 4px rgba(240,90,26,.12)}
.km-search>span{color:var(--km-muted);display:grid}
.km-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--km-ink);font-size:16px;height:100%}
.km-search.big{height:54px}
.km-search .km-icon-btn{width:40px;height:40px}
.km-chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px 1px;margin:0 -12px;padding-left:12px;padding-right:12px}
.km-chips::-webkit-scrollbar{display:none}
.km-chip{flex:none;border:1.5px solid var(--km-line);background:var(--km-panel);color:var(--km-ink);border-radius:999px;padding:8px 14px;font-size:13.5px;font-weight:600}
.km-chip.small{padding:6px 12px;font-size:12.5px}
.km-chip.active{background:var(--km-ink);border-color:var(--km-ink);color:var(--km-panel)}
html.km[data-theme="dark"] .km-chip.active{background:var(--km-brand);border-color:var(--km-brand);color:#fff}
.km-select{width:100%;height:46px;border:1.5px solid var(--km-line);border-radius:12px;background:var(--km-panel);color:var(--km-ink);padding:0 12px;font-size:15px}
.km-filter-row{display:flex;gap:10px;align-items:center}
.km-filter-row .km-select{flex:1}
.km-count{color:var(--km-muted);font-size:12.5px;white-space:nowrap}
.km-dates{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.km-dates label{font-size:12px;color:var(--km-muted);display:flex;flex-direction:column;gap:4px}
.km-dates input{height:44px;border:1.5px solid var(--km-line);border-radius:12px;background:var(--km-panel);color:var(--km-ink);padding:0 10px;font-size:15px}
.km-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:1px;background:var(--km-line);border:1px solid var(--km-line);border-radius:16px;overflow:hidden}
.km-summary>div{background:var(--km-panel);padding:10px 12px;display:flex;flex-direction:column;gap:2px}
.km-summary small{color:var(--km-muted);font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;font-weight:700}
.km-summary b{font-size:16px;color:var(--km-ink)}
.km-more{border:1.5px dashed var(--km-line);background:transparent;color:var(--km-brand);font-weight:700;border-radius:14px;padding:14px;font-size:14px}
.km-btn{border:1.5px solid var(--km-line);background:var(--km-panel);color:var(--km-ink);border-radius:14px;min-height:50px;padding:0 14px;font-weight:700;font-size:15px;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.km-btn .km-ic{width:20px;height:20px}
.km-btn.primary{background:linear-gradient(135deg,#ff7a1a,#e04e0f);border-color:transparent;color:#fff;box-shadow:0 8px 18px rgba(240,90,26,.28)}
.km-btn.wa{background:#16a34a;border-color:#16a34a;color:#fff}
.km-btn.ghost{background:transparent}
.km-btn.small{min-height:40px;font-size:13.5px;border-radius:12px}
.km-btn.block{width:100%}
.km-btn-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.km-btn-grid .km-btn:only-child,.km-btn-grid .km-btn:last-child:nth-child(odd){grid-column:1/-1}
.km-fab{position:fixed;z-index:55;right:16px;bottom:calc(var(--km-nav) + var(--km-safe-b) + 16px);height:54px;padding:0 20px 0 16px;border:0;border-radius:18px;background:linear-gradient(135deg,#ff7a1a,#e04e0f);color:#fff;font-weight:800;font-size:15px;display:flex;align-items:center;gap:8px;box-shadow:0 12px 24px rgba(240,90,26,.35)}
html.km body.km-typing .km-fab{display:none}

/* ---------- inicio ---------- */
.km-hero{border-radius:22px;padding:16px;color:#fff;background:radial-gradient(120% 90% at 100% 0%,rgba(255,122,26,.55),transparent 55%),linear-gradient(160deg,#1f2328,#111315);box-shadow:0 14px 30px rgba(17,19,21,.28);position:relative;overflow:hidden}
.km-hero-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.km-hero-top small{color:#fdba74;font-weight:600;font-size:13px}
.km-hero h2{margin:2px 0 0;font-size:17px;font-weight:800;color:#fff;line-height:1.2}
.km-date{display:flex;align-items:center;gap:6px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:0 4px 0 9px;height:38px;color:#fff}
.km-date .km-ic{width:16px;height:16px;opacity:.8}
.km-date input{background:transparent;border:0;color:#fff;font-size:13.5px;width:122px;color-scheme:dark}
.km-hero-total{margin:16px 0 14px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.km-hero-total>span{color:#d1d5db;font-size:13px;font-weight:600}
.km-hero-total strong{font-size:34px;font-weight:900;letter-spacing:-.02em;color:#fff;line-height:1.05}
.km-delta,.km-profit{font-style:normal;font-size:12.5px;font-weight:700;padding:4px 10px;border-radius:999px}
.km-delta small{font-weight:500;opacity:.85}
.km-delta.up{background:rgba(34,197,94,.18);color:#86efac}
.km-delta.down{background:rgba(239,68,68,.2);color:#fca5a5}
.km-delta.flat{background:rgba(255,255,255,.1);color:#d1d5db}
.km-profit{background:rgba(255,122,26,.22);color:#fed7aa}
.km-hero-total em{display:inline-block}
.km-hero-total .km-profit{margin-top:2px}
.km-hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.km-hero-stats>div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:10px;display:flex;flex-direction:column;gap:2px}
.km-hero-stats span{color:#fdba74}
.km-hero-stats .km-ic{width:18px;height:18px}
.km-hero-stats b{font-size:20px;color:#fff;font-weight:800}
.km-hero-stats small{color:#cbd5e1;font-size:11px;line-height:1.2}
.km-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.km-actions button{border:1px solid var(--km-line);background:var(--km-panel);color:var(--km-ink);border-radius:16px;padding:10px 4px;font-size:12px;font-weight:700;display:flex;flex-direction:column;align-items:center;gap:6px;line-height:1.15}
.km-actions button span{width:40px;height:40px;border-radius:13px;background:var(--km-soft);color:var(--km-brand);display:grid;place-items:center}
.km-chart svg{width:100%;height:160px;display:block;overflow:visible}
.km-hbar rect{fill:var(--km-line);transition:fill .15s}
.km-hbar.has rect{fill:#fdba74}
.km-hbar.has.sel rect,.km-hbar.has:active rect{fill:var(--km-brand)}
.km-hbar text{font-size:9px;fill:var(--km-muted);text-anchor:middle}
.km-chart-tip{margin-top:6px;font-size:13px;color:var(--km-muted);text-align:center}
.km-chart-tip b{color:var(--km-ink)}
.km-bars{display:flex;flex-direction:column;gap:12px}
.km-bar-row{display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:center}
.km-bar-ic{width:38px;height:38px;border-radius:12px;background:var(--km-soft);color:var(--km-brand);display:grid;place-items:center}
.km-bar-ic .km-ic{width:19px;height:19px}
.km-bar-top{display:flex;justify-content:space-between;gap:8px;font-size:13.5px;margin-bottom:5px}
.km-bar-top b{font-weight:600;color:var(--km-ink)}
.km-bar-top strong{color:var(--km-ink)}
.km-bar{height:8px;border-radius:99px;background:var(--km-bg);overflow:hidden}
.km-bar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#ff7a1a,#e04e0f)}
.km-alerts{display:flex;flex-direction:column;gap:8px}
.km-alert{display:grid;grid-template-columns:40px 1fr 20px;gap:10px;align-items:center;text-decoration:none;color:var(--km-ink);padding:10px;border-radius:14px;background:var(--km-bg)}
.km-alert>span{width:40px;height:40px;border-radius:12px;background:var(--km-okbg);color:var(--km-ok);display:grid;place-items:center}
.km-alert.warn>span{background:var(--km-warnbg);color:var(--km-warn)}
.km-alert.bad>span{background:var(--km-badbg);color:var(--km-bad)}
.km-alert b{display:block;font-size:15px}
.km-alert small{color:var(--km-muted);font-size:12.5px}
.km-alert>.km-ic{color:var(--km-muted);width:18px}
.km-top{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.km-top li{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:center}
.km-top strong{white-space:nowrap}
.km-rank{width:28px;height:28px;border-radius:9px;background:var(--km-bg);display:grid;place-items:center;font-weight:800;font-size:13px;color:var(--km-muted)}
.km-top li:first-child .km-rank{background:var(--km-brand);color:#fff}
.km-top b{display:block;font-size:13.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--km-ink)}
.km-top small{color:var(--km-muted);font-size:12px}
.km-top strong{font-size:14px;color:var(--km-ink)}

/* ---------- ventas ---------- */
.km-sale-list{display:flex;flex-direction:column;gap:8px}
.km-day{margin:8px 2px 0;font-size:13px;color:var(--km-muted);text-transform:capitalize;font-weight:700}
.km-sale{width:100%;text-align:left;border:1px solid var(--km-line);background:var(--km-panel);color:var(--km-ink);border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:6px}
.km-card .km-sale{background:var(--km-bg);border-color:transparent}
.km-sale:active{transform:scale(.99)}
.km-sale-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.km-sale-no{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;font-weight:700;color:var(--km-brand)}
.km-sale-time{font-size:12px;color:var(--km-muted)}
.km-sale-mid{display:flex;justify-content:space-between;align-items:flex-end;gap:10px}
.km-sale-mid>div{min-width:0}
.km-sale-mid b{display:block;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.km-sale-mid small{display:block;color:var(--km-muted);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.km-sale-mid strong{font-size:17px;white-space:nowrap;color:var(--km-ink)}
.km-sale .km-badge{align-self:flex-start}
.km-sale-detail{display:flex;flex-direction:column;gap:14px}
.km-sd-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.km-sd-head b{display:block;font-size:16px}
.km-sd-head small{display:block;color:var(--km-muted);font-size:12.5px;margin-top:2px}
.km-sd-head strong{font-size:22px;color:var(--km-brand);white-space:nowrap}
.km-lines{display:flex;flex-direction:column;border:1px solid var(--km-line);border-radius:14px;overflow:hidden}
.km-line{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid var(--km-line)}
.km-line:last-child{border-bottom:0}
.km-line b{display:block;font-size:13.5px;font-weight:600}
.km-line small{color:var(--km-muted);font-size:12px}
.km-line strong{white-space:nowrap;font-size:14px}
.km-kv{display:flex;flex-direction:column;border:1px solid var(--km-line);border-radius:14px;overflow:hidden}
.km-kv>div{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid var(--km-line);font-size:14px}
.km-kv>div:last-child{border-bottom:0}
.km-kv span{color:var(--km-muted)}
.km-kv .bad b,.km-kv .bad span{color:var(--km-bad)}

/* ---------- productos ---------- */
.km-plist{display:flex;flex-direction:column;gap:8px}
.km-prod{width:100%;text-align:left;border:1px solid var(--km-line);background:var(--km-panel);color:var(--km-ink);border-radius:16px;padding:12px;display:grid;grid-template-columns:1fr auto;gap:10px}
.km-prod:active{transform:scale(.99)}
.km-prod-main{min-width:0;display:flex;flex-direction:column;gap:6px}
.km-prod-main>b{font-size:14.5px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.km-prod-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.km-stock-row{display:flex;flex-wrap:wrap;gap:5px}
.km-stock{font-size:11.5px;font-weight:700;padding:2px 8px;border-radius:7px;background:var(--km-okbg);color:var(--km-ok)}
.km-stock.low{background:var(--km-warnbg);color:var(--km-warn)}
.km-stock.out{background:var(--km-badbg);color:var(--km-bad)}
.km-stock.here{outline:1.5px solid currentColor}
.km-prod-price{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right}
.km-prod-price strong{font-size:17px;color:var(--km-ok);white-space:nowrap}
html.km[data-theme="dark"] .km-prod-price strong{color:#4ade80}
.km-prod-price small{font-size:11.5px;color:var(--km-muted);white-space:nowrap}
.km-stock-pill{font-style:normal;margin-top:4px;font-size:11.5px;font-weight:800;padding:2px 9px;border-radius:999px;background:var(--km-okbg);color:var(--km-ok);white-space:nowrap}
.km-stock-pill.low{background:var(--km-warnbg);color:var(--km-warn)}
.km-stock-pill.out{background:var(--km-badbg);color:var(--km-bad)}
.km-pd{display:flex;flex-direction:column;gap:12px}
.km-pd h3{margin:0;font-size:19px;line-height:1.25;color:var(--km-ink)}
.km-pd h4{margin:4px 0 -4px;font-size:13px;color:var(--km-muted);text-transform:uppercase;letter-spacing:.05em}
.km-pd-img{border-radius:16px;overflow:hidden;background:var(--km-bg);aspect-ratio:4/3;display:grid;place-items:center}
.km-pd-img img{width:100%;height:100%;object-fit:contain}
.km-price-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.km-price-grid>div{background:var(--km-bg);border-radius:14px;padding:10px 12px}
.km-price-grid>div:first-child{background:var(--km-soft)}
.km-price-grid small{display:block;color:var(--km-muted);font-size:11.5px;font-weight:600}
.km-price-grid b{font-size:18px;color:var(--km-ink)}
.km-price-grid>div:first-child b{color:var(--km-brand);font-size:20px}

/* ---------- vender ---------- */
html.km body.km-pos .content{padding-top:0!important}
.km-pos-page{display:flex;flex-direction:column;gap:10px;padding-bottom:110px}
.km-pos-head{position:sticky;top:calc(var(--km-top) + var(--km-safe-t));z-index:20;background:var(--km-bg);padding:10px 0 4px;margin:0 -12px;padding-left:12px;padding-right:12px;display:flex;flex-direction:column;gap:8px}
html.km body.km-typing .km-pos-head{top:0}
.km-cust{display:flex;align-items:center;gap:10px;border:1px solid var(--km-line);background:var(--km-panel);border-radius:14px;padding:8px 10px;text-align:left;color:var(--km-ink)}
.km-cust-av{width:36px;height:36px;border-radius:50%;background:var(--km-soft);color:var(--km-brand);display:grid;place-items:center;flex:none;font-weight:800;font-size:13px}
.km-cust-av.sm{width:38px;height:38px}
.km-cust-av .km-ic{width:19px;height:19px}
.km-cust-main{flex:1;min-width:0;display:flex;flex-direction:column}
.km-cust-main b{font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.km-cust-main small{font-size:12px;color:var(--km-muted)}
.km-cust-change{color:var(--km-brand);font-weight:700;font-size:13px}
.km-search.pos{padding:0 4px}
.km-results{position:absolute;left:12px;right:12px;top:100%;margin-top:-2px;max-height:min(62vh,520px);overflow:auto;background:var(--km-panel);border:1px solid var(--km-line);border-radius:16px;box-shadow:0 18px 40px rgba(0,0,0,.18);z-index:30;-webkit-overflow-scrolling:touch}
.km-results-head{position:sticky;top:0;background:var(--km-panel);padding:8px 12px;font-size:12px;color:var(--km-muted);border-bottom:1px solid var(--km-line);font-weight:600;z-index:1}
.km-results-empty{padding:18px;color:var(--km-muted);display:flex;gap:8px;align-items:center;justify-content:center}
.km-res{width:100%;display:flex;gap:10px;justify-content:space-between;align-items:center;padding:10px 12px;border:0;border-bottom:1px solid var(--km-line);background:transparent;text-align:left;color:var(--km-ink);min-height:62px}
.km-res:active{background:var(--km-soft)}
.km-res.dim .km-res-main b{opacity:.7}
.km-res-main{min-width:0;display:flex;flex-direction:column;gap:5px}
.km-res-main b{font-size:14px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.km-res-main small{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.km-res-side{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex:none}
.km-res-side strong{font-size:15px;color:var(--km-ok);white-space:nowrap}
.km-cart-head{display:flex;justify-content:space-between;align-items:center;margin-top:2px}
.km-cart-head h3{margin:0;font-size:16px;font-weight:800;color:var(--km-ink)}
.km-cart-head h3 span{color:var(--km-muted);font-weight:600}
.km-cart{display:flex;flex-direction:column;gap:8px}
.km-cart .km-empty{background:var(--km-panel);border:1.5px dashed var(--km-line);border-radius:18px;padding:34px 12px}
.km-item{background:var(--km-panel);border:1px solid var(--km-line);border-radius:16px;padding:10px 6px 10px 12px;display:grid;grid-template-columns:1fr auto;gap:6px 4px}
.km-item.sel{border-color:#fdba74}
.km-item.short{border-color:var(--km-bad);background:linear-gradient(0deg,var(--km-badbg),var(--km-badbg)) padding-box}
.km-item-main{min-width:0;display:flex;flex-direction:column;gap:5px}
.km-item-main>b{font-size:14.5px;line-height:1.25}
.km-item-main small{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.km-lvl{font-size:11px;font-weight:800;color:#6d28d9;background:#ede9fe;border-radius:6px;padding:1px 7px}
html.km[data-theme="dark"] .km-lvl{background:#2e1f4d;color:#c4b5fd}
.km-exist{font-size:11.5px;color:var(--km-muted);font-weight:600}
.km-exist.bad{color:var(--km-bad)}
.km-ws{color:var(--km-muted);font-size:12px}
.km-ws .km-ic{width:14px;height:14px;display:inline}
.km-item-menu{width:36px;height:36px;color:var(--km-muted)}
.km-item-foot{grid-column:1/-1;display:flex;align-items:center;gap:10px;padding-right:6px}
.km-step{display:flex;align-items:center;border:1.5px solid var(--km-line);border-radius:12px;overflow:hidden;height:42px}
.km-step button{width:42px;height:100%;border:0;background:var(--km-bg);color:var(--km-ink);display:grid;place-items:center}
.km-step button .km-ic{width:18px;height:18px}
.km-step button:first-child{color:var(--km-bad)}
.km-step input{width:52px;height:100%;border:0;text-align:center;font-weight:800;font-size:16px;background:var(--km-panel);color:var(--km-ink);-moz-appearance:textfield}
.km-step input::-webkit-inner-spin-button,.km-step input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.km-each{color:var(--km-muted);font-size:12.5px;flex:1}
.km-item-foot strong{font-size:16px;white-space:nowrap;color:var(--km-ink)}
.km-opts{background:var(--km-panel);border:1px solid var(--km-line);border-radius:16px;overflow:hidden}
.km-opts summary{list-style:none;padding:12px 14px;display:flex;align-items:center;gap:8px;font-weight:700;font-size:14px;color:var(--km-ink);cursor:pointer}
.km-opts summary::-webkit-details-marker{display:none}
.km-opts summary .km-ic{width:18px;height:18px;color:var(--km-brand)}
.km-opts summary small{margin-left:auto;color:var(--km-muted);font-weight:500;font-size:12px}
.km-opts-grid{display:grid;grid-template-columns:1fr;gap:10px;padding:0 14px 14px}
.km-opts-grid label{display:flex;flex-direction:column;gap:5px;font-size:12.5px;font-weight:700;color:var(--km-muted)}
.km-opts-grid label[hidden]{display:none}
.km-paybar{position:fixed;z-index:50;left:0;right:0;bottom:calc(var(--km-nav) + var(--km-safe-b));padding:8px 12px 10px;background:color-mix(in srgb,var(--km-panel) 96%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--km-line);box-shadow:0 -8px 20px rgba(0,0,0,.06)}
.km-paybar-sum{display:flex;gap:14px;font-size:12.5px;color:var(--km-muted);margin-bottom:7px;justify-content:space-between}
.km-paybar-sum b{color:var(--km-ink)}
.km-paybar-sum span[hidden]{display:none}
.km-paybar-row{display:flex;gap:8px}
.km-more-btn{width:54px;height:54px;border-radius:16px;border:1.5px solid var(--km-line);background:var(--km-panel);color:var(--km-ink);display:grid;place-items:center;flex:none}
.km-charge{flex:1;height:54px;border:0;border-radius:16px;background:linear-gradient(135deg,#ff7a1a,#e04e0f);color:#fff;font-size:16px;font-weight:800;letter-spacing:.02em;text-transform:uppercase;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 10px 22px rgba(240,90,26,.32)}
.km-charge b{font-size:19px;color:#fff}
.km-charge:disabled{background:var(--km-line);color:var(--km-muted);box-shadow:none}
.km-charge:disabled b{color:var(--km-muted)}

/* ---------- hojas ---------- */
.km-sheet-wrap{position:fixed;inset:0;z-index:200}
.km-sheet-backdrop{position:absolute;inset:0;background:rgba(10,12,16,.45);opacity:0;transition:opacity .2s}
.km-sheet{position:absolute;left:0;right:0;bottom:0;max-height:88vh;background:var(--km-panel);color:var(--km-ink);border-radius:24px 24px 0 0;box-shadow:0 -12px 40px rgba(0,0,0,.25);display:flex;flex-direction:column;transform:translateY(100%);transition:transform .22s cubic-bezier(.2,.8,.2,1);padding-bottom:var(--km-safe-b)}
.km-sheet.full{height:92vh}
.km-sheet-wrap.open .km-sheet{transform:none}
.km-sheet-wrap.open .km-sheet-backdrop{opacity:1}
.km-sheet-grip{width:42px;height:5px;border-radius:9px;background:var(--km-line);margin:8px auto 2px;flex:none}
.km-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 10px 6px 18px;flex:none}
.km-sheet-head h3{margin:0;font-size:17px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--km-ink)}
.km-sheet-body>*{flex-shrink:0}
.km-sheet-body{overflow:auto;padding:6px 16px 20px;display:flex;flex-direction:column;gap:12px;-webkit-overflow-scrolling:touch}
html.km-wide .km-sheet{left:50%;right:auto;width:min(620px,100vw);transform:translate(-50%,100%);border-radius:24px 24px 0 0}
html.km-wide .km-sheet-wrap.open .km-sheet{transform:translate(-50%,0)}
.km-list{display:flex;flex-direction:column;gap:4px}
.km-list-row{width:100%;display:flex;align-items:center;gap:12px;padding:10px;border:0;border-radius:14px;background:transparent;color:var(--km-ink);text-align:left;min-height:56px}
.km-list-row:active,.km-list-row.active{background:var(--km-soft)}
.km-list-row.danger{color:var(--km-bad)}
.km-list-row>.km-ic{width:18px;color:var(--km-muted)}
.km-row-ic{width:40px;height:40px;border-radius:12px;background:var(--km-bg);display:grid;place-items:center;flex:none}
.km-list-row.danger .km-row-ic{background:var(--km-badbg)}
.km-row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.km-row-main b{font-size:15px;font-weight:700}
.km-row-main small{font-size:12.5px;color:var(--km-muted)}
.km-ok{color:var(--km-brand)}
.km-user-card{display:flex;gap:14px;align-items:center;padding:4px 2px 6px}
.km-user-card b{display:block;font-size:17px}
.km-user-card small{display:block;color:var(--km-muted);font-size:13px;margin-top:2px}
.km-conn{display:flex!important;align-items:center;gap:6px}
.km-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;background:var(--km-bg);padding:5px;border-radius:14px}
.km-seg button{border:0;background:transparent;border-radius:10px;padding:8px 4px;color:var(--km-muted);font-weight:700;font-size:12.5px;display:flex;flex-direction:column;align-items:center;gap:3px}
.km-seg button.active{background:var(--km-panel);color:var(--km-brand);box-shadow:0 1px 4px rgba(0,0,0,.08)}
.km-seg .km-ic{width:19px;height:19px}
.km-version{text-align:center;color:var(--km-muted);font-size:12px;margin:4px 0 0}
.km-help{font-size:14.5px;line-height:1.5;color:var(--km-ink)}
.km-help ol{padding-left:20px;margin:0 0 8px}
.km-help p{margin:0 0 8px}
.km-menu-search{display:flex;align-items:center;gap:8px;background:var(--km-bg);border-radius:12px;padding:0 12px;height:46px;color:var(--km-muted);flex:none}
.km-menu-search input{flex:1;border:0;background:transparent;outline:0;font-size:15px;color:var(--km-ink)}
.km-menu-group h4{margin:4px 2px 8px;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--km-muted)}
.km-menu-group[hidden],.km-tile[hidden]{display:none}
.km-menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
html.km-wide .km-menu-grid{grid-template-columns:repeat(4,1fr)}
.km-tile{border:1px solid var(--km-line);background:var(--km-panel);border-radius:16px;min-height:92px;padding:10px 6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:var(--km-ink);font-size:12.5px;font-weight:600;line-height:1.2;text-align:center}
.km-tile:active{background:var(--km-soft);border-color:#fdba74}
.km-tile-ic{width:40px;height:40px;border-radius:13px;background:var(--km-soft);color:var(--km-brand);display:grid;place-items:center;font-size:20px}
.km-manual{display:flex;gap:8px}
.km-manual input{flex:1;min-width:0;height:44px;border:1.5px solid var(--km-line);border-radius:12px;background:var(--km-bg);color:var(--km-ink);padding:0 12px;font-size:14.5px}
.km-done-box{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:8px 0}
.km-done-check{width:72px;height:72px;border-radius:50%;background:var(--km-okbg);color:var(--km-ok);display:grid;place-items:center}
.km-done-check .km-ic{width:40px;height:40px;stroke-width:2.6}
.km-done-box h3{margin:0;font-size:20px}
.km-done-box p{margin:0;color:var(--km-muted)}
.km-done-box>strong{font-size:30px;color:var(--km-ink)}
.km-done-box .km-btn-grid{width:100%}

/* ---------- cobro ---------- */
html.km .modal-backdrop{align-items:flex-end!important;padding:0!important}
html.km .payment-modal{width:100vw!important;max-width:100vw!important;height:100%!important;max-height:100dvh!important;border-radius:0!important;display:flex!important;flex-direction:column!important;margin:0!important}
html.km .payment-modal .payment-titlebar{padding:calc(10px + var(--km-safe-t)) 14px 10px!important}
html.km .payment-modal .payment-titlebar h3{font-size:17px!important}
html.km .payment-modal .payment-methods{display:flex!important;overflow-x:auto;gap:8px!important;padding:10px 12px!important;scrollbar-width:none;flex:none}
html.km .payment-modal .payment-methods::-webkit-scrollbar{display:none}
html.km .payment-modal .payment-method{flex:none!important;min-width:88px!important;min-height:70px!important;padding:8px!important;border-radius:14px!important}
html.km .payment-modal .payment-method small{display:none!important}
html.km .payment-modal .payment-total{flex:none;margin:0 12px!important;border-radius:16px!important;padding:12px 16px!important}
html.km .payment-modal .payment-total strong{font-size:30px!important}
html.km .payment-modal .payment-body{flex:1;overflow:auto;padding:12px!important}
html.km .payment-modal .payment-field-row,html.km .payment-modal .payment-form-grid,html.km .payment-modal .credit-summary,html.km .payment-modal .combined-grid,html.km .payment-modal .combined-summary{grid-template-columns:1fr!important;display:grid!important;gap:10px!important}
html.km .payment-modal .payment-amount-card{display:none!important}
html.km .payment-modal input,html.km .payment-modal select{min-height:50px!important;font-size:18px!important;border-radius:12px!important}
html.km .payment-modal #pay-received{font-size:26px!important;font-weight:800!important;min-height:60px!important}
html.km .payment-modal .payment-change{border-radius:14px!important;min-height:64px}
html.km .payment-modal .payment-change strong{font-size:26px!important}
html.km .payment-modal .payment-footer{flex:none;padding:10px 12px calc(10px + var(--km-safe-b))!important;display:flex!important;flex-direction:column!important;gap:10px!important;align-items:stretch!important}
html.km .payment-modal .payment-footer>div{display:grid!important;grid-template-columns:1fr 1.6fr;gap:10px}
html.km .payment-modal .payment-footer .btn{min-height:54px!important;font-size:16px!important;border-radius:14px!important;justify-content:center;display:flex;align-items:center;gap:6px}
html.km .payment-modal .payment-confirm .km-ic{width:20px;height:20px}
html.km .payment-modal .payment-print{font-size:14px}
.km-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}
.km-quick button{height:50px;border-radius:14px;border:1.5px solid var(--km-line);background:var(--km-panel);color:var(--km-ink);font-weight:800;font-size:15px}
.km-quick button:first-child{background:var(--km-soft);border-color:#fdba74;color:var(--km-brand)}
.km-quick button.active{background:var(--km-brand);border-color:var(--km-brand);color:#fff}
html.km .sale-complete-modal{width:calc(100vw - 24px)!important;max-width:460px!important;margin:auto!important}
html.km .sale-complete-backdrop{align-items:center!important;padding:12px!important}
.km-done-actions{width:100%;margin:6px 0 4px}

/* ---------- ventanas de KAIROS en pantalla chica ---------- */
html.km .modal-backdrop>.modal{width:100vw!important;max-width:100vw!important;max-height:94dvh!important;border-radius:22px 22px 0 0!important;margin:0!important;display:flex;flex-direction:column}
html.km .modal-backdrop>.modal .modal-body{overflow:auto;max-height:none!important;flex:1;-webkit-overflow-scrolling:touch}
html.km .modal-backdrop>.modal .modal-footer{padding-bottom:calc(12px + var(--km-safe-b))!important;display:flex;gap:10px;flex-wrap:wrap}
html.km .modal-backdrop>.modal .modal-footer .btn{flex:1;min-height:48px;justify-content:center}
html.km .modal .form-grid,html.km .modal .grid.cols-2,html.km .modal .grid.cols-3{grid-template-columns:1fr!important}
html.km .modal .form-group.full,html.km .modal .form-group{grid-column:auto!important}
html.km .modal .control,html.km .content .control{min-height:44px;font-size:16px}
html.km .price-options{grid-template-columns:1fr!important}
html.km-wide .modal-backdrop{align-items:center!important;padding:20px!important}
html.km-wide .modal-backdrop>.modal{width:min(760px,96vw)!important;border-radius:22px!important}
html.km-wide .payment-modal{width:min(760px,96vw)!important;height:auto!important;max-height:94dvh!important;border-radius:22px!important}

/* ---------- las demás pantallas ---------- */
html.km .content .grid.cols-2,html.km .content .grid.cols-3{grid-template-columns:1fr!important}
html.km .content .grid.cols-4{grid-template-columns:1fr 1fr!important;gap:8px!important}
html.km-wide .content .grid.cols-4,html.km-wide .content .grid.cols-3{grid-template-columns:1fr 1fr!important}
html.km .content .toolbar{flex-wrap:wrap;gap:8px}
html.km .content .toolbar-left,html.km .content .toolbar-right{flex-wrap:wrap;width:100%}
html.km .content .toolbar .control,html.km .content .toolbar .btn{flex:1 1 140px}
html.km .content .table-wrap,html.km .content .card{overflow-x:auto;-webkit-overflow-scrolling:touch}
html.km .content table{min-width:560px}
html.km .content .card{border-radius:16px}
html.km .content .btn{min-height:42px}

/* ---------- acceso ---------- */
html.km .login-screen{padding:calc(16px + var(--km-safe-t)) 16px 16px!important;align-items:flex-start!important;min-height:100dvh}
html.km .login-card{width:100%!important;max-width:440px!important;margin:6vh auto 0!important;border-radius:24px!important;padding:26px 20px!important}
html.km .login-control{font-size:16px!important;min-height:52px!important}
html.km .login-submit{min-height:54px!important;font-size:16px!important;border-radius:14px!important}

/* ---------- cámara ---------- */
.km-scan{position:fixed;inset:0;z-index:400;background:#000;display:flex;flex-direction:column}
.km-scan video{flex:1;width:100%;height:100%;object-fit:cover}
.km-scan-frame{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}
.km-scan-frame i{width:min(78vw,340px);height:min(40vw,170px);border:3px solid rgba(255,255,255,.9);border-radius:18px;box-shadow:0 0 0 100vmax rgba(0,0,0,.45);position:relative;overflow:hidden}
.km-scan-frame i:after{content:'';position:absolute;left:8%;right:8%;height:2px;background:#ff7a1a;box-shadow:0 0 12px #ff7a1a;top:50%;animation:km-scan 1.6s ease-in-out infinite alternate}
@keyframes km-scan{from{transform:translateY(-60px)}to{transform:translateY(60px)}}
.km-scan-bar{position:absolute;left:0;right:0;bottom:0;padding:16px 16px calc(18px + var(--km-safe-b));display:flex;align-items:center;gap:10px;justify-content:space-between;color:#fff;background:linear-gradient(0deg,rgba(0,0,0,.7),transparent)}
.km-scan-bar span{font-weight:600}
.km-scan-bar .km-icon-btn{background:rgba(255,255,255,.15);color:#fff}

/* ---------- receptor de tickets (en la caja) ---------- */
.km-relay-card{border:1px solid #fed7aa;background:#fff7ed;border-radius:14px;padding:14px 16px;margin-bottom:14px}
.km-relay-card h3{margin:0 0 8px;font-size:15px}
.km-relay-toggle{display:flex;gap:10px;align-items:flex-start;font-weight:600}
.km-relay-card p{margin:8px 0 0;font-size:13px;color:#7c2d12}
html[data-theme="dark"] .km-relay-card{background:#2a1a0c;border-color:#7c2d12}
html[data-theme="dark"] .km-relay-card p{color:#fdba74}

/* ---------- tablet horizontal: productos a la izquierda, venta a la derecha ---------- */
@media (min-width:980px){
  html.km .km-pos-page{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);grid-template-rows:auto 1fr;gap:12px 16px;padding-bottom:0}
  html.km .km-pos-head{grid-column:1;grid-row:1/3;position:sticky;align-self:start;margin:0;padding:10px 0;height:calc(100dvh - var(--km-top) - var(--km-nav) - 30px)}
  html.km .km-results{position:static;display:block!important;flex:1;max-height:none;box-shadow:none;margin:0}
  html.km .km-results[hidden]{display:flex!important;align-items:center;justify-content:center;color:var(--km-muted)}
  html.km .km-results[hidden]:before{content:'Buscá o escaneá un producto';font-size:14px}
  html.km .km-pos-page{grid-template-rows:auto 1fr auto}
  html.km .km-pos-head{grid-row:1/4}
  html.km .km-pos-body{grid-column:2;grid-row:1/3;padding-top:10px;padding-bottom:0}
  html.km .km-paybar{position:sticky;grid-column:2;grid-row:3;left:auto;right:auto;width:auto;bottom:calc(var(--km-nav) + var(--km-safe-b) + 8px);border-radius:18px;border:1px solid var(--km-line);margin-top:10px}
  html.km .km-actions{grid-template-columns:repeat(4,1fr)}
  html.km .km-dash{display:grid;grid-template-columns:1fr 1fr;align-items:start}
  html.km .km-dash>.km-hero,html.km .km-dash>.km-actions{grid-column:1/-1}
  html.km .km-sale-list,html.km .km-plist{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  html.km .km-card .km-sale-list{grid-template-columns:1fr}
  html.km .km-day{grid-column:1/-1}
}

/* ---------- ajustes finos del cobro y avisos ---------- */
html.km .payment-modal .payment-total{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}
html.km .payment-modal .payment-total small{display:none!important}
html.km .payment-modal .payment-total strong{white-space:nowrap;text-align:right!important;letter-spacing:0!important}
html.km .payment-modal .payment-field-row{margin-top:4px!important}
html.km .payment-modal .payment-field-row label{font-size:14px!important;font-weight:700;color:var(--km-muted);flex-direction:column!important;align-items:stretch!important;gap:6px!important}
html.km .payment-modal .payment-field-row input{width:100%!important;border:1.5px solid var(--km-line)!important;border-radius:14px!important;padding:8px 14px!important;background:var(--km-panel);color:var(--km-ink)}
html.km .payment-modal .payment-field-row input:focus{border-color:var(--km-brand)!important;outline:0}
html.km .payment-modal .payment-change{display:flex!important;justify-content:space-between;align-items:center;padding:12px 16px!important;background:var(--km-okbg);border-radius:14px}
html.km .payment-modal .payment-change.short{background:var(--km-badbg)}
html.km .payment-modal .payment-change span{font-weight:800;font-size:14px}
html.km .payment-modal .payment-print{display:flex!important;align-items:center;gap:10px;font-size:14px;font-weight:600}
html.km .payment-modal .payment-print input{width:22px;height:22px;min-height:0!important;flex:none}
html.km .payment-modal .payment-body label{font-size:13.5px}
html.km .toast-root{left:12px!important;right:12px!important;bottom:auto!important;top:calc(var(--km-top) + var(--km-safe-t) + 8px)!important;z-index:450!important;justify-items:center}
html.km .toast{max-width:560px;border-radius:14px!important;font-size:14px;box-shadow:0 10px 26px rgba(0,0,0,.25)}
html.km body.auth-locked .toast-root{top:calc(12px + var(--km-safe-t))!important}
.km-back-mobile{position:fixed;z-index:300;left:12px;bottom:12px;display:flex;align-items:center;gap:6px;border:0;border-radius:999px;padding:10px 14px;background:#111315;color:#fff;font-weight:700;font-size:13px;box-shadow:0 8px 20px rgba(0,0,0,.3)}
.km-back-mobile .km-ic{width:18px;height:18px}
body.auth-locked .km-back-mobile{display:none}
html.km .km-search input,html.km .km-menu-search input,html.km .km-date input{background:transparent!important;border:0!important;box-shadow:none!important}
html.km[data-theme="dark"] .km-select,html.km[data-theme="dark"] .km-manual input,html.km[data-theme="dark"] .km-step input,html.km[data-theme="dark"] .km-dates input{background:var(--km-panel)!important;color:var(--km-ink)!important;border-color:var(--km-line)!important}

/* tarjetas de indicadores y lista de clientes en pantalla chica */
html.km .content .kpi{padding:12px!important;min-height:0!important}
html.km .content .kpi .kpi-value{font-size:22px!important;margin:4px 0!important}
html.km .content .kpi .kpi-label{font-size:12px!important}
html.km .content .kpi .kpi-meta{font-size:11.5px!important}
html.km .content .kpi .kpi-icon{width:30px!important;height:30px!important;font-size:15px!important}
html.km .cm-card{overflow:visible!important}
html.km .cm-toolbar{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
html.km .cm-card table{min-width:0!important;width:100%}
html.km .cm-card thead{display:none}
html.km .cm-card tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;padding:12px 4px;border-bottom:1px solid var(--km-line)}
html.km .cm-card tbody td{display:block;border:0!important;padding:0!important;background:transparent!important}
html.km .cm-card tbody td:nth-child(1){grid-column:1/-1}
html.km .cm-card tbody td:nth-child(3){display:none}
html.km .cm-card tbody td:nth-child(5){display:none}
html.km .cm-card tbody td.num{text-align:right}
html.km .cm-card tbody td.cm-actions{grid-column:1/-1;display:flex;gap:8px}
html.km .cm-card tbody td.cm-actions .cm-btn{flex:1;min-height:40px}
html.km .cloud-view-bar{display:none!important}
#km-nav button.km-off{opacity:.45}
#km-nav button.km-off .km-nav-ic{filter:grayscale(1)}
html.km .update-banner{position:relative;margin-top:calc(var(--km-top) + var(--km-safe-t))}
html.km .cm-card table,html.km .cm-card tbody{display:block!important;width:100%!important;min-width:0!important;table-layout:auto!important}
html.km .cm-card colgroup{display:none}
html.km .cm-card tbody tr{width:100%!important}
html.km .cm-card tbody td{width:auto!important;max-width:none!important;min-width:0!important}
html.km .cm-card .cm-client{display:flex;align-items:center;gap:10px}
html.km .cm-card .cm-client strong{display:block}
html.km .cm-card .cm-client small,html.km .cm-card td small{display:block}
html.km .cm-card tbody tr{grid-template-columns:minmax(0,1fr) auto auto!important;align-items:center;gap:6px 14px!important}
html.km .cm-card tbody td:nth-child(2){color:var(--km-muted);font-size:13px}
html.km .cm-card tbody td:nth-child(4){text-align:right;font-size:12px}
html.km .cm-card tbody td:nth-child(4) small{display:inline!important;margin-left:4px}

/* 1.13.0: foto del producto con la cámara */
@media (hover:hover) and (pointer:fine){.pe-camera-btn{display:none!important}}
.km-photo-hint{margin:10px 2px 0;font-size:13px;color:var(--km-muted,#64748b)}
