:root{
  --bg:#eef2f6;
  --surface:#ffffff;
  --surface-soft:#f7f9fc;
  --surface-alt:#edf4fb;
  --text:#1f2937;
  --muted:#64748b;
  --line:#d7dee7;
  --line-strong:#c3cfdb;
  --primary:#1f5f8b;
  --primary-strong:#134665;
  --primary-soft:#e7f1f9;
  --success:#1f8f5f;
  --success-soft:#eaf8f1;
  --warning:#f08c2e;
  --warning-soft:#fff3e8;
  --danger:#d54f45;
  --danger-soft:#fff0ee;
  --shadow:0 10px 26px rgba(15,23,42,.07);
  --shadow-soft:0 4px 14px rgba(15,23,42,.06);
  --radius:14px;
  --radius-sm:10px;
  --header-height:164px;
  --content-max:1680px;
}
body.dark-mode{
  --bg:#101720;
  --surface:#18222d;
  --surface-soft:#111a24;
  --surface-alt:#223241;
  --text:#e6edf5;
  --muted:#9db0c4;
  --line:#2b3a49;
  --line-strong:#375069;
  --primary:#4ea3d9;
  --primary-strong:#77b9e3;
  --primary-soft:#173249;
  --success:#3dbb7a;
  --success-soft:#163326;
  --warning:#f2a84e;
  --warning-soft:#3f2d18;
  --danger:#f06b61;
  --danger-soft:#41211d;
  --shadow:0 14px 30px rgba(0,0,0,.28);
  --shadow-soft:0 4px 18px rgba(0,0,0,.18);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;background:linear-gradient(180deg,var(--bg),#f8fafc 48%,var(--bg));color:var(--text);font-size:14px;line-height:1.45}
body.dark-mode{background:linear-gradient(180deg,#0f1821,#111a24 52%,#0f1821)}
a{color:var(--primary)}
svg{display:block}
.app-shell-header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);box-shadow:0 3px 18px rgba(0,0,0,.07)}
body.dark-mode .app-shell-header{background:rgba(16,23,32,.96)}
.topbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:14px 22px;background:linear-gradient(90deg,var(--primary-strong),var(--primary));color:#fff}
.brand a{display:flex;align-items:center;gap:14px;color:#fff;text-decoration:none}
.brand-mark{width:46px;height:46px;border-radius:14px;background:rgba(255,255,255,.14);display:grid;place-items:center;font-weight:800;font-size:16px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.brand-text strong{display:block;font-size:22px;line-height:1.1}
.brand-text small{display:block;font-size:12px;opacity:.85;margin-top:2px}
.header-center{display:flex;justify-content:center}
.company-chip{display:inline-flex;align-items:center;gap:10px;padding:10px 16px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.16);border-radius:999px;font-weight:700;min-height:44px}
.user-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.user-name{font-weight:600;opacity:.95}
.top-action-link,.link-button{color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);text-decoration:none;padding:9px 12px;border-radius:10px;cursor:pointer;font:inherit}
.link-button:hover,.top-action-link:hover{background:rgba(255,255,255,.16)}
.theme-toggle{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#fff;padding:9px 12px;border-radius:999px;cursor:pointer;font:inherit}
.theme-icon{font-size:15px;line-height:1}.theme-label{font-weight:600;font-size:13px}.sun{display:inline}.moon{display:none}body.dark-mode .sun{display:none}body.dark-mode .moon{display:inline}
.primary-nav{display:flex;gap:8px;overflow:auto;padding:12px 18px;background:var(--surface);border-bottom:1px solid var(--line)}
.nav-link{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--text);padding:10px 14px;border-radius:12px;border:1px solid transparent;white-space:nowrap;font-weight:600;transition:.18s ease;background:transparent}
.nav-link:hover{background:var(--primary-soft);border-color:#cfe0ed;color:var(--primary-strong)}
.nav-link.active{background:var(--primary-soft);border-color:#bdd3e3;color:var(--primary-strong);box-shadow:var(--shadow-soft)}
.nav-icon{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:var(--surface-soft);color:var(--primary)}
.nav-icon svg{width:18px;height:18px}
.quick-toolbar{display:flex;gap:12px;overflow:auto;padding:14px 18px 16px;background:linear-gradient(180deg,var(--surface-soft),var(--surface));border-bottom:1px solid var(--line)}
.quick-action{display:flex;align-items:center;gap:12px;min-width:230px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 14px;text-decoration:none;color:var(--text);box-shadow:var(--shadow-soft)}
.quick-action:hover{border-color:#b7cad8;transform:translateY(-1px)}
.quick-action.action-sales{border-color:#bcd4e3;background:linear-gradient(180deg,#f8fbff,#eff6fb)}
.quick-action.action-cash{border-color:#bfe7d1;background:linear-gradient(180deg,#f5fcf8,#ecfbf3)}
body.dark-mode .quick-action.action-sales{background:linear-gradient(180deg,#132535,#162d3f)}
body.dark-mode .quick-action.action-cash{background:linear-gradient(180deg,#13261e,#173222)}
.quick-icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--surface-soft);font-size:21px}
.quick-meta strong{display:block;font-size:14px;color:var(--text)}
.quick-meta small{display:block;color:var(--muted)}
.content{max-width:var(--content-max);margin:0 auto;padding:26px 20px 42px}
.content-wide{max-width:1100px}
.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}.page-header h1{font-size:30px;margin:0 0 6px;letter-spacing:-.02em}.page-header p{margin:0}
h1{font-size:28px;margin:0 0 10px}h2{font-size:20px;margin:0 0 16px}h3{font-size:16px;margin:0 0 12px}.muted{color:var(--muted)}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);margin-bottom:20px}.table-card{overflow:auto;padding:0}.narrow{max-width:760px;margin-left:auto;margin-right:auto}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:20px}.stat{background:linear-gradient(180deg,var(--surface),var(--surface-soft));border:1px solid var(--line);border-radius:14px;padding:18px 18px 16px;box-shadow:var(--shadow-soft)}.stat span{display:block;color:var(--muted);margin-bottom:12px}.stat strong{font-size:26px;line-height:1.1}
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:12px;padding:11px 16px;text-decoration:none;cursor:pointer;font-weight:700;font-size:14px;transition:.18s ease}.button:hover{transform:translateY(-1px)}.button.primary{background:var(--primary);color:#fff}.button.primary:hover{background:var(--primary-strong)}.button.secondary{background:var(--surface);color:var(--primary);border-color:#bfd0dc}.button.success{background:var(--success);color:#fff}.button.danger{background:var(--danger-soft);color:var(--danger);border-color:#f0c2bd}
.form-stack{display:flex;flex-direction:column;gap:14px}.form-stack p,.form-grid p{margin:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid .form-actions{grid-column:1/-1}
.form-control,select,input,textarea{width:100%;border:1px solid var(--line-strong);border-radius:12px;padding:10px 12px;background:var(--surface);color:var(--text);outline:none;transition:border-color .18s ease, box-shadow .18s ease}select:focus,input:focus,textarea:focus{border-color:#6ea6cc;box-shadow:0 0 0 4px rgba(58,136,193,.12)}
input[type=checkbox]{width:auto}label{display:block;font-weight:700;margin-bottom:7px;color:var(--text)}.helptext{display:block;color:var(--muted);font-size:12px;margin-top:5px}.errorlist,.error-list{color:var(--danger);margin:4px 0;padding-left:18px}.form-actions,.action-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:20px}
.search-bar{display:flex;gap:10px;margin-bottom:16px;max-width:720px}
table{width:100%;border-collapse:collapse}th,td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;background:var(--surface-soft)}tr:hover td{background:rgba(31,95,139,.02)}body.dark-mode tr:hover td{background:rgba(78,163,217,.05)}.numeric{text-align:right}.empty{text-align:center;color:var(--muted);padding:26px}
.badge{display:inline-block;background:var(--primary-soft);color:var(--primary-strong);border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700}.badge.success{background:var(--success-soft);color:var(--success)}.badge.danger{background:var(--danger-soft);color:var(--danger)}.badge.neutral{background:#edf0f5;color:#4b5563}body.dark-mode .badge.neutral{background:#1d2b38;color:#bed1e3}
.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.totals{display:flex;gap:24px;justify-content:flex-end;flex-wrap:wrap;padding:18px}.totals strong{font-size:18px}
.alert{padding:13px 15px;border-radius:12px;margin-bottom:16px;border:1px solid}.alert-success{background:var(--success-soft);color:var(--success);border-color:#bfe6ce}.alert-error{background:var(--danger-soft);color:var(--danger);border-color:#f0c2bd}.alert-warning,.warning-box{background:var(--warning-soft);color:#9a580f;border:1px solid #f3c58f}.alert-info,.info-box{background:var(--primary-soft);color:var(--primary-strong);border:1px solid #bfd4e2}.warning-box,.info-box{padding:14px;border-radius:12px;margin:14px 0}
.invoice-box{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px;background:var(--surface-soft);border:1px solid var(--line);border-radius:12px}
.filter-bar{display:grid;grid-template-columns:minmax(240px,2fr) minmax(200px,1fr) minmax(160px,1fr) auto auto;gap:10px;margin-bottom:16px;align-items:center}.stock-warning{color:var(--danger)!important;font-weight:700}.stock-card .table-scroll{border:1px solid var(--line);border-radius:12px}.status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.status-item{border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--surface-soft)}.status-item span,.status-item small{display:block;color:var(--muted)}.status-item strong{display:block;font-size:18px;margin:6px 0}

/* Configuración comercial */
.config-hero{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:var(--shadow);margin-bottom:20px}.config-hero-title{margin-bottom:18px}.config-hero-title h2{font-size:22px;margin:4px 0 6px}.config-kicker{font-size:11px;letter-spacing:.12em;font-weight:800;color:var(--primary)}.config-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}.config-shortcuts.compact{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:0}.config-shortcut{display:flex;flex-direction:column;gap:6px;padding:15px;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:var(--text);background:var(--surface-soft);min-height:100px}.config-shortcut:hover{border-color:#9cb6c5;background:var(--surface-alt)}.config-shortcut strong{color:var(--primary-strong)}.config-shortcut span{font-size:12.5px;color:var(--muted);line-height:1.45}.billing-rules-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.billing-rule{display:flex;gap:12px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft)}.billing-rule p{color:var(--muted);margin:5px 0 0;line-height:1.4}.letter-chip{width:38px;height:38px;min-width:38px;border:2px solid var(--primary);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800;color:var(--primary)}
.document-catalog-grid,.document-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.document-catalog,.document-action-panel{border:1px solid var(--line);border-radius:14px;padding:18px;background:var(--surface-soft)}.document-catalog p{margin:7px 0}.document-catalog small{color:var(--muted);line-height:1.45}.fiscal-doc{border-left:4px solid var(--primary)}.internal-doc{border-left:4px solid var(--warning)}.config-details{margin:0 0 20px;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.config-details summary{cursor:pointer;padding:18px 22px;font-size:18px;font-weight:700}.config-details-body{padding:0 20px 2px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}

/* Selector único de comprobantes y workspace */
.document-chooser{display:flex;align-items:end;gap:1rem;padding:1rem;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft)}.document-chooser-field{flex:1;min-width:260px}.document-chooser-preview{min-width:240px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-soft)}.document-chooser-preview strong{display:block;font-size:19px;margin-top:5px}
.workspace-shell{display:flex;flex-direction:column;gap:18px}.workspace-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px;background:linear-gradient(135deg,var(--surface),var(--surface-soft));border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.workspace-hero h1{margin-bottom:6px}.workspace-kpis{display:flex;gap:12px;flex-wrap:wrap}.kpi-pill{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:10px 14px;font-weight:700;color:var(--text);box-shadow:var(--shadow-soft)}
.workspace-card{padding:0;overflow:hidden;border-radius:18px}.workspace-menubar{padding:14px 18px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--surface-soft),var(--surface))}.workspace-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:stretch}.tool-button{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid var(--line-strong);background:var(--surface);border-radius:14px;cursor:pointer;font-weight:700;color:var(--text)}.tool-button svg{width:20px;height:20px;color:var(--primary)}.tool-button.primary{background:var(--primary);border-color:var(--primary);color:#fff}.tool-button.primary svg{color:#fff}.tool-button.success{background:var(--success-soft);border-color:#bfe5d0}.tool-button.warning{background:var(--warning-soft);border-color:#f3c58f}.tool-button.danger{background:var(--danger-soft);border-color:#efc1bc}.workspace-tabs{display:flex;gap:4px;overflow:auto;padding:12px 14px 0;background:var(--surface-alt);border-bottom:1px solid var(--line)}.workspace-tab{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-bottom:0;background:var(--surface-soft);padding:10px 14px;border-top-left-radius:14px;border-top-right-radius:14px;cursor:pointer;white-space:nowrap;color:var(--text)}.workspace-tab.active{background:var(--surface);font-weight:800;color:var(--primary-strong);box-shadow:var(--shadow-soft)}.workspace-tab .close-tab{border:0;background:none;color:var(--muted);font-size:18px;cursor:pointer;line-height:1}.workspace-panels{background:var(--surface)}.workspace-panel{display:none;height:calc(100vh - 360px);min-height:760px}.workspace-panel.active{display:block}.workspace-panel iframe{width:100%;height:100%;border:0;background:var(--surface)}.workspace-legend{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.legend-item{display:inline-flex;align-items:center;gap:8px;background:var(--surface);padding:8px 10px;border:1px solid var(--line);border-radius:999px;font-size:12px;color:var(--muted)}.legend-dot{width:10px;height:10px;border-radius:50%}.legend-blue{background:var(--primary)}.legend-green{background:var(--success)}.legend-orange{background:var(--warning)}.legend-red{background:var(--danger)}

.auth-card{max-width:460px;margin:50px auto;background:var(--surface);padding:34px;border-radius:16px;border:1px solid var(--line);box-shadow:var(--shadow)}

@media(max-width:1200px){.config-shortcuts,.billing-rules-grid,.status-grid{grid-template-columns:1fr 1fr}.document-catalog-grid,.document-actions-grid{grid-template-columns:1fr}.workspace-panel{height:calc(100vh - 390px);min-height:640px}}
@media(max-width:900px){.topbar{grid-template-columns:1fr;justify-items:start}.header-center,.user-actions{width:100%;justify-content:flex-start}.user-actions{gap:8px}.quick-toolbar,.primary-nav{padding-left:12px;padding-right:12px}.content{padding:18px 12px 32px}.page-header,.workspace-hero{flex-direction:column}.form-grid,.two-columns,.config-details-body{grid-template-columns:1fr}.filter-bar{grid-template-columns:1fr}.document-chooser{flex-direction:column;align-items:stretch}.document-chooser-preview{min-width:auto}.workspace-panel{height:calc(100vh - 440px);min-height:540px}.tool-button span{white-space:nowrap}}
@media(max-width:640px){.brand-text strong{font-size:18px}.brand-mark{width:40px;height:40px;border-radius:12px}.company-chip{padding:9px 14px}.quick-action{min-width:210px}.stats-grid,.config-shortcuts,.billing-rules-grid,.status-grid{grid-template-columns:1fr}.workspace-panel{min-height:480px}.theme-label{display:none}}

/* =========================================================
   v1.05.2 - INTERFAZ COMPACTA DE ESCRITORIO / POS
   ========================================================= */
:root{--compact-blue:#205d83;--compact-blue-dark:#15445f;--compact-green:#25845b;--compact-orange:#e8872f;--compact-red:#c94a42}
body{font-size:12.5px;background:var(--bg)}
.app-shell-header{position:sticky;top:0;z-index:50;background:var(--surface);box-shadow:0 2px 10px rgba(15,23,42,.08)}
.compact-topbar{height:38px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:0 10px;background:linear-gradient(90deg,var(--compact-blue-dark),var(--compact-blue));color:#fff}
.compact-brand{display:flex;align-items:center;gap:7px;color:#fff;text-decoration:none;white-space:nowrap}.brand-symbol{display:grid;place-items:center;width:25px;height:25px;border-radius:6px;background:rgba(255,255,255,.15);font-size:10px;font-weight:800}.compact-brand strong{font-size:14px}.version-tag{font-size:9px;opacity:.75}.compact-company{text-align:center;font-weight:700;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compact-user{display:flex;align-items:center;gap:5px;white-space:nowrap}.compact-user>span{font-size:11px;max-width:170px;overflow:hidden;text-overflow:ellipsis}.icon-button{border:0;text-decoration:none;display:inline-grid;place-items:center;cursor:pointer}.header-icon{width:27px;height:27px;border-radius:6px;background:rgba(255,255,255,.1);color:#fff;font-size:14px}.header-icon:hover{background:rgba(255,255,255,.2)}.theme-moon{display:none}body.dark-mode .theme-sun{display:none}body.dark-mode .theme-moon{display:inline}
.menu-strip{height:34px;display:flex;align-items:stretch;gap:0;overflow-x:auto;background:var(--surface);border-bottom:1px solid var(--line);padding:0 4px}.menu-item{display:inline-flex;align-items:center;gap:5px;padding:0 10px;color:var(--text);text-decoration:none;font-size:10.5px;font-weight:700;white-space:nowrap;border-bottom:2px solid transparent}.menu-item:hover{background:var(--primary-soft);color:var(--primary-strong)}.menu-item.active{color:var(--primary-strong);border-bottom-color:var(--primary);background:var(--primary-soft)}.mini-icon{font-size:13px;color:var(--primary)}
.icon-toolbar{height:47px;display:flex;align-items:center;gap:4px;overflow-x:auto;padding:4px 8px;background:var(--surface-soft);border-bottom:1px solid var(--line)}.toolbar-icon{position:relative;display:grid;place-items:center;width:39px;height:37px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--primary);text-decoration:none;font-size:18px;font-weight:800;box-shadow:0 1px 2px rgba(15,23,42,.04)}.toolbar-icon:hover{border-color:#8cb3cc;background:var(--primary-soft)}.toolbar-icon.primary{background:var(--primary-soft);border-color:#a9c8db}.toolbar-icon.success{color:var(--success);background:var(--success-soft);border-color:#addbc3}.toolbar-icon small{position:absolute;right:3px;bottom:1px;font-size:8px;color:var(--muted)}
.content{max-width:none;margin:0;padding:10px 12px 18px}.content-wide{max-width:1050px;margin:auto}.page-header{margin-bottom:8px;align-items:center}.page-header h1{font-size:18px;margin:0}.page-header p{font-size:11px}.card{border-radius:8px;padding:10px;margin-bottom:8px;box-shadow:0 2px 8px rgba(15,23,42,.04)}h1{font-size:19px}h2{font-size:14px;margin-bottom:8px}h3{font-size:13px;margin-bottom:7px}.stats-grid{gap:7px;margin-bottom:8px}.stat{border-radius:8px;padding:9px}.stat span{margin-bottom:4px}.stat strong{font-size:18px}.button{border-radius:6px;padding:7px 10px;font-size:11.5px}.form-grid{gap:7px 10px}.form-control,select,input,textarea{border-radius:5px;padding:5px 7px;font-size:12px;min-height:29px}textarea{min-height:50px}label{font-size:11px;margin-bottom:3px}.helptext{font-size:10px;margin-top:2px}.form-actions,.action-row{gap:6px;margin-top:8px}.search-bar{gap:5px;margin-bottom:7px}.table-card{border-radius:8px}th,td{padding:6px 7px;font-size:11px}th{font-size:9.5px}.badge{padding:3px 7px;font-size:10px}.alert{padding:7px 9px;border-radius:6px;margin-bottom:7px}.totals{gap:12px;padding:8px}.totals strong{font-size:14px}

/* En el menú no se muestran explicaciones: se usan title/tooltip nativo al pasar el mouse. */
.quick-toolbar,.quick-meta,.theme-label,.workspace-legend,.workspace-kpis{display:none!important}

/* Workspace compacto */
.workspace-shell{gap:7px}.workspace-hero{padding:7px 10px;border-radius:8px;box-shadow:none}.workspace-hero h1{font-size:16px;margin:0 0 2px}.workspace-hero p{font-size:10.5px}.workspace-card{border-radius:8px;margin:0}.workspace-menubar{padding:5px 7px}.workspace-toolbar{gap:4px;flex-wrap:nowrap;overflow-x:auto}.tool-button{width:38px;height:35px;padding:0;display:grid;place-items:center;border-radius:6px}.tool-button span{display:none}.tool-button svg{width:18px;height:18px}.workspace-tabs{padding:5px 6px 0;gap:2px}.workspace-tab{padding:5px 8px;border-radius:6px 6px 0 0;font-size:10.5px}.workspace-tab .close-tab{font-size:14px}.workspace-panel{height:calc(100vh - 190px);min-height:540px}

/* POS / carga de comprobantes compacta */
.sale-pos-page .page-header{display:none}.sale-entry-form{margin:0}.pos-header-strip{display:grid;grid-template-columns:145px minmax(240px,360px) 145px 145px 1fr;gap:6px;align-items:end;background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:6px;margin-bottom:6px}.pos-header-strip .field-compact label{font-size:9.5px;color:var(--muted)}.pos-document-letter{height:38px;min-width:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:5px;background:var(--surface-soft);font-size:23px;font-weight:800;color:var(--primary)}
.pos-layout{display:grid;grid-template-columns:238px minmax(550px,1fr) 245px;gap:6px;align-items:stretch}.pos-panel{background:var(--surface);border:1px solid var(--line);border-radius:7px;overflow:hidden}.pos-panel-title{height:29px;display:flex;align-items:center;justify-content:space-between;padding:0 8px;background:var(--primary-soft);color:var(--primary-strong);font-weight:800;font-size:11px;border-bottom:1px solid var(--line)}.pos-panel-body{padding:7px}.quick-product-box{position:relative}.quick-product-row{display:grid;grid-template-columns:1fr 58px 34px;gap:4px}.quick-product-row input{height:31px}.quick-add-button{border:0;border-radius:5px;background:var(--primary);color:#fff;font-weight:800;cursor:pointer;font-size:15px}.product-search-results{position:absolute;z-index:50;left:0;right:0;top:34px;background:var(--surface);border:1px solid var(--line-strong);box-shadow:var(--shadow);max-height:220px;overflow:auto;display:none}.product-search-results.open{display:block}.product-result{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);background:var(--surface);color:var(--text);padding:6px 8px;cursor:pointer}.product-result:hover,.product-result.active{background:var(--primary-soft)}.product-result strong{display:block;font-size:11px}.product-result small{color:var(--muted)}.pos-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-top:6px}.pos-shortcuts button{height:29px;border:1px solid var(--line);background:var(--surface-soft);border-radius:5px;color:var(--text);font-size:10px;cursor:pointer}.pos-shortcuts button:hover{background:var(--primary-soft)}
.pos-items-panel{min-width:0}.pos-items-scroll{height:350px;overflow:auto}.pos-items-table{table-layout:fixed}.pos-items-table th,.pos-items-table td{padding:4px 5px}.pos-items-table th:nth-child(1){width:30px}.pos-items-table th:nth-child(2){width:185px}.pos-items-table th:nth-child(3){width:auto}.pos-items-table th:nth-child(4){width:72px}.pos-items-table th:nth-child(5){width:82px}.pos-items-table th:nth-child(6){width:70px}.pos-items-table th:nth-child(7){width:48px}.pos-items-table select,.pos-items-table input{height:25px;min-height:25px;padding:2px 4px;border-radius:3px;font-size:10.5px}.pos-items-table [id$='-vat_treatment'],.pos-items-table [id$='-vat_rate'],.pos-items-table [id$='-discount_amount']{display:none}.pos-items-table td.vat-hidden{display:none}.pos-items-table .stock-hint{font-size:9px;white-space:nowrap}.pos-items-summary{height:31px;display:flex;align-items:center;justify-content:space-between;padding:0 8px;border-top:1px solid var(--line);font-size:10px;background:var(--surface-soft)}
.pos-total-panel{display:flex;flex-direction:column}.pos-total-body{padding:8px;display:flex;flex-direction:column;height:100%}.total-line{display:flex;align-items:center;justify-content:space-between;padding:5px 0;border-bottom:1px solid var(--line);font-size:11px}.total-line strong{font-size:13px}.total-line.grand{margin-top:auto;border:0;background:var(--primary);color:#fff;padding:8px;border-radius:5px;font-size:15px}.total-line.grand strong{font-size:26px}.pos-pay-button{margin-top:6px;width:100%;height:42px;border:0;border-radius:6px;background:var(--success);color:#fff;font-size:14px;font-weight:900;cursor:pointer}.pos-save-button{margin-top:5px;width:100%;height:31px;border:1px solid #9ec6b1;border-radius:5px;background:var(--success-soft);color:var(--success);font-weight:800;cursor:pointer}
.pos-bottom{display:grid;grid-template-columns:minmax(400px,1.2fr) minmax(360px,.9fr) minmax(300px,.8fr);gap:6px;margin-top:6px}.pos-customer-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px 7px}.pos-customer-grid .wide{grid-column:1/-1}.pos-customer-grid p{margin:0}.pos-customer-grid .helptext{display:none}.pos-details{margin-top:6px;border:1px solid var(--line);border-radius:5px;background:var(--surface)}.pos-details summary{cursor:pointer;padding:6px 8px;font-size:10.5px;font-weight:800;background:var(--surface-soft)}.pos-details-body{padding:6px}.pos-details table th,.pos-details table td{padding:4px}.pos-details input,.pos-details select{min-height:25px;height:25px;padding:2px 4px;font-size:10px}.pos-observation textarea{height:52px;min-height:52px}.document-help-compact{display:none}

/* Embedded sale page uses all available width and less padding. */
body.embedded-sale{background:var(--bg);padding:4px!important}.embedded-sale .embedded-banner{display:none!important}.embedded-sale .embedded-shell{max-width:none}.embedded-sale .page-header{display:none}.embedded-sale .card{box-shadow:none}

@media(max-width:1180px){.pos-layout{grid-template-columns:210px minmax(480px,1fr) 220px}.pos-bottom{grid-template-columns:1fr 1fr}.pos-bottom>.pos-panel:last-child{grid-column:1/-1}.workspace-panel{min-height:500px}}
@media(max-width:900px){.compact-topbar{grid-template-columns:1fr auto}.compact-company{display:none}.compact-user>span{display:none}.menu-strip{height:32px}.menu-item{padding:0 7px;font-size:9.5px}.icon-toolbar{height:43px}.content{padding:7px}.pos-header-strip{grid-template-columns:1fr 1fr}.pos-layout{grid-template-columns:1fr}.pos-items-scroll{height:300px}.pos-bottom{grid-template-columns:1fr}.workspace-panel{height:calc(100vh - 170px);min-height:480px}}
.pos-items-table [id$='-discount_percent']{display:none}
.menu-item svg,.toolbar-icon svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.menu-item svg{width:14px;height:14px;color:var(--primary)}.toolbar-icon svg{width:20px;height:20px}


/* Alta rápida de cliente dentro del comprobante */
.customer-add-button{width:24px;height:24px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--primary) 42%,var(--line));border-radius:5px;background:var(--surface);color:var(--primary);font-size:16px;font-weight:900;line-height:1;cursor:pointer}.customer-add-button:hover{background:var(--primary);color:#fff}.customer-modal[hidden]{display:none!important}.customer-modal{position:fixed;inset:0;z-index:250;display:grid;place-items:center;padding:18px}.customer-modal-backdrop{position:absolute;inset:0;background:rgba(4,12,20,.58);backdrop-filter:blur(2px)}.customer-modal-dialog{position:relative;z-index:1;width:min(760px,calc(100vw - 28px));max-height:calc(100vh - 34px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line-strong);border-radius:10px;box-shadow:0 24px 70px rgba(0,0,0,.32);overflow:hidden}.customer-modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;background:var(--primary-soft);border-bottom:1px solid var(--line)}.customer-modal-header strong{display:block;font-size:15px;color:var(--primary-strong)}.customer-modal-header small{display:block;margin-top:2px;color:var(--muted);font-size:10.5px}.customer-modal-close{width:30px;height:30px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);font-size:21px;line-height:1;cursor:pointer}.customer-modal-close:hover{background:var(--danger-soft);color:var(--danger)}.customer-modal-body{padding:13px 14px;overflow:auto}.customer-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px}.customer-modal-wide{grid-column:1/-1}.customer-modal-field label{margin-bottom:3px;font-size:10.5px}.customer-modal-field input,.customer-modal-field select,.customer-modal-field textarea{min-height:31px;height:auto;font-size:11.5px}.customer-modal-field textarea{min-height:56px;resize:vertical}.customer-modal-check{display:flex;align-items:center;gap:7px;min-height:31px}.customer-modal-check input{margin:0}.customer-modal-check label{margin:0;font-size:11px}.customer-modal-check .errorlist{flex-basis:100%}.modal-help{display:block;color:var(--muted);font-size:9.5px;margin-top:3px}.customer-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:7px;padding:10px 14px;border-top:1px solid var(--line);background:var(--surface-soft)}.customer-modal-status{margin-right:auto;color:var(--muted);font-size:10.5px}.customer-modal-errors{margin:0 0 9px}.customer-modal-field-disabled{opacity:.45}.customer-modal-field-disabled input{cursor:not-allowed}.customer-modal-open{overflow:hidden}
@media(max-width:640px){.customer-modal{padding:8px}.customer-modal-dialog{width:100%;max-height:calc(100vh - 16px)}.customer-modal-grid{grid-template-columns:1fr}.customer-modal-wide{grid-column:auto}.customer-modal-footer{flex-wrap:wrap}.customer-modal-status{flex-basis:100%;order:-1}}


/* V3.3 - Alta rápida de cliente: modal realmente desplazable y errores legibles */
.customer-modal-dialog{height:min(760px,calc(100vh - 34px));max-height:calc(100vh - 34px)}
.customer-modal-header{flex:0 0 auto}
.customer-modal-dialog>form{display:flex;flex:1 1 auto;min-height:0;flex-direction:column;overflow:hidden}
.customer-modal-body{flex:1 1 auto;min-height:0;overflow-y:scroll;overflow-x:hidden;scrollbar-gutter:stable;padding:14px 16px 22px;overscroll-behavior:contain}
.customer-modal-footer{flex:0 0 auto;position:relative;z-index:2;box-shadow:0 -8px 20px rgba(4,12,20,.05)}
.customer-modal-section{padding:0 0 14px;margin:0 0 14px;border-bottom:1px solid var(--line)}
.customer-modal-section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:2px}
.customer-modal-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:0 0 9px}
.customer-modal-section-title strong{font-size:12px;color:var(--text)}
.customer-modal-section-title small{font-size:9.5px;line-height:1.35;color:var(--muted);text-align:right;max-width:430px}
.customer-modal-field .errorlist,.customer-modal-check .errorlist{list-style:none;margin:5px 0 0;padding:7px 9px;border:1px solid color-mix(in srgb,var(--danger) 35%,var(--line));border-radius:6px;background:var(--danger-soft);color:var(--danger);font-size:10.5px;font-weight:650;line-height:1.35}
.customer-modal-field .errorlist li,.customer-modal-check .errorlist li{margin:0}
.customer-modal-errors .errorlist{margin:5px 0 0;padding-left:18px}
.customer-modal-body{scrollbar-width:thin;scrollbar-color:var(--line-strong) var(--surface-soft)}
.customer-modal-body::-webkit-scrollbar{width:12px}
.customer-modal-body::-webkit-scrollbar-track{background:var(--surface-soft);border-left:1px solid var(--line)}
.customer-modal-body::-webkit-scrollbar-thumb{background:var(--line-strong);border:3px solid var(--surface-soft);border-radius:999px}
.customer-modal-body::-webkit-scrollbar-thumb:hover{background:var(--muted)}
@media(max-width:640px){.customer-modal-dialog{height:calc(100vh - 16px);max-height:calc(100vh - 16px)}.customer-modal-body{padding:12px 12px 20px}.customer-modal-section-title{display:block}.customer-modal-section-title small{display:block;text-align:left;margin-top:3px;max-width:none}}


/* ===== V3.4 · configuración fiscal por empresa y venta profesional ===== */
.pos-header-professional{
  grid-template-columns:minmax(220px,1.35fr) 135px minmax(175px,.9fr) minmax(190px,1fr) 62px;
  gap:8px;
  padding:8px 10px;
}
.pos-header-professional .document-main-field select{font-weight:800;color:var(--primary-strong)}
.pos-customer-top{margin-bottom:7px}
.pos-customer-top-grid{
  display:grid;
  grid-template-columns:minmax(280px,1.7fr) minmax(160px,.9fr) minmax(150px,.85fr) minmax(150px,.85fr) minmax(135px,.7fr);
  gap:7px 9px;
  align-items:end;
}
.pos-customer-top-grid>div{min-width:0}
.pos-customer-top-grid label{font-size:10px;margin-bottom:3px}
.customer-main-select{position:relative}
.customer-main-select select{font-weight:700}
#customer-fiscal-summary{display:block;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.fiscal-company-summary .status-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.fiscal-config-section{padding:4px 0 16px}
.fiscal-config-section+.fiscal-config-section{padding-top:16px;border-top:1px solid var(--line)}
.fiscal-config-section h3{margin:0 0 8px}
.muted-row{opacity:.6;background:var(--surface-soft)}
.document-toggle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.document-toggle{
  display:flex;align-items:flex-start;gap:8px;padding:10px 11px;
  border:1px solid var(--line);border-radius:7px;background:var(--surface);cursor:pointer
}
.document-toggle input{margin-top:2px}
.document-toggle span{display:flex;flex-direction:column;gap:2px}
.document-toggle small{color:var(--muted)}
.table-scroll{overflow:auto}

@media(max-width:1100px){
  .pos-header-professional{grid-template-columns:1.4fr .75fr 1fr 1fr 60px}
  .pos-customer-top-grid{grid-template-columns:2fr 1fr 1fr}
  .pos-customer-top-grid>div:nth-child(4),.pos-customer-top-grid>div:nth-child(5){grid-column:auto}
  .fiscal-company-summary .status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .document-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .pos-header-professional{grid-template-columns:1fr 1fr}
  .pos-header-professional .document-main-field{grid-column:1/-1}
  .pos-header-professional .pos-document-type{grid-column:2}
  .pos-customer-top-grid{grid-template-columns:1fr}
  .fiscal-company-summary .status-grid,.document-toggle-grid{grid-template-columns:1fr}
}


/* V3.4 · datos fiscales del cliente visibles en cabecera */
.customer-fiscal-strip{display:grid;grid-template-columns:minmax(180px,.75fr) minmax(210px,.9fr) minmax(280px,1.6fr);gap:8px;margin-top:9px;padding-top:9px;border-top:1px solid var(--border,#d8e0e7)}
.customer-fiscal-strip>div{min-width:0;background:rgba(18,99,145,.035);border:1px solid var(--border,#d8e0e7);border-radius:7px;padding:6px 9px}
.customer-fiscal-strip span{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted,#687785);margin-bottom:2px}
.customer-fiscal-strip strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:900px){.customer-fiscal-strip{grid-template-columns:1fr}.customer-fiscal-strip strong{white-space:normal}}

/* ===== V3.5 · empleados con legajo permanente y acceso central ===== */
.employee-filter-bar{display:grid;grid-template-columns:minmax(260px,1fr) 190px auto auto;gap:8px;align-items:end}
.employee-table-sub{display:block;margin-top:2px;color:var(--muted);font-size:9.5px}
.employee-form-shell{padding-bottom:58px}
.employee-form-card{overflow:visible}
.employee-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.employee-section-heading h2{margin:0}
.employee-section-heading p{margin:2px 0 0}
.employee-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px}
.employee-field{min-width:0}.employee-field-wide{grid-column:1/-1}
.employee-field label{display:block;font-weight:700}
.employee-field .field-error{margin-top:4px;padding:5px 7px;border-radius:5px;background:var(--danger-soft);color:var(--danger);font-size:10px;font-weight:700}
.employee-field ul.errorlist{list-style:none;margin:4px 0 0;padding:0;color:var(--danger);font-size:10px;font-weight:700}
.employee-branch-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 10px;padding:8px;border:1px solid var(--line);border-radius:6px;background:var(--surface-soft)}
.employee-branch-checks>div,.employee-branch-checks label{margin:0}
.employee-branch-checks label{display:flex;align-items:center;gap:6px;font-weight:500}
.employee-security-note{margin-top:10px}
.employee-sticky-actions{position:sticky;bottom:0;z-index:20;display:flex;justify-content:flex-end;gap:7px;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--surface) 95%,transparent);backdrop-filter:blur(8px);box-shadow:0 -6px 18px rgba(15,23,42,.08)}
.employee-detail-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:8px}
.employee-summary-card{min-width:0}
.employee-data-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0}
.employee-data-list>div{padding:8px;border:1px solid var(--line);border-radius:6px;background:var(--surface-soft);min-width:0}
.employee-data-list dt{font-size:9.5px;text-transform:uppercase;letter-spacing:.035em;color:var(--muted);font-weight:800}
.employee-data-list dd{margin:3px 0 0;font-size:11.5px;font-weight:650;overflow-wrap:anywhere}
.employee-data-wide{grid-column:1/-1}
.employee-access-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px;align-items:center}.employee-access-actions form{margin:0}
.employee-access-help{margin:9px 0 0;color:var(--muted);font-size:10px;line-height:1.45}
.employee-password-card{max-width:650px}
@media(max-width:900px){.employee-detail-grid{grid-template-columns:1fr}.employee-filter-bar{grid-template-columns:1fr 1fr}.employee-form-grid{grid-template-columns:1fr}.employee-field-wide{grid-column:auto}}
@media(max-width:620px){.employee-filter-bar{grid-template-columns:1fr}.employee-data-list{grid-template-columns:1fr}.employee-data-wide{grid-column:auto}.employee-branch-checks{grid-template-columns:1fr}.employee-sticky-actions{justify-content:stretch}.employee-sticky-actions .button{flex:1}}

/* ===== V3.6 · Centro de comprobantes profesional ===== */
.sales-workspace-v36 .workspace-menubar{padding:7px 9px 6px}
.workspace-document-toolbar{gap:6px;align-items:center;flex-wrap:wrap!important;overflow:visible!important}
.workspace-document-toolbar .document-tool{width:auto;min-width:48px;height:44px;padding:4px 7px;display:flex;align-items:center;gap:7px;border-radius:7px;box-shadow:none}
.workspace-document-toolbar .document-tool.primary{outline:2px solid color-mix(in srgb,var(--primary) 22%,transparent);outline-offset:1px}
.workspace-document-toolbar .document-tool .doc-symbol{width:34px;height:32px;display:grid;place-items:center;border-radius:6px;background:var(--surface);border:1px solid currentColor;font-size:11px;font-weight:950;letter-spacing:-.02em;line-height:1;flex:0 0 auto}
.workspace-document-toolbar .document-tool .tool-label{display:block!important;max-width:120px;font-size:10px;line-height:1.08;text-align:left;white-space:normal}
.document-tool.doc-tone-invoice{color:#17689b;background:#eef7fc;border-color:#b6d8ea}
.document-tool.doc-tone-credit-note{color:#a35b00;background:#fff5e8;border-color:#edc58f}
.document-tool.doc-tone-debit-note{color:#a53b36;background:#fff0ef;border-color:#e8b6b2}
.document-tool.doc-tone-quote{color:#6b4aa5;background:#f6f1ff;border-color:#cfbce9}
.document-tool.doc-tone-receipt{color:#147447;background:#edf9f2;border-color:#abd8bf}
.document-tool.doc-tone-invoice-x{color:#46535e;background:#f1f3f5;border-color:#c6cdd3}
.document-tool.doc-tone-order{color:#197082;background:#eef9fb;border-color:#b5dce2}
.document-tool.doc-tone-delivery{color:#006f70;background:#ebf8f8;border-color:#add8d8}
.document-tool.doc-tone-list{color:#425466;background:#f4f6f8;border-color:#cbd3da}
.workspace-document-legend{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:6px;font-size:9.5px;color:var(--muted)}
.workspace-document-legend span{display:flex;align-items:center;gap:4px}
.legend-badge{min-width:21px;height:19px;padding:0 4px;display:grid;place-items:center;border-radius:4px;font-size:8.5px;background:var(--surface);border:1px solid var(--line)}
.legend-badge.invoice{color:#17689b}.legend-badge.credit{color:#a35b00}.legend-badge.debit{color:#a53b36}.legend-badge.quote{color:#6b4aa5}.legend-badge.receipt{color:#147447}.legend-badge.invoice-x{color:#46535e}

.sale-pos-v36{padding:1px}
.pos-operation-header{margin-bottom:7px}
.pos-operation-header .pos-panel-title{height:30px}
.operation-clock-note,.keyboard-hint{font-size:9.5px;font-weight:650;color:var(--muted)}
.pos-operation-grid{display:grid;grid-template-columns:minmax(220px,1.35fr) 128px 105px minmax(170px,.9fr) minmax(185px,1fr) minmax(180px,.95fr) 62px;gap:7px;align-items:end;padding:8px 10px}
.pos-operation-grid>div{min-width:0}.pos-operation-grid label{font-size:9.5px;margin-bottom:3px}.pos-operation-grid input,.pos-operation-grid select{height:32px;min-height:32px;padding:4px 7px;font-size:11px}
.automatic-field input[disabled]{font-weight:800;color:var(--text);background:var(--surface-soft);opacity:1}.automatic-field small,.seller-auto-field small{display:block;margin-top:2px;font-size:8.8px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.seller-auto-field select:disabled{opacity:1;color:var(--text);background:var(--surface-soft);font-weight:700}
.pos-document-letter{height:32px;min-width:52px;font-size:14px;letter-spacing:-.03em}

.pos-customer-top .pos-panel-body{padding:8px 10px}
.customer-search-toolbar{display:grid;grid-template-columns:minmax(330px,2.1fr) minmax(155px,.8fr) minmax(145px,.75fr) minmax(130px,.65fr);gap:8px;align-items:end}
.customer-search-toolbar>div{min-width:0}.customer-search-toolbar label{font-size:9.5px;margin-bottom:3px}
.customer-search-box{position:relative}.customer-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px}.customer-search-row input{height:34px;font-size:12px;font-weight:650;padding-left:10px}
.customer-add-button.customer-add-wide{width:auto;height:34px;padding:0 11px;display:flex;align-items:center;gap:5px;font-size:10.5px;white-space:nowrap;background:var(--primary);color:#fff;border-color:var(--primary)}
.customer-add-button.customer-add-wide:hover{filter:brightness(.94)}
.customer-search-results{position:absolute;z-index:90;top:58px;left:0;right:0;display:none;max-height:290px;overflow:auto;background:var(--surface);border:1px solid var(--line-strong);border-radius:7px;box-shadow:0 16px 38px rgba(16,39,57,.18)}
.customer-search-results.open{display:block}.customer-result{width:100%;display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(150px,.8fr) minmax(150px,.8fr);gap:8px;align-items:center;text-align:left;border:0;border-bottom:1px solid var(--line);background:var(--surface);padding:8px 10px;color:var(--text);cursor:pointer}.customer-result:last-child{border-bottom:0}.customer-result:hover,.customer-result.active{background:var(--primary-soft)}.customer-result strong{font-size:11.5px}.customer-result span,.customer-result small{font-size:9.8px;color:var(--muted)}.customer-result-empty{padding:12px;color:var(--muted);font-size:10.5px}

.pos-main-grid{display:grid;grid-template-columns:minmax(320px,1fr) 255px;gap:7px;margin-bottom:7px}.pos-product-entry-panel .pos-panel-body{padding:8px 10px}.quick-product-box>label{font-size:9.5px;margin-bottom:3px}.quick-product-row{grid-template-columns:minmax(0,1fr) 68px 38px}.quick-product-row input{height:34px;font-size:11.5px}.product-entry-help{margin-top:6px;font-size:9px;line-height:1.35;color:var(--muted)}
.pos-total-sticky .pos-total-body{padding:7px 9px}.pos-total-sticky .total-line{padding:3px 0}.pos-total-sticky .total-line.grand{margin-top:4px}.payment-mini-summary{display:flex;justify-content:space-between;gap:8px;padding:3px 0;font-size:10px;color:var(--muted)}.payment-mini-summary strong{color:var(--text)}

.pos-items-wide{margin-bottom:7px}.pos-items-wide .pos-items-scroll{height:310px;min-height:210px}.pos-items-table th:nth-child(1){width:34px}.pos-items-table th:nth-child(2){width:210px}.pos-items-table th:nth-child(3){width:auto}.pos-items-table th:nth-child(4){width:76px}.pos-items-table th:nth-child(5){width:84px}.pos-items-table th:nth-child(6){width:88px}.pos-items-table th:nth-child(7){width:82px}.pos-items-table th:nth-child(8){width:42px}.item-product-cell{vertical-align:middle}.item-product-name{display:block;font-size:10.8px;line-height:1.2}.item-product-code{display:block;margin-top:2px;font-size:8.8px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-description-cell input{width:100%}.item-remove-cell{text-align:center}.row-remove-button,.payment-remove-button{width:25px;height:25px;border:1px solid #e4b0ad;border-radius:5px;background:var(--danger-soft);color:var(--danger);font-weight:900;cursor:pointer;line-height:1}.row-remove-button:hover,.payment-remove-button:hover{background:var(--danger);color:#fff}.formset-delete-control{display:none!important}.formset-row-deleted{display:none!important}.inline-add-button{border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--primary);font-size:9.5px;font-weight:800;padding:3px 7px;cursor:pointer}.inline-add-button:hover{background:var(--primary);color:#fff}

.pos-bottom-v36{display:grid;grid-template-columns:minmax(560px,1.35fr) minmax(380px,.8fr);gap:7px;margin-top:0}.payment-panel-body{padding:8px}.sale-payments-list{display:flex;flex-direction:column;gap:6px}.payment-row-card{border:1px solid var(--line);border-radius:7px;background:var(--surface);padding:7px}.payment-row-main{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(120px,.55fr) minmax(160px,1fr) 28px;gap:6px;align-items:end}.payment-row-main label,.payment-row-details label{font-size:9px;margin-bottom:2px}.payment-row-main input,.payment-row-main select,.payment-row-details input,.payment-row-details select{height:29px;min-height:29px;padding:3px 5px;font-size:10.5px}.payment-row-details{display:grid;grid-template-columns:repeat(5,minmax(115px,1fr));gap:6px;margin-top:6px;padding-top:6px;border-top:1px dashed var(--line)}.payment-row-details [hidden]{display:none!important}.payment-actions-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:7px;padding-top:7px;border-top:1px solid var(--line)}.payment-actions-row .muted{font-size:9.5px}.payment-errors{margin-top:6px}.pos-options-panel{min-width:0}

@media(max-width:1250px){.pos-operation-grid{grid-template-columns:1.4fr .7fr .55fr 1fr 1fr}.pos-operation-grid .seller-auto-field{grid-column:1/3}.pos-operation-grid .pos-document-type{grid-column:5}.customer-search-toolbar{grid-template-columns:2fr 1fr 1fr}.customer-search-toolbar>div:last-child{grid-column:3}.pos-bottom-v36{grid-template-columns:1fr}.payment-row-details{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.workspace-document-toolbar .document-tool .tool-label{display:none!important}.workspace-document-toolbar .document-tool{min-width:42px;width:42px;padding:4px}.workspace-document-toolbar .document-tool .doc-symbol{width:31px}.workspace-document-legend{display:none}.pos-operation-grid{grid-template-columns:1fr 1fr}.pos-operation-grid .document-main-field{grid-column:1/-1}.pos-operation-grid .seller-auto-field{grid-column:1/-1}.pos-operation-grid .pos-document-type{grid-column:auto}.customer-search-toolbar{grid-template-columns:1fr 1fr}.customer-search-box{grid-column:1/-1}.pos-main-grid{grid-template-columns:1fr}.pos-items-wide .pos-items-scroll{height:300px}.payment-row-main{grid-template-columns:1fr 1fr}.payment-reference-field{grid-column:1/-1}.payment-remove-button{grid-column:2;justify-self:end}.payment-row-details{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.pos-operation-grid,.customer-search-toolbar,.payment-row-main,.payment-row-details{grid-template-columns:1fr}.customer-search-row{grid-template-columns:1fr}.customer-add-button.customer-add-wide{width:100%;justify-content:center}.customer-result{grid-template-columns:1fr}.payment-reference-field,.payment-remove-button{grid-column:auto}.pos-items-wide .pos-items-scroll{height:280px}}

/* V3.6.3 - finalización real del comprobante y vista previa PDF */
.pos-finalize-button{width:100%;min-height:36px;border:1px solid color-mix(in srgb,var(--success) 65%,var(--line));border-radius:6px;background:var(--success);color:#fff;font-size:11px;font-weight:900;letter-spacing:.02em;cursor:pointer;margin-top:5px;padding:7px 8px}.pos-finalize-button:hover{filter:brightness(.96)}.pos-finalize-button:focus-visible{outline:3px solid color-mix(in srgb,var(--success) 28%,transparent);outline-offset:2px}
.pos-total-panel [hidden],#payment-panel[hidden]{display:none!important}
.document-result-page{position:relative;min-height:calc(100vh - 40px);display:grid;place-items:center;padding:18px}.document-result-backdrop{position:fixed;inset:0;background:rgba(6,15,24,.58);backdrop-filter:blur(2px);z-index:320}.document-result-modal{position:relative;z-index:321;width:min(1120px,calc(100vw - 34px));height:min(860px,calc(100vh - 34px));display:flex;flex-direction:column;overflow:hidden;background:var(--surface);border:1px solid var(--line-strong);border-radius:12px;box-shadow:0 28px 90px rgba(0,0,0,.38)}.document-result-header{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 18px;background:linear-gradient(180deg,var(--success-soft),var(--surface));border-bottom:1px solid var(--line)}.document-result-kicker{display:block;margin-bottom:2px;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--success)}.document-result-header h1{margin:0;font-size:18px;color:var(--text)}.document-result-header p{margin:4px 0 0;color:var(--muted);font-size:11px}.document-result-ok{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border-radius:999px;background:var(--success);color:#fff;font-size:25px;font-weight:900}.document-result-actions{flex:0 0 auto;display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:9px 12px;border-bottom:1px solid var(--line);background:var(--surface-soft)}.document-result-pdf-wrap{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;padding:10px}.document-result-pdf-title{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 2px 7px;font-size:10px;color:var(--muted)}.document-result-pdf-title strong{font-size:11px;color:var(--text)}.document-result-pdf{flex:1 1 auto;min-height:0;width:100%;border:1px solid var(--line);border-radius:7px;background:#fff}.document-result-embedded{margin:0;background:var(--surface-soft)}.document-result-embedded .document-result-page{min-height:100vh;padding:8px}.document-result-embedded .document-result-modal{width:calc(100vw - 16px);height:calc(100vh - 16px)}
@media(max-width:700px){.document-result-page{padding:6px}.document-result-modal{width:calc(100vw - 12px);height:calc(100vh - 12px)}.document-result-header{padding:11px 12px}.document-result-header h1{font-size:15px}.document-result-actions{align-items:stretch}.document-result-actions .button{flex:1 1 46%;text-align:center}.document-result-pdf-title{display:block}.document-result-pdf-title span{display:block;margin-top:2px}}

/* V3.6.4 - validación clara de comprobantes */
.sale-validation-summary{margin:0 0 8px;padding:10px 12px;border-radius:8px}.sale-validation-summary strong{display:block;margin-bottom:4px}.sale-validation-summary ul{margin:4px 0 2px;padding-left:20px}.sale-validation-summary small{display:block;margin-top:5px}.pos-items-table .errorlist,.payment-row-card .errorlist{list-style:none;margin:4px 0 0;padding:5px 7px;border-radius:5px;background:var(--danger-soft);color:var(--danger);font-size:9.5px;font-weight:700;line-height:1.3}.pos-items-table .errorlist li,.payment-row-card .errorlist li{margin:0}.payment-row-card:has(.errorlist){border-color:color-mix(in srgb,var(--danger) 50%,var(--line))}.sale-item-row:has(.errorlist){outline:1px solid color-mix(in srgb,var(--danger) 45%,transparent);outline-offset:-1px}
