:root{
  --orange:#ff7a00;--orange-2:#ff9f1c;--ink:#101828;--muted:#667085;--line:#d8e0ec;--bg:#f3f6fb;--card:#ffffff;--soft:#fff5ec;--blue:#2f80ed;--green:#22c55e;--red:#ef4444;--purple:#7c3aed;--shadow:0 18px 50px rgba(16,24,40,.10);--radius:24px;--sidebar:284px;--topbar:76px
}
[data-theme="dark"]{--ink:#f6f7fb;--muted:#a9b4c7;--line:#263247;--bg:#0c111d;--card:#121a2b;--soft:#21170d;--shadow:0 18px 50px rgba(0,0,0,.35)}
*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}a{text-decoration:none;color:inherit}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.app-shell{display:grid;grid-template-columns:var(--sidebar) 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:22px 18px;background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(248,250,252,.92));border-right:1px solid var(--line);overflow:auto;z-index:10}[data-theme="dark"] .sidebar{background:linear-gradient(180deg,#101827,#0b1220)}.brand-block{display:flex;flex-direction:column;gap:8px;padding:0 6px 18px;border-bottom:1px solid var(--line)}.brand-logo{display:block}.brand-logo img{width:210px;max-width:100%;height:58px;object-fit:contain;object-position:left center;mix-blend-mode:multiply}[data-theme="dark"] .brand-logo img{filter:brightness(1.08);mix-blend-mode:screen}.brand-subtitle{font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);font-weight:800}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.quick-pill{display:flex;align-items:center;justify-content:center;min-height:42px;border:1px solid var(--line);background:var(--card);border-radius:14px;font-weight:900;font-size:13px}.quick-pill.alert{border-color:#fecaca;color:#b42318;background:#fff7f7}.nav-section{display:block;margin:18px 8px 10px;font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:#7b88a1;font-weight:900}.nav-menu{display:flex;flex-direction:column;gap:8px}.nav-item{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:12px;border:1px solid transparent;border-radius:16px;font-weight:850;font-size:14px}.nav-item:hover,.nav-item.active{background:linear-gradient(135deg,rgba(255,122,0,.13),rgba(255,255,255,.75));border-color:rgba(255,122,0,.22)}[data-theme="dark"] .nav-item:hover,[data-theme="dark"] .nav-item.active{background:linear-gradient(135deg,rgba(255,122,0,.18),rgba(18,26,43,.75))}.nav-icon{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:#fff;border:1px solid var(--line);color:var(--orange)}[data-theme="dark"] .nav-icon{background:#0e1628}.nav-badge{font-size:11px;border-radius:999px;padding:4px 8px;background:#eaf1ff;color:#1d4ed8}.main-wrap{min-width:0}.topbar{height:var(--topbar);position:sticky;top:0;z-index:8;display:flex;align-items:center;gap:16px;padding:0 22px;background:rgba(255,255,255,.82);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}[data-theme="dark"] .topbar{background:rgba(12,17,29,.82)}.breadcrumb{display:flex;gap:8px;align-items:center;color:var(--muted);white-space:nowrap}.breadcrumb strong{color:var(--ink)}.global-search{flex:1;max-width:650px;height:46px;display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:0 14px;box-shadow:0 6px 20px rgba(16,24,40,.04)}.global-search input{border:0;outline:0;background:transparent;color:var(--ink);width:100%;font-weight:650}.global-search kbd{font-size:11px;padding:4px 8px;border:1px solid var(--line);border-radius:999px;color:var(--muted)}.status-chips,.top-actions,.hero-tags{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--card);border-radius:999px;padding:7px 10px;font-weight:900;font-size:12px}.chip:before{content:"";width:7px;height:7px;border-radius:50%;background:#94a3b8}.chip.online:before{background:var(--green)}.chip.warn:before{background:#f59e0b}.icon-button{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:14px;background:var(--card);color:var(--ink);cursor:pointer}.icon-button.danger{color:#ef4444}.user-menu{height:42px;display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:999px;background:var(--card);padding:0 14px}.avatar{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#e8efff;color:#1d4ed8;font-weight:900}.user-name{font-weight:900;font-size:13px}.content-area{padding:28px;max-width:1680px;margin:0 auto}.system-banner{margin:14px 28px 0;padding:12px 16px;border-radius:16px;border:1px solid #fed7aa;background:#fff7ed;color:#9a3412;font-weight:800}.hero-card{display:flex;justify-content:space-between;gap:24px;padding:28px;border:1px solid var(--line);border-radius:32px;background:radial-gradient(circle at top left,rgba(255,122,0,.16),transparent 28%),linear-gradient(135deg,var(--card),rgba(255,255,255,.75));box-shadow:var(--shadow);margin-bottom:22px}[data-theme="dark"] .hero-card{background:radial-gradient(circle at top left,rgba(255,122,0,.18),transparent 30%),linear-gradient(135deg,#121a2b,#101827)}.eyebrow{display:inline-flex;letter-spacing:.16em;text-transform:uppercase;color:#bf5b00;background:#fff0df;border:1px solid #ffd9b2;border-radius:999px;padding:8px 13px;font-size:12px;font-weight:950}.hero-card h1,.module-hero h1{margin:14px 0 8px;font-size:clamp(30px,3.2vw,52px);line-height:1;font-weight:950;letter-spacing:-.05em}.hero-card p,.module-hero p,.panel-head p{margin:0;color:var(--muted);font-size:15px;line-height:1.55}.hero-tags{margin-top:18px}.hero-tags span,.pill{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900}.pill.orange{background:#fff4e8;color:#b45309;border-color:#fed7aa}.hero-panel{min-width:300px;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:18px;border-radius:24px;background:rgba(255,255,255,.72);border:1px solid var(--line)}[data-theme="dark"] .hero-panel{background:rgba(18,26,43,.72)}label{display:flex;flex-direction:column;gap:8px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:950;color:var(--muted)}select,input{height:44px;border:1px solid var(--line);border-radius:14px;background:var(--card);color:var(--ink);padding:0 12px;font-weight:750}.primary-button,.ghost-button{border:0;border-radius:16px;min-height:48px;padding:0 18px;font-weight:950;cursor:pointer}.primary-button{background:linear-gradient(135deg,var(--orange),#ff9f1c);color:#fff;box-shadow:0 12px 24px rgba(255,122,0,.25)}.ghost-button{background:var(--card);border:1px solid var(--line);color:var(--ink)}.small{min-height:44px}.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;margin-bottom:22px}.kpi-card{position:relative;overflow:hidden;padding:22px 18px;border:1px solid var(--line);border-radius:22px;background:var(--card);box-shadow:0 8px 28px rgba(16,24,40,.06)}.kpi-card:after{content:"";position:absolute;left:18px;right:18px;bottom:17px;height:4px;border-radius:999px;background:currentColor;opacity:.85}.kpi-card span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-weight:950}.kpi-card strong{display:block;margin:18px 0 16px;font-size:30px;letter-spacing:-.04em}.kpi-card small{color:var(--muted);font-weight:800}.accent-orange{color:var(--orange)}.accent-blue{color:var(--blue)}.accent-green{color:var(--green)}.accent-red{color:var(--red)}.accent-purple{color:var(--purple)}.accent-gray{color:#64748b}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}.panel-card,.module-page{border:1px solid var(--line);background:var(--card);border-radius:26px;box-shadow:0 10px 35px rgba(16,24,40,.06);padding:22px}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}.panel-head h2{margin:0 0 4px;font-size:22px;letter-spacing:-.03em}.progress-row{display:grid;grid-template-columns:210px 1fr;gap:22px;align-items:center}.ring{width:160px;height:160px;border-radius:50%;display:grid;place-items:center;margin:auto;background:conic-gradient(var(--orange) 0 82%,#e6edf7 82% 100%);position:relative}.ring:after{content:"";position:absolute;inset:18px;background:var(--card);border-radius:50%}.ring span,.ring small{position:relative;z-index:1}.ring span{font-size:32px;font-weight:950}.ring small{display:block;margin-top:44px;font-weight:950;color:var(--muted)}.task-list,.alert-list,.module-roadmap{display:flex;flex-direction:column;gap:12px}.task,.smart-alert,.module-roadmap article{display:grid;grid-template-columns:1fr auto;gap:12px;padding:16px;border-radius:18px;border:1px solid var(--line);background:#f8fafc}[data-theme="dark"] .task,[data-theme="dark"] .smart-alert,[data-theme="dark"] .module-roadmap article{background:#0f172a}.task strong,.smart-alert strong,.module-roadmap strong{display:block}.task span,.smart-alert span,.module-roadmap span{display:block;color:var(--muted);font-size:13px;margin-top:3px}.task b,.smart-alert b{align-self:center;border-radius:999px;padding:7px 10px;font-size:12px}.task.ok{border-color:#bbf7d0;background:#f0fdf4}.task.warn{border-color:#fed7aa;background:#fff7ed}.task.danger{border-color:#fecaca;background:#fff5f5}.task.info{border-color:#bfdbfe;background:#eff6ff}[data-theme="dark"] .task.ok,[data-theme="dark"] .task.warn,[data-theme="dark"] .task.danger,[data-theme="dark"] .task.info{background:#111827}.smart-alert b{background:#fff0df;color:#9a3412}.module-hero{padding:12px 6px 24px}.module-roadmap{display:grid;grid-template-columns:repeat(3,1fr)}.login-body{min-height:100vh;display:grid;grid-template-columns:minmax(360px,520px) 1fr;background:radial-gradient(circle at 20% 20%,rgba(255,122,0,.16),transparent 34%),var(--bg)}.login-card{margin:auto;width:min(92%,460px);background:rgba(255,255,255,.88);border:1px solid var(--line);border-radius:32px;box-shadow:var(--shadow);padding:34px}.login-brand img{width:280px;max-width:100%;height:75px;object-fit:contain;object-position:left center;mix-blend-mode:multiply}.login-brand span{display:block;color:var(--muted);font-weight:900;margin-top:4px}.login-copy h1{font-size:34px;line-height:1;letter-spacing:-.05em;margin:22px 0 10px}.login-copy p{color:var(--muted);line-height:1.55}.login-form{display:flex;flex-direction:column;gap:16px;margin-top:20px}.login-form input{height:50px}.form-alert{padding:12px 14px;border-radius:16px;margin:14px 0;font-weight:750}.form-alert.error{background:#fff1f2;color:#be123c;border:1px solid #fecdd3}.form-alert.info{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.login-foot{font-size:12px;color:var(--muted);font-weight:800;margin-top:18px}.login-side{position:relative;display:flex;flex-direction:column;justify-content:center;padding:8vw;background:#101828;color:white;overflow:hidden}.login-side h2{font-size:clamp(42px,5vw,82px);line-height:.95;letter-spacing:-.06em;max-width:720px}.orb{position:absolute;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,#ff7a00,transparent 68%);filter:blur(18px);right:10%;top:12%;opacity:.55}.login-kpis{display:flex;flex-wrap:wrap;gap:10px;position:relative}.login-kpis span{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);border-radius:999px;padding:10px 14px;font-weight:900}.mobile-only{display:none}
@media(max-width:1180px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;transform:translateX(-105%);transition:.2s ease;box-shadow:var(--shadow)}.sidebar.open{transform:translateX(0)}.mobile-only{display:grid}.status-chips{display:none}.kpi-grid{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1fr}.topbar{padding:0 14px}.global-search{max-width:none}.user-name{display:none}.content-area{padding:18px}.hero-card{flex-direction:column}.hero-panel{min-width:0}.login-body{grid-template-columns:1fr}.login-side{display:none}}
@media(max-width:720px){.kpi-grid,.module-roadmap{grid-template-columns:1fr}.progress-row{grid-template-columns:1fr}.breadcrumb{display:none}.hero-card h1,.module-hero h1{font-size:32px}.top-actions .icon-button:not(.danger),.global-search kbd{display:none}.hero-panel{grid-template-columns:1fr}.content-area{padding:12px}.hero-card,.panel-card,.module-page{border-radius:22px;padding:18px}.login-card{padding:24px}}
/* ===== Paquete 02: Catálogo Maestro ===== */
.form-alert.success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}
.catalog-hero .hero-panel{grid-template-columns:1fr;min-width:380px}.ean-form{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}.global-match-card{border:1px solid var(--line);background:var(--card);border-radius:18px;padding:14px}.global-match-card strong{display:block;font-size:16px;margin:4px 0}.global-match-card small,.global-match-card p{color:var(--muted);font-weight:750}.global-match-card p{margin:8px 0 0;line-height:1.45}.muted-card{background:#f8fafc}[data-theme="dark"] .muted-card{background:#0f172a}.mini-label{display:inline-flex;border-radius:999px;background:#fff0df;color:#9a3412;border:1px solid #fed7aa;padding:4px 9px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:950}.catalog-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,.8fr);gap:18px;align-items:start}.catalog-main-panel{min-width:0}.catalog-head{align-items:center}.catalog-actions{display:flex;gap:10px;flex-wrap:wrap}.catalog-filters{display:grid;grid-template-columns:2fr 1fr 1.2fr auto;gap:12px;align-items:end;margin-bottom:18px}.responsive-table{width:100%;overflow:auto;border:1px solid var(--line);border-radius:18px}.data-table{width:100%;border-collapse:separate;border-spacing:0;min-width:1120px;background:var(--card)}.data-table th,.data-table td{padding:14px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;font-size:13px}.data-table th{position:sticky;top:0;background:var(--card);z-index:1;color:var(--muted);text-transform:uppercase;letter-spacing:.10em;font-size:11px;font-weight:950}.data-table tr:last-child td{border-bottom:0}.product-cell{display:flex;align-items:center;gap:12px;min-width:250px}.product-cell strong{display:block;font-size:14px}.product-cell small{display:block;color:var(--muted);font-weight:750;margin-top:2px}.product-avatar{width:38px;height:38px;border-radius:14px;display:grid;place-items:center;background:#fff0df;color:#9a3412;border:1px solid #fed7aa;font-weight:950;flex:0 0 auto}.soft-badge{display:inline-flex;align-items:center;border-radius:999px;padding:6px 9px;border:1px solid var(--line);font-size:11px;font-weight:950;white-space:nowrap;background:#f8fafc}.soft-badge.kind{color:#344054}.soft-badge.quality.verified{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.soft-badge.quality.ai_suggested{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.soft-badge.quality.recipe_pending{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.soft-badge.quality.blocked{background:#fff1f2;color:#be123c;border-color:#fecdd3}[data-theme="dark"] .soft-badge,[data-theme="dark"] .data-table th{background:#0f172a}.channel-pills{display:flex;gap:6px;flex-wrap:wrap}.channel-pills span{display:inline-flex;border-radius:999px;background:#ecfeff;color:#0e7490;border:1px solid #a5f3fc;padding:5px 8px;font-size:11px;font-weight:950}.channel-pills span.off{background:#f8fafc;color:var(--muted);border-color:var(--line)}code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:4px 6px;color:var(--ink)}[data-theme="dark"] code{background:#0f172a}.empty-cell{text-align:center!important;color:var(--muted);font-weight:800;padding:30px!important}.catalog-side{display:flex;flex-direction:column;gap:18px}.panel-head.compact{margin-bottom:12px}.panel-head.compact h2{font-size:18px}.category-list{display:flex;flex-direction:column;gap:10px}.category-row{display:grid;grid-template-columns:1fr auto;gap:10px;border:1px solid var(--line);background:#f8fafc;border-radius:16px;padding:12px;font-weight:850}.category-row b{border-radius:999px;background:#fff0df;color:#9a3412;padding:4px 8px}[data-theme="dark"] .category-row{background:#0f172a}.slide-panel{margin-top:18px}.slide-panel[hidden]{display:none}.product-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.product-form label:nth-child(9){grid-column:1/-1}.check-grid{display:flex;gap:18px;align-items:center;grid-column:1/3}.check-line{flex-direction:row;align-items:center;text-transform:none;letter-spacing:0;font-size:14px;color:var(--ink)}.check-line input{width:18px;height:18px}.form-actions{grid-column:3/5;display:flex;justify-content:flex-end;gap:10px;align-items:center}
@media(max-width:1180px){.catalog-grid{grid-template-columns:1fr}.catalog-hero .hero-panel{min-width:0}.catalog-filters{grid-template-columns:1fr 1fr}.catalog-filters .primary-button{grid-column:1/-1}.product-form{grid-template-columns:1fr 1fr}.check-grid,.form-actions,.product-form label:nth-child(9){grid-column:1/-1}}
@media(max-width:720px){.ean-form,.catalog-filters,.product-form{grid-template-columns:1fr}.check-grid,.form-actions{grid-column:1}.catalog-actions{width:100%}.catalog-actions .ghost-button,.catalog-actions .primary-button{flex:1}.form-actions{justify-content:stretch}.form-actions button{flex:1}.catalog-kpis{grid-template-columns:1fr}.catalog-hero .hero-panel{padding:14px}}

/* ===== Paquete 03: Empresa / Sucursales / Bodegas ===== */
.company-hero .hero-panel{min-width:390px}.company-profile-card h2{font-size:24px;margin:8px 0 4px;letter-spacing:-.04em}.company-profile-card p{color:var(--muted);font-weight:800;margin:0 0 14px}.profile-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.profile-list span{display:flex;flex-direction:column;gap:3px;padding:12px;border:1px solid var(--line);border-radius:16px;background:#f8fafc;font-weight:850}.profile-list b{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}[data-theme="dark"] .profile-list span{background:#0f172a}.company-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,.82fr);gap:18px;align-items:start}.company-main-panel{min-width:0}.company-head{align-items:center}.branch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.branch-card{border:1px solid var(--line);background:#f8fafc;border-radius:22px;padding:16px;display:flex;flex-direction:column;gap:12px}.branch-card.off{opacity:.65}.branch-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.branch-top h3{margin:8px 0 2px;font-size:18px;letter-spacing:-.03em}.branch-top small,.branch-card p,.branch-foot span{color:var(--muted);font-weight:750}.status-dot{display:inline-flex;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:950;border:1px solid var(--line);white-space:nowrap}.status-dot.on{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.status-dot.off{background:#fff1f2;color:#be123c;border-color:#fecdd3}.branch-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.branch-stats span{border:1px solid var(--line);border-radius:15px;background:var(--card);padding:10px;font-size:11px;color:var(--muted);font-weight:850}.branch-stats b{display:block;color:var(--ink);font-size:14px;margin-bottom:2px}.branch-foot{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid var(--line);padding-top:12px}.tiny{padding:8px 10px;font-size:12px}.company-side{display:flex;flex-direction:column;gap:18px}.readiness-list{display:flex;flex-direction:column;gap:10px}.readiness-item{display:flex;gap:12px;border:1px solid var(--line);border-radius:16px;padding:12px;background:#f8fafc}.readiness-item b{width:28px;height:28px;border-radius:999px;display:grid;place-items:center;font-weight:950}.readiness-item.ok b{background:#dcfce7;color:#166534}.readiness-item.warn b{background:#ffedd5;color:#9a3412}.readiness-item strong{display:block}.readiness-item span{display:block;color:var(--muted);font-size:13px;font-weight:750;margin-top:2px}.policy-stack{display:flex;flex-direction:column;gap:10px}.policy-stack article{border:1px solid var(--line);border-radius:16px;padding:12px;background:#f8fafc}.policy-stack strong{display:block}.policy-stack span{display:block;color:var(--muted);font-weight:750;font-size:13px;margin-top:3px}[data-theme="dark"] .branch-card,[data-theme="dark"] .readiness-item,[data-theme="dark"] .policy-stack article{background:#0f172a}.company-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.company-form label:nth-child(6){grid-column:1/3}.company-form label:nth-child(8){grid-column:3/5}.form-actions.wide{grid-column:1/-1;justify-content:flex-end}.warehouse-panel{margin-top:18px}.warehouse-table td strong{display:block}.warehouse-table td small{display:block;color:var(--muted);font-weight:750;margin-top:2px}.warehouse-form{grid-template-columns:repeat(4,minmax(0,1fr))}.warehouse-form .form-actions{grid-column:1/-1}
@media(max-width:1180px){.company-grid{grid-template-columns:1fr}.company-hero .hero-panel{min-width:0}.branch-grid{grid-template-columns:1fr}.company-form,.warehouse-form{grid-template-columns:1fr 1fr}.company-form label:nth-child(6),.company-form label:nth-child(8),.form-actions.wide,.warehouse-form .form-actions{grid-column:1/-1}}
@media(max-width:720px){.profile-list,.branch-stats,.company-form,.warehouse-form{grid-template-columns:1fr}.company-hero .hero-panel{padding:14px}.branch-foot{align-items:stretch;flex-direction:column}.branch-foot a{text-align:center}.company-kpis{grid-template-columns:1fr}}

/* ===== Paquete 04: Inventario / Stock ===== */
.stock-hero .hero-panel{min-width:390px}.stock-ai-panel h2{font-size:24px;margin:8px 0 8px;letter-spacing:-.04em}.stock-ai-panel p{color:var(--muted);font-weight:800;line-height:1.45}.ai-mini-list{display:grid;grid-template-columns:1fr;gap:9px;margin-top:14px}.ai-mini-list span{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:16px;background:#f8fafc;padding:11px 12px;font-weight:850}.ai-mini-list b{color:#ea580c;font-size:18px}[data-theme="dark"] .ai-mini-list span{background:#0f172a}.stock-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(330px,.82fr);gap:18px;align-items:start}.stock-main-panel{min-width:0}.stock-head{align-items:center}.stock-filters{display:grid;grid-template-columns:1.8fr 1.2fr 1fr 1fr auto;gap:12px;align-items:end;margin-bottom:18px}.stock-table td strong{display:block}.stock-table td small{display:block;color:var(--muted);font-weight:750;margin-top:2px}.stock-available{font-weight:950}.stock-available.ok{color:#166534}.stock-available.low{color:#9a3412}.stock-available.critical{color:#be123c}.stock-status{display:inline-flex;border-radius:999px;padding:6px 9px;border:1px solid var(--line);font-size:11px;font-weight:950;white-space:nowrap}.stock-status.ok{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.stock-status.low{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.stock-status.critical{background:#fff1f2;color:#be123c;border-color:#fecdd3}.stock-side{display:flex;flex-direction:column;gap:18px}.movement-list{display:flex;flex-direction:column;gap:10px}.movement-item{display:flex;gap:12px;border:1px solid var(--line);border-radius:17px;padding:12px;background:#f8fafc}.movement-item>b{width:30px;height:30px;border-radius:999px;display:grid;place-items:center;font-weight:950;flex:0 0 auto}.movement-item.in>b{background:#dcfce7;color:#166534}.movement-item.out>b{background:#fee2e2;color:#be123c}.movement-item strong{display:block}.movement-item span{display:block;color:var(--muted);font-weight:800;font-size:13px;margin-top:2px}.movement-item small{display:block;color:var(--muted);font-weight:750;font-size:12px;margin-top:4px}.empty-side{border:1px dashed var(--line);border-radius:16px;padding:18px;text-align:center;color:var(--muted);font-weight:850}.stock-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.stock-form label:nth-child(7){grid-column:1/-1}.policy-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.policy-grid article{border:1px solid var(--line);border-radius:16px;background:#f8fafc;padding:13px}.policy-grid strong{display:block}.policy-grid span{display:block;color:var(--muted);font-weight:750;font-size:13px;margin-top:4px}[data-theme="dark"] .movement-item,[data-theme="dark"] .policy-grid article{background:#0f172a}
@media(max-width:1180px){.stock-grid{grid-template-columns:1fr}.stock-hero .hero-panel{min-width:0}.stock-filters{grid-template-columns:1fr 1fr}.stock-filters .primary-button{grid-column:1/-1}.stock-form{grid-template-columns:1fr 1fr}.policy-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.stock-filters,.stock-form,.policy-grid{grid-template-columns:1fr}.stock-kpis{grid-template-columns:1fr}.stock-hero .hero-panel{padding:14px}.stock-head{align-items:stretch;flex-direction:column}.stock-head .catalog-actions{width:100%}.stock-head .catalog-actions button{flex:1}}

/* ===== Paquete 05: Compras / Proveedores / Reposición ===== */
.purchase-hero .hero-panel{min-width:390px}.purchase-ai-panel h2{font-size:24px;margin:8px 0 8px;letter-spacing:-.04em}.purchase-ai-panel p{color:var(--muted);font-weight:800;line-height:1.45}.purchase-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(340px,.82fr);gap:18px;align-items:start}.purchase-main-panel{min-width:0}.purchase-head{align-items:center}.purchase-filters{display:grid;grid-template-columns:1.7fr 1.25fr 1fr auto;gap:12px;align-items:end;margin-bottom:18px}.purchase-table td strong{display:block}.purchase-table td small{display:block;color:var(--muted);font-weight:750;margin-top:2px}.purchase-status{display:inline-flex;border-radius:999px;padding:6px 9px;border:1px solid var(--line);font-size:11px;font-weight:950;white-space:nowrap}.purchase-status.ok{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.purchase-status.warn{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.purchase-status.info{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.purchase-status.danger{background:#fff1f2;color:#be123c;border-color:#fecdd3}.purchase-status.muted{background:#f8fafc;color:var(--muted);border-color:var(--line)}[data-theme="dark"] .purchase-status.muted{background:#0f172a}.progress-line{height:9px;background:#eef2f7;border-radius:999px;overflow:hidden;border:1px solid var(--line);min-width:110px}.progress-line span{display:block;height:100%;background:linear-gradient(135deg,var(--orange),#ffb454);border-radius:999px}.purchase-side{display:flex;flex-direction:column;gap:18px}.purchase-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.purchase-lines{grid-column:1/-1;display:flex;flex-direction:column;gap:10px}.purchase-line{display:grid;grid-template-columns:2fr .7fr .9fr;gap:10px;border:1px solid var(--line);background:#f8fafc;border-radius:18px;padding:12px}.purchase-notes{grid-column:1/-1}.replenishment-list,.doc-list{display:flex;flex-direction:column;gap:10px}.replenishment-item{display:flex;gap:12px;border:1px solid var(--line);border-radius:17px;padding:12px;background:#f8fafc}.replenishment-item>b{width:30px;height:30px;border-radius:999px;display:grid;place-items:center;font-weight:950;flex:0 0 auto}.replenishment-item.critical>b{background:#fee2e2;color:#be123c}.replenishment-item.low>b{background:#ffedd5;color:#9a3412}.replenishment-item strong{display:block}.replenishment-item span,.replenishment-item small{display:block;color:var(--muted);font-weight:800;font-size:13px;margin-top:2px}.doc-item{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:17px;padding:12px;background:#f8fafc}.doc-item strong{display:block}.doc-item span,.doc-item small{display:block;color:var(--muted);font-weight:800;font-size:13px;margin-top:2px}.doc-item>b{color:#9a3412}[data-theme="dark"] .purchase-line,[data-theme="dark"] .replenishment-item,[data-theme="dark"] .doc-item{background:#0f172a}
@media(max-width:1180px){.purchase-grid{grid-template-columns:1fr}.purchase-hero .hero-panel{min-width:0}.purchase-filters{grid-template-columns:1fr 1fr}.purchase-filters .primary-button{grid-column:1/-1}.purchase-form{grid-template-columns:1fr 1fr}.purchase-line{grid-template-columns:1fr 1fr}.purchase-line label:first-child{grid-column:1/-1}}
@media(max-width:720px){.purchase-filters,.purchase-form,.purchase-line{grid-template-columns:1fr}.purchase-kpis{grid-template-columns:1fr}.purchase-hero .hero-panel{padding:14px}.purchase-head{align-items:stretch;flex-direction:column}.purchase-head .catalog-actions{width:100%}.purchase-head .catalog-actions button{flex:1}.doc-item{grid-template-columns:1fr}.doc-item>b{text-align:left}}


/* ===== Paquete 06: Ventas ERP / Clientes / Documentos ===== */
.sales-hero .hero-panel{min-width:390px}.sales-ai-panel h2{font-size:24px;margin:8px 0 8px;letter-spacing:-.04em}.sales-ai-panel p{color:var(--muted);font-weight:800;line-height:1.45}.sales-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(340px,.82fr);gap:18px;align-items:start}.sales-main-panel{min-width:0}.sales-head{align-items:center}.sales-filters{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr auto;gap:12px;align-items:end;margin-bottom:16px}.sales-tabs{display:flex;gap:8px;margin:0 0 14px}.sales-tab{border:1px solid var(--line);border-radius:999px;padding:9px 13px;background:var(--card);font-size:12px;font-weight:950;color:var(--muted)}.sales-tab.active{background:#fff4e8;color:#b45309;border-color:#fed7aa}.sales-table td strong{display:block}.sales-table td small{display:block;color:var(--muted);font-weight:750;margin-top:2px}.sales-documents-table{margin-top:18px}.sales-status,.sales-channel{display:inline-flex;border-radius:999px;padding:6px 9px;border:1px solid var(--line);font-size:11px;font-weight:950;white-space:nowrap}.sales-status.ok{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.sales-status.warn{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.sales-status.info{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.sales-status.danger{background:#fff1f2;color:#be123c;border-color:#fecdd3}.sales-status.muted{background:#f8fafc;color:var(--muted);border-color:var(--line)}.sales-channel.pos{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.sales-channel.manual{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.sales-channel.web{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.sales-channel.delivery{background:#fdf4ff;color:#86198f;border-color:#f5d0fe}.sales-channel.marketplace{background:#f8fafc;color:#475569}.sales-side{display:flex;flex-direction:column;gap:18px}.sales-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.sales-lines{grid-column:1/-1;display:flex;flex-direction:column;gap:10px}.sales-line{display:grid;grid-template-columns:2fr .7fr .9fr .7fr;gap:10px;border:1px solid var(--line);background:#f8fafc;border-radius:18px;padding:12px}.sales-notes{grid-column:1/-1}.flow-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.flow-grid article{border:1px solid var(--line);border-radius:18px;padding:14px;background:#f8fafc}.flow-grid b{width:30px;height:30px;border-radius:999px;display:grid;place-items:center;background:#fff4e8;color:#b45309;margin-bottom:10px}.flow-grid strong{display:block}.flow-grid span{display:block;color:var(--muted);font-weight:750;font-size:13px;margin-top:4px}.sales-list,.customer-list{display:flex;flex-direction:column;gap:10px}.sales-list-item{display:grid;grid-template-columns:34px 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:17px;padding:12px;background:#f8fafc}.sales-list-item>b{width:34px;height:34px;border-radius:999px;display:grid;place-items:center;background:#fff4e8;color:#b45309;font-weight:950}.sales-list-item.return>b{background:#fee2e2;color:#be123c}.sales-list-item strong{display:block}.sales-list-item span,.sales-list-item small{display:block;color:var(--muted);font-weight:800;font-size:13px;margin-top:2px}.sales-list-item em{font-style:normal;font-weight:950;color:#9a3412}.customer-item{border:1px solid var(--line);border-radius:16px;background:#f8fafc;padding:12px}.customer-item strong{display:block}.customer-item span{display:block;color:var(--muted);font-weight:800;font-size:13px;margin-top:3px}[data-theme="dark"] .sales-status.muted,[data-theme="dark"] .sales-line,[data-theme="dark"] .flow-grid article,[data-theme="dark"] .sales-list-item,[data-theme="dark"] .customer-item{background:#0f172a}
@media(max-width:1180px){.sales-grid{grid-template-columns:1fr}.sales-hero .hero-panel{min-width:0}.sales-filters{grid-template-columns:1fr 1fr}.sales-filters .primary-button{grid-column:1/-1}.sales-form{grid-template-columns:1fr 1fr}.sales-line{grid-template-columns:1fr 1fr}.sales-line label:first-child{grid-column:1/-1}.flow-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.sales-filters,.sales-form,.sales-line,.flow-grid{grid-template-columns:1fr}.sales-kpis{grid-template-columns:1fr}.sales-hero .hero-panel{padding:14px}.sales-head{align-items:stretch;flex-direction:column}.sales-head .catalog-actions{width:100%}.sales-head .catalog-actions button{flex:1}.sales-list-item{grid-template-columns:34px 1fr}.sales-list-item em{grid-column:1/-1;text-align:right}.sales-tabs{overflow:auto;padding-bottom:4px}}


/* Paquete 07 - SII / DTE */
.sii-hero .hero-panel{grid-template-columns:1fr;min-width:360px}.sii-fiscal-panel h2{font-size:30px;margin:6px 0 4px;letter-spacing:-.04em}.sii-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(330px,.85fr);gap:18px;align-items:start}.sii-side{display:flex;flex-direction:column;gap:18px}.sii-filters{display:grid;grid-template-columns:2fr 1.1fr 1fr auto;gap:12px;align-items:end;margin-bottom:18px}.sii-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.sii-form .full{grid-column:1/-1}.sii-status{display:inline-flex;align-items:center;border-radius:999px;padding:6px 9px;border:1px solid var(--line);font-size:11px;font-weight:950;white-space:nowrap;background:#f8fafc}.sii-status.ok{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.sii-status.warn{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.sii-status.danger{background:#fff1f2;color:#be123c;border-color:#fecdd3}.sii-status.info{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.sii-status.muted{background:#f8fafc;color:#64748b}.file-pills{display:flex;gap:6px;flex-wrap:wrap}.file-pills span{border-radius:999px;padding:5px 8px;font-size:11px;font-weight:950;border:1px solid var(--line)}.file-pills .on{background:#ecfdf3;color:#166534;border-color:#bbf7d0}.file-pills .off{background:#f8fafc;color:#94a3b8}.fiscal-card{display:flex;flex-direction:column;gap:9px;border:1px solid var(--line);background:#f8fafc;border-radius:18px;padding:14px}.fiscal-card strong{font-size:16px}.fiscal-card span:not(.sii-status){color:var(--muted);font-size:13px;font-weight:800}.caf-list,.cert-list,.sii-events,.sii-checklist{display:flex;flex-direction:column;gap:10px}.caf-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;border:1px solid var(--line);background:#f8fafc;border-radius:16px;padding:12px}.caf-row strong,.cert-row strong,.sii-events strong{display:block}.caf-row span,.cert-row span{display:block;color:var(--muted);font-size:12px;font-weight:800;margin-top:3px}.caf-row b{border-radius:999px;padding:7px 9px;font-size:12px}.caf-row b.ok{background:#f0fdf4;color:#166534}.caf-row b.danger{background:#fff1f2;color:#be123c}.cert-row,.sii-events article{border:1px solid var(--line);background:#f8fafc;border-radius:16px;padding:12px}.sii-events p{margin:7px 0 6px;color:var(--muted);line-height:1.45;font-size:13px}.sii-events small{color:var(--muted);font-weight:800}.sii-table td strong{display:block}.sii-table td small{display:block;color:var(--muted);font-weight:750;margin-top:2px}[data-theme="dark"] .fiscal-card,[data-theme="dark"] .caf-row,[data-theme="dark"] .cert-row,[data-theme="dark"] .sii-events article,[data-theme="dark"] .sii-status.muted,[data-theme="dark"] .file-pills .off{background:#0f172a}@media(max-width:1180px){.sii-grid{grid-template-columns:1fr}.sii-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.sii-hero .hero-panel{min-width:0}}@media(max-width:860px){.sii-filters,.sii-form{grid-template-columns:1fr}.sii-side{grid-template-columns:1fr}}



/* ===== Paquete 08: POS / Caja / Turnos ===== */
.pos-hero .hero-panel{grid-template-columns:1fr;min-width:390px}.pos-live-panel h2{font-size:26px;margin:8px 0 8px;letter-spacing:-.04em}.pos-live-panel p{color:var(--muted);font-weight:850;line-height:1.45}.pos-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(340px,.82fr);gap:18px;align-items:start}.pos-main-panel{min-width:0}.pos-filters{display:grid;grid-template-columns:1.6fr 1fr 1fr auto;gap:12px;align-items:end;margin-bottom:16px}.pos-table td strong{display:block}.pos-table td small{display:block;color:var(--muted);font-weight:750;margin-top:2px}.pos-status,.pos-channel{display:inline-flex;border-radius:999px;padding:6px 9px;border:1px solid var(--line);font-size:11px;font-weight:950;white-space:nowrap}.pos-status.ok,.device-card.ok b,.print-job.ok b{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.pos-status.warn,.device-card.warn b,.print-job.warn b{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.pos-status.info,.device-card.info b,.print-job.info b{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.pos-status.danger,.device-card.danger b,.print-job.danger b{background:#fff1f2;color:#be123c;border-color:#fecdd3}.pos-status.muted,.device-card.muted b,.print-job.muted b{background:#f8fafc;color:var(--muted);border-color:var(--line)}.pos-channel.pos{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.pos-channel.web{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.pos-channel.delivery{background:#fdf4ff;color:#86198f;border-color:#f5d0fe}.pos-channel.manual{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.pos-channel.marketplace{background:#f8fafc;color:#475569}.pos-form{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:14px}.form-actions.full{grid-column:1/-1}.pos-side{display:flex;flex-direction:column;gap:18px}.pos-list,.print-list{display:flex;flex-direction:column;gap:10px}.pos-list-item{display:grid;grid-template-columns:34px 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:17px;padding:12px;background:#f8fafc}.pos-list-item>b{width:34px;height:34px;border-radius:999px;display:grid;place-items:center;background:#fff4e8;color:#b45309;font-weight:950}.pos-list-item strong{display:block}.pos-list-item span,.pos-list-item small{display:block;color:var(--muted);font-weight:800;font-size:13px;margin-top:2px}.pos-list-item em{font-style:normal;font-weight:950;color:#9a3412}.device-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.device-card{border:1px solid var(--line);border-radius:17px;background:#f8fafc;padding:12px}.device-card strong,.device-card span,.device-card small{display:block}.device-card span,.device-card small{color:var(--muted);font-weight:800;font-size:12px;margin-top:3px}.device-card b,.print-job b{display:inline-flex;margin-top:10px;border-radius:999px;border:1px solid var(--line);padding:5px 8px;font-size:11px}.print-job{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid var(--line);border-radius:16px;background:#f8fafc;padding:12px}.print-job strong,.print-job span{display:block}.print-job span{color:var(--muted);font-weight:800;font-size:12px;margin-top:3px}.printer-list{display:flex;flex-direction:column;gap:10px}.printer-list article{border:1px solid var(--line);border-radius:16px;background:#f8fafc;padding:12px}.printer-list strong,.printer-list span,.printer-list small{display:block}.printer-list span,.printer-list small{color:var(--muted);font-weight:800;font-size:12px;margin-top:3px}.pos-flow article{min-height:118px}[data-theme="dark"] .pos-status.muted,[data-theme="dark"] .pos-list-item,[data-theme="dark"] .device-card,[data-theme="dark"] .print-job,[data-theme="dark"] .printer-list article{background:#0f172a}
@media(max-width:1180px){.pos-grid{grid-template-columns:1fr}.pos-filters{grid-template-columns:1fr 1fr}.pos-form{grid-template-columns:1fr}.device-grid{grid-template-columns:1fr}}
@media(max-width:720px){.pos-filters{grid-template-columns:1fr}.pos-kpis{grid-template-columns:1fr 1fr}.pos-hero .hero-panel{min-width:0}}

/* ===== Paquete 09: Restaurant / Cocina / Comandas ===== */
.rest-hero .hero-panel{grid-template-columns:1fr;min-width:390px}.rest-live-panel h2{font-size:26px;margin:8px 0 8px;letter-spacing:-.04em}.rest-live-panel p{color:var(--muted);font-weight:850;line-height:1.45}.mini-label{display:inline-flex;letter-spacing:.12em;text-transform:uppercase;font-size:11px;color:var(--muted);font-weight:950}.rest-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(340px,.82fr);gap:18px;align-items:start}.rest-main-panel{min-width:0}.rest-filters{display:grid;grid-template-columns:1.6fr 1fr 1fr auto;gap:12px;align-items:end;margin-bottom:16px}.rest-queue-list{display:flex;flex-direction:column;gap:12px}.rest-queue-card{display:grid;grid-template-columns:46px 1fr 70px;gap:14px;align-items:center;border:1px solid var(--line);border-radius:20px;background:#f8fafc;padding:14px}.queue-priority{width:42px;height:42px;border-radius:16px;display:grid;place-items:center;background:#fff4e8;color:#b45309;font-weight:950}.queue-title{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.queue-title strong{font-size:16px}.queue-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:5px;color:var(--muted);font-size:12px;font-weight:850}.queue-progress{height:7px;background:#e6edf7;border-radius:999px;overflow:hidden;margin-top:10px}.queue-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--orange),#ffb347);border-radius:inherit}.queue-time{text-align:center;border-left:1px solid var(--line);padding-left:12px}.queue-time b{display:block;font-size:24px;letter-spacing:-.04em}.queue-time span{display:block;color:var(--muted);font-weight:900;font-size:11px;text-transform:uppercase}.rest-status{display:inline-flex;border-radius:999px;padding:6px 9px;border:1px solid var(--line);font-size:11px;font-weight:950;white-space:nowrap}.rest-status.ok,.rest-queue-card.ok .queue-priority{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.rest-status.warn,.rest-queue-card.warn .queue-priority{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.rest-status.info,.rest-queue-card.info .queue-priority{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.rest-status.danger,.rest-queue-card.danger .queue-priority{background:#fff1f2;color:#be123c;border-color:#fecdd3}.rest-status.muted,.rest-queue-card.muted .queue-priority{background:#f8fafc;color:#64748b}.rest-form{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:14px}.rest-side{display:flex;flex-direction:column;gap:18px}.station-list,.rule-list,.modifier-list,.template-list{display:flex;flex-direction:column;gap:10px}.station-card,.rule-list article,.modifier-list article,.template-list article{border:1px solid var(--line);border-radius:17px;background:#f8fafc;padding:12px}.station-card{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.station-card strong,.station-card span,.rule-list strong,.rule-list span,.modifier-list strong,.modifier-list span,.template-list strong,.template-list span,.template-list small{display:block}.station-card span,.rule-list span,.modifier-list span,.template-list span,.template-list small{color:var(--muted);font-weight:800;font-size:12px;margin-top:3px}.station-card b{font-size:15px;color:#9a3412}.station-card i{grid-column:1/-1;height:7px;background:#e6edf7;border-radius:999px;overflow:hidden}.station-card i em{display:block;height:100%;background:linear-gradient(90deg,var(--orange),#22c55e);border-radius:inherit}.rest-ai-card{background:radial-gradient(circle at top right,rgba(255,122,0,.16),transparent 38%),var(--card)}.rest-ai-list span{line-height:1.4}.rest-lower-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;margin-top:18px}.rest-table td strong,.rest-table td small{display:block}.rest-table td small{color:var(--muted);font-weight:750;margin-top:2px}.ai-recipe-box{display:grid;grid-template-columns:1fr 1.2fr;gap:16px}.suggested-recipe{border:1px solid var(--line);border-radius:18px;background:#f8fafc;padding:16px}.suggested-recipe strong{display:block;margin-bottom:8px}.suggested-recipe ul{margin:8px 0 10px;padding-left:20px;color:var(--ink);font-weight:750}.suggested-recipe p{margin:0;color:var(--muted);font-weight:800;line-height:1.5}.rest-flow article{min-height:118px}[data-theme="dark"] .rest-queue-card,[data-theme="dark"] .station-card,[data-theme="dark"] .rule-list article,[data-theme="dark"] .modifier-list article,[data-theme="dark"] .template-list article,[data-theme="dark"] .suggested-recipe,[data-theme="dark"] .rest-status.muted{background:#0f172a}@media(max-width:1180px){.rest-grid,.rest-lower-grid{grid-template-columns:1fr}.rest-filters{grid-template-columns:1fr 1fr}.rest-form{grid-template-columns:1fr 1fr}.rest-hero .hero-panel{min-width:0}}@media(max-width:720px){.rest-kpis{grid-template-columns:1fr 1fr}.rest-filters,.rest-form,.ai-recipe-box{grid-template-columns:1fr}.rest-queue-card{grid-template-columns:40px 1fr}.queue-time{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);padding:10px 0 0;text-align:right}.rest-head{align-items:stretch;flex-direction:column}.rest-head .catalog-actions{width:100%}.rest-head .catalog-actions button{flex:1}}

/* ===== Paquete 10: Integraciones / PedidosYa / Ecommerce ===== */
.int-hero .hero-panel{grid-template-columns:1fr;min-width:390px}.int-live-panel h2{font-size:26px;margin:8px 0 8px;letter-spacing:-.04em}.int-live-panel p{color:var(--muted);font-weight:850;line-height:1.45}.int-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(340px,.82fr);gap:18px;align-items:start}.int-main-panel{min-width:0}.int-filters{display:grid;grid-template-columns:1.6fr 1fr 1fr auto;gap:12px;align-items:end;margin-bottom:16px}.int-account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.int-account-card{display:grid;grid-template-columns:54px 1fr;gap:14px;align-items:center;border:1px solid var(--line);border-radius:20px;background:#f8fafc;padding:14px}.int-platform-mark{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;font-weight:950;background:#fff4e8;color:#b45309;border:1px solid #fed7aa}.int-platform-mark.delivery{background:#fdf4ff;color:#86198f;border-color:#f5d0fe}.int-platform-mark.web{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.int-platform-mark.marketplace{background:#f8fafc;color:#475569}.int-platform-mark.payment{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.int-platform-mark.fiscal{background:#fff1f2;color:#be123c;border-color:#fecdd3}.int-account-title{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.int-account-title strong{font-size:15px}.int-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:5px;color:var(--muted);font-size:12px;font-weight:850}.int-mini-stats{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px}.int-mini-stats b{border:1px solid var(--line);border-radius:999px;padding:5px 8px;font-size:11px;background:var(--card)}.int-mini-stats small{color:var(--muted);font-weight:800}.int-status{display:inline-flex;border-radius:999px;padding:6px 9px;border:1px solid var(--line);font-size:11px;font-weight:950;white-space:nowrap}.int-status.ok,.int-account-card.ok .int-platform-mark{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.int-status.warn,.int-account-card.warn .int-platform-mark{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.int-status.info,.int-account-card.info .int-platform-mark{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.int-status.danger,.int-account-card.danger .int-platform-mark{background:#fff1f2;color:#be123c;border-color:#fecdd3}.int-status.muted,.int-account-card.muted .int-platform-mark{background:#f8fafc;color:#64748b}.int-form{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.int-side{display:flex;flex-direction:column;gap:18px}.int-ai-card{background:radial-gradient(circle at top right,rgba(255,122,0,.16),transparent 38%),var(--card)}.int-job-list,.delivery-list,.publication-list{display:flex;flex-direction:column;gap:10px}.int-job-list article,.delivery-list article,.publication-list article{border:1px solid var(--line);border-radius:17px;background:#f8fafc;padding:12px}.int-job-list article,.publication-list article{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center}.int-job-list strong,.int-job-list span,.delivery-list strong,.delivery-list span,.delivery-list small,.publication-list strong,.publication-list span,.publication-list small{display:block}.int-job-list span,.delivery-list span,.delivery-list small,.publication-list span,.publication-list small{color:var(--muted);font-weight:800;font-size:12px;margin-top:3px}.delivery-list article{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center}.delivery-list b{display:block;font-size:16px;text-align:right}.int-lower-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;margin-top:18px}.int-table td strong,.int-table td small{display:block}.int-table td small{color:var(--muted);font-weight:750;margin-top:2px}.int-flow article{min-height:118px}[data-theme="dark"] .int-account-card,[data-theme="dark"] .int-job-list article,[data-theme="dark"] .delivery-list article,[data-theme="dark"] .publication-list article,[data-theme="dark"] .int-status.muted{background:#0f172a}@media(max-width:1180px){.int-grid,.int-lower-grid{grid-template-columns:1fr}.int-filters{grid-template-columns:1fr 1fr}.int-account-grid{grid-template-columns:1fr}.int-form{grid-template-columns:1fr 1fr}.int-hero .hero-panel{min-width:0}}@media(max-width:720px){.int-kpis{grid-template-columns:1fr 1fr}.int-filters,.int-form{grid-template-columns:1fr}.int-account-card{grid-template-columns:44px 1fr}.int-platform-mark{width:44px;height:44px;border-radius:15px}.delivery-list article,.publication-list article,.int-job-list article{grid-template-columns:1fr}.int-head{align-items:stretch;flex-direction:column}.int-head .catalog-actions{width:100%}.int-head .catalog-actions button{flex:1}}


/* Paquete 11 - CMS / Ecommerce */
.cms-hero{background:linear-gradient(135deg,rgba(245,121,32,.14),rgba(107,114,128,.08));}
.cms-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(320px,.85fr);gap:18px;align-items:start;margin-top:18px;}
.cms-lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px;}
.cms-lower-grid .cms-checklist{grid-column:1/-1;}
.cms-filters,.cms-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end;margin:16px 0;}
.cms-form{grid-template-columns:repeat(3,minmax(0,1fr));}
.cms-form .full,.cms-filters button{grid-column:auto;}
.cms-site-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0;}
.cms-site-card{display:flex;gap:12px;padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--surface-soft);align-items:center;}
.cms-site-card strong,.cms-promo-list strong{display:block;color:var(--text);}
.cms-site-card span,.cms-site-card small,.cms-promo-list span,.cms-promo-list small{display:block;color:var(--muted);font-size:.82rem;margin-top:3px;}
.cms-site-mark{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;font-weight:900;color:#fff;background:#6b7280;box-shadow:0 10px 24px rgba(15,23,42,.12);flex:0 0 auto;}
.cms-site-mark.ecommerce{background:#f97316}.cms-site-mark.menu_digital{background:#10b981}.cms-site-mark.landing{background:#8b5cf6}.cms-site-mark.cms{background:#0ea5e9}.cms-site-mark.intranet{background:#64748b}
.cms-status{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;font-size:.78rem;font-weight:800;background:var(--surface-soft);color:var(--muted);white-space:nowrap;}
.cms-status.ok{background:rgba(16,185,129,.13);color:#059669}.cms-status.info{background:rgba(14,165,233,.13);color:#0284c7}.cms-status.warn{background:rgba(245,158,11,.15);color:#b45309}.cms-status.danger{background:rgba(239,68,68,.13);color:#dc2626}.cms-status.muted{background:rgba(100,116,139,.12);color:#64748b}
.cms-promo-list,.cms-ai-list{display:grid;gap:10px;}
.cms-promo-list article{display:flex;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--surface-soft);}
.cms-flow article{min-height:120px;}
.checklist-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.checklist-grid span{padding:12px 14px;border:1px dashed var(--line);border-radius:16px;background:var(--surface-soft);color:var(--text);font-weight:700;}
@media (max-width:1100px){.cms-grid,.cms-lower-grid{grid-template-columns:1fr}.cms-site-grid{grid-template-columns:1fr 1fr}.cms-filters,.cms-form{grid-template-columns:1fr 1fr}.checklist-grid{grid-template-columns:1fr 1fr}}
@media (max-width:720px){.cms-site-grid,.cms-filters,.cms-form,.checklist-grid{grid-template-columns:1fr}.cms-head{gap:12px}.cms-head .catalog-actions{width:100%;display:grid;grid-template-columns:1fr}.cms-head .catalog-actions .small{width:100%}}

/* Paquete 12 · IA Operativa */
.ai-hero .hero-panel{grid-template-columns:1fr;min-width:390px}.ai-brain-panel h2{font-size:26px;margin:8px 0 8px;letter-spacing:-.04em}.ai-brain-panel p{color:var(--muted);font-weight:850;line-height:1.45}.ai-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(340px,.82fr);gap:18px;align-items:start}.ai-main-panel{min-width:0}.ai-head{align-items:center}.ai-filters{display:grid;grid-template-columns:1.8fr 1.1fr 1fr auto;gap:12px;align-items:end;margin-bottom:16px}.ai-suggestion-list{display:grid;gap:12px}.ai-suggestion-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:start;border:1px solid var(--line);border-radius:20px;background:#f8fafc;padding:14px}.ai-suggestion-card.ok{background:#f0fdf4;border-color:#bbf7d0}.ai-suggestion-card.warn{background:#fff7ed;border-color:#fed7aa}.ai-suggestion-card.info{background:#eff6ff;border-color:#bfdbfe}.ai-suggestion-card.danger{background:#fff1f2;border-color:#fecdd3}.ai-suggestion-icon{width:46px;height:46px;border-radius:17px;display:grid;place-items:center;background:#fff4e8;color:#b45309;border:1px solid #fed7aa;font-weight:950;font-size:20px}.ai-suggestion-title{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.ai-suggestion-title strong{font-size:15px}.ai-suggestion-body p{margin:7px 0 10px;color:var(--ink);font-weight:780;line-height:1.45}.ai-suggestion-meta{display:flex;gap:8px;flex-wrap:wrap}.ai-suggestion-meta span{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:5px 8px;font-size:11px;font-weight:900;color:var(--muted)}.ai-card-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.ai-card-actions form{display:inline-flex}.ai-status{display:inline-flex;border-radius:999px;padding:6px 9px;border:1px solid var(--line);font-size:11px;font-weight:950;white-space:nowrap}.ai-status.ok{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.ai-status.warn{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.ai-status.info{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.ai-status.danger{background:#fff1f2;color:#be123c;border-color:#fecdd3}.ai-status.muted{background:#f8fafc;color:#64748b}.danger-text{color:#be123c!important}.ai-form{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.ai-form .full{grid-column:1/-1}.ai-policy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ai-policy-grid article{border:1px solid var(--line);border-radius:18px;background:#f8fafc;padding:14px}.ai-policy-grid b{width:30px;height:30px;border-radius:999px;display:grid;place-items:center;background:#fff0df;color:#9a3412;font-size:12px}.ai-policy-grid strong,.ai-policy-grid span{display:block}.ai-policy-grid strong{margin-top:9px}.ai-policy-grid span{color:var(--muted);font-weight:800;font-size:13px;line-height:1.45;margin-top:5px}.ai-side{display:flex;flex-direction:column;gap:18px}.ai-orchestrator-card{background:radial-gradient(circle at top right,rgba(255,122,0,.16),transparent 38%),var(--card)}.ai-workflow-list{display:flex;flex-direction:column;gap:10px}.ai-workflow-list article{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:17px;background:#f8fafc;padding:12px}.ai-workflow-list b{border-radius:999px;background:#fff0df;color:#9a3412;padding:5px 8px;font-size:11px}.ai-workflow-list strong,.ai-workflow-list span{display:block}.ai-workflow-list span{color:var(--muted);font-weight:800;font-size:12px;line-height:1.4;margin-top:3px}.ai-workflow-list em{font-style:normal;border-radius:999px;border:1px solid var(--line);background:var(--card);padding:5px 8px;font-size:11px;font-weight:950;color:var(--muted)}.ai-roadmap{display:grid;gap:10px}.ai-roadmap span{border:1px solid var(--line);border-radius:16px;background:#f8fafc;padding:11px 12px;font-weight:850;color:var(--ink)}.ai-lower-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;margin-top:18px}.ai-flow article{min-height:118px}[data-theme="dark"] .ai-suggestion-card,[data-theme="dark"] .ai-policy-grid article,[data-theme="dark"] .ai-workflow-list article,[data-theme="dark"] .ai-roadmap span,[data-theme="dark"] .ai-status.muted{background:#0f172a}@media(max-width:1180px){.ai-grid,.ai-lower-grid{grid-template-columns:1fr}.ai-filters{grid-template-columns:1fr 1fr}.ai-hero .hero-panel{min-width:0}}@media(max-width:720px){.ai-kpis{grid-template-columns:1fr 1fr}.ai-filters,.ai-form,.ai-policy-grid{grid-template-columns:1fr}.ai-suggestion-card{grid-template-columns:40px 1fr}.ai-suggestion-icon{width:40px;height:40px;border-radius:14px}.ai-card-actions{grid-column:1/-1;justify-content:flex-start}.ai-head{align-items:stretch;flex-direction:column}.ai-head .catalog-actions{width:100%}.ai-head .catalog-actions button{flex:1}.ai-workflow-list article{grid-template-columns:1fr}.ai-flow-card .flow-grid{grid-template-columns:1fr}}

/* Paquete 13 · Reportes BI */
.bi-hero{background:radial-gradient(circle at top left,rgba(255,122,0,.17),transparent 30%),linear-gradient(135deg,var(--card),rgba(248,250,252,.86));}
.bi-hero-panel{grid-template-columns:1fr;min-width:370px}.bi-hero-panel h2{margin:6px 0 0;font-size:26px;letter-spacing:-.04em}.bi-hero-panel p{font-weight:850;color:var(--muted)}.bi-mini-actions{display:flex;gap:10px;flex-wrap:wrap}.bi-toolbar{margin-bottom:18px}.bi-filters{display:grid;grid-template-columns:1fr 1.2fr 1fr auto;gap:12px;align-items:end}.bi-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(330px,.85fr);gap:18px;align-items:start}.bi-main-card{min-width:0}.bi-side{display:flex;flex-direction:column;gap:18px}.bi-chart-area{height:310px;display:grid;grid-template-columns:repeat(auto-fit,minmax(46px,1fr));gap:10px;align-items:end;padding:18px 12px 10px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,rgba(248,250,252,.96),rgba(255,255,255,.72));position:relative;overflow:hidden}.bi-chart-area:before{content:"";position:absolute;inset:18px 12px;background:linear-gradient(to top,rgba(148,163,184,.14) 1px,transparent 1px);background-size:100% 25%;pointer-events:none}.bi-bar-col{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px;position:relative;z-index:1}.bi-bars{height:245px;width:100%;display:flex;gap:5px;align-items:flex-end;justify-content:center}.bi-bar{width:16px;min-height:5px;border-radius:999px 999px 6px 6px;display:block;box-shadow:0 10px 18px rgba(15,23,42,.09)}.bi-bar.sales{background:linear-gradient(180deg,var(--orange),#ff9f1c)}.bi-bar.margin{background:linear-gradient(180deg,#22c55e,#86efac)}.bi-bar-col small{font-weight:950;color:var(--muted);font-size:11px}.bi-legend{display:flex;gap:16px;margin-top:12px;flex-wrap:wrap}.bi-legend span{display:flex;align-items:center;gap:8px;color:var(--muted);font-weight:900;font-size:12px}.bi-legend i{width:12px;height:12px;border-radius:50%;display:inline-block}.bi-legend i.sales{background:var(--orange)}.bi-legend i.margin{background:#22c55e}.bi-channel-list,.bi-risk-list,.bi-snapshot-list{display:grid;gap:10px}.bi-channel-list article{display:grid;grid-template-columns:1fr auto;gap:10px;border:1px solid var(--line);border-radius:17px;background:#f8fafc;padding:12px}.bi-channel-list strong,.bi-channel-list span,.bi-risk-list strong,.bi-risk-list span,.bi-snapshot-list strong,.bi-snapshot-list span{display:block}.bi-channel-list span,.bi-risk-list span,.bi-snapshot-list span{color:var(--muted);font-weight:800;font-size:12px;margin-top:3px}.bi-channel-list b{font-size:14px}.bi-channel-list em{grid-column:1/-1;height:8px;border-radius:999px;background:#e5eaf3;overflow:hidden}.bi-channel-list em i{height:100%;display:block;border-radius:999px;background:linear-gradient(90deg,var(--orange),#ffb020)}.bi-health-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.bi-health-list article{border:1px solid var(--line);border-radius:17px;background:#f8fafc;padding:12px}.bi-health-list span,.bi-health-list small{display:block;color:var(--muted);font-size:12px;font-weight:850}.bi-health-list strong{display:block;margin:6px 0 2px;font-size:18px;letter-spacing:-.03em}.bi-lower-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;margin-top:18px}.bi-lower-grid.final{grid-template-columns:.85fr 1.15fr}.bi-table td strong,.bi-table td small{display:block}.bi-table td small{color:var(--muted);font-weight:750;margin-top:3px}.bi-mini-bar{display:block;width:140px;max-width:100%;height:9px;border-radius:999px;background:#e5eaf3;overflow:hidden}.bi-mini-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#ff7a00,#ffb020)}.bi-risk-list article{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:17px;background:#f8fafc;padding:12px}.bi-risk-list b{font-size:16px}.bi-status{display:inline-flex;align-items:center;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:950;border:1px solid var(--line);white-space:nowrap}.bi-status.ok{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.bi-status.info{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.bi-status.warn{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.bi-status.danger{background:#fff1f2;color:#be123c;border-color:#fecdd3}.bi-status.muted{background:#f8fafc;color:#64748b}.bi-dte-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bi-dte-grid article{border:1px solid var(--line);border-radius:18px;background:#f8fafc;padding:14px}.bi-dte-grid strong{display:block;margin:13px 0 3px;font-size:30px;letter-spacing:-.05em}.bi-dte-grid small{display:block;color:var(--muted);font-weight:900}.bi-snapshot-list article{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:17px;background:#f8fafc;padding:12px}.bi-snapshot-list b{font-size:16px}.bi-export-grid,.bi-policy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.bi-export-grid article,.bi-policy-grid article{border:1px solid var(--line);border-radius:18px;background:#f8fafc;padding:14px}.bi-export-grid b,.bi-export-grid span,.bi-policy-grid b,.bi-policy-grid strong,.bi-policy-grid span{display:block}.bi-export-grid b,.bi-policy-grid strong{margin-bottom:5px}.bi-export-grid span,.bi-policy-grid span{color:var(--muted);font-weight:820;font-size:13px;line-height:1.45}.bi-policy-grid b{width:30px;height:30px;border-radius:999px;display:grid;place-items:center;background:#fff0df;color:#9a3412;font-size:12px;margin-bottom:10px}.bi-flow article{min-height:112px}[data-theme="dark"] .bi-chart-area,[data-theme="dark"] .bi-channel-list article,[data-theme="dark"] .bi-health-list article,[data-theme="dark"] .bi-risk-list article,[data-theme="dark"] .bi-dte-grid article,[data-theme="dark"] .bi-snapshot-list article,[data-theme="dark"] .bi-export-grid article,[data-theme="dark"] .bi-policy-grid article,[data-theme="dark"] .bi-status.muted{background:#0f172a}[data-theme="dark"] .bi-channel-list em,[data-theme="dark"] .bi-mini-bar{background:#253044}@media(max-width:1180px){.bi-grid,.bi-lower-grid,.bi-lower-grid.final{grid-template-columns:1fr}.bi-filters{grid-template-columns:1fr 1fr}.bi-hero-panel{min-width:0}}@media(max-width:720px){.bi-kpis{grid-template-columns:1fr 1fr}.bi-filters,.bi-export-grid,.bi-policy-grid,.bi-dte-grid{grid-template-columns:1fr}.bi-risk-list article,.bi-snapshot-list article,.bi-channel-list article{grid-template-columns:1fr}.bi-head{align-items:stretch;flex-direction:column}.bi-chart-area{height:250px}.bi-bars{height:185px}.bi-health-list{grid-template-columns:1fr}}

/* Paquete 14: Configuración / Seguridad / Roles */
.config-hero-panel{grid-template-columns:1fr 1fr;min-width:390px}.config-hero-panel article{border:1px solid var(--line);border-radius:18px;background:#f8fafc;padding:13px}.config-hero-panel strong,.config-hero-panel small{display:block}.config-hero-panel strong{margin-top:5px;font-size:18px;letter-spacing:-.03em}.config-hero-panel small{color:var(--muted);font-weight:850;margin-top:4px}.mini-label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-weight:950}.system-banner.success{border-color:#bbf7d0;background:#f0fdf4;color:#166534}.system-banner.error{border-color:#fecaca;background:#fff1f2;color:#b91c1c}.system-banner.info{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.config-secret-card{margin-bottom:18px;border-color:#fed7aa;background:linear-gradient(135deg,#fff7ed,var(--card))}.config-secret-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.config-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.85fr);gap:18px;align-items:start}.config-side{display:flex;flex-direction:column;gap:18px}.config-lower-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;margin-top:18px}.config-lower-grid.final{grid-template-columns:.95fr 1.05fr}.config-table td strong,.config-table td small{display:block}.config-table td small{color:var(--muted);font-weight:750;margin-top:3px}.config-status{display:inline-flex;align-items:center;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:950;border:1px solid var(--line);white-space:nowrap}.config-status.ok{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.config-status.warn{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.config-status.info{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.config-status.danger{background:#fff1f2;color:#be123c;border-color:#fecdd3}.config-status.muted{background:#f8fafc;color:#64748b}.muted-text{color:var(--muted);font-weight:800}.config-role-list,.config-checklist,.config-policy-list,.config-credential-list{display:grid;gap:10px}.config-role-list article,.config-checklist article{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:17px;background:#f8fafc;padding:12px}.config-checklist article{grid-template-columns:auto 1fr}.config-checklist b{width:30px;height:30px;border-radius:999px;background:#fff0df;color:#9a3412;display:grid;place-items:center;font-size:12px}.config-checklist span{font-weight:850;color:var(--ink);font-size:13px;line-height:1.45}.config-role-list strong,.config-role-list span{display:block}.config-role-list span{color:var(--muted);font-weight:800;font-size:12px;margin-top:3px}.config-role-list b{border:1px solid var(--line);border-radius:999px;background:var(--card);padding:6px 9px;font-size:11px;color:var(--muted)}.config-security-card{background:radial-gradient(circle at top right,rgba(255,122,0,.14),transparent 42%),var(--card)}.config-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.config-module-grid article{border:1px solid var(--line);border-radius:20px;background:#f8fafc;padding:14px;display:flex;flex-direction:column;gap:9px}.config-module-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.config-module-head span{width:38px;height:38px;border-radius:14px;border:1px solid var(--line);display:grid;place-items:center;background:var(--card);color:var(--orange)}.config-module-grid strong{font-size:16px;letter-spacing:-.02em}.config-module-grid small{color:var(--muted);font-weight:900}.config-module-grid p{margin:0;color:var(--muted);font-size:13px;line-height:1.45;font-weight:760}.config-inline-form{display:grid;grid-template-columns:1fr auto;gap:9px;margin-top:auto}.config-inline-form select{height:40px}.config-policy-list article{display:grid;grid-template-columns:1fr minmax(180px,.7fr) auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:17px;background:#f8fafc;padding:12px}.config-policy-list strong,.config-policy-list span{display:block}.config-policy-list span{color:var(--muted);font-weight:850;font-size:12px;margin-top:3px}.config-policy-list code,.config-credential-list code{display:block;border:1px solid var(--line);border-radius:12px;background:var(--card);padding:8px 10px;color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis}.config-credential-list article{display:grid;grid-template-columns:1fr minmax(150px,.55fr) auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:17px;background:#f8fafc;padding:12px}.config-credential-list strong,.config-credential-list span,.config-credential-list small{display:block}.config-credential-list span,.config-credential-list small{color:var(--muted);font-weight:800;font-size:12px;margin-top:3px}.config-credential-list small{grid-column:1/-1}.config-action-panel{margin-top:18px;border-color:#fed7aa;background:linear-gradient(135deg,rgba(255,122,0,.06),var(--card))}.config-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end}.config-form-grid .config-toggle-label{height:44px;display:flex;flex-direction:row;align-items:center;gap:9px;border:1px solid var(--line);border-radius:14px;background:var(--card);padding:0 12px;text-transform:none;letter-spacing:0;color:var(--ink)}.config-form-grid .config-toggle-label input{height:auto;width:auto}.catalog-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.panel-head.compact{margin-bottom:14px}.data-table{width:100%;border-collapse:separate;border-spacing:0 8px}.data-table th{text-align:left;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.12em;padding:0 10px}.data-table td{background:#f8fafc;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:13px 10px;font-size:13px;font-weight:820}.data-table td:first-child{border-left:1px solid var(--line);border-radius:14px 0 0 14px}.data-table td:last-child{border-right:1px solid var(--line);border-radius:0 14px 14px 0}.responsive-table{overflow:auto}.compact h2{font-size:20px}.config-main-card{min-width:0}[data-theme="dark"] .config-hero-panel article,[data-theme="dark"] .config-role-list article,[data-theme="dark"] .config-checklist article,[data-theme="dark"] .config-module-grid article,[data-theme="dark"] .config-policy-list article,[data-theme="dark"] .config-credential-list article,[data-theme="dark"] .data-table td,[data-theme="dark"] .config-status.muted{background:#0f172a}[data-theme="dark"] .config-secret-card{background:linear-gradient(135deg,rgba(255,122,0,.10),var(--card))}@media(max-width:1180px){.config-grid,.config-lower-grid,.config-lower-grid.final{grid-template-columns:1fr}.config-module-grid{grid-template-columns:1fr 1fr}.config-hero-panel{min-width:0}}@media(max-width:760px){.config-kpis{grid-template-columns:1fr 1fr}.config-hero{flex-direction:column}.config-hero-panel,.config-secret-grid,.config-module-grid,.config-form-grid{grid-template-columns:1fr}.config-policy-list article,.config-credential-list article{grid-template-columns:1fr}.config-inline-form{grid-template-columns:1fr}.config-head{align-items:stretch;flex-direction:column}.catalog-actions{width:100%}.catalog-actions button{flex:1}.config-status{width:max-content}.config-credential-list small{grid-column:auto}}

/* Paquete 15 - Migrador catálogo */
.migration-hero{background:radial-gradient(circle at top right,rgba(255,122,0,.18),transparent 36%),linear-gradient(135deg,var(--card),#fff8f1)}
.migration-score-panel{grid-template-columns:1fr 1fr;min-width:390px}.migration-score-panel article{min-height:98px}.migration-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(340px,.82fr);gap:18px;align-items:start}.migration-main-card{min-width:0}.migration-head{align-items:center}.inline-action-form{display:inline-flex}.migration-flow-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0 16px}.migration-flow-grid article{border:1px solid var(--line);border-radius:18px;background:#f8fafc;padding:14px}.migration-flow-grid b{width:32px;height:32px;border-radius:999px;display:grid;place-items:center;background:#fff0df;color:#9a3412;font-size:12px}.migration-flow-grid strong,.migration-flow-grid span{display:block}.migration-flow-grid strong{margin-top:9px}.migration-flow-grid span{color:var(--muted);font-weight:800;font-size:13px;line-height:1.45;margin-top:5px}.migration-table td strong,.migration-table td small{display:block}.migration-table code,.migration-code-list code{border:1px solid var(--line);background:var(--soft);border-radius:10px;padding:4px 7px;color:var(--ink);font-weight:900}.migration-side{display:flex;flex-direction:column;gap:18px}.migration-checklist{display:flex;flex-direction:column;gap:10px}.migration-checklist article{display:grid;grid-template-columns:34px 1fr;gap:11px;align-items:start;border:1px solid var(--line);border-radius:17px;background:#f8fafc;padding:12px}.migration-checklist b{width:32px;height:32px;border-radius:999px;display:grid;place-items:center;font-weight:950}.migration-checklist article.ok b{background:#dcfce7;color:#166534}.migration-checklist article.danger b{background:#fee2e2;color:#991b1b}.migration-checklist strong,.migration-checklist span{display:block}.migration-checklist span{color:var(--muted);font-weight:800;font-size:12px;line-height:1.4;margin-top:3px}.migration-code-list{display:grid;gap:10px}.migration-code-list article{border:1px solid var(--line);border-radius:17px;background:#f8fafc;padding:12px}.migration-code-list strong,.migration-code-list code,.migration-code-list span{display:block}.migration-code-list code{display:inline-block;margin:7px 0}.migration-code-list span{color:var(--muted);font-weight:800;font-size:12px;line-height:1.45}.migration-lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.migration-batch-card{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.migration-batch-card>div{border:1px solid var(--line);border-radius:18px;background:#f8fafc;padding:14px}.migration-batch-card strong,.migration-batch-card small{display:block}.migration-batch-card strong{font-size:19px;letter-spacing:-.03em}.migration-batch-card small{color:var(--muted);font-weight:800;font-size:11px;word-break:break-all}.migration-note{margin:12px 0 0;color:var(--muted);font-weight:800;line-height:1.45}.migration-validation-list{display:flex;flex-direction:column;gap:10px;max-height:360px;overflow:auto;padding-right:4px}.migration-validation-list article{display:grid;grid-template-columns:62px 1fr;gap:10px;border:1px solid var(--line);border-radius:16px;background:#f8fafc;padding:11px}.migration-validation-list b{font-size:11px;border-radius:999px;padding:6px 8px;text-align:center;height:max-content}.migration-validation-list article.ok b{background:#dcfce7;color:#166534}.migration-validation-list article.warning b{background:#fef3c7;color:#92400e}.migration-validation-list article.error b,.migration-validation-list article.danger b{background:#fee2e2;color:#991b1b}.migration-validation-list strong,.migration-validation-list span,.migration-validation-list small{display:block}.migration-validation-list span,.migration-validation-list small{color:var(--muted);font-weight:800;font-size:12px;line-height:1.4;margin-top:2px}.migration-sql-card{margin-top:18px}.migration-sql-card pre{white-space:pre-wrap;background:#0f172a;color:#e2e8f0;border-radius:18px;padding:18px;overflow:auto;font-size:12px;line-height:1.55}.empty-state{border:1px dashed var(--line);border-radius:18px;background:#f8fafc;padding:18px;text-align:center}.empty-state strong,.empty-state span{display:block}.empty-state span{color:var(--muted);font-weight:800;margin-top:4px}[data-theme="dark"] .migration-hero{background:radial-gradient(circle at top right,rgba(255,122,0,.20),transparent 36%),linear-gradient(135deg,#111827,#0b1220)}[data-theme="dark"] .migration-flow-grid article,[data-theme="dark"] .migration-checklist article,[data-theme="dark"] .migration-code-list article,[data-theme="dark"] .migration-batch-card>div,[data-theme="dark"] .migration-validation-list article,[data-theme="dark"] .empty-state{background:#0f172a}@media(max-width:1180px){.migration-grid,.migration-lower-grid{grid-template-columns:1fr}.migration-flow-grid{grid-template-columns:1fr 1fr}.migration-score-panel{min-width:0}}@media(max-width:720px){.migration-kpis{grid-template-columns:1fr 1fr}.migration-flow-grid,.migration-batch-card{grid-template-columns:1fr}.migration-head{align-items:stretch;flex-direction:column}.migration-head .catalog-actions{width:100%;display:grid;grid-template-columns:1fr}.inline-action-form,.inline-action-form button{width:100%}.migration-score-panel{grid-template-columns:1fr}}

/* Paquete 16 · POS Sync / Adaptador */
.sync-hero .sync-live-panel{background:linear-gradient(135deg,rgba(255,122,24,.16),rgba(43,47,54,.08));border:1px solid rgba(255,122,24,.22)}
.sync-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr);gap:18px;margin-top:18px}.sync-main-panel{min-width:0}.sync-side{display:flex;flex-direction:column;gap:18px}.sync-table code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;background:rgba(100,116,139,.12);border-radius:8px;padding:4px 7px}.endpoint-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}.endpoint-list article{border:1px solid var(--border);background:var(--panel-soft);border-radius:18px;padding:14px}.endpoint-list b{display:block;margin-bottom:8px}.endpoint-list code{display:block;overflow:auto;background:rgba(15,23,42,.08);border-radius:12px;padding:9px;margin-bottom:8px;font-size:12px}.code-block{background:#111827;color:#e5e7eb;border-radius:18px;padding:16px;overflow:auto;font-size:12px;line-height:1.55}.sync-op-list,.sync-conflict-list{display:flex;flex-direction:column;gap:10px}.status-chips .chip.warn{border-color:rgba(245,158,11,.35)}
html[data-theme="dark"] .endpoint-list code{background:rgba(255,255,255,.06)}
@media (max-width:1100px){.sync-grid{grid-template-columns:1fr}.endpoint-list{grid-template-columns:1fr}}

/* Paquete 18 - Instalador / Diagnóstico */
.diag-hero{background:radial-gradient(circle at top right,rgba(255,122,0,.18),transparent 34%),linear-gradient(135deg,var(--card),rgba(255,255,255,.74))}
[data-theme="dark"] .diag-hero{background:radial-gradient(circle at top right,rgba(255,122,0,.22),transparent 34%),linear-gradient(135deg,#111827,#0b1220)}
.diag-score-panel{min-width:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:18px;border:1px solid var(--line);border-radius:26px;background:rgba(255,255,255,.68)}
[data-theme="dark"] .diag-score-panel{background:rgba(15,23,42,.72)}
.diag-ring{--score:0;width:172px;height:172px;border-radius:50%;display:grid;place-items:center;text-align:center;background:conic-gradient(var(--orange) calc(var(--score)*1%),#e2e8f0 0);position:relative;box-shadow:inset 0 0 0 1px var(--line)}
.diag-ring:before{content:"";position:absolute;inset:18px;background:var(--card);border-radius:50%;box-shadow:0 0 0 1px var(--line)}
.diag-ring strong,.diag-ring span{position:relative;z-index:1;display:block}.diag-ring strong{font-size:36px;letter-spacing:-.05em}.diag-ring span{font-size:12px;font-weight:950;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin-top:48px}.diag-state{border-radius:999px;padding:8px 14px;font-weight:950;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.diag-state.ok{background:#dcfce7;color:#166534}.diag-state.warn{background:#fef3c7;color:#92400e}.diag-score-panel small{color:var(--muted);font-weight:800}.diag-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}.diag-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr);gap:18px;margin-top:18px}.diag-main-card{min-width:0}.diag-side{display:flex;flex-direction:column;gap:18px}.diag-head{align-items:center}.diag-section-list{display:flex;flex-direction:column;gap:18px}.diag-section{border:1px solid var(--line);border-radius:22px;padding:16px;background:#f8fafc}.diag-section h3{margin:0 0 12px;font-size:17px;letter-spacing:-.02em}.diag-check-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.diag-check{display:grid;grid-template-columns:74px 1fr;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:16px;background:var(--card);padding:12px}.diag-check b{display:inline-flex;align-items:center;justify-content:center;min-height:28px;border-radius:999px;font-size:11px;font-weight:950}.diag-check.ok b{background:#dcfce7;color:#166534}.diag-check.warn b{background:#fef3c7;color:#92400e}.diag-check.fail b{background:#fee2e2;color:#991b1b}.diag-check strong,.diag-check span{display:block}.diag-check strong{font-size:13px}.diag-check span{margin-top:3px;color:var(--muted);font-size:12px;font-weight:750;line-height:1.35;word-break:break-word}.diag-steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:10px}.diag-steps li{font-weight:800;color:var(--ink);line-height:1.45}.diag-note{margin:12px 0 0;color:var(--muted);font-weight:800;line-height:1.45}.diag-note code{background:rgba(100,116,139,.12);border-radius:8px;padding:3px 6px}.diag-mini-list{display:grid;grid-template-columns:1fr;gap:9px}.diag-mini-list span{border:1px solid var(--line);background:#f8fafc;border-radius:14px;padding:11px 12px;font-weight:900;font-size:13px}.panel-head.compact{margin-bottom:14px}.catalog-actions a.primary-button,.catalog-actions a.ghost-button{display:inline-flex;align-items:center;justify-content:center}.system-banner.info{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.system-banner.fail,.system-banner.error{border-color:#fecaca;background:#fff5f5;color:#991b1b}
[data-theme="dark"] .diag-section,[data-theme="dark"] .diag-mini-list span{background:#0f172a}
@media(max-width:1180px){.diag-grid{grid-template-columns:1fr}.diag-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.diag-score-panel{min-width:0}}
@media(max-width:760px){.diag-kpis{grid-template-columns:1fr 1fr}.diag-check-list{grid-template-columns:1fr}.diag-head{align-items:stretch;flex-direction:column}.diag-head .catalog-actions{display:grid;grid-template-columns:1fr}.diag-score-panel{width:100%}}

/* Paquete 19 - Asistente de instalación inicial */
.setup-hero{background:radial-gradient(circle at top right,rgba(255,122,0,.18),transparent 35%),linear-gradient(135deg,var(--card),rgba(255,255,255,.76))}
[data-theme="dark"] .setup-hero{background:radial-gradient(circle at top right,rgba(255,122,0,.22),transparent 35%),linear-gradient(135deg,#111827,#0b1220)}
.setup-status-panel{min-width:340px;display:flex;flex-direction:column;gap:14px;padding:18px;border:1px solid var(--line);border-radius:26px;background:rgba(255,255,255,.68)}
[data-theme="dark"] .setup-status-panel{background:rgba(15,23,42,.72)}
.setup-status{border-radius:20px;border:1px solid var(--line);padding:16px;background:var(--card)}
.setup-status strong,.setup-status span{display:block}.setup-status strong{font-size:20px;letter-spacing:-.03em}.setup-status span{margin-top:5px;color:var(--muted);font-weight:800;line-height:1.4}.setup-status.ok{border-color:#bbf7d0;background:#f0fdf4}.setup-status.warn{border-color:#fed7aa;background:#fff7ed}[data-theme="dark"] .setup-status.ok,[data-theme="dark"] .setup-status.warn{background:#0f172a}
.setup-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.setup-mini-grid article{border:1px solid var(--line);background:var(--card);border-radius:16px;padding:13px}.setup-mini-grid strong,.setup-mini-grid span{display:block}.setup-mini-grid strong{font-size:24px;letter-spacing:-.04em}.setup-mini-grid span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.setup-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,.85fr);gap:18px;margin-top:18px}.setup-main-card{min-width:0}.setup-side{display:flex;flex-direction:column;gap:18px}.setup-form{display:flex;flex-direction:column;gap:18px}.setup-section-title{display:flex;align-items:center;gap:10px;margin-top:8px}.setup-section-title b{width:34px;height:34px;border-radius:999px;display:grid;place-items:center;background:linear-gradient(135deg,var(--orange),var(--orange-2));color:white;font-weight:950}.setup-section-title span{font-size:15px;font-weight:950;letter-spacing:-.02em}.form-grid{display:grid;gap:14px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid label{min-width:0}.form-grid input,.form-grid select,.setup-option-card input:not([type="checkbox"]){width:100%}.setup-option-card{border:1px solid var(--line);border-radius:20px;background:#f8fafc;padding:16px;display:grid;gap:12px}.setup-option-card p{margin:0;color:var(--muted);font-weight:800;line-height:1.45}.checkbox-line{display:grid;grid-template-columns:22px 1fr;align-items:start;gap:10px;text-transform:none;letter-spacing:0;font-size:14px;color:var(--ink)}.checkbox-line input{width:18px;height:18px;margin-top:2px}.checkbox-line span{font-weight:900;line-height:1.35}.checkbox-line code{background:rgba(100,116,139,.12);border-radius:8px;padding:2px 5px}.form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.sticky-actions{position:sticky;bottom:0;background:linear-gradient(180deg,rgba(255,255,255,.70),var(--card));border-top:1px solid var(--line);padding-top:16px;margin-top:4px}[data-theme="dark"] .sticky-actions{background:linear-gradient(180deg,rgba(18,26,43,.70),var(--card))}.setup-checklist{display:flex;flex-direction:column;gap:10px}.setup-checklist article{display:grid;grid-template-columns:34px 1fr;gap:11px;align-items:start;border:1px solid var(--line);border-radius:17px;background:#f8fafc;padding:12px}.setup-checklist b{width:32px;height:32px;border-radius:999px;display:grid;place-items:center;font-weight:950}.setup-checklist article.ok b{background:#dcfce7;color:#166534}.setup-checklist article.warn b{background:#fef3c7;color:#92400e}.setup-checklist span{color:var(--muted);font-weight:800;font-size:12px;line-height:1.4}.setup-checklist code{background:rgba(100,116,139,.12);border-radius:8px;padding:2px 5px}.setup-summary-list{display:grid;gap:9px}.setup-summary-list span{border:1px solid var(--line);background:#f8fafc;border-radius:16px;padding:12px;display:block}.setup-summary-list b,.setup-summary-list code,.setup-summary-list small{display:block}.setup-summary-list b{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.setup-summary-list code{margin-top:6px;background:#0f172a;color:#e2e8f0;border-radius:10px;padding:9px;overflow:auto}.setup-summary-list small{margin-top:6px;color:#b45309;font-weight:850}.setup-next-list{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:10px}.setup-next-list li{font-weight:800;line-height:1.45}.catalog-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.catalog-actions .small{display:inline-flex;align-items:center;justify-content:center}.empty-state code{background:rgba(100,116,139,.12);border-radius:8px;padding:2px 5px}[data-theme="dark"] .setup-option-card,[data-theme="dark"] .setup-checklist article,[data-theme="dark"] .setup-summary-list span{background:#0f172a}
@media(max-width:1180px){.setup-grid{grid-template-columns:1fr}.form-grid.three{grid-template-columns:1fr 1fr}.setup-status-panel{min-width:0}}
@media(max-width:760px){.setup-hero{flex-direction:column}.setup-status-panel{width:100%}.form-grid.three{grid-template-columns:1fr}.setup-mini-grid{grid-template-columns:1fr 1fr}.panel-head{flex-direction:column}.catalog-actions,.form-actions{width:100%;display:grid;grid-template-columns:1fr}.catalog-actions a,.form-actions a,.form-actions button{width:100%}}


/* Paquete 20 - Hardening producción */
.hardening-hero{background:radial-gradient(circle at top right,rgba(239,68,68,.13),transparent 33%),radial-gradient(circle at top left,rgba(255,122,0,.16),transparent 30%),linear-gradient(135deg,var(--card),rgba(255,255,255,.76))}
[data-theme="dark"] .hardening-hero{background:radial-gradient(circle at top right,rgba(239,68,68,.18),transparent 33%),radial-gradient(circle at top left,rgba(255,122,0,.20),transparent 30%),linear-gradient(135deg,#111827,#0b1220)}
.hardening-score-panel{min-width:310px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:18px;border:1px solid var(--line);border-radius:26px;background:rgba(255,255,255,.68)}
[data-theme="dark"] .hardening-score-panel{background:rgba(15,23,42,.72)}
.hardening-ring{--score:0;width:172px;height:172px;border-radius:50%;display:grid;place-items:center;text-align:center;background:conic-gradient(var(--orange) calc(var(--score)*1%),#e2e8f0 0);position:relative;box-shadow:inset 0 0 0 1px var(--line)}
.hardening-ring:before{content:"";position:absolute;inset:18px;background:var(--card);border-radius:50%;box-shadow:0 0 0 1px var(--line)}
.hardening-ring strong,.hardening-ring span{position:relative;z-index:1;display:block}.hardening-ring strong{font-size:36px;letter-spacing:-.05em}.hardening-ring span{font-size:12px;font-weight:950;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin-top:48px}
.hardening-state{border-radius:999px;padding:8px 14px;font-weight:950;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.hardening-state.ok{background:#dcfce7;color:#166534}.hardening-state.warn{background:#fef3c7;color:#92400e}.hardening-score-panel small{color:var(--muted);font-weight:800}
.hardening-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}.hardening-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr);gap:18px;margin-top:18px}.hardening-side{display:flex;flex-direction:column;gap:18px}.hardening-main-card{min-width:0}.hardening-head{align-items:center}.hardening-section-list{display:flex;flex-direction:column;gap:18px}.hardening-section{border:1px solid var(--line);border-radius:22px;padding:16px;background:#f8fafc}.hardening-section h3{margin:0 0 12px;font-size:17px;letter-spacing:-.02em}.hardening-check-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hardening-check{display:grid;grid-template-columns:76px 1fr;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:16px;background:var(--card);padding:12px}.hardening-check b{display:inline-flex;align-items:center;justify-content:center;min-height:28px;border-radius:999px;font-size:11px;font-weight:950}.hardening-check.ok b{background:#dcfce7;color:#166534}.hardening-check.warn b{background:#fef3c7;color:#92400e}.hardening-check.fail b{background:#fee2e2;color:#991b1b}.hardening-check strong,.hardening-check span,.hardening-check small{display:block}.hardening-check strong{font-size:13px}.hardening-check span{margin-top:3px;color:var(--muted);font-size:12px;font-weight:750;line-height:1.35;word-break:break-word}.hardening-check small{margin-top:8px;color:#b45309;font-weight:850;line-height:1.35}.hardening-mini-list{display:grid;grid-template-columns:1fr;gap:9px;margin-top:10px}.hardening-mini-list span{border:1px solid var(--line);background:#f8fafc;border-radius:14px;padding:11px 12px;font-weight:900;font-size:13px}.hardening-mini-list.danger span{border-color:#fecaca;background:#fff5f5;color:#991b1b}.code-block{white-space:pre-wrap;overflow:auto;background:#0f172a;color:#e2e8f0;border-radius:16px;padding:14px;font-weight:800;font-size:12px;line-height:1.55;border:1px solid rgba(255,255,255,.08)}
[data-theme="dark"] .hardening-section,[data-theme="dark"] .hardening-mini-list span{background:#0f172a}[data-theme="dark"] .hardening-mini-list.danger span{background:#1f1113;color:#fecaca;border-color:#7f1d1d}
@media(max-width:1180px){.hardening-grid{grid-template-columns:1fr}.hardening-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.hardening-score-panel{min-width:0}}
@media(max-width:760px){.hardening-hero{flex-direction:column}.hardening-kpis{grid-template-columns:1fr 1fr}.hardening-check-list{grid-template-columns:1fr}.hardening-head{align-items:stretch;flex-direction:column}.hardening-head .catalog-actions{display:grid;grid-template-columns:1fr}.hardening-score-panel{width:100%}}

/* P21 - ACL / permisos */
.split-layout.wide-left{grid-template-columns:minmax(0,1.65fr) minmax(320px,.75fr)}
.inline-filter select{min-height:42px;border:1px solid var(--line);background:var(--card);color:var(--text);border-radius:14px;padding:0 14px;font-weight:800}
.acl-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
.acl-module-card{border:1px solid var(--line);background:linear-gradient(180deg,var(--card),var(--soft));border-radius:22px;padding:14px;box-shadow:var(--shadow-sm)}
.acl-module-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.acl-module-title strong{font-size:14px;color:var(--text)}
.acl-module-title span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:4px 8px;background:var(--card)}
.acl-permissions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.acl-check{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text);padding:8px 9px;border-radius:12px;background:rgba(148,163,184,.08);border:1px solid transparent;cursor:pointer}
.acl-check:hover{border-color:rgba(245,124,32,.35)}
.acl-check input{accent-color:var(--brand);width:15px;height:15px}
.sticky-actions{position:sticky;bottom:0;background:linear-gradient(180deg,rgba(255,255,255,.72),var(--card));backdrop-filter:blur(10px);border-top:1px solid var(--line);margin:20px -18px -18px;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:0 0 22px 22px}
[data-theme="dark"] .sticky-actions{background:linear-gradient(180deg,rgba(15,23,42,.72),var(--card))}
.compact-list{margin-top:18px}.compact-list p{font-size:13px;line-height:1.45;color:var(--muted)}
.system-banner.success{border-color:rgba(34,197,94,.28);background:rgba(34,197,94,.12);color:#15803d}
.system-banner.info{border-color:rgba(59,130,246,.28);background:rgba(59,130,246,.12);color:#1d4ed8}
@media (max-width: 1100px){.split-layout.wide-left{grid-template-columns:1fr}.acl-grid{grid-template-columns:1fr}}
@media (max-width: 680px){.acl-permissions{grid-template-columns:1fr}.sticky-actions{position:static;flex-direction:column;align-items:stretch}.sticky-actions .btn{width:100%}}

/* P22 - Auditoría / Bitácora */
.audit-hero{background:radial-gradient(circle at top right,rgba(47,128,237,.14),transparent 34%),radial-gradient(circle at top left,rgba(255,122,0,.14),transparent 30%),linear-gradient(135deg,var(--card),rgba(255,255,255,.78))}
[data-theme="dark"] .audit-hero{background:radial-gradient(circle at top right,rgba(47,128,237,.18),transparent 34%),radial-gradient(circle at top left,rgba(255,122,0,.20),transparent 30%),linear-gradient(135deg,#111827,#0b1220)}
.audit-toolbar{margin-top:18px}.audit-filters{display:grid;grid-template-columns:140px 140px 170px 190px minmax(220px,1fr) 110px auto;gap:12px;align-items:end}.audit-filters label{display:grid;gap:7px}.audit-filters span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:950}.audit-filters input,.audit-filters select{min-height:42px;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:14px;padding:0 13px;font-weight:850;min-width:0}.audit-q{min-width:0}.audit-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.75fr);gap:18px;margin-top:18px}.audit-side{display:flex;flex-direction:column;gap:18px}.audit-main-card{min-width:0}.audit-head{align-items:center}.audit-table td{vertical-align:top}.audit-table td strong,.audit-table td small{display:block}.audit-table td small{color:var(--muted);font-size:12px;font-weight:750;margin-top:3px}.audit-status{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:950;border:1px solid var(--line);white-space:nowrap}.audit-status.ok{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.audit-status.warn{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.audit-status.danger{background:#fff1f2;color:#be123c;border-color:#fecdd3}.audit-status.info{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.audit-status.muted{background:#f8fafc;color:#64748b}.audit-details summary{cursor:pointer;font-weight:850;color:var(--ink);max-width:380px;line-height:1.35}.audit-diff{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.audit-diff article{border:1px solid var(--line);border-radius:14px;background:#f8fafc;padding:10px;min-width:0}.audit-diff b{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:6px}.audit-diff code{display:block;white-space:normal;word-break:break-word;font-size:11px;line-height:1.35;color:var(--ink)}.audit-timeline{display:grid;gap:11px}.audit-timeline article{display:grid;gap:7px}.audit-timeline div{display:flex;align-items:center;justify-content:space-between;gap:10px}.audit-timeline strong{font-size:13px}.audit-timeline span{font-size:12px;color:var(--muted);font-weight:850}.audit-timeline em{height:9px;border-radius:999px;background:#e5eaf3;display:block;overflow:hidden}.audit-timeline i{height:100%;display:block;border-radius:999px;background:linear-gradient(90deg,var(--orange),#ffb020)}.audit-policy-list{display:grid;gap:10px}.audit-policy-list article{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start;border:1px solid var(--line);border-radius:17px;background:#f8fafc;padding:12px}.audit-policy-list b{width:30px;height:30px;border-radius:999px;background:#fff0df;color:#9a3412;display:grid;place-items:center;font-size:11px;font-weight:950}.audit-policy-list span{font-size:13px;font-weight:800;line-height:1.45;color:var(--muted)}.audit-table-list{display:flex;flex-wrap:wrap;gap:8px}.audit-table-list code{border:1px solid var(--line);border-radius:999px;background:#f8fafc;padding:8px 10px;font-weight:900;color:var(--ink)}
[data-theme="dark"] .audit-status.muted,[data-theme="dark"] .audit-diff article,[data-theme="dark"] .audit-policy-list article,[data-theme="dark"] .audit-table-list code{background:#0f172a}[data-theme="dark"] .audit-timeline em{background:#253044}
@media(max-width:1220px){.audit-grid{grid-template-columns:1fr}.audit-filters{grid-template-columns:1fr 1fr 1fr}.audit-q{grid-column:1/-1}.audit-side{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:860px){.audit-filters{grid-template-columns:1fr}.audit-side{grid-template-columns:1fr}.audit-head{align-items:stretch;flex-direction:column}.audit-diff{grid-template-columns:1fr}.audit-kpis{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.audit-kpis{grid-template-columns:1fr}.audit-hero .hero-actions{width:100%;display:grid;grid-template-columns:1fr}.audit-hero .hero-actions .btn{width:100%}}

/* P23 - Notificaciones / Centro de alertas */
.notification-bell{position:relative}.notification-bell span{position:absolute;right:-7px;top:-7px;min-width:20px;height:20px;border-radius:999px;background:#ef4444;color:#fff;border:2px solid var(--card);font-size:10px;font-weight:950;display:grid;place-items:center;padding:0 5px}.notification-hero{background:radial-gradient(circle at top right,rgba(239,68,68,.13),transparent 30%),radial-gradient(circle at top left,rgba(255,122,0,.16),transparent 30%),linear-gradient(135deg,var(--card),rgba(255,255,255,.78))}[data-theme="dark"] .notification-hero{background:radial-gradient(circle at top right,rgba(239,68,68,.18),transparent 30%),radial-gradient(circle at top left,rgba(255,122,0,.20),transparent 30%),linear-gradient(135deg,#111827,#0b1220)}.notification-toolbar{margin-top:18px}.notification-filters{display:grid;grid-template-columns:150px 170px 160px minmax(220px,1fr) 110px auto;gap:12px;align-items:end}.notification-filters label{display:grid;gap:7px}.notification-filters span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:950}.notification-filters input,.notification-filters select{min-height:42px;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:14px;padding:0 13px;font-weight:850;min-width:0}.notification-q{min-width:0}.notification-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.75fr);gap:18px;margin-top:18px}.notification-side{display:flex;flex-direction:column;gap:18px}.notification-main-card{min-width:0}.notification-head{align-items:center}.notification-list{display:grid;gap:12px}.notification-item{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:start;border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,var(--card),#f8fafc);padding:14px;position:relative;overflow:hidden}.notification-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:#94a3b8}.notification-item.danger:before{background:#ef4444}.notification-item.warn:before{background:#f59e0b}.notification-item.info:before{background:#2f80ed}.notification-item.ok:before{background:#22c55e}.notification-item.is-unread{box-shadow:0 12px 30px rgba(16,24,40,.08)}.notification-marker{width:48px;height:48px;border-radius:17px;display:grid;place-items:center;background:#fff;border:1px solid var(--line);color:var(--orange)}.notification-item.danger .notification-marker{color:#ef4444;background:#fff1f2}.notification-item.warn .notification-marker{color:#b45309;background:#fff7ed}.notification-item.info .notification-marker{color:#1d4ed8;background:#eff6ff}.notification-item.ok .notification-marker{color:#166534;background:#f0fdf4}.notification-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.notification-title-row strong{font-size:15px;letter-spacing:-.02em}.notification-body p{margin:7px 0 10px;color:var(--muted);font-size:13px;line-height:1.45;font-weight:750}.notification-meta{display:flex;flex-wrap:wrap;gap:7px}.notification-meta span{display:inline-flex;border:1px solid var(--line);background:var(--card);border-radius:999px;padding:5px 8px;font-size:11px;font-weight:900;color:var(--muted)}.notification-status{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:950;border:1px solid var(--line);white-space:nowrap}.notification-status.danger{background:#fff1f2;color:#be123c;border-color:#fecdd3}.notification-status.warn{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.notification-status.info{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.notification-status.ok{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.notification-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;min-width:210px}.notification-actions form{margin:0}.notification-category-list{display:grid;gap:10px}.notification-category-list article{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:10px;border:1px solid var(--line);border-radius:16px;background:#f8fafc;padding:12px}.notification-category-list b{width:36px;height:36px;border-radius:14px;display:grid;place-items:center;background:#fff0df;color:#9a3412;font-weight:950}.notification-category-list span{font-weight:950}.notification-category-list em{font-style:normal;border-radius:999px;background:#fff1f2;color:#be123c;border:1px solid #fecdd3;padding:5px 8px;font-size:11px;font-weight:950}.notification-policy-list{display:grid;gap:10px}.notification-policy-list article{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start;border:1px solid var(--line);border-radius:17px;background:#f8fafc;padding:12px}.notification-policy-list b{width:30px;height:30px;border-radius:999px;background:#fff0df;color:#9a3412;display:grid;place-items:center;font-size:11px;font-weight:950}.notification-policy-list span{font-size:13px;font-weight:800;line-height:1.45;color:var(--muted)}.notification-source-grid{display:flex;flex-wrap:wrap;gap:8px}.notification-source-grid span{border:1px solid var(--line);border-radius:999px;background:#f8fafc;padding:8px 10px;font-size:12px;font-weight:900;color:var(--ink)}[data-theme="dark"] .notification-item{background:linear-gradient(180deg,#121a2b,#0f172a)}[data-theme="dark"] .notification-marker,[data-theme="dark"] .notification-category-list article,[data-theme="dark"] .notification-policy-list article,[data-theme="dark"] .notification-source-grid span{background:#0f172a}[data-theme="dark"] .notification-meta span{background:#111827}@media(max-width:1220px){.notification-grid{grid-template-columns:1fr}.notification-filters{grid-template-columns:1fr 1fr 1fr}.notification-q{grid-column:1/-1}.notification-side{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.notification-item{grid-template-columns:44px 1fr}.notification-actions{grid-column:1/-1;justify-content:flex-start;min-width:0}.notification-side{grid-template-columns:1fr}.notification-head{align-items:stretch;flex-direction:column}.notification-kpis{grid-template-columns:1fr 1fr}}@media(max-width:640px){.notification-filters{grid-template-columns:1fr}.notification-kpis{grid-template-columns:1fr}.notification-hero .hero-actions,.notification-actions{display:grid;grid-template-columns:1fr;width:100%}.notification-actions .btn,.notification-actions form,.notification-actions button{width:100%}.notification-title-row{flex-direction:column}.notification-category-list article{grid-template-columns:40px 1fr}.notification-category-list em{grid-column:2}}

/* P24 - Exportaciones / Reportes PDF-Excel-CSV */
.export-hero{background:radial-gradient(circle at top right,rgba(255,122,0,.16),transparent 32%),radial-gradient(circle at bottom left,rgba(47,128,237,.10),transparent 34%),linear-gradient(135deg,var(--card),rgba(255,255,255,.78))}
[data-theme="dark"] .export-hero{background:radial-gradient(circle at top right,rgba(255,122,0,.22),transparent 32%),radial-gradient(circle at bottom left,rgba(47,128,237,.18),transparent 34%),linear-gradient(135deg,#111827,#0b1220)}
.export-hero-panel{min-width:380px}.export-hero-panel h2{margin:6px 0 0;font-size:25px;letter-spacing:-.04em}.export-hero-panel p{font-weight:850;color:var(--muted)}.export-fast-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:10px}
.export-toolbar{margin-top:18px}.export-filters{display:grid;grid-template-columns:1.3fr 150px 145px 145px 170px minmax(220px,1fr) 110px auto;gap:12px;align-items:end}.export-filters label{display:grid;gap:7px}.export-filters span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:950}.export-filters input,.export-filters select{min-height:42px;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:14px;padding:0 13px;font-weight:850;min-width:0}.export-q{min-width:0}.export-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(330px,.75fr);gap:18px;margin-top:18px;align-items:start}.export-main-card{min-width:0}.export-side{display:flex;flex-direction:column;gap:18px}.export-head{align-items:center}.export-preview{max-height:560px;overflow:auto;border-radius:18px;border:1px solid var(--line)}.export-table{min-width:760px}.export-table td{vertical-align:top}.export-template-list{display:grid;gap:10px}.export-template-list a{display:grid;grid-template-columns:42px 1fr;gap:11px;align-items:center;border:1px solid var(--line);border-radius:17px;background:#f8fafc;padding:12px;color:var(--ink);text-decoration:none;transition:.18s ease}.export-template-list a:hover,.export-template-list a.active{border-color:rgba(255,122,0,.45);background:#fff7ed;transform:translateY(-1px)}.export-template-list b{width:40px;height:40px;border-radius:15px;background:#fff0df;color:#9a3412;display:grid;place-items:center}.export-template-list svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2}.export-template-list strong,.export-template-list small{display:block}.export-template-list small{color:var(--muted);font-weight:850;margin-top:3px}.export-policy-list{display:grid;gap:10px}.export-policy-list article{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start;border:1px solid var(--line);border-radius:17px;background:#f8fafc;padding:12px}.export-policy-list b{width:30px;height:30px;border-radius:999px;background:#fff0df;color:#9a3412;display:grid;place-items:center;font-size:11px;font-weight:950}.export-policy-list span{font-size:13px;font-weight:800;line-height:1.45;color:var(--muted)}.export-policy-list code{border:1px solid var(--line);border-radius:8px;background:var(--card);padding:2px 5px;color:var(--ink)}
[data-theme="dark"] .export-template-list a,[data-theme="dark"] .export-policy-list article{background:#0f172a}[data-theme="dark"] .export-template-list a:hover,[data-theme="dark"] .export-template-list a.active{background:#1c2435}
@media(max-width:1320px){.export-filters{grid-template-columns:1fr 1fr 1fr 1fr}.export-q{grid-column:1/-1}.export-grid{grid-template-columns:1fr}.export-side{display:grid;grid-template-columns:1fr 1fr}.export-hero-panel{min-width:0}}
@media(max-width:860px){.export-filters,.export-side{grid-template-columns:1fr}.export-head{align-items:stretch;flex-direction:column}.export-kpis{grid-template-columns:1fr 1fr}.export-hero .hero-actions,.export-fast-actions{display:grid;grid-template-columns:1fr;width:100%}.export-fast-actions .btn{width:100%}}
@media(max-width:560px){.export-kpis{grid-template-columns:1fr}.export-template-list a{grid-template-columns:38px 1fr}.export-toolbar .panel-header{align-items:stretch}}

/* Paquete 25 - API interna ERP */
.api-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;align-items:start}.api-main-card{min-width:0}.api-side{display:grid;gap:18px}.api-table td:first-child small{display:block;color:var(--muted);margin-top:3px}.api-test-list{display:grid;gap:10px}.api-test-list a{display:flex;gap:12px;align-items:flex-start;padding:12px;border:1px solid var(--border);border-radius:16px;background:var(--surface-soft);text-decoration:none;color:var(--text)}.api-test-list b{width:34px;height:34px;display:grid;place-items:center;border-radius:12px;background:rgba(242,111,33,.12);color:var(--brand)}.api-test-list svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}.api-test-list span{display:grid;gap:2px;min-width:0}.api-test-list small{color:var(--muted);word-break:break-all}.code-block{white-space:pre-wrap;word-break:break-word;background:var(--code-bg,#111827);color:#e5e7eb;border-radius:18px;padding:16px;overflow:auto;font-size:12px;line-height:1.55}.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;background:rgba(242,111,33,.12);color:var(--brand);font-size:12px;font-weight:700}@media (max-width:1100px){.api-grid{grid-template-columns:1fr}.api-side{grid-template-columns:1fr 1fr}}@media (max-width:720px){.api-side{grid-template-columns:1fr}.api-kpis{grid-template-columns:1fr 1fr}}

/* Paquete 26 - CRUD real de catálogo */
.catalog-crud-table{min-width:1260px}.row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ghost-button.mini{padding:7px 10px;border-radius:11px;font-size:12px;font-weight:950;text-decoration:none}.ghost-button.mini.danger{border-color:#fecaca;color:#b91c1c;background:#fff5f5}.inline-delete{display:inline;margin:0}.catalog-crud-form .catalog-checks{grid-column:1/-1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.compact-form label{min-width:0}.smart-alert.ok{border-color:#bbf7d0;background:#f0fdf4}.smart-alert.warn{border-color:#fed7aa;background:#fff7ed}.smart-alert.danger{border-color:#fecaca;background:#fff5f5}.smart-alert.info{border-color:#bfdbfe;background:#eff6ff}.catalog-edit-panel{border-color:#fed7aa;box-shadow:0 18px 60px rgba(255,122,0,.12)}[data-theme="dark"] .ghost-button.mini.danger{background:#2a1117;color:#fecdd3;border-color:#7f1d1d}[data-theme="dark"] .smart-alert.ok{background:#052e16}[data-theme="dark"] .smart-alert.warn{background:#2a1806}[data-theme="dark"] .smart-alert.danger{background:#2a1117}[data-theme="dark"] .smart-alert.info{background:#0f1f3d}@media(max-width:900px){.catalog-crud-form .catalog-checks{grid-template-columns:1fr 1fr}.row-actions{display:grid;grid-template-columns:1fr}.row-actions a,.row-actions button{width:100%}}@media(max-width:620px){.catalog-crud-form .catalog-checks{grid-template-columns:1fr}}
.amelia-confirm-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.55);backdrop-filter:blur(8px);display:grid;place-items:center;z-index:9999;padding:18px}.amelia-confirm-backdrop[hidden]{display:none}.amelia-confirm-card{width:min(460px,100%);background:var(--card);border:1px solid var(--line);border-radius:26px;box-shadow:0 24px 80px rgba(15,23,42,.30);padding:22px}.amelia-confirm-card h3{margin:10px 0 8px;font-size:24px;letter-spacing:-.04em}.amelia-confirm-card p{margin:0;color:var(--muted);font-weight:850;line-height:1.5}.amelia-confirm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.primary-button.danger{background:linear-gradient(135deg,#ef4444,#b91c1c)}@media(max-width:560px){.amelia-confirm-actions{display:grid;grid-template-columns:1fr}.amelia-confirm-actions button{width:100%}}
/* P27 Clientes / Proveedores */
.party-hero{background:radial-gradient(circle at top right,rgba(47,128,237,.12),transparent 30%),radial-gradient(circle at top left,rgba(255,122,0,.16),transparent 30%),linear-gradient(135deg,var(--card),rgba(255,255,255,.78))}
[data-theme="dark"] .party-hero{background:radial-gradient(circle at top right,rgba(47,128,237,.18),transparent 30%),radial-gradient(circle at top left,rgba(255,122,0,.20),transparent 30%),linear-gradient(135deg,#111827,#0b1220)}
.party-hero-panel{grid-template-columns:repeat(2,minmax(0,1fr));min-width:430px}.mini-stat{border:1px solid var(--line);border-radius:18px;background:var(--card);padding:14px}.mini-stat span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:950}.mini-stat strong{display:block;margin-top:8px;font-size:22px;letter-spacing:-.04em}.mini-stat small{display:block;color:var(--muted);margin-top:3px;font-weight:800}.party-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(360px,.75fr);gap:18px}.party-side{display:flex;flex-direction:column;gap:18px}.party-table{min-width:1180px}.party-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.party-form .full-row,.party-form .sticky-actions,.party-contact-block{grid-column:1/-1}.party-contact-block{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border:1px dashed var(--line);border-radius:18px;padding:14px;background:#f8fafc}.party-contact-block>strong{grid-column:1/-1;font-size:13px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.checkline{flex-direction:row;align-items:center;text-transform:none;letter-spacing:0;color:var(--ink)}.checkline input{width:auto;height:auto}[data-theme="dark"] .party-contact-block{background:#0f172a}@media(max-width:1220px){.party-grid{grid-template-columns:1fr}.party-hero-panel{min-width:0}}@media(max-width:760px){.party-hero{flex-direction:column}.party-hero-panel,.party-form,.party-contact-block{grid-template-columns:1fr}.party-kpis{grid-template-columns:1fr 1fr}.party-filters{grid-template-columns:1fr}.sticky-actions{position:static;display:grid;gap:10px}.sticky-actions button{width:100%}}@media(max-width:520px){.party-kpis{grid-template-columns:1fr}}

/* Paquete 29 - Ventas CRUD real */
.quick-action-stack{display:grid;gap:.65rem}.quick-action-stack .full{width:100%;justify-content:center}.ghost-button.tiny{font-size:.72rem;padding:.35rem .55rem;border-radius:999px}.p29-lines{grid-column:1/-1}.p29-lines .sales-line{align-items:end}.sales-form .sales-notes{grid-column:1/-1}.sales-table td:last-child{white-space:nowrap}.slide-panel .sales-form{max-height:70vh;overflow:auto;padding-right:.35rem}.slide-panel .panel-head.compact{position:sticky;top:0;background:var(--surface);z-index:2;border-radius:1rem}.sales-channel.manual{background:rgba(245,124,0,.1);color:#c75b00}.sales-channel.delivery{background:rgba(29,78,216,.1);color:#1d4ed8}.sales-channel.web,.sales-channel.marketplace{background:rgba(124,58,237,.1);color:#6d28d9}
@media (max-width: 920px){.sales-head{gap:1rem}.catalog-actions{display:flex;flex-wrap:wrap}.sales-table th:nth-child(5),.sales-table td:nth-child(5){display:none}.p29-lines .sales-line{grid-template-columns:1fr 1fr}.slide-panel{inset:1rem!important;width:auto!important}}
/* Paquete 30 - Stock avanzado */
.secondary-stock-grid{grid-template-columns:1fr 1fr;margin-top:18px}.inline-form{margin-top:8px;display:flex;justify-content:flex-end}.ghost-button.xsmall{font-size:11px;padding:6px 9px;border-radius:999px}.stock-status.in_transit,.stock-status.counting{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.stock-status.received,.stock-status.closed{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.stock-status.cancelled,.stock-status.rejected{background:#fff1f2;color:#be123c;border-color:#fecdd3}.stock-status.draft,.stock-status.open{background:#f8fafc;color:#64748b;border-color:var(--line)}@media(max-width:1180px){.secondary-stock-grid{grid-template-columns:1fr}.catalog-actions button{flex:1}.stock-form{grid-template-columns:1fr 1fr}}@media(max-width:760px){.stock-form,.stock-filters,.policy-grid{grid-template-columns:1fr}.stock-head{align-items:stretch;flex-direction:column}.catalog-actions{width:100%}}

/* Paquete 31 - Caja real / Cierres POS */
.cash-hero{background:linear-gradient(135deg,rgba(255,122,24,.16),rgba(24,24,27,.04));}
.cash-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.85fr);gap:18px;align-items:start;}
.cash-side{display:grid;gap:16px;}
.cash-kpis .kpi-card strong{letter-spacing:-.04em;}
.cash-shift-card{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:16px;border:1px solid var(--border);border-radius:22px;background:var(--card);margin-bottom:12px;box-shadow:var(--shadow-soft);}
.cash-shift-card .meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;}
.cash-shift-card .meta span,.cash-pill{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:6px 10px;font-size:.8rem;color:var(--muted);}
.cash-shift-card .amounts{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:10px;margin-top:12px;}
.cash-amount{border:1px solid var(--border);border-radius:16px;padding:10px;background:linear-gradient(180deg,var(--surface),rgba(255,255,255,.02));}
.cash-amount span{display:block;font-size:.74rem;color:var(--muted);}
.cash-amount strong{display:block;margin-top:4px;font-size:1.05rem;}
.cash-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;}
.cash-close-form{display:grid;gap:14px;}
.cash-method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.cash-method{border:1px solid var(--border);border-radius:18px;padding:12px;background:var(--surface);}
.cash-method label{display:grid;gap:8px;margin:0;}
.cash-method small{color:var(--muted);}
.cash-diff{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:4px 9px;font-size:.78rem;font-weight:800;}
.cash-diff.ok{background:rgba(22,163,74,.12);color:#16a34a;}
.cash-diff.warn{background:rgba(245,158,11,.14);color:#d97706;}
.cash-diff.danger{background:rgba(220,38,38,.12);color:#dc2626;}
.cash-movement-list{display:grid;gap:10px;}
.cash-movement{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;border:1px solid var(--border);border-radius:16px;padding:10px;background:var(--surface);}
.cash-movement b{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:rgba(255,122,24,.12);color:var(--accent);}
.cash-movement strong{display:block;font-size:.92rem;}
.cash-movement span{display:block;color:var(--muted);font-size:.8rem;}
.cash-movement em{font-style:normal;font-weight:900;}
.close-summary-box{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0;}
.close-summary-box article{border:1px solid var(--border);border-radius:16px;padding:12px;background:var(--surface);}
.close-summary-box span{display:block;color:var(--muted);font-size:.78rem;}
.close-summary-box strong{display:block;margin-top:5px;}
@media(max-width:1100px){.cash-grid{grid-template-columns:1fr}.cash-shift-card{grid-template-columns:1fr}.cash-actions{justify-content:flex-start}.cash-shift-card .amounts,.close-summary-box{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.cash-method-grid,.cash-shift-card .amounts,.close-summary-box{grid-template-columns:1fr}}

/* Paquete 32 - Flujo DTE real preliminar */
.p32-dte-hero{background:radial-gradient(circle at top right,rgba(47,128,237,.13),transparent 32%),radial-gradient(circle at top left,rgba(255,122,24,.18),transparent 30%),linear-gradient(135deg,var(--card),rgba(255,255,255,.78));}
[data-theme="dark"] .p32-dte-hero{background:radial-gradient(circle at top right,rgba(47,128,237,.20),transparent 32%),radial-gradient(circle at top left,rgba(255,122,24,.22),transparent 30%),linear-gradient(135deg,#111827,#0b1220)}
.dte-flow-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:18px 0;}
.dte-flow-strip article{border:1px solid var(--border);background:var(--card);border-radius:18px;padding:14px;box-shadow:var(--shadow-soft);position:relative;overflow:hidden;}
.dte-flow-strip b{width:30px;height:30px;border-radius:999px;display:grid;place-items:center;background:rgba(255,122,24,.12);color:var(--accent);font-weight:950;margin-bottom:8px;}
.dte-flow-strip strong{display:block;font-size:.92rem;letter-spacing:-.02em;}
.dte-flow-strip span{display:block;color:var(--muted);font-size:.78rem;line-height:1.35;margin-top:4px;}
.dte-actions{min-width:210px;gap:6px}.dte-actions form{display:inline;margin:0}.dte-actions button{white-space:nowrap}
.dte-candidate-list{display:grid;gap:12px;max-height:65vh;overflow:auto;padding-right:6px;}
.dte-candidate{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--border);border-radius:18px;background:var(--surface);padding:14px;}
.dte-candidate strong{display:block;letter-spacing:-.02em}.dte-candidate span,.dte-candidate small{display:block;color:var(--muted);font-size:.82rem;margin-top:3px;}
.dte-candidate-form{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.dte-candidate-form label{display:inline-flex;align-items:center;gap:6px;text-transform:none;letter-spacing:0;color:var(--muted);font-size:.78rem;font-weight:850;}
.dte-candidate-form input[type="checkbox"]{width:auto;min-height:auto;}
.dte-job-list{display:grid;gap:10px}.dte-job-list article{display:grid;grid-template-columns:48px 1fr;gap:10px;align-items:start;border:1px solid var(--border);border-radius:16px;background:var(--surface);padding:10px}.dte-job-list article>b{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:rgba(47,128,237,.10);color:#1d4ed8;font-size:.7rem}.dte-job-list strong,.dte-job-list small{display:block}.dte-job-list small{color:var(--muted);font-size:.78rem;margin-top:4px}.dte-table{min-width:1260px}
@media(max-width:1180px){.dte-flow-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.dte-candidate{grid-template-columns:1fr}.dte-candidate-form{justify-content:flex-start}.dte-actions{min-width:0}}
@media(max-width:760px){.dte-flow-strip{grid-template-columns:1fr}.dte-candidate-form{display:grid;grid-template-columns:1fr}.dte-candidate-form .primary-button{width:100%}}


/* Paquete 34 — UX ERP profesional: menú acordeón + modales operativos */
body.modal-open{overflow:hidden}.nav-accordion{gap:10px}.nav-group{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.52);overflow:hidden}.nav-group[open]{background:linear-gradient(180deg,rgba(255,122,0,.08),rgba(255,255,255,.42))}.nav-group summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:12px 12px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:950;color:var(--muted)}.nav-group summary::-webkit-details-marker{display:none}.nav-group-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:13px;color:var(--orange);background:var(--card);border:1px solid var(--line)}.nav-group summary b{min-width:24px;height:24px;display:grid;place-items:center;border-radius:999px;background:rgba(255,122,0,.12);color:var(--orange);font-size:11px}.nav-group-items{display:grid;gap:7px;padding:0 8px 10px}.nav-group .nav-item{padding:10px;border-radius:14px;font-size:13px}.nav-group .nav-icon{width:30px;height:30px;border-radius:11px}.nav-group .nav-badge{font-size:10px;padding:3px 7px}.sidebar{scrollbar-width:thin}.status-chips .chip:nth-child(2){border-color:rgba(34,197,94,.28);background:rgba(34,197,94,.08)}[data-theme="dark"] .nav-group{background:rgba(15,23,42,.62)}[data-theme="dark"] .nav-group[open]{background:linear-gradient(180deg,rgba(255,122,0,.13),rgba(15,23,42,.55))}.slide-panel.panel-modal-open:not([hidden]){position:fixed;inset:0;z-index:1000;display:block;overflow:auto;padding:28px;background:rgba(15,23,42,.58);backdrop-filter:blur(10px);scroll-behavior:smooth}.slide-panel.panel-modal-open:not([hidden])>.panel-head,.slide-panel.panel-modal-open:not([hidden])>form,.slide-panel.panel-modal-open:not([hidden])>.policy-grid,.slide-panel.panel-modal-open:not([hidden])>.doc-list,.slide-panel.panel-modal-open:not([hidden])>.modal-content{width:min(1080px,calc(100vw - 36px));margin-left:auto;margin-right:auto;background:var(--card);border-left:1px solid var(--line);border-right:1px solid var(--line);box-shadow:0 24px 90px rgba(15,23,42,.28)}.slide-panel.panel-modal-open:not([hidden])>.panel-head{margin-top:22px;border:1px solid var(--line);border-bottom:0;border-radius:26px 26px 0 0;padding:20px 22px;position:sticky;top:18px;z-index:2}.slide-panel.panel-modal-open:not([hidden])>form,.slide-panel.panel-modal-open:not([hidden])>.policy-grid,.slide-panel.panel-modal-open:not([hidden])>.doc-list,.slide-panel.panel-modal-open:not([hidden])>.modal-content{border:1px solid var(--line);border-top:0;border-radius:0 0 26px 26px;padding:22px;margin-bottom:28px}.slide-panel.panel-modal-open .panel-head h2{font-size:24px;letter-spacing:-.04em}.purchase-line{position:relative;border:1px solid var(--line);border-radius:18px;padding:14px;background:linear-gradient(180deg,var(--card),rgba(248,250,252,.72))}.purchase-line:before{content:"Línea controlada";position:absolute;top:-8px;right:12px;background:var(--card);color:var(--muted);font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.08em;padding:0 6px}.amelia-info-card{border-top:5px solid var(--orange)}@media(max-width:900px){.slide-panel.panel-modal-open:not([hidden]){padding:14px}.slide-panel.panel-modal-open:not([hidden])>.panel-head,.slide-panel.panel-modal-open:not([hidden])>form,.slide-panel.panel-modal-open:not([hidden])>.policy-grid,.slide-panel.panel-modal-open:not([hidden])>.doc-list{width:100%}.nav-group summary{font-size:11px}.status-chips{display:none}}

/* Paquete 35 — Compras profesional v2 */
.compact-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.compact-actions form{margin:0}.micro{font-size:11px!important;padding:6px 9px!important;border-radius:11px!important;min-height:auto!important}.ghost-button.danger{color:#be123c;border-color:#fecdd3;background:#fff1f2}.purchase-intelligence-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 16px}.purchase-intelligence-strip span{border:1px solid var(--line);background:linear-gradient(180deg,var(--card),rgba(255,122,0,.05));border-radius:16px;padding:10px 12px;color:var(--muted);font-size:12px;font-weight:850}.purchase-intelligence-strip b{color:var(--text)}.form-hint{border:1px dashed rgba(255,122,0,.45);background:rgba(255,122,0,.08);color:var(--muted);border-radius:16px;padding:11px 13px;font-size:13px;font-weight:850}.form-hint.wide,.suggestion-pick-list.wide{grid-column:1/-1}.line-total{border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.65);display:grid;place-content:center;padding:9px;min-height:58px}.line-total span{font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.line-total b{font-size:15px;color:var(--orange)}.approval-list{display:grid!important;gap:12px}.approval-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;border:1px solid var(--line);border-radius:18px;padding:14px;background:linear-gradient(180deg,var(--card),rgba(248,250,252,.74))}.approval-card h3{margin:4px 0;font-size:16px}.approval-card p{margin:0;color:var(--muted);font-weight:800}.approval-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.approval-actions form{margin:0}.alert-policy-form{grid-template-columns:repeat(3,minmax(0,1fr))}.policy-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.policy-list article{border:1px solid var(--line);border-radius:16px;padding:12px;background:rgba(255,122,0,.05)}.policy-list strong,.policy-list span{display:block}.policy-list span{margin-top:4px;color:var(--muted);font-weight:850;font-size:13px}.suggestion-pick{display:grid!important;grid-template-columns:24px minmax(0,1fr) 110px 110px;gap:10px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:12px;background:linear-gradient(180deg,var(--card),rgba(255,122,0,.04));margin:0}.suggestion-pick>span b,.suggestion-pick>span small{display:block}.suggestion-pick>span small{color:var(--muted);font-weight:800;margin-top:3px}.suggestion-pick input[type="checkbox"]{width:18px;height:18px}.suggestion-pick input:not([type="checkbox"]){min-height:40px;border-radius:12px}.purchase-line.duplicate-line{border-color:#fb7185!important;box-shadow:0 0 0 3px rgba(251,113,133,.12)}[data-theme="dark"] .purchase-intelligence-strip span,[data-theme="dark"] .line-total,[data-theme="dark"] .approval-card,[data-theme="dark"] .policy-list article,[data-theme="dark"] .suggestion-pick{background:#0f172a}@media(max-width:980px){.purchase-intelligence-strip,.policy-list{grid-template-columns:1fr}.alert-policy-form{grid-template-columns:1fr 1fr}.approval-card{grid-template-columns:1fr}.suggestion-pick{grid-template-columns:24px 1fr}.suggestion-pick input:not([type="checkbox"]){grid-column:2/-1}}@media(max-width:720px){.alert-policy-form{grid-template-columns:1fr}.compact-actions{flex-direction:column;align-items:stretch}.compact-actions button{width:100%}}



/* ===============================
   AmeliaPOS ERP - Paquete 37
   UX ejecutiva global + command palette
   =============================== */

.global-search{cursor:pointer}
.global-search input[readonly]{cursor:pointer}
.pos-safe-note{display:block;margin-top:8px;color:var(--muted);font-size:12px;font-weight:850}

.command-palette{
  position:fixed;
  inset:0;
  z-index:120;
  background:rgba(10,15,25,.58);
  backdrop-filter:blur(14px);
  padding:7vh 18px 18px;
}
.command-palette:not([hidden]){display:block}
.command-card{
  width:min(860px,100%);
  margin:0 auto;
  border:1px solid var(--line);
  border-radius:28px;
  overflow:hidden;
  background:linear-gradient(180deg,var(--card),color-mix(in srgb,var(--card) 88%,var(--bg)));
  box-shadow:0 35px 100px rgba(0,0,0,.34);
}
.command-head{
  display:grid;
  grid-template-columns:38px 1fr 42px;
  align-items:center;
  gap:12px;
  padding:18px;
  border-bottom:1px solid var(--line);
}
.command-head svg{color:var(--orange)}
.command-head input{
  border:0;
  outline:0;
  background:transparent;
  color:var(--ink);
  font-size:18px;
  font-weight:850;
}
.command-results{
  max-height:52vh;
  overflow:auto;
  padding:10px;
}
.command-result{
  display:grid;
  grid-template-columns:1fr auto;
  gap:12px;
  align-items:center;
  padding:14px 16px;
  border:1px solid transparent;
  border-radius:18px;
  cursor:pointer;
}
.command-result:hover,
.command-result.active{
  border-color:rgba(255,122,0,.32);
  background:linear-gradient(135deg,rgba(255,122,0,.13),rgba(255,255,255,.55));
}
[data-theme="dark"] .command-result:hover,
[data-theme="dark"] .command-result.active{
  background:linear-gradient(135deg,rgba(255,122,0,.18),rgba(18,26,43,.85));
}
.command-result strong{display:block;font-size:15px}
.command-result span{display:block;color:var(--muted);font-size:12px;margin-top:3px;font-weight:750}
.command-result b{
  border:1px solid var(--line);
  border-radius:999px;
  padding:5px 9px;
  font-size:11px;
  color:var(--muted);
  background:var(--bg);
}
.command-empty{
  padding:28px;
  text-align:center;
  color:var(--muted);
  font-weight:800;
}
.command-foot{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  justify-content:space-between;
  padding:12px 18px;
  border-top:1px solid var(--line);
  color:var(--muted);
  font-size:12px;
  font-weight:800;
  background:rgba(148,163,184,.08);
}

.quick-module-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin:18px 0;
}
.quick-module-card{
  position:relative;
  overflow:hidden;
  min-height:138px;
  border:1px solid var(--line);
  border-radius:24px;
  padding:18px;
  background:linear-gradient(135deg,var(--card),color-mix(in srgb,var(--card) 82%,var(--soft)));
  box-shadow:var(--shadow);
  display:flex;
  flex-direction:column;
  gap:8px;
}
.quick-module-card:after{
  content:"";
  position:absolute;
  right:-28px;
  top:-28px;
  width:90px;
  height:90px;
  border-radius:999px;
  background:rgba(255,122,0,.12);
}
.quick-module-card:hover{
  transform:translateY(-2px);
  border-color:rgba(255,122,0,.32);
}
.quick-module-card strong{
  font-size:16px;
  letter-spacing:-.02em;
}
.quick-module-card small{
  color:var(--muted);
  line-height:1.45;
  font-weight:700;
}
.quick-icon{
  width:42px;
  height:42px;
  border-radius:16px;
  display:grid;
  place-items:center;
  color:var(--orange);
  background:rgba(255,122,0,.12);
  border:1px solid rgba(255,122,0,.18);
}

.nav-group summary{
  position:relative;
}
.nav-group summary b{
  min-width:24px;
  text-align:center;
}
.nav-group-items .nav-item{
  margin-top:5px;
}

@media (max-width:1100px){
  .quick-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:720px){
  .quick-module-grid{grid-template-columns:1fr}
  .command-card{border-radius:22px}
  .command-head{grid-template-columns:30px 1fr 38px;padding:14px}
  .command-head input{font-size:15px}
  .command-foot{display:none}
}

/* Paquete 37: impresión ejecutiva básica para reportes/pantallas */
@media print{
  .sidebar,.topbar,.quick-actions,.top-actions,.command-palette{display:none!important}
  .app-shell{display:block!important}
  .content-area{padding:0!important}
  .panel-card,.hero-card,.kpi-card,.quick-module-card{box-shadow:none!important;break-inside:avoid}
}



/* ===============================
   AmeliaPOS ERP - Paquete 38
   Profesionalización: compras, rubro empresa y SII operativo
   =============================== */

.p38-company-control,
.p38-sii-control{
  margin:18px 0;
  border:1px solid color-mix(in srgb,var(--orange) 24%,var(--line));
  background:
    radial-gradient(circle at top right,rgba(255,122,0,.13),transparent 340px),
    var(--card);
}

.operational-blueprint,
.sii-ops-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.operational-blueprint article,
.sii-ops-grid article{
  border:1px solid var(--line);
  border-radius:20px;
  padding:16px;
  background:color-mix(in srgb,var(--card) 88%,var(--bg));
}
.operational-blueprint strong,
.sii-ops-grid strong{
  display:block;
  margin-top:4px;
  font-size:15px;
}
.operational-blueprint small,
.sii-ops-grid small{
  display:block;
  color:var(--muted);
  line-height:1.4;
  margin-top:5px;
  font-weight:750;
}
.feature-pills{
  display:flex!important;
  flex-wrap:wrap;
  gap:8px;
  align-content:flex-start;
}
.feature-pills span{
  border:1px solid var(--line);
  border-radius:999px;
  padding:7px 10px;
  font-size:12px;
  font-weight:900;
  color:var(--muted);
  background:var(--bg);
}
.feature-pills span.on{
  color:#166534;
  border-color:#bbf7d0;
  background:#ecfdf3;
}
[data-theme="dark"] .feature-pills span.on{
  color:#86efac;
  border-color:rgba(34,197,94,.35);
  background:rgba(34,197,94,.14);
}

.p38-company-form textarea,
.p38-sii-form textarea{
  min-height:110px;
  resize:vertical;
}
.p38-switch-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.p38-switch-grid label{
  display:flex;
  align-items:center;
  gap:8px;
  border:1px solid var(--line);
  border-radius:16px;
  padding:12px;
  background:var(--bg);
  font-size:13px;
  font-weight:850;
  text-transform:none;
  letter-spacing:0;
}
.p38-switch-grid input{width:auto}

.p38-purchase-order-form{
  grid-template-columns:1.05fr 1.05fr 1fr 1fr;
  gap:14px;
}
.p38-purchase-order-form .purchase-lines{
  grid-column:1/-1;
  display:grid;
  gap:10px;
}
.p38-purchase-order-form .purchase-line{
  display:grid;
  grid-template-columns:1.6fr .6fr .75fr .55fr;
  gap:10px;
  align-items:end;
  padding:12px 14px;
  border-radius:20px;
}
.p38-purchase-order-form .purchase-line label{margin:0}
.p38-purchase-order-form .purchase-line.locked-line{
  border-color:rgba(34,197,94,.28);
  background:linear-gradient(135deg,rgba(34,197,94,.06),transparent);
}
.p38-purchase-order-form .purchase-line.duplicate-line{
  border:2px solid #fb7185;
  background:linear-gradient(135deg,rgba(251,113,133,.11),transparent);
}
.p38-dup-guard{
  border-style:solid!important;
  border-color:rgba(255,122,0,.35)!important;
}
.purchase-form-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.purchase-form-summary span{
  border:1px solid var(--line);
  border-radius:18px;
  padding:12px 14px;
  background:var(--bg);
}
.purchase-form-summary b{
  display:block;
  color:var(--muted);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.purchase-form-summary strong{
  display:block;
  margin-top:4px;
  font-size:18px;
  color:var(--ink);
}
.primary-button.disabled,
.primary-button:disabled{
  opacity:.45;
  cursor:not-allowed;
  filter:grayscale(.45);
}

.p38-sii-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.p38-sii-form .wide{grid-column:1/-1}
.inline-form{display:inline-flex;margin:0}

@media (max-width:1100px){
  .operational-blueprint,
  .sii-ops-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .p38-purchase-order-form .purchase-line{grid-template-columns:1fr 1fr}
  .p38-switch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:720px){
  .operational-blueprint,
  .sii-ops-grid,
  .p38-sii-form,
  .p38-switch-grid,
  .purchase-form-summary{grid-template-columns:1fr}
  .p38-purchase-order-form{grid-template-columns:1fr}
  .p38-purchase-order-form .purchase-line{grid-template-columns:1fr}
}



/* ===============================
   AmeliaPOS ERP - Paquete 39
   Persistencia SII robusta
   =============================== */
.p39-sii-storage{
  margin:14px 0 18px;
  display:block;
}
.p39-sii-storage small{
  display:block;
  margin-top:6px;
  color:var(--muted);
  font-weight:750;
}
.form-alert.success{
  border:1px solid rgba(34,197,94,.25);
  background:rgba(34,197,94,.10);
  color:#166534;
}
[data-theme="dark"] .form-alert.success{
  color:#86efac;
  background:rgba(34,197,94,.14);
}
.form-alert.warning{
  border:1px solid rgba(245,158,11,.35);
  background:rgba(245,158,11,.12);
  color:#92400e;
}
[data-theme="dark"] .form-alert.warning{
  color:#fbbf24;
  background:rgba(245,158,11,.14);
}



/* ===============================
   AmeliaPOS ERP - Paquete 40
   Catálogo multirubro profesional
   =============================== */
.p40-catalog-control{
  margin:18px 0;
  border:1px solid color-mix(in srgb,var(--orange) 25%,var(--line));
  background:
    radial-gradient(circle at top right,rgba(255,122,0,.12),transparent 320px),
    var(--card);
}
.catalog-score-ring{
  min-width:110px;
  min-height:110px;
  border-radius:999px;
  border:10px solid rgba(255,122,0,.18);
  display:grid;
  place-items:center;
  text-align:center;
  background:var(--bg);
}
.catalog-score-ring strong{
  display:block;
  font-size:24px;
  line-height:1;
  color:var(--orange);
}
.catalog-score-ring span{
  display:block;
  color:var(--muted);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}
.p40-catalog-grid{
  display:grid;
  grid-template-columns:1fr 1fr .85fr;
  gap:14px;
}
.p40-catalog-grid article{
  border:1px solid var(--line);
  border-radius:20px;
  padding:16px;
  background:color-mix(in srgb,var(--card) 88%,var(--bg));
}
.p40-catalog-grid p{
  margin:8px 0 0;
  color:var(--muted);
  line-height:1.35;
  font-weight:750;
}
.p40-catalog-grid p b{color:var(--orange)}
.p40-flags{
  display:flex;
  flex-wrap:wrap;
  align-content:flex-start;
  gap:8px;
}
.p40-flags .mini-label{width:100%}
.p40-flags span:not(.mini-label){
  border:1px solid var(--line);
  border-radius:999px;
  padding:7px 10px;
  font-size:12px;
  font-weight:900;
  color:var(--muted);
  background:var(--bg);
}
.p40-flags span.on{
  color:#166534;
  border-color:#bbf7d0;
  background:#ecfdf3;
}
[data-theme="dark"] .p40-flags span.on{
  color:#86efac;
  border-color:rgba(34,197,94,.35);
  background:rgba(34,197,94,.14);
}
.p40-catalog-form{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.p40-catalog-form .wide{grid-column:1/-1}
.p40-form-intro{
  margin:0;
}
.p40-form-metrics{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.p40-form-metrics span{
  border:1px solid var(--line);
  border-radius:18px;
  padding:12px 14px;
  background:var(--bg);
}
.p40-form-metrics b{
  display:block;
  color:var(--muted);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.p40-form-metrics strong{
  display:block;
  margin-top:4px;
  font-size:18px;
}
@media (max-width:1100px){
  .p40-catalog-grid{grid-template-columns:1fr}
  .p40-catalog-form{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:720px){
  .p40-catalog-form,
  .p40-form-metrics{grid-template-columns:1fr}
}



/* ===============================
   AmeliaPOS ERP - Paquete 41
   Inventario multibodega profesional
   =============================== */
.p41-stock-command{
  margin:18px 0;
  border:1px solid color-mix(in srgb,var(--blue) 24%,var(--line));
  background:
    radial-gradient(circle at top right,rgba(47,128,237,.12),transparent 360px),
    var(--card);
}
.stock-command-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.stock-command-grid article{
  border:1px solid var(--line);
  border-radius:22px;
  padding:16px;
  background:color-mix(in srgb,var(--card) 88%,var(--bg));
}
.stock-command-grid article strong{
  display:block;
  margin-top:4px;
  font-size:28px;
  letter-spacing:-.05em;
}
.stock-command-grid article small{
  display:block;
  margin-top:4px;
  color:var(--muted);
  line-height:1.4;
  font-weight:750;
}
.stock-command-grid article.danger{
  border-color:rgba(239,68,68,.35);
  background:linear-gradient(135deg,rgba(239,68,68,.10),var(--card));
}
.stock-command-grid article.warning{
  border-color:rgba(245,158,11,.35);
  background:linear-gradient(135deg,rgba(245,158,11,.10),var(--card));
}
.stock-command-grid article.ok{
  border-color:rgba(34,197,94,.28);
}
.stock-recommendations{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}
.stock-recommendations span{
  display:inline-flex;
  align-items:center;
  border:1px solid var(--line);
  border-radius:999px;
  padding:9px 12px;
  background:var(--bg);
  color:var(--muted);
  font-size:12px;
  font-weight:900;
}
.stock-form button[disabled]{
  opacity:.45;
  cursor:not-allowed;
  filter:grayscale(.5);
}
@media (max-width:1100px){
  .stock-command-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:720px){
  .stock-command-grid{grid-template-columns:1fr}
}



/* ===============================
   AmeliaPOS ERP - Paquete 42
   UX global más limpia, sidebar colapsable y wizards
   =============================== */
:root{
  --sidebar-collapsed:92px;
}

.app-shell{
  transition:grid-template-columns .22s ease;
}
.sidebar,.topbar,.main-wrap,.slide-panel,.wizard-pill,.nav-item,.quick-pill{
  transition:all .18s ease;
}

.breadcrumb{
  min-width:0;
  flex:0 1 420px;
}
.breadcrumb strong{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.breadcrumb-help{
  display:block;
  color:var(--muted);
  font-size:11px;
  font-weight:800;
  margin-left:8px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.quick-actions{
  grid-template-columns:1fr 1fr;
}
.nav-group summary > span:last-of-type,
.nav-text,
.nav-item,
.nav-group summary{
  min-width:0;
}
.nav-group summary > span:last-of-type,
.nav-text{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.nav-item{
  min-height:58px;
}
.content-area{
  padding:18px 20px 28px;
}

body.sidebar-collapsed{
  --sidebar:var(--sidebar-collapsed);
}
body.sidebar-collapsed .brand-block{
  padding-bottom:12px;
}
body.sidebar-collapsed .brand-logo img{
  width:54px;
  height:54px;
  object-position:center;
}
body.sidebar-collapsed .brand-subtitle,
body.sidebar-collapsed .quick-actions,
body.sidebar-collapsed .nav-group summary > span:last-of-type,
body.sidebar-collapsed .nav-group summary b,
body.sidebar-collapsed .nav-text,
body.sidebar-collapsed .nav-badge{
  display:none !important;
}
body.sidebar-collapsed .sidebar{
  padding-inline:12px;
}
body.sidebar-collapsed .nav-group summary,
body.sidebar-collapsed .nav-item{
  grid-template-columns:1fr;
  justify-items:center;
  padding:10px 8px;
}
body.sidebar-collapsed .nav-group-items{
  display:grid;
  gap:8px;
}
body.sidebar-collapsed .nav-icon,
body.sidebar-collapsed .nav-group-icon{
  margin:0 auto;
}
body.sidebar-collapsed .sidebar::-webkit-scrollbar{
  width:6px;
}

.slide-panel{
  width:min(1040px, calc(100vw - 28px));
  max-height:min(92vh, 1080px);
  overflow:auto;
  padding:22px;
  border-radius:28px;
  box-shadow:0 32px 90px rgba(16,24,40,.20);
}
.panel-head.compact{
  position:sticky;
  top:0;
  z-index:2;
  background:var(--card);
  padding-bottom:10px;
  margin-bottom:8px;
}

.p42-wizard-form{
  display:grid;
  gap:16px;
}
.wizard-header{
  display:grid;
  gap:12px;
}
.wizard-stepper{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.wizard-pill{
  border:1px solid var(--line);
  border-radius:999px;
  padding:9px 12px;
  background:var(--bg);
  color:var(--muted);
  font-size:12px;
  font-weight:900;
}
.wizard-pill.active{
  color:#9a3412;
  border-color:rgba(255,122,0,.32);
  background:rgba(255,122,0,.14);
}
.wizard-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.wizard-grid .wide{
  grid-column:1 / -1;
}
.wizard-tip{
  border:1px dashed rgba(255,122,0,.35);
  border-radius:18px;
  padding:13px 14px;
  background:rgba(255,122,0,.06);
  color:var(--muted);
  font-weight:750;
}
.wizard-review-card{
  border:1px solid var(--line);
  border-radius:20px;
  padding:16px;
  background:color-mix(in srgb,var(--card) 88%,var(--bg));
}
.wizard-review-card strong{
  display:block;
  margin-top:4px;
  font-size:18px;
}
.wizard-review-card small{
  display:block;
  margin-top:5px;
  color:var(--muted);
  font-weight:750;
}
.wizard-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border-top:1px solid var(--line);
  padding-top:14px;
}
.wizard-progress{
  color:var(--muted);
  font-weight:900;
  font-size:12px;
}
.wizard-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.product-form.catalog-crud-form,
.stock-form{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.product-form.catalog-crud-form .form-actions,
.stock-form .form-actions{
  grid-column:1/-1;
}

.stock-grid{
  grid-template-columns:minmax(0,1.7fr) minmax(340px,.95fr);
}
.stock-table{
  table-layout:fixed;
}
.stock-table th,
.stock-table td{
  white-space:nowrap;
}
.stock-table td:nth-child(1){
  white-space:normal;
}

@media (max-width:1280px){
  .stock-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width:1024px){
  .slide-panel{
    width:min(980px, calc(100vw - 18px));
    padding:18px;
  }
  .breadcrumb-help{
    display:none;
  }
}
@media (max-width:720px){
  .wizard-grid{
    grid-template-columns:1fr;
  }
  .wizard-footer{
    flex-direction:column;
    align-items:stretch;
  }
  .wizard-actions{
    justify-content:stretch;
  }
  .wizard-actions > *{
    flex:1 1 auto;
  }
  .slide-panel{
    padding:16px;
    border-radius:22px;
  }
}



/* ===============================
   AmeliaPOS ERP - Paquete 43
   Reestructura visual: menos es más
   =============================== */

:root{
  --sidebar:240px;
  --sidebar-collapsed:72px;
  --topbar:58px;
  --radius:18px;
  --shadow:0 10px 28px rgba(16,24,40,.08);
}

body.ux-minimal{
  overflow-x:hidden;
  background:#f6f8fb;
}

.ux-minimal .app-shell{
  grid-template-columns:var(--sidebar) minmax(0,1fr);
}

.ux-minimal .sidebar{
  padding:14px 12px;
  overflow-x:hidden;
}

.ux-minimal .brand-logo img{
  width:150px;
  height:44px;
}

.ux-minimal .brand-subtitle{
  font-size:10px;
  letter-spacing:.12em;
}

.ux-minimal .quick-actions{
  grid-template-columns:1fr;
  gap:6px;
  margin:12px 0;
}

.ux-minimal .quick-pill{
  min-height:38px;
  justify-content:flex-start;
  padding:8px 12px;
  border-radius:14px;
  font-size:12px;
}

.ux-minimal .nav-group{
  margin-bottom:8px;
}

.ux-minimal .nav-group summary{
  min-height:42px;
  padding:8px 10px;
  border-radius:14px;
  grid-template-columns:30px minmax(0,1fr) auto;
}

.ux-minimal .nav-group summary span,
.ux-minimal .nav-text{
  font-size:12px;
  line-height:1.15;
}

.ux-minimal .nav-group summary b{
  min-width:22px;
  height:22px;
  display:grid;
  place-items:center;
  font-size:10px;
}

.ux-minimal .nav-group-items{
  gap:4px;
  margin-top:5px;
}

.ux-minimal .nav-item{
  min-height:42px;
  padding:7px 8px;
  border-radius:13px;
  grid-template-columns:28px minmax(0,1fr) auto;
  font-size:12px;
}

.ux-minimal .nav-icon,
.ux-minimal .nav-group-icon{
  width:28px;
  height:28px;
  border-radius:10px;
}

.ux-minimal .nav-badge{
  font-size:10px;
  padding:3px 6px;
}

.ux-minimal .topbar{
  height:var(--topbar);
  padding:0 14px;
  gap:10px;
}

.ux-minimal .breadcrumb{
  max-width:260px;
  flex:0 1 260px;
}

.ux-minimal .breadcrumb span,
.ux-minimal .breadcrumb-help{
  display:none;
}

.ux-minimal .global-search{
  height:38px;
  max-width:520px;
  box-shadow:none;
}

.ux-minimal .status-chips .chip{
  padding:6px 8px;
  font-size:11px;
}

.ux-minimal .content-area{
  padding:14px 16px 26px;
  max-width:1500px;
}

body.sidebar-collapsed.ux-minimal{
  --sidebar:var(--sidebar-collapsed);
}

body.sidebar-collapsed.ux-minimal .brand-logo img{
  width:44px;
  height:44px;
}

body.sidebar-collapsed.ux-minimal .quick-actions{
  display:none;
}

body.sidebar-collapsed.ux-minimal .nav-item,
body.sidebar-collapsed.ux-minimal .nav-group summary{
  min-height:40px;
}

/* Panels / modals: no horizontal mess */
.ux-minimal .slide-panel{
  position:fixed;
  inset:50%;
  transform:translate(-50%,-50%);
  width:min(880px, calc(100vw - 32px));
  max-width:880px;
  max-height:calc(100vh - 36px);
  overflow:auto;
  padding:0;
  border-radius:22px;
  border:1px solid var(--line);
  background:var(--card);
  box-shadow:0 30px 90px rgba(16,24,40,.32);
}

.ux-minimal .slide-panel::before{
  content:"";
  position:sticky;
  top:0;
  display:block;
  height:0;
  z-index:1;
}

.ux-minimal .panel-head.compact,
.ux-minimal .slide-panel > .panel-head{
  position:sticky;
  top:0;
  z-index:5;
  padding:18px 20px;
  margin:0;
  background:var(--card);
  border-bottom:1px solid var(--line);
}

.ux-minimal .panel-head h2{
  font-size:20px;
  line-height:1.15;
  margin:0;
}

.ux-minimal .panel-head p{
  font-size:13px;
  margin:4px 0 0;
  line-height:1.35;
}

.ux-minimal .slide-panel form{
  padding:18px 20px 20px;
}

.ux-minimal .panel-modal-open{
  animation:ameliaCleanPanel .12s ease-out;
}

@keyframes ameliaCleanPanel{
  from{opacity:.5;transform:translate(-50%,-48%) scale(.98)}
  to{opacity:1;transform:translate(-50%,-50%) scale(1)}
}

body.modal-open::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:40;
  background:rgba(15,23,42,.52);
  backdrop-filter:blur(6px);
}

body.modal-open .slide-panel.panel-modal-open{
  z-index:70;
}

/* Clean forms */
.p43-clean-form{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:14px!important;
  max-width:100%!important;
}

.clean-form-note{
  border:1px solid #bfdbfe;
  background:#eff6ff;
  color:#1d4ed8;
  border-radius:14px;
  padding:11px 13px;
  font-weight:800;
  font-size:13px;
}

.clean-section{
  border:1px solid var(--line);
  border-radius:18px;
  padding:14px;
  background:color-mix(in srgb,var(--card) 88%,var(--bg));
}

.clean-section header{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin-bottom:12px;
}

.clean-section header > span{
  width:28px;
  height:28px;
  border-radius:10px;
  display:grid;
  place-items:center;
  background:rgba(255,122,0,.12);
  color:var(--orange);
  font-weight:900;
  flex:0 0 auto;
}

.clean-section h3{
  margin:0;
  font-size:15px;
  line-height:1.2;
}

.clean-section p{
  margin:3px 0 0;
  color:var(--muted);
  font-size:12px;
  line-height:1.35;
}

.clean-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.clean-grid .wide{
  grid-column:1/-1;
}

.clean-grid label,
.p43-clean-form label{
  min-width:0;
}

.clean-grid input,
.clean-grid select,
.clean-grid textarea{
  min-width:0;
  width:100%;
  height:42px;
  border-radius:13px;
}

.p43-metrics{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.p43-metrics span{
  border:1px solid var(--line);
  border-radius:14px;
  padding:10px 12px;
  background:var(--card);
}

.p43-metrics b{
  display:block;
  color:var(--muted);
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.p43-metrics strong{
  display:block;
  margin-top:3px;
  font-size:16px;
}

.clean-form-footer{
  position:sticky;
  bottom:0;
  z-index:4;
  display:flex;
  justify-content:flex-end;
  gap:10px;
  padding:14px 0 0;
  background:linear-gradient(180deg,transparent,var(--card) 28%);
}

/* Stop the failed wizard visuals from P42 */
.ux-minimal .wizard-stepper{
  display:flex;
  gap:6px;
  flex-wrap:nowrap;
  overflow:auto;
  padding:2px;
}

.ux-minimal .wizard-pill{
  min-width:auto!important;
  height:32px!important;
  border-radius:999px!important;
  padding:0 10px!important;
  font-size:11px!important;
  white-space:nowrap;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.ux-minimal .wizard-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.ux-minimal .wizard-footer{
  position:sticky;
  bottom:0;
  background:var(--card);
  padding:12px 0 0;
  margin-top:4px;
}

/* Purchase order: compact, readable, no horizontal scroll inside modal */
.ux-minimal .p43-purchase-form,
.ux-minimal .p38-purchase-order-form{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  padding:18px 20px!important;
  overflow-x:hidden!important;
}

.ux-minimal .purchase-lines{
  grid-column:1/-1;
  display:grid;
  gap:10px;
}

.ux-minimal .purchase-line,
.ux-minimal .p38-purchase-order-form .purchase-line{
  display:grid!important;
  grid-template-columns:minmax(0,1.4fr) 120px 140px 120px!important;
  gap:10px!important;
  align-items:end;
  padding:12px!important;
  border-radius:16px!important;
  overflow:hidden;
}

.ux-minimal .purchase-line label{
  min-width:0;
}

.ux-minimal .purchase-line input,
.ux-minimal .purchase-line select{
  min-width:0;
  width:100%;
  height:40px;
}

.ux-minimal .purchase-form-summary{
  grid-column:1/-1;
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.ux-minimal .form-actions.wide,
.ux-minimal .wide{
  grid-column:1/-1;
}

/* Dense pages */
.ux-minimal .hero-card{
  padding:18px;
  border-radius:20px;
}

.ux-minimal .hero-card h1{
  font-size:24px;
  margin-bottom:6px;
}

.ux-minimal .hero-card p{
  font-size:13px;
  line-height:1.45;
}

.ux-minimal .kpi-grid{
  gap:12px;
}

.ux-minimal .kpi-card{
  min-height:auto;
  padding:14px;
  border-radius:18px;
}

.ux-minimal .panel-card{
  border-radius:20px;
  padding:18px;
}

.ux-minimal .table-wrap{
  overflow:auto;
  max-width:100%;
}

.ux-minimal table{
  max-width:100%;
}

.ux-minimal th,
.ux-minimal td{
  font-size:12px;
  padding:10px 8px;
}

.ux-minimal .stock-grid,
.ux-minimal .dashboard-grid,
.ux-minimal .catalog-layout,
.ux-minimal .sales-layout{
  gap:14px;
}

/* Fix quality ring: do not let donut dominate */
.ux-minimal .quality-ring,
.ux-minimal .catalog-quality-ring,
.ux-minimal [class*="ring"]{
  max-width:150px;
  max-height:150px;
}

@media (max-width:1180px){
  .ux-minimal .status-chips{
    display:none;
  }
  .ux-minimal .global-search{
    max-width:none;
  }
  .ux-minimal .purchase-line,
  .ux-minimal .p38-purchase-order-form .purchase-line{
    grid-template-columns:1fr 1fr!important;
  }
}

@media (max-width:900px){
  .ux-minimal .app-shell{
    grid-template-columns:1fr;
  }
  .ux-minimal .sidebar{
    transform:translateX(-105%);
  }
  .ux-minimal .sidebar.open{
    transform:translateX(0);
  }
  .clean-grid,
  .ux-minimal .wizard-grid,
  .ux-minimal .p43-purchase-form,
  .ux-minimal .p38-purchase-order-form{
    grid-template-columns:1fr!important;
  }
  .ux-minimal .slide-panel{
    width:calc(100vw - 18px);
    max-height:calc(100vh - 18px);
    border-radius:18px;
  }
}

@media (max-width:620px){
  .ux-minimal .topbar{
    gap:8px;
  }
  .ux-minimal .breadcrumb{
    display:none;
  }
  .clean-form-footer,
  .wizard-actions{
    flex-direction:column;
  }
  .clean-form-footer > *,
  .wizard-actions > *{
    width:100%;
  }
}


/* ===============================
   AmeliaPOS ERP - Paquete 46
   Reset estructural: navegación por procesos, transaccionalidad y diseño serio
   =============================== */
:root{
  --orange:#f97316;--ink:#172033;--muted:#647084;--line:#dce4ef;--bg:#f5f7fa;--card:#fff;--soft:#fff7ed;--blue:#2563eb;--green:#16a34a;--red:#dc2626;--shadow:0 8px 22px rgba(15,23,42,.055);--sidebar:252px;--sidebar-collapsed:72px;--topbar:58px;--radius:14px;
}
[data-theme="dark"]{--ink:#f1f5f9;--muted:#a6b2c5;--line:#263245;--bg:#0e1522;--card:#121b2c;--soft:#20170f;--shadow:0 18px 42px rgba(0,0,0,.34)}
body.ux-enterprise-core{overflow-x:hidden;background:var(--bg);color:var(--ink)}
.ux-enterprise-core.app-shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh}.ux-enterprise-core .sidebar{background:var(--card);border-right:1px solid var(--line);padding:14px 10px;box-shadow:none;overflow-x:hidden}.ux-enterprise-core .brand-logo img{width:154px;height:42px;object-fit:contain;mix-blend-mode:normal}.ux-enterprise-core .brand-subtitle{font-size:10px;letter-spacing:.16em;color:#7b879b}.ux-enterprise-core .quick-actions{display:none}.ux-enterprise-core .nav-menu{gap:6px}.ux-enterprise-core .nav-group summary{min-height:38px;padding:7px 9px;border-radius:12px;grid-template-columns:28px minmax(0,1fr) auto;background:transparent;border:1px solid transparent}.ux-enterprise-core .nav-group summary:hover,.ux-enterprise-core .nav-item:hover{background:#f8fafc;border-color:#edf2f7}.ux-enterprise-core .nav-item{min-height:38px;padding:7px 8px;border-radius:12px;grid-template-columns:28px minmax(0,1fr) auto;font-size:12px;background:transparent;border:1px solid transparent}.ux-enterprise-core .nav-item.active{background:var(--soft);border-color:#fed7aa;color:#9a3412}.ux-enterprise-core .nav-icon,.ux-enterprise-core .nav-group-icon{width:26px;height:26px;border-radius:9px;background:#f8fafc;border:1px solid var(--line);color:var(--orange)}.ux-enterprise-core .nav-text,.ux-enterprise-core .nav-group summary span:nth-child(2){white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ux-enterprise-core .nav-badge{font-size:10px;padding:2px 6px}.ux-enterprise-core .topbar{height:var(--topbar);padding:0 14px;gap:10px;background:rgba(255,255,255,.92);border-bottom:1px solid var(--line);box-shadow:none}.ux-enterprise-core .global-search{height:38px;max-width:500px;border-radius:12px;box-shadow:none;background:var(--card)}.ux-enterprise-core .status-chips{display:none}.ux-enterprise-core .icon-button,.ux-enterprise-core .user-menu{height:38px;border-radius:12px;box-shadow:none}.ux-enterprise-core .content-area{padding:16px 18px 30px;max-width:1580px;margin:0 auto;overflow-x:hidden}.sidebar-collapsed.ux-enterprise-core{--sidebar:var(--sidebar-collapsed)}.sidebar-collapsed.ux-enterprise-core .brand-logo img{width:42px;height:42px}.sidebar-collapsed.ux-enterprise-core .brand-subtitle,.sidebar-collapsed.ux-enterprise-core .nav-text,.sidebar-collapsed.ux-enterprise-core .nav-badge,.sidebar-collapsed.ux-enterprise-core .nav-group summary span:nth-child(2),.sidebar-collapsed.ux-enterprise-core .nav-group summary b{display:none!important}
.erp-page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;border:1px solid var(--line);background:var(--card);border-radius:18px;padding:18px 20px;box-shadow:var(--shadow);margin-bottom:14px}.erp-page-head h1{margin:4px 0 6px;font-size:26px;line-height:1.12;letter-spacing:-.035em}.erp-page-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.45;max-width:900px}.erp-head-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.erp-control-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.erp-control-strip article{border:1px solid var(--line);background:var(--card);border-radius:16px;padding:14px;box-shadow:var(--shadow);min-width:0}.erp-control-strip span{display:block;color:#748199;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:900}.erp-control-strip strong{display:block;margin-top:7px;font-size:22px;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.erp-control-strip small{display:block;margin-top:5px;color:var(--muted);font-size:12px}.erp-workspace-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.85fr);gap:14px;margin-bottom:14px}.erp-panel,.erp-module-map,.erp-process-card{border:1px solid var(--line);background:var(--card);border-radius:18px;padding:18px;box-shadow:var(--shadow)}.erp-panel-head,.erp-process-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.erp-panel-head h2,.erp-process-head h2{margin:0;font-size:18px;line-height:1.2}.erp-panel-head p,.erp-process-head p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.4}.erp-flow-list,.erp-task-list,.erp-event-list,.erp-rules-list{display:grid;gap:10px}.erp-flow-row,.erp-task,.erp-event,.erp-rules-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:13px 14px;background:#fbfcfe}.erp-flow-row strong,.erp-event strong,.erp-rules-list b{display:block;font-size:14px}.erp-flow-row span,.erp-event span,.erp-rules-list span{display:block;margin-top:3px;color:var(--muted);font-size:12px;line-height:1.35}.erp-process-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.erp-process-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}.erp-step{border:1px solid var(--line);border-radius:14px;padding:10px;background:#fbfcfe}.erp-step b{display:block;font-size:12px}.erp-step span{display:block;margin-top:4px;color:var(--muted);font-size:10px;text-transform:uppercase;font-weight:900}.erp-step.active{border-color:#fed7aa;background:#fff7ed}.erp-step.linked{border-color:#bfdbfe;background:#eff6ff}.erp-step.pending{border-color:#e2e8f0;background:#f8fafc}.erp-risk-note{border:1px solid #fed7aa;background:#fff7ed;color:#9a3412;border-radius:14px;padding:10px 12px;font-size:12px;font-weight:800}.erp-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.erp-module-link{display:block;border:1px solid var(--line);border-radius:14px;background:#fbfcfe;padding:13px 14px}.erp-module-link strong{display:block;font-size:14px}.erp-module-link span{display:block;margin-top:4px;color:var(--muted);font-size:12px;line-height:1.35}
.ux-enterprise-core .hero-card,.ux-enterprise-core .panel-card,.ux-enterprise-core .kpi-card{border:1px solid var(--line);background:var(--card);border-radius:18px;box-shadow:var(--shadow)}.ux-enterprise-core .hero-card{padding:16px 18px}.ux-enterprise-core .hero-card h1{font-size:24px;margin:4px 0 6px}.ux-enterprise-core .hero-card p{font-size:13px;line-height:1.42}.ux-enterprise-core .kpi-card{padding:12px 14px;min-height:96px}.ux-enterprise-core .kpi-card strong{font-size:21px}.ux-enterprise-core .slide-panel{position:fixed!important;top:50%!important;left:50%!important;right:auto!important;bottom:auto!important;transform:translate(-50%,-50%)!important;width:min(840px,calc(100vw - 40px))!important;max-width:840px!important;max-height:calc(100vh - 36px)!important;overflow:auto!important;background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:0 26px 70px rgba(15,23,42,.22);padding:0}.ux-enterprise-core .slide-panel[hidden]{display:none!important}.ux-enterprise-core .slide-panel .panel-head{position:sticky;top:0;z-index:3;background:var(--card);border-bottom:1px solid var(--line);padding:16px 18px 12px;margin:0}.ux-enterprise-core .slide-panel>form,.ux-enterprise-core .slide-panel .company-form,.ux-enterprise-core .slide-panel .purchase-form,.ux-enterprise-core .slide-panel .stock-form{padding:16px 18px 18px}.ux-enterprise-core input,.ux-enterprise-core select,.ux-enterprise-core textarea{height:40px;border-radius:10px;font-size:13px;padding:9px 10px;box-shadow:none}.ux-enterprise-core textarea{min-height:88px}body.modal-open::before{content:"";position:fixed;inset:0;z-index:50;background:rgba(15,23,42,.48);backdrop-filter:blur(4px)}body.modal-open .slide-panel.panel-modal-open{z-index:60}.ux-enterprise-core .purchase-line,.ux-enterprise-core .p38-purchase-order-form .purchase-line{grid-template-columns:minmax(0,1.4fr) 100px 120px 100px!important;gap:8px!important;padding:10px!important}.ux-enterprise-core .table-wrap,.ux-enterprise-core .responsive-table{overflow:auto;max-width:100%}html,body,.ux-enterprise-core,.ux-enterprise-core .main-wrap,.ux-enterprise-core .content-area{overflow-x:hidden}
@media(max-width:1280px){.erp-control-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.erp-workspace-grid,.erp-process-grid{grid-template-columns:1fr}.erp-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.erp-process-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.ux-enterprise-core.app-shell{grid-template-columns:1fr}.ux-enterprise-core .sidebar{position:fixed;transform:translateX(-105%)}.ux-enterprise-core .sidebar.open{transform:translateX(0)}.erp-page-head{flex-direction:column}.erp-control-strip,.erp-module-grid,.erp-process-steps{grid-template-columns:1fr}.ux-enterprise-core .slide-panel{width:calc(100vw - 18px)!important;max-height:calc(100vh - 18px)!important}.ux-enterprise-core .company-form,.ux-enterprise-core .purchase-form,.ux-enterprise-core .stock-form,.ux-enterprise-core .clean-grid{grid-template-columns:1fr!important}}


/* ===============================
   AmeliaPOS ERP - Paquete 47
   Procesos ERP estándar, navegación madura y modales funcionales
   =============================== */
.ux-process-erp{
  --sidebar:260px;
  --sidebar-collapsed:76px;
  --topbar:60px;
  --bg:#f5f7fa;
  --card:#ffffff;
  --line:#dbe3ee;
  --ink:#182235;
  --muted:#657286;
  --orange:#f47c20;
  --shadow:0 8px 22px rgba(15,23,42,.055);
}
.ux-process-erp .sidebar{background:#fff;border-right:1px solid var(--line);padding:14px 12px;box-shadow:none;}
.ux-process-erp .brand-logo img{width:158px;height:42px;mix-blend-mode:normal;}
.ux-process-erp .brand-subtitle{font-size:10px;letter-spacing:.14em;color:#7a8799;}
.ux-process-erp .process-switcher{display:grid;grid-template-columns:1fr;gap:7px;margin:14px 0;border-bottom:1px solid var(--line);padding-bottom:12px;}
.ux-process-erp .process-switcher a{display:flex;align-items:center;justify-content:space-between;min-height:36px;padding:8px 10px;border:1px solid var(--line);border-radius:11px;background:#fbfcfe;font-size:12px;font-weight:900;color:#334155;}
.ux-process-erp .nav-menu{gap:6px;}
.ux-process-erp .nav-group summary{min-height:38px;padding:7px 9px;border-radius:12px;background:transparent;grid-template-columns:28px minmax(0,1fr) auto;}
.ux-process-erp .nav-group summary span,.ux-process-erp .nav-text{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ux-process-erp .nav-group summary b{font-size:10px;min-width:21px;height:21px;display:grid;place-items:center;border-radius:999px;background:#f1f5f9;color:#64748b;}
.ux-process-erp .nav-group-items{gap:4px;margin-top:5px;}
.ux-process-erp .nav-item{min-height:38px;padding:7px 8px;border-radius:11px;grid-template-columns:27px minmax(0,1fr) auto;font-size:12px;}
.ux-process-erp .nav-icon,.ux-process-erp .nav-group-icon{width:27px;height:27px;border-radius:9px;background:#f8fafc;color:var(--orange);}
.ux-process-erp .nav-item.active{background:#fff7ed;border-color:#fed7aa;color:#9a3412;}
.ux-process-erp .topbar{height:var(--topbar);background:rgba(255,255,255,.92);border-bottom:1px solid var(--line);box-shadow:none;}
.ux-process-erp .global-search{height:38px;max-width:480px;border-radius:12px;box-shadow:none;}
.ux-process-erp .status-chips .chip:nth-child(n+3){display:none;}
.ux-process-erp .content-area{padding:16px 18px 30px;max-width:1600px;}
body.sidebar-collapsed .process-switcher{display:none;}

/* Modales: solución al difuminado sin panel */
body.modal-open::before{content:"";position:fixed;inset:0;background:rgba(15,23,42,.52);backdrop-filter:blur(5px);z-index:10000!important;}
.slide-panel.panel-modal-open{display:block!important;visibility:visible!important;opacity:1!important;position:fixed!important;top:50%!important;left:50%!important;right:auto!important;bottom:auto!important;transform:translate(-50%,-50%)!important;width:min(920px,calc(100vw - 36px))!important;max-height:calc(100vh - 36px)!important;overflow:auto!important;background:var(--card)!important;border:1px solid var(--line)!important;border-radius:18px!important;box-shadow:0 28px 80px rgba(15,23,42,.24)!important;z-index:10050!important;padding:0!important;}
.slide-panel[hidden]:not(.panel-modal-open){display:none!important;}
.slide-panel.panel-modal-open .panel-head{position:sticky;top:0;background:var(--card);z-index:2;border-bottom:1px solid var(--line);padding:16px 18px 12px;margin:0;}
.slide-panel.panel-modal-open form{padding:16px 18px 18px;}

/* Catálogo: la tabla manda, las tarjetas no estorban */
.catalog-grid{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;}
.catalog-main-panel{min-width:0;width:100%;}
.catalog-side{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;align-items:start;}
.catalog-side .panel-card{min-width:0;box-shadow:var(--shadow);}
.catalog-table-wrap{overflow:auto!important;max-width:100%!important;}
.catalog-table{min-width:1120px;}

/* Procesos ERP */
.p47-head{border:1px solid var(--line);background:var(--card);border-radius:18px;padding:18px 20px;box-shadow:var(--shadow);display:flex;justify-content:space-between;gap:16px;margin-bottom:14px;}
.p47-head h1{font-size:26px;line-height:1.12;margin:4px 0 7px;letter-spacing:-.035em;}
.p47-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.45;max-width:900px;}
.p47-cycle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px;}
.p47-cycle-card,.p47-panel,.p47-module-map{border:1px solid var(--line);background:var(--card);border-radius:18px;padding:16px;box-shadow:var(--shadow);}
.p47-cycle-card header{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:12px;align-items:start;margin-bottom:12px;}
.p47-cycle-card header>span{width:48px;height:38px;border-radius:12px;display:grid;place-items:center;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;font-weight:950;}
.p47-cycle-card h2{font-size:17px;margin:0;line-height:1.2;}
.p47-cycle-card p{font-size:12px;color:var(--muted);margin:4px 0 0;}
.p47-cycle-card header a,.p47-panel a{font-size:12px;font-weight:900;}
.p47-cycle-card ol{list-style:none;margin:0;padding:0;display:grid;gap:7px;}
.p47-cycle-card li a{display:block;border:1px solid var(--line);border-radius:12px;padding:10px 11px;background:#fbfcfe;}
.p47-cycle-card li b{display:block;font-size:13px;}
.p47-cycle-card li small{display:block;margin-top:3px;color:var(--muted);font-size:11px;line-height:1.35;}
.p47-cycle-card footer{margin-top:12px;border-top:1px solid var(--line);padding-top:10px;color:#8a4a13;font-size:12px;font-weight:800;}
.p47-work-grid,.p47-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,.8fr);gap:14px;margin-bottom:14px;}
.p47-panel-head{display:flex;justify-content:space-between;align-items:start;gap:12px;margin-bottom:12px;}
.p47-panel-head h2{margin:0;font-size:18px;line-height:1.2;}
.p47-panel-head p{margin:4px 0 0;color:var(--muted);font-size:12px;}
.p47-bridge-list,.p47-export-list,.p47-event-table,.p47-cycle-list{display:grid;gap:9px;}
.p47-bridge,.p47-export-list a,.p47-cycle-list a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:13px;padding:11px 12px;background:#fbfcfe;}
.p47-bridge strong,.p47-cycle-list b{display:block;font-size:13px;}
.p47-bridge span,.p47-cycle-list span{display:block;color:var(--muted);font-size:12px;line-height:1.35;}
.p47-bridge b,.p47-cycle-list strong{font-size:11px;border:1px solid var(--line);border-radius:999px;padding:4px 8px;background:#fff;}
.p47-export-list a{display:block;grid-template-columns:1fr;color:#334155;font-weight:900;}
.p47-event-table div{border-bottom:1px solid var(--line);padding:9px 0;}
.p47-event-table div:last-child{border-bottom:0;}
.p47-event-table strong{display:block;font-size:13px;}
.p47-event-table span{display:block;color:var(--muted);font-size:12px;margin-top:2px;}
.p47-kpi-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px;}
.p47-kpi-strip article{border:1px solid var(--line);background:var(--card);border-radius:16px;padding:14px;box-shadow:var(--shadow);}
.p47-kpi-strip span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#7a8799;font-weight:900;}
.p47-kpi-strip strong{display:block;margin-top:6px;font-size:22px;line-height:1.1;}
.p47-kpi-strip small{display:block;margin-top:4px;color:var(--muted);font-size:12px;}
.p47-cycle-mini{border:1px solid var(--line);border-radius:14px;padding:12px;background:#fbfcfe;}
.p47-cycle-mini strong{display:block;font-size:15px;}
.p47-cycle-mini span{display:block;margin-top:5px;color:var(--muted);font-size:12px;line-height:1.4;}
.p47-steps-inline{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}
.p47-steps-inline a{border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900;}
.p47-simple-table{overflow:auto;}
.p47-simple-table table{width:100%;border-collapse:collapse;}
.p47-simple-table th,.p47-simple-table td{padding:11px 10px;border-bottom:1px solid var(--line);text-align:left;font-size:12px;}
.p47-simple-table th{text-transform:uppercase;letter-spacing:.1em;color:#7a8799;font-size:10px;}
.p47-simple-table td span{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:4px 8px;background:#fff;font-weight:900;}
.p47-report-actions{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px;}
.p47-report-actions a{border:1px solid var(--line);background:var(--card);border-radius:12px;padding:9px 12px;font-size:12px;font-weight:900;box-shadow:var(--shadow);}
@media(max-width:1280px){.p47-cycle-grid,.p47-work-grid,.p47-dashboard-grid{grid-template-columns:1fr}.catalog-side{grid-template-columns:1fr!important}.p47-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.p47-head{flex-direction:column}.p47-cycle-card header{grid-template-columns:1fr}.p47-kpi-strip{grid-template-columns:1fr}.slide-panel.panel-modal-open{width:calc(100vw - 18px)!important;max-height:calc(100vh - 18px)!important}}


/* ===============================
   AmeliaPOS ERP - Paquete 48
   Motor ERP: procesos end-to-end, menos decoración
   =============================== */
:root{--erp-navy:#152033;--erp-slate:#667085;--erp-line:#dce4ef;--erp-bg:#f5f7fb;--erp-card:#ffffff;--erp-accent:#f97316;--erp-ok:#16a34a;--erp-warn:#d97706;--erp-danger:#dc2626;--sidebar:260px;--topbar:62px;--radius:16px;--shadow:0 10px 24px rgba(15,23,42,.06)}
body.app-shell{background:var(--erp-bg);overflow-x:hidden}.content-area{padding:18px 20px 32px;max-width:1600px}.sidebar{background:#fff;border-right:1px solid var(--erp-line);box-shadow:none}.topbar{height:var(--topbar);background:rgba(255,255,255,.92);border-bottom:1px solid var(--erp-line);box-shadow:none}.hero-card,.panel-card,.kpi-card,.p48-panel,.p48-exec-head,.p48-process-head{border:1px solid var(--erp-line);background:#fff;border-radius:var(--radius);box-shadow:var(--shadow)}
.p48-process-head,.p48-exec-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:20px 22px;margin-bottom:14px}.p48-process-head h1,.p48-exec-head h1{margin:4px 0 8px;font-size:28px;line-height:1.1;letter-spacing:-.04em;color:var(--erp-navy)}.p48-process-head p,.p48-exec-head p{margin:0;max-width:980px;color:var(--erp-slate);font-size:14px;line-height:1.45}.p48-head-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#7b8798;font-weight:900}.p48-score-strip,.p48-exec-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:14px}.p48-score-strip article,.p48-exec-kpis article{border:1px solid var(--erp-line);background:#fff;border-radius:15px;padding:14px 15px;box-shadow:var(--shadow)}.p48-score-strip span,.p48-exec-kpis span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#7b8798;font-weight:900}.p48-score-strip strong,.p48-exec-kpis strong{display:block;margin:7px 0 4px;font-size:24px;line-height:1.05;color:var(--erp-navy)}.p48-score-strip small,.p48-exec-kpis small{color:var(--erp-slate);font-size:12px}.p48-main-grid,.p48-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(340px,.8fr);gap:14px;margin-bottom:14px}.p48-panel{padding:18px}.p48-panel-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px}.p48-panel-head h2{margin:0;font-size:18px;color:var(--erp-navy)}.p48-panel-head p{margin:4px 0 0;color:var(--erp-slate);font-size:12px;line-height:1.4}.p48-cycle-stack{display:grid;gap:12px}.p48-cycle-card{border:1px solid var(--erp-line);border-radius:16px;background:#fbfcfe;padding:14px}.p48-cycle-card header{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:12px;align-items:start}.p48-cycle-card header>b{height:42px;border-radius:12px;display:grid;place-items:center;background:#fff7ed;color:#9a4d00;border:1px solid #fed7aa;font-weight:900}.p48-cycle-card h3{margin:0;font-size:16px;color:var(--erp-navy)}.p48-cycle-card p{margin:4px 0 0;color:var(--erp-slate);font-size:12px;line-height:1.4}.p48-cycle-card header a,.p48-cycle-mini a strong,.p48-state{font-size:11px;border:1px solid var(--erp-line);background:#fff;border-radius:999px;padding:6px 10px;font-weight:900;color:var(--erp-navy)}.p48-stage-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:12px}.p48-stage{border:1px solid var(--erp-line);border-radius:13px;background:#fff;padding:10px;min-width:0}.p48-stage strong{display:block;font-size:12px;color:var(--erp-navy)}.p48-stage span{display:block;font-size:11px;color:#9a4d00;margin-top:3px;font-weight:900}.p48-stage small{display:block;font-size:11px;color:var(--erp-slate);margin-top:3px;line-height:1.35}.p48-cycle-card footer{display:flex;justify-content:space-between;gap:10px;margin-top:12px;padding-top:10px;border-top:1px solid var(--erp-line);color:var(--erp-slate);font-size:12px}.p48-cycle-card footer span{font-weight:900;color:var(--erp-navy)}.p48-cycle-card footer em{font-style:normal}.p48-impact-list,.p48-event-list,.p48-cycle-mini{display:grid;gap:9px}.p48-impact,.p48-event,.p48-cycle-mini a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid var(--erp-line);border-radius:13px;background:#fbfcfe;padding:11px 12px}.p48-impact strong,.p48-event strong,.p48-cycle-mini b{font-size:13px;color:var(--erp-navy)}.p48-impact span,.p48-event span,.p48-cycle-mini span{font-size:12px;color:var(--erp-slate);line-height:1.35}.p48-impact b{font-size:10px;text-transform:uppercase;letter-spacing:.08em;border-radius:999px;padding:4px 7px;background:#fff7ed;color:#9a4d00;border:1px solid #fed7aa}.p48-impact.applied_or_native b{background:#ecfdf5;color:#166534;border-color:#bbf7d0}.p48-empty{border:1px dashed var(--erp-line);border-radius:13px;padding:14px;color:var(--erp-slate);font-size:13px;text-align:center}.p48-matrix-table{overflow:auto}.p48-matrix-table table{width:100%;border-collapse:collapse}.p48-matrix-table th,.p48-matrix-table td{padding:10px;border-bottom:1px solid var(--erp-line);text-align:left;font-size:12px}.p48-matrix-table th{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#7b8798;background:#f8fafc}.p48-state{display:inline-flex}.slide-panel{position:fixed!important;top:50%!important;left:50%!important;right:auto!important;bottom:auto!important;transform:translate(-50%,-50%)!important;width:min(860px,calc(100vw - 36px))!important;max-height:calc(100vh - 36px)!important;overflow:auto!important;border-radius:18px!important;border:1px solid var(--erp-line)!important;background:#fff!important;box-shadow:0 28px 82px rgba(15,23,42,.24)!important;padding:0!important}body.modal-open::before{content:"";position:fixed;inset:0;z-index:45;background:rgba(15,23,42,.45);backdrop-filter:blur(4px)}body.modal-open .slide-panel.panel-modal-open{z-index:60}.slide-panel[hidden]{display:none!important}.catalog-layout{grid-template-columns:minmax(0,1fr)!important}.catalog-side,.catalog-insights,.catalog-ai-panel{max-width:none}.data-table th,.data-table td{font-size:12px;padding:10px 9px}.responsive-table,.table-wrap{overflow:auto;max-width:100%}.nav-group summary,.nav-item{min-height:40px}.nav-text,.nav-group summary span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quick-actions{display:none!important}@media(max-width:1280px){.p48-score-strip,.p48-exec-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.p48-main-grid,.p48-dashboard-grid{grid-template-columns:1fr}}@media(max-width:760px){.p48-process-head,.p48-exec-head{flex-direction:column}.p48-score-strip,.p48-exec-kpis{grid-template-columns:1fr}.p48-cycle-card header{grid-template-columns:44px minmax(0,1fr)}.p48-cycle-card header a{grid-column:1/-1}.p48-cycle-card footer{flex-direction:column}.content-area{padding:14px}}



/* ===============================
   AmeliaPOS ERP - Paquete 49
   P2P completo: flujo transaccional end-to-end
   =============================== */

.p2p-head{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
  border:1px solid var(--line);
  background:var(--card);
  border-radius:18px;
  padding:18px 20px;
  box-shadow:var(--shadow);
  margin-bottom:14px;
}
.p2p-head h1{
  margin:4px 0 6px;
  font-size:26px;
  line-height:1.1;
  letter-spacing:-.035em;
}
.p2p-head p{
  margin:0;
  color:var(--muted);
  font-size:13px;
  line-height:1.45;
  max-width:920px;
}
.p2p-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.p2p-kpis{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
  margin-bottom:14px;
}
.p2p-kpis article{
  border:1px solid var(--line);
  background:var(--card);
  border-radius:16px;
  padding:14px;
  box-shadow:var(--shadow);
}
.p2p-kpis span{
  display:block;
  color:#748199;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:900;
}
.p2p-kpis strong{
  display:block;
  margin-top:7px;
  font-size:24px;
  line-height:1.05;
}
.p2p-kpis small{
  display:block;
  margin-top:5px;
  color:var(--muted);
  font-size:12px;
}
.p2p-flow-card,
.p2p-panel{
  border:1px solid var(--line);
  background:var(--card);
  border-radius:18px;
  padding:18px;
  box-shadow:var(--shadow);
  margin-bottom:14px;
}
.p2p-section-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
  margin-bottom:14px;
}
.p2p-section-head h2{
  margin:0;
  font-size:18px;
}
.p2p-section-head p{
  margin:4px 0 0;
  color:var(--muted);
  font-size:12px;
}
.p2p-stage-line{
  display:grid;
  grid-template-columns:repeat(11,minmax(120px,1fr));
  gap:10px;
  overflow:auto;
  padding-bottom:4px;
}
.p2p-stage-line article{
  border:1px solid var(--line);
  background:#fbfcfe;
  border-radius:14px;
  padding:12px;
  min-height:130px;
}
.p2p-stage-line b{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:#fff4e9;
  color:#9a4d00;
  font-size:12px;
}
.p2p-stage-line strong{
  display:block;
  margin-top:8px;
  font-size:13px;
}
.p2p-stage-line span{
  display:block;
  margin-top:5px;
  color:var(--muted);
  font-size:11px;
  line-height:1.35;
}
.p2p-workspace{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(320px,.72fr);
  gap:14px;
}
.p2p-table-wrap{
  overflow:auto;
  border:1px solid var(--line);
  border-radius:14px;
}
.p2p-table{
  width:100%;
  border-collapse:collapse;
  min-width:900px;
}
.p2p-table th,
.p2p-table td{
  padding:11px 12px;
  border-bottom:1px solid var(--line);
  vertical-align:middle;
  text-align:left;
  font-size:12px;
}
.p2p-table th{
  background:#f8fafc;
  color:#64748b;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:10px;
}
.p2p-table td strong{
  display:block;
  font-size:13px;
}
.p2p-table td small{
  display:block;
  margin-top:4px;
  color:var(--muted);
}
.p2p-status{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 9px;
  border-radius:999px;
  border:1px solid #ffd3a1;
  background:#fff7ed;
  color:#9a4d00;
  font-weight:900;
  font-size:11px;
}
.inline-form{
  display:flex;
  gap:6px;
  align-items:center;
}
.inline-form select{
  height:32px;
  min-width:130px;
}
.primary-button.micro{
  min-height:32px;
  padding:0 10px;
  font-size:11px;
}
.p2p-impact-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-bottom:14px;
}
.p2p-impact-list article{
  border:1px solid var(--line);
  border-radius:14px;
  padding:12px;
  background:#fbfcfe;
}
.p2p-impact-list span{
  display:block;
  font-size:11px;
  color:var(--muted);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.p2p-impact-list strong{
  display:block;
  margin-top:6px;
  font-size:24px;
}
.p2p-event-feed{
  display:grid;
  gap:10px;
}
.p2p-event-feed div{
  border:1px solid var(--line);
  border-radius:14px;
  padding:11px 12px;
  background:#fbfcfe;
}
.p2p-event-feed strong{
  display:block;
  font-size:13px;
}
.p2p-event-feed span{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:12px;
}
.p2p-event-feed small{
  display:block;
  margin-top:6px;
  color:#94a3b8;
  font-size:11px;
}
.p2p-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  padding:18px 20px 20px;
}
.p2p-form label{
  display:flex;
  flex-direction:column;
  gap:6px;
  font-size:12px;
  color:#556277;
  font-weight:800;
}
.p2p-form .wide{
  grid-column:1/-1;
}
.p2p-dashboard-entry{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  border:1px solid #ffd3a1;
  background:#fff7ed;
  border-radius:18px;
  padding:16px 18px;
  margin-top:14px;
}
.p2p-dashboard-entry h2{
  margin:4px 0 4px;
  font-size:20px;
}
.p2p-dashboard-entry p{
  margin:0;
  color:#9a4d00;
  font-size:13px;
}
.empty-state{
  border:1px dashed var(--line);
  border-radius:14px;
  padding:24px;
  text-align:center;
  background:#fbfcfe;
}
.empty-state strong{
  display:block;
  font-size:16px;
}
.empty-state span{
  display:block;
  margin-top:5px;
  color:var(--muted);
}
@media (max-width:1200px){
  .p2p-kpis{grid-template-columns:repeat(3,minmax(0,1fr));}
  .p2p-workspace{grid-template-columns:1fr;}
}
@media (max-width:760px){
  .p2p-head,
  .p2p-dashboard-entry{
    flex-direction:column;
  }
  .p2p-kpis,
  .p2p-form{
    grid-template-columns:1fr;
  }
}



/* ===============================
   AmeliaPOS ERP - Paquete 50
   Corrección global: menú P2P + modales + formularios relacionales
   =============================== */

/* Reset final para evitar reglas heredadas que convertían el modal en overlay con scroll horizontal. */
.slide-panel.panel-modal-open:not([hidden]){
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  position:fixed!important;
  inset:auto!important;
  top:50%!important;
  left:50%!important;
  right:auto!important;
  bottom:auto!important;
  transform:translate(-50%,-50%)!important;
  width:min(860px, calc(100vw - 48px))!important;
  max-width:860px!important;
  max-height:calc(100vh - 48px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:0!important;
  background:var(--card)!important;
  border:1px solid var(--line)!important;
  border-radius:18px!important;
  box-shadow:0 28px 76px rgba(15,23,42,.26)!important;
  z-index:10050!important;
  box-sizing:border-box!important;
  backdrop-filter:none!important;
  scroll-behavior:auto!important;
}

.slide-panel.panel-modal-open:not([hidden]) *,
.slide-panel.panel-modal-open:not([hidden]) *::before,
.slide-panel.panel-modal-open:not([hidden]) *::after{
  box-sizing:border-box!important;
}

.slide-panel.panel-modal-open:not([hidden]) > .panel-head,
.slide-panel.panel-modal-open:not([hidden]) > form,
.slide-panel.panel-modal-open:not([hidden]) > .policy-grid,
.slide-panel.panel-modal-open:not([hidden]) > .doc-list,
.slide-panel.panel-modal-open:not([hidden]) > .modal-content{
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  border-left:0!important;
  border-right:0!important;
  box-shadow:none!important;
}

.slide-panel.panel-modal-open:not([hidden]) > .panel-head{
  position:sticky!important;
  top:0!important;
  z-index:3!important;
  background:var(--card)!important;
  border-bottom:1px solid var(--line)!important;
  border-radius:18px 18px 0 0!important;
  padding:16px 18px 12px!important;
}

.slide-panel.panel-modal-open:not([hidden]) > form{
  padding:16px 18px 18px!important;
  border-radius:0 0 18px 18px!important;
}

body.modal-open{
  overflow:hidden!important;
}

body.modal-open::before{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:10000!important;
  background:rgba(15,23,42,.48)!important;
  backdrop-filter:blur(4px)!important;
}

body.modal-open .slide-panel.panel-modal-open{
  z-index:10050!important;
}

.slide-panel[hidden]{
  display:none!important;
}

.slide-panel.panel-modal-open input,
.slide-panel.panel-modal-open select,
.slide-panel.panel-modal-open textarea{
  max-width:100%!important;
}

.slide-panel.panel-modal-open textarea{
  resize:vertical;
}

.p2p-form{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}

.p2p-form .wide{
  grid-column:1/-1!important;
}

.p2p-form label{
  min-width:0!important;
}

.p2p-form input,
.p2p-form select,
.p2p-form textarea{
  width:100%!important;
  min-width:0!important;
}

.p50-p2p-master-alert{
  margin-bottom:4px;
}

.p2p-table td small + small{
  margin-top:2px;
  color:#7b8798;
}

.nav-group-items .nav-item[href*="m=p2p"]{
  border-color:#ffd3a1!important;
  background:#fff7ed!important;
}

.nav-group-items .nav-item[href*="m=p2p"] .nav-badge{
  background:#fff!important;
  color:#9a4d00!important;
}

@media(max-width:900px){
  .slide-panel.panel-modal-open:not([hidden]){
    width:calc(100vw - 18px)!important;
    max-height:calc(100vh - 18px)!important;
    border-radius:16px!important;
  }

  .p2p-form{
    grid-template-columns:1fr!important;
  }
}



/* ===============================
   AmeliaPOS ERP - Paquete 51
   P2P → OC real con proveedor y líneas
   =============================== */

.p51-po-card{
  border-color:#dbeafe;
}

.p2p-po-list{
  display:grid;
  gap:10px;
}

.p2p-po-list article{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  border:1px solid var(--line);
  border-radius:14px;
  padding:12px 14px;
  background:#fbfcfe;
}

.p2p-po-list strong{
  display:block;
  font-size:14px;
}

.p2p-po-list span{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:12px;
}

.p2p-po-list b{
  font-size:16px;
}

.p51-lines{
  border:1px solid var(--line);
  border-radius:14px;
  padding:12px;
  background:#fbfcfe;
  display:grid;
  gap:10px;
}

.p51-line-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.p51-line-head strong{
  font-size:14px;
}

.p51-line-head span{
  color:var(--muted);
  font-size:12px;
  font-weight:800;
}

.p51-po-line{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) 110px 120px 110px;
  gap:8px;
  align-items:end;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  padding:10px;
}

.p51-po-line.duplicate-line{
  border-color:#fb7185;
  background:#fff1f2;
}

.p51-line-total{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  height:40px;
  font-weight:900;
  color:#9a4d00;
}

.p51-po-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.p51-po-summary span{
  border:1px solid var(--line);
  border-radius:12px;
  padding:10px 12px;
  background:#fbfcfe;
}

.p51-po-summary b{
  display:block;
  color:var(--muted);
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.p51-po-summary strong{
  display:block;
  margin-top:4px;
  font-size:17px;
}

@media(max-width:900px){
  .p51-po-line{
    grid-template-columns:1fr;
  }
  .p51-po-summary{
    grid-template-columns:1fr;
  }
}



/* ===============================
   AmeliaPOS ERP - Paquete 52
   P2P Crear OC y modales transaccionales seguros
   =============================== */

.p52-create-po-button{
  position:relative;
  z-index:2;
}

.p52-create-po-button::after{
  content:"";
  position:absolute;
  inset:-4px;
  border-radius:12px;
  border:1px solid rgba(255,138,20,.18);
  pointer-events:none;
}

.p52-po-flow-warning{
  margin-bottom:2px;
}

.slide-panel.panel-modal-open:not([hidden]){
  pointer-events:auto!important;
}

body.modal-open::before{
  pointer-events:auto!important;
}

/* En formularios transaccionales el cierre debe ser explícito: botón Cerrar/Cancelar. */
.slide-panel.panel-modal-open .panel-head .ghost-button,
.slide-panel.panel-modal-open [data-close-panel],
.slide-panel.panel-modal-open .form-actions button,
.slide-panel.panel-modal-open .form-actions a{
  position:relative;
  z-index:4;
}

.p51-po-form .form-alert{
  grid-column:1/-1;
}

.p51-po-form select,
.p51-po-form input{
  min-height:40px;
}

.p2p-table .p52-create-po-button{
  min-width:88px;
}

@media(max-width:900px){
  .p2p-table .p52-create-po-button{
    width:100%;
  }
}



/* ===============================
   AmeliaPOS ERP - Paquete 53
   P2P OC como pantalla transaccional
   =============================== */

.p53-transaction-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  border:1px solid var(--line);
  background:var(--card);
  border-radius:18px;
  padding:18px 20px;
  box-shadow:var(--shadow);
  margin-bottom:14px;
}

.p53-transaction-head h1{
  margin:4px 0 6px;
  font-size:26px;
  line-height:1.1;
  letter-spacing:-.035em;
}

.p53-transaction-head p{
  margin:0;
  color:var(--muted);
  font-size:13px;
  line-height:1.45;
  max-width:880px;
}

.p53-transaction-layout{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(300px,.55fr);
  gap:14px;
}

.p53-po-workbench{
  margin-bottom:0;
}

.p53-po-form{
  display:grid;
  gap:14px;
}

.p53-form-section{
  border:1px solid var(--line);
  border-radius:16px;
  background:#fbfcfe;
  padding:14px;
}

.p53-form-section header{
  display:flex;
  gap:10px;
  align-items:flex-start;
  margin-bottom:12px;
}

.p53-form-section header span{
  width:28px;
  height:28px;
  border-radius:10px;
  display:grid;
  place-items:center;
  background:#fff4e9;
  color:#9a4d00;
  font-weight:900;
}

.p53-form-section h3{
  margin:0;
  font-size:15px;
}

.p53-form-section p{
  margin:3px 0 0;
  font-size:12px;
  color:var(--muted);
}

.p53-form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.p53-form-grid .wide{
  grid-column:1/-1;
}

.p53-form-grid label,
.p53-po-line label{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
  color:#556277;
  font-size:12px;
  font-weight:800;
}

.p53-form-grid input,
.p53-form-grid select,
.p53-po-line input,
.p53-po-line select{
  width:100%;
  min-width:0;
  min-height:40px;
  border:1px solid var(--line);
  border-radius:10px;
  padding:9px 10px;
}

.p53-lines{
  display:grid;
  gap:10px;
}

.p53-po-line{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) 110px 130px 110px;
  gap:8px;
  align-items:end;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  padding:10px;
}

.p53-po-line.duplicate-line{
  border-color:#fb7185;
  background:#fff1f2;
}

.p53-line-total{
  min-height:40px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  font-weight:900;
  color:#9a4d00;
}

.p53-po-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.p53-po-summary span{
  border:1px solid var(--line);
  border-radius:12px;
  padding:10px 12px;
  background:#fff;
}

.p53-po-summary b{
  display:block;
  color:#64748b;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.p53-po-summary strong{
  display:block;
  margin-top:4px;
  font-size:18px;
}

.p53-form-actions{
  display:flex;
  justify-content:flex-end;
  gap:10px;
}

.p53-side-impact h2{
  margin:0 0 12px;
  font-size:18px;
}

.p53-impact-list{
  display:grid;
  gap:10px;
}

.p53-impact-list article{
  border:1px solid var(--line);
  border-radius:14px;
  padding:12px;
  background:#fbfcfe;
}

.p53-impact-list strong{
  display:block;
  font-size:13px;
}

.p53-impact-list span{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:12px;
  line-height:1.35;
}

.p53-create-po-link{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  min-height:32px;
}

.p53-deprecated-modal{
  display:none!important;
}

@media(max-width:1200px){
  .p53-transaction-layout{
    grid-template-columns:1fr;
  }
}

@media(max-width:760px){
  .p53-transaction-head,
  .p53-form-actions{
    flex-direction:column;
  }
  .p53-form-grid,
  .p53-po-line,
  .p53-po-summary{
    grid-template-columns:1fr;
  }
}



/* ===============================
   AmeliaPOS ERP - Paquete 54
   OC P2P: líneas únicas, quitar línea, proveedor legible
   =============================== */

.p54-inline-rules{
  border:1px solid #dbeafe;
  background:#f8fbff;
  color:#365b94;
  border-radius:12px;
  padding:10px 12px;
  font-size:12px;
  font-weight:800;
  margin-bottom:10px;
}

.p53-po-line.p54-po-line{
  grid-template-columns:minmax(0,1.5fr) 110px 130px 110px 86px;
}

.p53-po-line.active-line{
  border-color:#bbf7d0;
  background:#f7fef9;
}

.p53-po-line.duplicate-line{
  border-color:#fb7185!important;
  background:#fff1f2!important;
}

.p54-clear-line{
  min-height:40px;
  padding:0 10px!important;
  font-size:11px!important;
}

.p53-po-line select option:disabled{
  color:#9ca3af;
  background:#f3f4f6;
}

[data-theme="dark"] .p53-po-line.active-line{
  background:rgba(34,197,94,.08);
}

[data-theme="dark"] .p54-inline-rules{
  background:rgba(59,130,246,.12);
  color:#bfdbfe;
  border-color:rgba(59,130,246,.32);
}

@media(max-width:900px){
  .p53-po-line.p54-po-line{
    grid-template-columns:1fr;
  }
}



/* ===============================
   AmeliaPOS ERP - Paquete 55
   P2P autocompletes + sesión migrable
   =============================== */

.p55-destination-note{
  grid-column:1/-1;
  border:1px solid #dbeafe;
  background:#f8fbff;
  color:#365b94;
  border-radius:12px;
  padding:10px 12px;
  font-size:12px;
  font-weight:800;
}

input.combo-invalid{
  border-color:#fb7185!important;
  background:#fff1f2!important;
}

.p53-po-line input[type="search"]{
  min-width:0;
  width:100%;
}

.p53-po-line .combo-invalid{
  color:#991b1b;
}

.p53-form-grid input[type="search"]{
  background:#fff;
}

.p54-inline-rules::after{
  content:" Los campos con autocomplete deben seleccionarse desde la lista para mantener relación con los maestros.";
  display:block;
  margin-top:4px;
  font-weight:700;
  color:#4f6b96;
}

[data-theme="dark"] .p55-destination-note{
  background:rgba(59,130,246,.12);
  color:#bfdbfe;
  border-color:rgba(59,130,246,.32);
}

@media(max-width:900px){
  .p55-destination-note{
    font-size:11px;
  }
}



/* ===============================
   AmeliaPOS ERP - Paquete 56
   P2P recepción, stock, documento proveedor, CxP y cierre
   =============================== */

.p56-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  border:1px solid var(--line);
  background:var(--card);
  border-radius:18px;
  padding:18px 20px;
  box-shadow:var(--shadow);
  margin-bottom:14px;
}
.p56-head h1{margin:4px 0 6px;font-size:26px;line-height:1.1;letter-spacing:-.035em}
.p56-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.45;max-width:920px}
.p56-transaction-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:14px}
.p56-workbench{margin-bottom:0}
.p56-form-section{border:1px solid var(--line);border-radius:16px;background:#fbfcfe;padding:14px;margin-bottom:14px}
.p56-form-section header{display:flex;gap:10px;align-items:flex-start;margin-bottom:12px}
.p56-form-section header span{width:28px;height:28px;border-radius:10px;display:grid;place-items:center;background:#fff4e9;color:#9a4d00;font-weight:900}
.p56-form-section h3{margin:0;font-size:15px}
.p56-form-section p{margin:3px 0 0;color:var(--muted);font-size:12px}
.p56-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.p56-grid label,.p53-po-line label{display:flex;flex-direction:column;gap:6px;min-width:0;color:#556277;font-size:12px;font-weight:800}
.p56-grid input,.p56-grid select,.p53-po-line input{width:100%;min-width:0;min-height:40px;border:1px solid var(--line);border-radius:10px;padding:9px 10px}
.p56-side h2{margin:0 0 12px;font-size:18px}
.p56-impact-list{display:grid;gap:10px}
.p56-impact-list article{border:1px solid var(--line);border-radius:14px;padding:12px;background:#fbfcfe}
.p56-impact-list strong{display:block;font-size:13px}
.p56-impact-list span{display:block;margin-top:4px;color:var(--muted);font-size:12px;line-height:1.35}
.p56-receipt-lines{display:grid;gap:10px}
.p56-receipt-line{display:grid;grid-template-columns:minmax(0,1fr) 160px 130px;gap:10px;align-items:end;border:1px solid var(--line);border-radius:14px;background:#fff;padding:12px}
.p56-receipt-line strong{display:block;font-size:14px}
.p56-receipt-line small{display:block;margin-top:4px;color:var(--muted);font-size:12px}
.p56-receipt-line label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:800;color:#556277}
.p56-receipt-line input{min-height:40px;border:1px solid var(--line);border-radius:10px;padding:9px 10px}
.p56-receipt-line span{font-weight:900;color:#9a4d00;text-align:right}
.p56-receipt-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:10px}
.p56-receipt-summary span{border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fff}
.p56-receipt-summary b{display:block;color:#64748b;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.p56-receipt-summary strong{display:block;margin-top:4px;font-size:18px}
.p56-verification-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:14px}
.p56-verification-grid .p2p-panel{margin-bottom:0}
.p56-verification-grid h2{margin:0 0 12px;font-size:17px}
.p56-mini-list{display:grid;gap:8px}
.p56-mini-list div{border:1px solid var(--line);border-radius:12px;background:#fbfcfe;padding:10px}
.p56-mini-list strong{display:block;font-size:12px}
.p56-mini-list span{display:block;margin-top:4px;color:var(--muted);font-size:11px;line-height:1.35}
.p56-receive-link{display:inline-flex!important;align-items:center;justify-content:center;text-decoration:none;min-height:32px}
input.combo-invalid{border-color:#fb7185!important;background:#fff1f2!important}
@media(max-width:1250px){.p56-verification-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.p56-transaction-layout{grid-template-columns:1fr}}
@media(max-width:760px){.p56-head{flex-direction:column}.p56-grid,.p56-receipt-summary,.p56-verification-grid,.p56-receipt-line{grid-template-columns:1fr}.p56-receipt-line span{text-align:left}}



/* ===============================
   AmeliaPOS ERP - Paquete 57
   Puente P2P visible en Stock
   =============================== */

.p57-p2p-stock-bridge{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border:1px solid #bbf7d0;
  background:#f0fdf4;
  color:#14532d;
  border-radius:18px;
  padding:14px 16px;
  margin-bottom:14px;
  box-shadow:var(--shadow);
}

.p57-p2p-stock-bridge h2{
  margin:3px 0 4px;
  font-size:18px;
}

.p57-p2p-stock-bridge p{
  margin:0;
  color:#166534;
  font-size:12px;
}

.p57-bridge-kpis{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.p57-bridge-kpis span{
  min-width:120px;
  border:1px solid #bbf7d0;
  border-radius:12px;
  background:#ffffff;
  padding:8px 10px;
}

.p57-bridge-kpis b{
  display:block;
  font-size:10px;
  color:#15803d;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.p57-bridge-kpis strong{
  display:block;
  margin-top:3px;
  font-size:15px;
  color:#14532d;
}

[data-theme="dark"] .p57-p2p-stock-bridge{
  background:rgba(34,197,94,.10);
  border-color:rgba(34,197,94,.32);
  color:#bbf7d0;
}

[data-theme="dark"] .p57-p2p-stock-bridge p{
  color:#86efac;
}

[data-theme="dark"] .p57-bridge-kpis span{
  background:rgba(15,23,42,.6);
  border-color:rgba(34,197,94,.24);
}

@media(max-width:900px){
  .p57-p2p-stock-bridge{
    flex-direction:column;
    align-items:stretch;
  }
  .p57-bridge-kpis{
    justify-content:flex-start;
  }
}



/* ===============================
   AmeliaPOS ERP - Paquete 58
   P2P redondo: roles, segregación, puentes finanzas/contabilidad/compras/reportes
   =============================== */

.p58-lanes{
  display:grid;
  grid-template-columns:minmax(260px,.35fr) minmax(0,1fr);
  gap:14px;
  margin-bottom:14px;
}
.p58-current-role,
.p58-lane-grid article,
.p58-bridge-panel{
  border:1px solid var(--line);
  background:var(--card);
  border-radius:18px;
  box-shadow:var(--shadow);
}
.p58-current-role{
  padding:16px;
}
.p58-current-role h2{
  margin:4px 0 6px;
  font-size:20px;
}
.p58-current-role p{
  margin:0;
  color:var(--muted);
  font-size:12px;
  line-height:1.4;
}
.p58-lane-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.p58-lane-grid article{
  padding:12px;
}
.p58-lane-grid strong{
  display:block;
  font-size:13px;
}
.p58-lane-grid span{
  display:block;
  margin-top:4px;
  color:#9a4d00;
  font-size:12px;
  font-weight:900;
}
.p58-lane-grid small{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:11px;
  line-height:1.35;
}
.p58-lane-pill,
.p58-blocked{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 9px;
  border-radius:999px;
  border:1px solid #dbeafe;
  background:#eff6ff;
  color:#1d4ed8;
  font-size:11px;
  font-weight:900;
}
.p58-blocked{
  border-color:#fde68a;
  background:#fffbeb;
  color:#92400e;
}
.p58-bridge-panel{
  padding:16px;
  margin:14px 0;
}
.p58-bridge-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.p58-bridge-head h2{
  margin:4px 0 4px;
  font-size:19px;
}
.p58-bridge-head p{
  margin:0;
  color:var(--muted);
  font-size:12px;
  line-height:1.4;
}
.p58-finance-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:10px 0;
}
.p58-finance-grid article{
  border:1px solid var(--line);
  background:#fbfcfe;
  border-radius:14px;
  padding:12px;
}
.p58-finance-grid b{
  display:block;
  color:#64748b;
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.p58-finance-grid strong{
  display:block;
  margin-top:5px;
  font-size:22px;
}
.p58-mini-table{
  overflow:auto;
  border:1px solid var(--line);
  border-radius:14px;
  margin-top:12px;
}
.p58-mini-table table{
  width:100%;
  border-collapse:collapse;
  min-width:680px;
}
.p58-mini-table th,
.p58-mini-table td{
  padding:10px 12px;
  border-bottom:1px solid var(--line);
  text-align:left;
  font-size:12px;
}
.p58-mini-table th{
  background:#f8fafc;
  color:#64748b;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:10px;
}
[data-theme="dark"] .p58-finance-grid article,
[data-theme="dark"] .p58-lane-grid article{
  background:#142033;
}
@media(max-width:1200px){
  .p58-lanes{grid-template-columns:1fr}
  .p58-lane-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .p58-lane-grid,
  .p58-finance-grid{grid-template-columns:1fr}
  .p58-bridge-head{flex-direction:column}
}



/* ===============================
   AmeliaPOS ERP - Paquete 59
   P2P Centro operativo claro + eliminación de warnings de sesión
   =============================== */

.p59-shell-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  border:1px solid var(--line);
  background:var(--card);
  border-radius:18px;
  padding:18px 20px;
  box-shadow:var(--shadow);
  margin-bottom:12px;
}
.p59-shell-head h1{
  margin:4px 0 6px;
  font-size:26px;
  line-height:1.1;
  letter-spacing:-.035em;
}
.p59-shell-head p{
  margin:0;
  color:var(--muted);
  font-size:13px;
  line-height:1.45;
  max-width:940px;
}
.p59-tabs{
  display:flex;
  gap:8px;
  overflow:auto;
  padding:4px 0 12px;
  margin-bottom:4px;
}
.p59-tabs a{
  display:inline-flex;
  align-items:center;
  white-space:nowrap;
  min-height:36px;
  padding:0 13px;
  border:1px solid var(--line);
  background:var(--card);
  color:var(--text);
  border-radius:999px;
  text-decoration:none;
  font-size:12px;
  font-weight:900;
}
.p59-tabs a.active{
  border-color:#ffb86b;
  background:#fff4e9;
  color:#9a4d00;
}
.p59-kpi-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px;
  margin-bottom:14px;
}
.p59-kpi-grid article{
  border:1px solid var(--line);
  background:var(--card);
  border-radius:16px;
  padding:14px;
  box-shadow:var(--shadow);
}
.p59-kpi-grid span{
  display:block;
  color:#64748b;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
}
.p59-kpi-grid strong{
  display:block;
  margin-top:7px;
  font-size:20px;
  line-height:1.05;
}
.p59-kpi-grid small{
  display:block;
  margin-top:5px;
  color:var(--muted);
  font-size:12px;
}
.p59-dashboard-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.7fr);
  gap:14px;
}
.p2p-panel h2{
  margin-top:0;
}
.p58-mini-table td,
.p58-mini-table th{
  vertical-align:top;
}
[data-theme="dark"] .p59-tabs a.active{
  background:rgba(255,138,20,.14);
  color:#fed7aa;
  border-color:rgba(255,184,107,.45);
}
@media(max-width:1250px){
  .p59-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .p59-dashboard-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .p59-shell-head{flex-direction:column}
  .p59-kpi-grid{grid-template-columns:1fr}
}



/* ===============================
   AmeliaPOS ERP - Paquete 60
   P2P SQL transaccional sin duplicar tablas
   =============================== */

.p60-sql-status{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:center;
  border:1px solid var(--line);
  border-radius:18px;
  background:var(--card);
  box-shadow:var(--shadow);
  padding:14px 16px;
  margin:0 0 14px;
}
.p60-sql-status.ok{
  border-color:#bbf7d0;
  background:#f0fdf4;
}
.p60-sql-status.warn{
  border-color:#fde68a;
  background:#fffbeb;
}
.p60-sql-status h2{
  margin:4px 0 4px;
  font-size:18px;
}
.p60-sql-status p{
  margin:0;
  color:#475569;
  font-size:12px;
  line-height:1.4;
}
.p60-sql-status small{
  display:block;
  margin-top:5px;
  color:#92400e;
  font-size:11px;
}
.p60-stock-source{
  display:flex;
  flex-direction:column;
  gap:4px;
  border:1px solid #bbf7d0;
  border-radius:16px;
  background:#f0fdf4;
  color:#14532d;
  padding:12px 14px;
  margin-bottom:14px;
  box-shadow:var(--shadow);
}
.p60-stock-source strong{
  font-size:14px;
}
.p60-stock-source small{
  color:#166534;
  font-size:12px;
}
@media(max-width:760px){
  .p60-sql-status{
    flex-direction:column;
    align-items:stretch;
  }
}
[data-theme="dark"] .p60-sql-status.ok,
[data-theme="dark"] .p60-stock-source{
  background:rgba(34,197,94,.10);
  border-color:rgba(34,197,94,.35);
  color:#bbf7d0;
}
[data-theme="dark"] .p60-sql-status.warn{
  background:rgba(245,158,11,.11);
  border-color:rgba(245,158,11,.35);
}
[data-theme="dark"] .p60-sql-status p,
[data-theme="dark"] .p60-stock-source small{
  color:#cbd5e1;
}



/* ===============================
   AmeliaPOS ERP - Paquete 61
   Diagnóstico SQL P2P sin duplicar tablas
   =============================== */

.p61-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:12px 0;
}
.p61-summary article{
  border:1px solid var(--line);
  background:#fbfcfe;
  border-radius:14px;
  padding:12px;
}
.p61-summary b{
  display:block;
  color:#64748b;
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.p61-summary strong{
  display:block;
  margin-top:6px;
  font-size:20px;
}
.p61-diagnostic-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:12px;
}
.p61-diagnostic-card{
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--card);
  padding:14px;
}
.p61-diagnostic-card h3{
  margin:0 0 10px;
  font-size:15px;
}
.p61-table-list{
  display:grid;
  gap:8px;
}
.p61-table-list div{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:6px;
  align-items:center;
  border:1px solid var(--line);
  border-radius:12px;
  padding:9px 10px;
  background:#fbfcfe;
}
.p61-table-list div.ok{
  border-color:#bbf7d0;
  background:#f0fdf4;
}
.p61-table-list div.missing{
  border-color:#fecaca;
  background:#fff1f2;
}
.p61-table-list strong{
  font-size:12px;
}
.p61-table-list span{
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}
.p61-table-list small{
  grid-column:1/-1;
  color:#92400e;
  font-size:11px;
}
.p61-next-step{
  margin-top:14px;
  border:1px solid #dbeafe;
  background:#f8fbff;
  border-radius:16px;
  padding:14px 16px;
}
.p61-next-step h3{
  margin:0 0 8px;
}
.p61-next-step ol{
  margin:0;
  padding-left:18px;
  color:#334155;
  font-size:13px;
  line-height:1.55;
}
@media(max-width:1000px){
  .p61-summary,
  .p61-diagnostic-grid{
    grid-template-columns:1fr;
  }
}



/* ===============================
   AmeliaPOS ERP - Paquete 64
   DB activa + diagnóstico conexión
   =============================== */

.p64-db-config-hint{
  display:block;
  margin-top:6px;
  color:#7c2d12!important;
  font-weight:800;
}
[data-theme="dark"] .p64-db-config-hint{
  color:#fed7aa!important;
}



/* ===============================
   AmeliaPOS ERP - Paquete 65
   Fix diagnóstico SQL sin PDO
   =============================== */

.p65-no-pdo-help{
  margin:12px 0!important;
}



/* ===============================
   AmeliaPOS ERP - Paquete 66
   Conexión PDO robusta 127/local
   =============================== */
.p60-sql-status.warn small{
  line-height:1.45;
}


/* ===============================
   AmeliaPOS ERP - Paquete 69
   Estructura operativa
   =============================== */
.p69-hero{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:stretch;border:1px solid var(--line);border-radius:20px;background:var(--card);box-shadow:var(--shadow);padding:20px;margin-bottom:14px}
.p69-hero h1{margin:4px 0 8px;font-size:30px;line-height:1.05;letter-spacing:-.04em}.p69-hero p{margin:0;color:var(--muted);font-size:13px;line-height:1.5;max-width:920px}
.p69-readiness-card{border:1px solid #fde68a;border-radius:18px;background:#fffbeb;padding:16px;display:flex;flex-direction:column;gap:8px}.p69-readiness-card.ok{border-color:#bbf7d0;background:#f0fdf4}.p69-readiness-card strong{font-size:20px}.p69-readiness-card p{font-size:12px;color:#475569}
.p69-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:14px}.p69-kpis article{border:1px solid var(--line);background:var(--card);border-radius:16px;padding:14px;box-shadow:var(--shadow)}.p69-kpis span{display:block;color:#64748b;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.p69-kpis strong{display:block;margin-top:6px;font-size:18px;line-height:1.1}.p69-kpis small{display:block;margin-top:5px;color:var(--muted);font-size:12px}
.p69-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:14px;margin-bottom:14px}.p69-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}
.p69-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.p69-checklist>div{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:14px;padding:12px;background:#fbfcfe}.p69-checklist>div.ok{border-color:#bbf7d0;background:#f0fdf4}.p69-checklist>div.pending{border-color:#fde68a;background:#fffbeb}.p69-checklist b{width:26px;height:26px;border-radius:10px;display:grid;place-items:center;background:#fff;font-weight:900}.p69-checklist strong{display:block;font-size:13px}.p69-checklist span{display:block;margin-top:4px;color:#64748b;font-size:12px;line-height:1.35}
.p69-actions{display:grid;gap:10px;margin-bottom:12px}.p69-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}.p69-table{width:100%;border-collapse:collapse;min-width:680px}.p69-table th,.p69-table td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;font-size:12px;vertical-align:top}.p69-table th{background:#f8fafc;color:#64748b;text-transform:uppercase;letter-spacing:.08em;font-size:10px}.p69-table td strong{display:block}.p69-table td small{display:block;margin-top:4px;color:var(--muted);font-size:11px}
.p69-status{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:900}.p69-status.ok{background:#dcfce7;color:#166534}.p69-status.off{background:#fee2e2;color:#991b1b}
.p69-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.p69-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:800;color:#556277}.p69-form label.wide,.p69-form .wide{grid-column:1/-1}.p69-form input,.p69-form select,.p69-form textarea{width:100%;min-height:40px;border:1px solid var(--line);border-radius:10px;padding:9px 10px;background:#fff;color:#111827}.p69-form textarea{min-height:86px;resize:vertical}
.p69-toggle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.p69-toggle-grid label,.p69-check{flex-direction:row!important;align-items:center;font-weight:700!important}
.p69-p2p-structure-warning{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #fde68a;background:#fffbeb;border-radius:18px;padding:14px 16px;margin-bottom:14px;box-shadow:var(--shadow)}.p69-p2p-structure-warning strong{display:block;font-size:15px}.p69-p2p-structure-warning p{margin:4px 0 0;color:#92400e;font-size:12px}
[data-theme="dark"] .p69-readiness-card,[data-theme="dark"] .p69-checklist>div.pending,[data-theme="dark"] .p69-p2p-structure-warning{background:rgba(245,158,11,.11);border-color:rgba(245,158,11,.35);color:#fed7aa}[data-theme="dark"] .p69-readiness-card.ok,[data-theme="dark"] .p69-checklist>div.ok{background:rgba(34,197,94,.10);border-color:rgba(34,197,94,.35);color:#bbf7d0}[data-theme="dark"] .p69-table th{background:#0f172a}[data-theme="dark"] .p69-checklist>div{background:#142033}
@media(max-width:1180px){.p69-hero,.p69-grid,.p69-two{grid-template-columns:1fr}.p69-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.p69-kpis,.p69-checklist,.p69-form,.p69-toggle-grid{grid-template-columns:1fr}.p69-p2p-structure-warning{flex-direction:column;align-items:flex-start}}


/* ===============================
   AmeliaPOS ERP - Paquete 70
   P2P master preflight sin demo
   =============================== */
.p70-p2p-master-block{
  display:flex;align-items:flex-start;justify-content:space-between;gap:14px;
  border:1px solid #fecaca;background:#fff1f2;border-radius:18px;padding:16px;margin-bottom:14px;box-shadow:var(--shadow)
}
.p70-p2p-master-block strong{display:block;font-size:16px;color:#991b1b}
.p70-p2p-master-block p{margin:5px 0 0;color:#7f1d1d;font-size:12px;line-height:1.4}
.p70-missing-inline{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.p70-missing-inline span{display:inline-flex;min-height:24px;align-items:center;padding:0 8px;border-radius:999px;background:#fee2e2;color:#991b1b;font-size:11px;font-weight:900}
.p70-block-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.p70-preflight-hero{
  display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:14px;align-items:stretch;
  border:1px solid var(--line);background:var(--card);border-radius:18px;padding:18px;box-shadow:var(--shadow);margin-bottom:14px
}
.p70-preflight-hero h1{margin:4px 0 8px;font-size:26px;letter-spacing:-.035em}
.p70-preflight-hero p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}
.p70-preflight-status{border:1px solid #fde68a;background:#fffbeb;border-radius:16px;padding:14px;display:flex;flex-direction:column;justify-content:center}
.p70-preflight-status.ok{border-color:#bbf7d0;background:#f0fdf4}
.p70-preflight-status strong{font-size:24px}.p70-preflight-status span{font-size:12px;color:#64748b;margin-top:4px}
.p70-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}
.p70-check-grid article{border:1px solid var(--line);background:var(--card);border-radius:16px;padding:14px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px}
.p70-check-grid article.ok{border-color:#bbf7d0;background:#f0fdf4}.p70-check-grid article.bad{border-color:#fecaca;background:#fff1f2}.p70-check-grid article.warn{border-color:#fde68a;background:#fffbeb}
.p70-check-grid span{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#64748b}.p70-check-grid h3{margin:4px 0;font-size:15px}.p70-check-grid p{margin:0;color:#64748b;font-size:12px;line-height:1.35}.p70-check-grid strong{font-size:20px}
.p70-next-steps{border:1px solid #dbeafe;background:#f8fbff;border-radius:18px;padding:16px;margin-bottom:14px}.p70-next-steps h2{margin:0 0 10px}.p70-next-steps ol{margin:0;padding-left:20px;color:#334155;font-size:13px;line-height:1.7}
[data-theme="dark"] .p70-p2p-master-block,[data-theme="dark"] .p70-check-grid article.bad{background:rgba(239,68,68,.10);border-color:rgba(239,68,68,.35);color:#fecaca}
[data-theme="dark"] .p70-check-grid article.ok,[data-theme="dark"] .p70-preflight-status.ok{background:rgba(34,197,94,.10);border-color:rgba(34,197,94,.35)}
[data-theme="dark"] .p70-check-grid article.warn,[data-theme="dark"] .p70-preflight-status{background:rgba(245,158,11,.11);border-color:rgba(245,158,11,.35)}
@media(max-width:1100px){.p70-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.p70-preflight-hero{grid-template-columns:1fr}}
@media(max-width:760px){.p70-p2p-master-block{flex-direction:column}.p70-block-actions{justify-content:flex-start}.p70-check-grid{grid-template-columns:1fr}}


/* ===============================
   AmeliaPOS ERP - Paquete 71
   Catálogo ERP sobrio con taxonomía
   =============================== */
.p71-head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
  border:1px solid var(--line);background:var(--card);border-radius:18px;padding:18px;margin-bottom:12px;box-shadow:var(--shadow)
}
.p71-head h1{margin:4px 0 6px;font-size:28px;letter-spacing:-.035em}
.p71-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.45;max-width:880px}
.p71-head-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.p71-tabs{display:flex;gap:8px;overflow:auto;margin-bottom:12px}
.p71-tabs a{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:var(--card);text-decoration:none;color:var(--text);font-size:12px;font-weight:900}
.p71-tabs a.active{background:#111827;color:#fff;border-color:#111827}
.p71-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:12px}
.p71-kpis article{border:1px solid var(--line);background:var(--card);border-radius:14px;padding:12px;box-shadow:var(--shadow)}
.p71-kpis span{display:block;color:#64748b;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}
.p71-kpis strong{display:block;margin-top:5px;font-size:22px}
.p71-preflight{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:12px;border:1px solid var(--line);background:var(--card);border-radius:16px;padding:16px;box-shadow:var(--shadow);margin-bottom:12px}
.p71-preflight h2{margin:0 0 6px}.p71-preflight p{margin:0;color:var(--muted);font-size:13px}
.p71-status{border:1px solid #fecaca;background:#fff1f2;border-radius:14px;padding:12px;display:flex;flex-direction:column;justify-content:center}
.p71-status.ok{border-color:#bbf7d0;background:#f0fdf4}.p71-status strong{font-size:22px}.p71-status span{font-size:12px;color:#64748b;margin-top:4px}
.p71-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}
.p71-check-grid article{border:1px solid #fecaca;background:#fff1f2;border-radius:14px;padding:12px}
.p71-check-grid article.ok{border-color:#bbf7d0;background:#f0fdf4}.p71-check-grid span{font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#64748b}.p71-check-grid h3{margin:4px 0}.p71-check-grid strong{display:block;font-size:20px}.p71-check-grid p{margin:6px 0 0;font-size:12px;color:#64748b;line-height:1.4}
.p71-seed{display:flex;align-items:center;justify-content:space-between;gap:12px}.p71-seed h2{margin:0 0 5px}.p71-seed p{margin:0;color:var(--muted);font-size:13px}
.p71-inline-form{display:flex;gap:8px;align-items:center}.p71-inline-form select{min-height:36px;border:1px solid var(--line);border-radius:10px;padding:0 10px;background:var(--card);color:var(--text)}
.p71-blocker{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #fecaca;background:#fff1f2;border-radius:16px;padding:14px;margin-bottom:12px;box-shadow:var(--shadow)}
.p71-blocker strong{display:block;color:#991b1b}.p71-blocker p{margin:4px 0 0;font-size:12px;color:#7f1d1d}
.p71-table-wrap,.p71-tree-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}
.p71-table{width:100%;border-collapse:collapse;min-width:880px;background:var(--card)}
.p71-table th,.p71-table td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;font-size:12px;vertical-align:top}
.p71-table th{background:#f8fafc;color:#64748b;font-size:10px;text-transform:uppercase;letter-spacing:.08em}
.p71-table td strong{display:block}.p71-table td small{display:block;color:var(--muted);font-size:11px;line-height:1.35}
.p71-pill,.p71-channel{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;background:#eef2ff;color:#3730a3;font-size:11px;font-weight:900;white-space:nowrap}
.p71-filters{display:grid;grid-template-columns:2fr 1fr 1.6fr 1fr auto;gap:10px;align-items:end;margin-bottom:12px}
.p71-filters label,.p71-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:800;color:#556277}
.p71-filters input,.p71-filters select,.p71-form input,.p71-form select,.p71-form textarea{width:100%;min-height:40px;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#fff;color:#111827}
.p71-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.p71-form .wide,.p71-form label.wide{grid-column:1/-1}.p71-form textarea{min-height:82px;resize:vertical}
.p71-form small{font-size:11px;color:#64748b}.p71-check{flex-direction:row!important;align-items:center!important}.p71-toggle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.p71-toggle-grid label{display:flex;flex-direction:row;align-items:center;font-weight:700}
[data-theme="dark"] .p71-tabs a.active{background:#f97316;border-color:#f97316;color:#111827}[data-theme="dark"] .p71-table th{background:#0f172a}
[data-theme="dark"] .p71-status,[data-theme="dark"] .p71-check-grid article,[data-theme="dark"] .p71-blocker{background:rgba(239,68,68,.10);border-color:rgba(239,68,68,.35)}
[data-theme="dark"] .p71-status.ok,[data-theme="dark"] .p71-check-grid article.ok{background:rgba(34,197,94,.10);border-color:rgba(34,197,94,.35)}
@media(max-width:1100px){.p71-head,.p71-seed,.p71-blocker{flex-direction:column;align-items:stretch}.p71-kpis,.p71-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.p71-preflight{grid-template-columns:1fr}.p71-filters{grid-template-columns:1fr 1fr}.p71-inline-form{flex-direction:column;align-items:stretch}}
@media(max-width:760px){.p71-kpis,.p71-check-grid,.p71-filters,.p71-form,.p71-toggle-grid{grid-template-columns:1fr}}


/* ===============================
   AmeliaPOS ERP - Paquete 72
   Catálogo maduro: unidades, margen, imágenes
   =============================== */
.p72-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border:1px solid var(--line);background:var(--card);border-radius:18px;padding:18px;margin-bottom:12px;box-shadow:var(--shadow)}
.p72-head h1{margin:4px 0 6px;font-size:28px;letter-spacing:-.035em}.p72-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.45;max-width:900px}.p72-head-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.p72-tabs{display:flex;gap:8px;overflow:auto;margin-bottom:12px}.p72-tabs a{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:var(--card);text-decoration:none;color:var(--text);font-size:12px;font-weight:900}.p72-tabs a.active{background:#111827;color:#fff;border-color:#111827}
.p72-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:12px}.p72-kpis article{border:1px solid var(--line);background:var(--card);border-radius:14px;padding:12px;box-shadow:var(--shadow)}.p72-kpis span{display:block;color:#64748b;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.p72-kpis strong{display:block;margin-top:5px;font-size:22px}.p72-kpis small{display:block;color:var(--muted);font-size:11px}
.p72-preflight{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:12px;border:1px solid var(--line);background:var(--card);border-radius:16px;padding:16px;box-shadow:var(--shadow);margin-bottom:12px}.p72-preflight h2{margin:0 0 6px}.p72-preflight p{margin:0;color:var(--muted);font-size:13px}.p72-status{border:1px solid #fecaca;background:#fff1f2;border-radius:14px;padding:12px;display:flex;flex-direction:column;justify-content:center}.p72-status.ok{border-color:#bbf7d0;background:#f0fdf4}.p72-status strong{font-size:22px}.p72-status span{font-size:12px;color:#64748b;margin-top:4px}
.p72-check-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.p72-check-grid article{border:1px solid #fecaca;background:#fff1f2;border-radius:14px;padding:12px}.p72-check-grid article.ok{border-color:#bbf7d0;background:#f0fdf4}.p72-check-grid span{font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#64748b}.p72-check-grid h3{margin:4px 0}.p72-check-grid strong{display:block;font-size:20px}.p72-check-grid p{margin:6px 0 0;font-size:12px;color:#64748b;line-height:1.4}
.p72-seed{display:flex;align-items:center;justify-content:space-between;gap:12px}.p72-seed h2{margin:0 0 5px}.p72-seed p{margin:0;color:var(--muted);font-size:13px}.p72-inline-form{display:flex;gap:8px;align-items:center}.p72-inline-form select{min-height:36px;border:1px solid var(--line);border-radius:10px;padding:0 10px;background:var(--card);color:var(--text)}
.p72-blocker{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #fecaca;background:#fff1f2;border-radius:16px;padding:14px;margin-bottom:12px;box-shadow:var(--shadow)}.p72-blocker strong{display:block;color:#991b1b}.p72-blocker p{margin:4px 0 0;font-size:12px;color:#7f1d1d}
.p72-table-wrap,.p72-tree-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}.p72-table{width:100%;border-collapse:collapse;min-width:920px;background:var(--card)}.p72-table th,.p72-table td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;font-size:12px;vertical-align:top}.p72-table th{background:#f8fafc;color:#64748b;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.p72-table td strong{display:block}.p72-table td small{display:block;color:var(--muted);font-size:11px;line-height:1.35}
.p72-pill,.p72-channel{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;background:#eef2ff;color:#3730a3;font-size:11px;font-weight:900;white-space:nowrap}
.p72-filters{display:grid;grid-template-columns:2fr 1fr 1.6fr 1fr auto;gap:10px;align-items:end;margin-bottom:12px}.p72-filters label,.p72-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:800;color:#556277}.p72-filters input,.p72-filters select,.p72-form input,.p72-form select,.p72-form textarea{width:100%;min-height:40px;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#fff;color:#111827}.p72-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.p72-form .wide,.p72-form label.wide{grid-column:1/-1}.p72-form textarea{min-height:82px;resize:vertical}.p72-form fieldset{border:1px solid var(--line);border-radius:14px;padding:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;background:#fbfcfe}.p72-form legend{padding:0 8px;font-weight:900;color:#111827}.p72-form small{font-size:11px;color:#64748b}.p72-check{flex-direction:row!important;align-items:center!important}.p72-toggle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.p72-toggle-grid label{display:flex;flex-direction:row;align-items:center;font-weight:700}
.p72-input-action{display:flex;gap:6px}.p72-input-action input{flex:1}.p72-margin-box{display:flex;align-items:center;gap:10px;justify-content:space-between;border:1px solid #dbeafe;background:#eff6ff;border-radius:12px;padding:10px 12px}.p72-margin-box span{font-size:12px;color:#1e3a8a}.p72-preview{display:flex;flex-wrap:wrap;gap:8px;min-height:54px;border:1px dashed var(--line);border-radius:12px;padding:8px;background:#fff}.p72-preview img{width:64px;height:64px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}
[data-theme="dark"] .p72-tabs a.active{background:#f97316;border-color:#f97316;color:#111827}[data-theme="dark"] .p72-table th{background:#0f172a}
[data-theme="dark"] .p72-status,[data-theme="dark"] .p72-check-grid article,[data-theme="dark"] .p72-blocker{background:rgba(239,68,68,.10);border-color:rgba(239,68,68,.35)}
[data-theme="dark"] .p72-status.ok,[data-theme="dark"] .p72-check-grid article.ok{background:rgba(34,197,94,.10);border-color:rgba(34,197,94,.35)}
[data-theme="dark"] .p72-form fieldset{background:#111827}.p72-product-wizard{padding-bottom:10px}
@media(max-width:1180px){.p72-head,.p72-seed,.p72-blocker{flex-direction:column;align-items:stretch}.p72-kpis,.p72-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.p72-preflight{grid-template-columns:1fr}.p72-filters{grid-template-columns:1fr 1fr}.p72-inline-form{flex-direction:column;align-items:stretch}}
@media(max-width:760px){.p72-kpis,.p72-check-grid,.p72-filters,.p72-form,.p72-form fieldset,.p72-toggle-grid{grid-template-columns:1fr}}


/* ===============================
   AmeliaPOS ERP - Paquete 73
   Perfil polimórfico por rubro
   =============================== */
.p73-profile-box{
  border:1px solid #dbeafe;
  background:#f8fbff;
  border-radius:14px;
  padding:12px 14px;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.p73-profile-box strong{font-size:14px;color:#1e3a8a}
.p73-profile-box span{font-size:12px;color:#475569;line-height:1.35}
.p73-capabilities label{
  border:1px solid var(--line);
  border-radius:12px;
  padding:10px;
  background:#fff;
  align-items:flex-start!important;
}
.p73-capabilities label span{display:flex;flex-direction:column;gap:2px}
.p73-capabilities label b{font-size:12px;color:#111827}
.p73-capabilities label small{font-size:10px;color:#64748b;line-height:1.25}
.p73-catalog-context{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  border:1px solid #dbeafe;
  background:#f8fbff;
  border-radius:16px;
  padding:12px 14px;
  margin-bottom:12px;
}
.p73-catalog-context strong{display:block;font-size:15px}
.p73-catalog-context p{margin:4px 0 0;color:#64748b;font-size:12px;line-height:1.35}
[data-theme="dark"] .p73-profile-box,
[data-theme="dark"] .p73-catalog-context{background:rgba(59,130,246,.10);border-color:rgba(59,130,246,.35)}
[data-theme="dark"] .p73-capabilities label{background:#111827}
[data-theme="dark"] .p73-capabilities label b{color:#f8fafc}
@media(max-width:760px){.p73-catalog-context{flex-direction:column}}

/* AMELIAPOS P74 · Maestros enterprise */
.p74-master-hero h1{letter-spacing:-.035em}.p74-master-kpis .kpi-card small{opacity:.78}.p74-party-grid{grid-template-columns:minmax(0,1fr) 330px}.p74-party-table th,.p74-party-table td{vertical-align:top}.p74-master-panel{max-width:1120px;width:min(1120px,calc(100vw - 30px));overflow:auto}.p74-party-form{display:grid;gap:18px;padding:4px 2px 90px}.p74-form-section{border:1px solid var(--border);background:linear-gradient(180deg,var(--card),rgba(255,255,255,.015));border-radius:22px;padding:18px;box-shadow:var(--shadow-soft)}.p74-form-section>header{display:flex;gap:14px;align-items:flex-start;margin-bottom:14px}.p74-form-section>header>span{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;background:rgba(234,88,12,.12);color:var(--accent);font-weight:900;font-size:.82rem}.p74-form-section h3{margin:0;font-size:1rem;letter-spacing:-.015em}.p74-form-section p{margin:3px 0 0;color:var(--muted);font-size:.88rem}.p74-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.p74-form-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.p74-form-grid label{display:grid;gap:7px;font-size:.78rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.p74-form-grid input,.p74-form-grid select,.p74-form-grid textarea{width:100%;border:1px solid var(--border);background:var(--input-bg,rgba(255,255,255,.04));color:var(--text);border-radius:14px;padding:11px 12px;font-size:.92rem;font-weight:650;outline:none}.p74-form-grid textarea{min-height:74px;resize:vertical}.p74-form-grid .wide,.p74-form-section .wide{grid-column:1/-1}.p74-form-grid .checkline,.p74-party-form .checkline{display:flex;align-items:center;gap:9px;text-transform:none;letter-spacing:0;color:var(--text);font-size:.9rem}.p74-form-grid .checkline input,.p74-party-form .checkline input{width:auto}.p74-contact-list,.p74-supplier-items{display:grid;gap:12px}.p74-repeat-card{border:1px solid var(--border);border-radius:18px;padding:14px;background:rgba(148,163,184,.07)}.p74-repeat-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.p74-repeat-head strong{font-size:.92rem}.p74-repeat-head label{display:inline-flex;align-items:center;gap:7px;font-size:.78rem;font-weight:800;color:var(--muted)}.p74-repeat-actions{display:flex;justify-content:flex-end;margin-top:12px}.p74-supplier-row .p74-form-grid.compact{grid-template-columns:1.5fr 1fr 1fr 1fr}.p74-party-table .product-cell small{max-width:280px}.slide-panel.p74-master-panel .sticky-actions{position:sticky;bottom:0;background:linear-gradient(180deg,rgba(255,255,255,0),var(--card) 28%,var(--card));border-top:1px solid var(--border);padding-top:16px;margin-bottom:-72px}.theme-dark .p74-form-section,.theme-dark .p74-repeat-card{background:rgba(15,23,42,.72)}.theme-dark .p74-form-grid input,.theme-dark .p74-form-grid select,.theme-dark .p74-form-grid textarea{background:rgba(15,23,42,.86)}@media(max-width:1100px){.p74-party-grid{grid-template-columns:1fr}.p74-form-grid.compact,.p74-supplier-row .p74-form-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.p74-form-grid,.p74-form-grid.compact,.p74-supplier-row .p74-form-grid.compact{grid-template-columns:1fr}.p74-master-panel{width:calc(100vw - 14px)}.p74-repeat-head{align-items:flex-start;flex-direction:column}}

/* AMELIAPOS P74 · Catálogo maestro enterprise */
.p74-catalog-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.p74-catalog-table td{vertical-align:top}.p74-prod-name{display:grid;gap:3px}.p74-prod-name strong{font-size:.94rem}.p74-prod-name small{color:var(--muted)}.p74-supplier-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:rgba(148,163,184,.08);border-radius:999px;padding:5px 9px;font-size:.76rem;font-weight:850}.p74-product-wizard .p74-form-section{margin-bottom:14px}.p74-product-wizard .p74-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.p74-product-wizard .p74-form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.p74-product-wizard .p74-form-grid .wide{grid-column:1/-1}.p74-product-wizard .p74-toggle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.p74-product-wizard .p74-toggle-grid label{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:14px;padding:10px 12px;background:rgba(148,163,184,.07);font-size:.86rem;font-weight:800}.p74-price-card{border:1px dashed var(--border);border-radius:18px;padding:14px;background:rgba(234,88,12,.07);display:grid;gap:8px}.p74-price-card strong{font-size:.95rem}.p74-price-card span{font-size:.84rem;color:var(--muted)}@media(max-width:900px){.p74-product-wizard .p74-form-grid,.p74-product-wizard .p74-form-grid.two,.p74-product-wizard .p74-toggle-grid{grid-template-columns:1fr}}


/* AMELIAPOS P75 · Maestros sobrio enterprise
   Reemplaza el enfoque decorativo por mantenimiento técnico de datos maestros. */
.p75-master-header{
  display:flex;align-items:flex-start;justify-content:space-between;gap:18px;
  padding:18px 20px;margin-bottom:14px;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:none;
}
.p75-master-header h1{margin:4px 0 6px;font-size:22px;line-height:1.15;letter-spacing:-.02em;color:var(--text)}
.p75-master-header p{margin:0;max-width:920px;color:var(--muted);font-size:13px;line-height:1.45}
.p75-header-actions,.p72-head-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.p75-master-summary{display:grid;grid-template-columns:repeat(2,minmax(118px,1fr));gap:8px;min-width:320px}
.p75-master-summary .mini-stat,.p75-master-metrics .kpi-card,.p75-master-metrics article{
  border:1px solid var(--line)!important;background:var(--card)!important;border-radius:10px!important;padding:11px 12px!important;box-shadow:none!important;min-width:0;
}
.p75-master-summary span,.p75-master-metrics span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.p75-master-summary strong,.p75-master-metrics strong{display:block;margin-top:5px;color:var(--text);font-size:18px;line-height:1.05}
.p75-master-summary small,.p75-master-metrics small{color:var(--muted);font-size:11px}
.p75-master-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:14px}
.p75-master-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px;align-items:start}
.p75-table-panel{min-width:0;padding:16px!important}.p75-table-panel .panel-head{margin-bottom:12px}.p75-table-panel .panel-head h2{font-size:17px;margin:0}.p75-table-panel .panel-head p{font-size:12px;margin:4px 0 0;color:var(--muted)}
.p75-side-panel{display:grid;gap:12px}.p75-side-panel .panel-card{padding:14px!important;box-shadow:none!important}.p75-side-panel h2{font-size:15px!important}
.party-filters,.catalog-filters{grid-template-columns:minmax(260px,1fr) 170px auto auto!important;gap:10px!important;margin-bottom:12px!important;align-items:end!important}
.party-filters label,.catalog-filters label{font-size:11px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.party-filters input,.party-filters select,.catalog-filters input,.catalog-filters select{margin-top:5px;height:38px;border-radius:8px!important;font-size:13px!important}
.p75-table-panel .responsive-table{border-radius:10px!important;border:1px solid var(--line)!important}.p75-table-panel .data-table th{font-size:10px;padding:9px 10px;background:rgba(148,163,184,.08)!important}.p75-table-panel .data-table td{padding:10px!important;font-size:12px!important}.p75-table-panel .product-avatar{border-radius:8px!important;width:32px!important;height:32px!important;background:transparent!important;border:1px solid var(--line)!important;color:var(--text)!important}.p75-table-panel .product-cell{gap:9px}.p75-table-panel .soft-badge,.p75-table-panel .notification-status{border-radius:6px!important;padding:4px 7px!important;font-size:10px!important;letter-spacing:.02em}.row-actions{gap:6px!important}.ghost-button.mini{padding:6px 8px!important;border-radius:7px!important}
.p75-form-section{border:1px solid var(--line);border-radius:10px;background:var(--card);padding:14px;margin-bottom:12px}.p75-form-section>header{display:flex;gap:10px;align-items:flex-start;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}.p75-form-section>header>span{display:none}.p75-form-section h3{margin:0;font-size:15px;line-height:1.2;color:var(--text)}.p75-form-section p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.35}.p75-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.p75-form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.p75-form-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.p75-form-grid .wide{grid-column:1/-1}.p75-form-grid label{font-size:11px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.05em}.p75-form-grid input,.p75-form-grid select,.p75-form-grid textarea{margin-top:5px;border-radius:8px!important;min-height:38px;font-size:13px!important}.p75-form-grid textarea{min-height:84px}.p75-toggle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.p75-toggle-grid label,.checkline{display:flex!important;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:9px 10px;background:transparent;font-size:12px!important;text-transform:none!important;letter-spacing:0!important;color:var(--text)!important}.p75-repeat-card{border:1px solid var(--line);border-radius:10px;padding:12px;margin-bottom:10px;background:rgba(148,163,184,.04)}.p75-repeat-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px}.p75-repeat-head strong{font-size:13px}.p75-repeat-head label{font-size:12px;color:var(--muted)}.p75-repeat-actions{display:flex;justify-content:flex-end;margin-top:8px}.p75-price-box{border:1px solid var(--line);border-radius:10px;padding:12px;background:rgba(148,163,184,.06);display:grid;gap:6px}.p75-context-line{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid var(--line);border-radius:10px;background:var(--card);padding:12px 14px;margin-bottom:12px}.p75-context-line strong{display:block;font-size:14px;color:var(--text)}.p75-context-line p{margin:3px 0 0;font-size:12px;color:var(--muted)}.p75-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);margin:0 0 12px;padding-bottom:8px}.p75-tabs a{padding:8px 11px;border:1px solid var(--line);border-radius:8px;text-decoration:none;color:var(--muted);font-size:12px;font-weight:800;background:var(--card)}.p75-tabs a.active{color:var(--text);border-color:currentColor}.slide-panel.p74-master-panel{width:min(980px,calc(100vw - 36px))!important}.sticky-actions{border-top:1px solid var(--line)!important;background:var(--card)!important}.sticky-actions span{font-size:12px;color:var(--muted)}
@media(max-width:1180px){.p75-master-layout{grid-template-columns:1fr}.p75-side-panel{grid-template-columns:1fr 1fr}.p75-master-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.p75-master-header{flex-direction:column}.p75-master-summary{width:100%;grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.p75-master-metrics,.p75-master-summary,.p75-form-grid,.p75-form-grid.compact,.p75-toggle-grid,.p75-side-panel{grid-template-columns:1fr!important}.party-filters,.catalog-filters{grid-template-columns:1fr!important}.p75-master-header{padding:14px}.p75-master-header h1{font-size:20px}.p75-context-line{flex-direction:column;align-items:flex-start}}

/* =====================================================================
   P76 · Maestros 10/10 Enterprise: modales sobrios por pestañas
   ===================================================================== */
.p76-master-modal.slide-panel.panel-modal-open{
  width:min(1180px,calc(100vw - 42px))!important;
  max-width:1180px!important;
  max-height:calc(100vh - 28px)!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:var(--card)!important;
  color:var(--text)!important;
}
.p76-master-modal.slide-panel.panel-modal-open>.panel-head{
  position:relative!important;
  top:auto!important;
  margin:0!important;
  padding:18px 24px 14px!important;
  border:0!important;
  border-bottom:1px solid var(--line)!important;
  border-radius:18px 18px 0 0!important;
  box-shadow:none!important;
  width:auto!important;
}
.p76-master-modal .panel-head h2{font-size:21px!important;letter-spacing:-.025em!important;margin:0 0 4px!important;color:var(--text)!important}
.p76-master-modal .panel-head p{font-size:12px!important;line-height:1.35!important;max-width:900px!important;color:var(--muted)!important;margin:0!important}
.p76-master-modal.slide-panel.panel-modal-open>form.p76-master-form{
  width:auto!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:0!important;
  max-height:calc(100vh - 104px)!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
}
.p76-tabs{
  display:flex;
  gap:2px;
  align-items:center;
  overflow:auto;
  padding:0 24px;
  min-height:54px;
  border-bottom:1px solid var(--line);
  background:var(--card);
}
.p76-tabs button{
  appearance:none;
  border:0;
  background:transparent;
  color:var(--muted);
  font-size:12px;
  font-weight:850;
  padding:17px 13px 15px;
  border-bottom:2px solid transparent;
  cursor:pointer;
  white-space:nowrap;
}
.p76-tabs button.active{color:var(--orange,var(--accent));border-bottom-color:var(--orange,var(--accent));}
.p76-tab-shell{
  padding:18px 24px 0;
  overflow:auto;
  min-height:420px;
  max-height:calc(100vh - 235px);
}
.p76-tab-panel{display:none;}
.p76-tab-panel.active{display:block;}
.p76-section-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.p76-section-head h3{font-size:15px;line-height:1.2;margin:0;color:var(--text);letter-spacing:-.01em}
.p76-section-head p{font-size:12px;line-height:1.35;color:var(--muted);margin:4px 0 0;max-width:760px}
.p76-section-head.row{align-items:center}
.p76-grid{display:grid;gap:12px;align-items:start}.p76-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.p76-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.p76-grid .span-2{grid-column:span 2}.p76-grid .span-3{grid-column:1/-1}.p76-grid .span-1{grid-column:span 1}
.p76-grid label,.p76-edit-table th{font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:900;color:var(--muted)}
.p76-grid input,.p76-grid select,.p76-grid textarea,.p76-edit-table input,.p76-edit-table select{
  width:100%;
  min-height:36px;
  border:1px solid var(--line)!important;
  border-radius:8px!important;
  padding:8px 10px!important;
  background:var(--input-bg,var(--card))!important;
  color:var(--text)!important;
  font-size:12px!important;
  font-weight:650!important;
  box-shadow:none!important;
  outline:none!important;
  margin-top:5px;
}
.p76-grid textarea{min-height:78px;resize:vertical}.p76-table-wrap{border:1px solid var(--line);border-radius:12px;overflow:auto;background:var(--card)}
.p76-edit-table{width:100%;border-collapse:separate;border-spacing:0;min-width:980px}.p76-edit-table th{position:sticky;top:0;background:rgba(148,163,184,.08);z-index:1;text-align:left;padding:10px;border-bottom:1px solid var(--line)}.p76-edit-table td{padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:middle}.p76-edit-table tr:last-child td{border-bottom:0}.p76-edit-table td.center{text-align:center;width:62px}.p76-check{width:16px!important;height:16px!important;min-height:16px!important;margin:0!important;accent-color:var(--orange,var(--accent));}.p76-contact-table{min-width:1040px}.p76-compact-block{margin-bottom:14px}.p76-price-card{border:1px dashed var(--line);border-radius:10px;padding:11px;background:rgba(234,88,12,.06);display:grid;gap:6px}.p76-price-card strong{font-size:12px;color:var(--text)}.p76-price-card span{font-size:11px;color:var(--muted)}.p76-toggle-row{display:flex;gap:8px;flex-wrap:wrap}.p76-toggle-row label,.p76-grid .checkline{display:inline-flex!important;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:9px 10px;color:var(--text)!important;text-transform:none!important;letter-spacing:0!important;font-size:12px!important;background:rgba(148,163,184,.04)}.p76-toggle-row input,.p76-grid .checkline input{width:15px!important;height:15px!important;min-height:15px!important;margin:0!important;accent-color:var(--orange,var(--accent));}.p76-modal-footer{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px 24px;border-top:1px solid var(--line);background:var(--card);position:sticky;bottom:0;z-index:2}.p76-modal-footer span{font-size:11px;color:var(--muted);line-height:1.35}.p76-modal-footer>div{display:flex;gap:8px;align-items:center}.p76-master-header,.p75-master-header{box-shadow:none!important}.p75-master-metrics{display:none!important}.p75-master-summary{display:none!important}.p75-side-panel .smart-alert b{display:none}.p75-side-panel .smart-alert{border-radius:10px!important;background:var(--card)!important}.p75-table-panel .panel-head h2{font-size:16px!important}.p75-table-panel .panel-head p{max-width:760px}.p75-table-panel .data-table th{font-size:10px!important}.p75-table-panel .data-table td{font-size:12px!important}
[data-theme="dark"] .p76-tabs,[data-theme="dark"] .p76-modal-footer,[data-theme="dark"] .p76-master-modal.slide-panel.panel-modal-open>.panel-head{background:#0f172a!important}[data-theme="dark"] .p76-edit-table th{background:rgba(148,163,184,.12)!important}[data-theme="dark"] .p76-price-card{background:rgba(234,88,12,.10)!important}
@media(max-width:980px){.p76-grid.three,.p76-grid.two{grid-template-columns:1fr}.p76-grid .span-2,.p76-grid .span-3,.p76-grid .span-1{grid-column:1/-1}.p76-modal-footer{flex-direction:column;align-items:flex-start}.p76-tab-shell{padding:14px;max-height:calc(100vh - 250px)}.p76-tabs{padding:0 14px}.p76-master-modal.slide-panel.panel-modal-open{width:calc(100vw - 16px)!important;max-height:calc(100vh - 16px)!important}}

/* P77 Maestros cierre 10/10: tablas compactas, relaciones ERP y control financiero/documental */
.p77-guidance-strip{display:flex;gap:8px;align-items:center;margin:0 0 12px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:rgba(15,23,42,.025);font-size:12px;color:var(--muted)}
.p77-guidance-strip strong{color:var(--text);font-size:11px;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.p77-guidance-strip span{line-height:1.35}
.p77-supplier-link-table{min-width:1320px}.p77-bank-table{min-width:1280px}.p77-doc-table{min-width:880px}
.p76-edit-table .ghost-button.micro{padding:6px 8px!important;min-height:28px!important;font-size:10px!important;border-radius:7px!important;white-space:nowrap}.p76-edit-table .ghost-button.danger{color:#b91c1c!important;border-color:rgba(185,28,28,.22)!important;background:rgba(185,28,28,.04)!important}
.p76-edit-table input[type="date"]{min-width:135px}.p76-edit-table select{min-width:140px}.p76-edit-table td:last-child{width:72px;text-align:right}
.p76-tab-shell{scrollbar-width:thin}.p76-master-modal .p76-table-wrap+.p76-grid{margin-top:12px}
[data-theme="dark"] .p77-guidance-strip{background:rgba(148,163,184,.06)!important}
@media(max-width:980px){.p77-guidance-strip{align-items:flex-start;flex-direction:column}.p77-supplier-link-table,.p77-bank-table,.p77-doc-table{min-width:980px}}


/* P78 · Maestros data governance + listas de costo proveedor */
.p78-price-table{min-width:1560px}.p78-price-table td,.p78-price-table th{white-space:nowrap}.p78-price-table input[type="number"]{min-width:94px}.p78-price-table input[type="date"]{min-width:132px}.p78-price-table select{min-width:132px}.p78-governance-pill{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:5px 8px;font-size:11px;font-weight:800;color:var(--muted);background:rgba(148,163,184,.06)}.p78-governance-pill.ok{color:#166534;background:rgba(22,101,52,.08);border-color:rgba(22,101,52,.22)}.p78-governance-pill.warn{color:#92400e;background:rgba(146,64,14,.08);border-color:rgba(146,64,14,.22)}.p78-governance-pill.bad{color:#991b1b;background:rgba(153,27,27,.08);border-color:rgba(153,27,27,.22)}
[data-theme="dark"] .p78-governance-pill.ok{color:#86efac;background:rgba(22,101,52,.18)}[data-theme="dark"] .p78-governance-pill.warn{color:#fbbf24;background:rgba(146,64,14,.18)}[data-theme="dark"] .p78-governance-pill.bad{color:#fca5a5;background:rgba(153,27,27,.18)}
@media(max-width:980px){.p78-price-table{min-width:1120px}}

/* P79.1 Enterprise UX Wizard / Modal Safety */
.p79-wizard-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,rgba(234,88,12,.10),rgba(14,165,233,.08));position:sticky;top:0;z-index:5}.p79-wizard-head div{display:flex;flex-direction:column;gap:3px}.p79-wizard-head strong{font-size:14px;color:var(--text)}.p79-wizard-head span{font-size:12px;color:var(--muted)}.p79-wizard-head b{font-size:12px;border:1px solid var(--line);border-radius:999px;padding:6px 10px;background:var(--card);color:var(--text);white-space:nowrap}.p79-wizard-tabs button{position:relative;padding-left:28px}.p79-wizard-tabs button::before{content:"";position:absolute;left:10px;top:50%;width:9px;height:9px;border-radius:999px;border:2px solid currentColor;transform:translateY(-50%);opacity:.45}.p79-wizard-tabs button.done::before{background:currentColor;opacity:1}.p79-validation-box{margin:14px 18px 0;border:1px solid rgba(220,38,38,.28);background:rgba(220,38,38,.08);color:#991b1b;border-radius:14px;padding:12px 14px;font-size:13px}.p79-validation-box[hidden]{display:none!important}.p79-validation-box strong{display:block;margin-bottom:6px}.p79-validation-box ul{margin:0;padding-left:18px}.p79-validation-box li+li{margin-top:3px}.p79-image-upload{border:1px dashed var(--line);border-radius:14px;padding:12px;background:rgba(148,163,184,.08)}.p79-image-upload input[type=file]{margin-top:8px}.p79-image-upload small{display:block;color:var(--muted);font-size:12px;margin-top:6px}.p79-image-upload a{display:inline-flex;margin-top:7px;font-size:12px;color:var(--accent);font-weight:700}.p76-grid select[data-geo-region],.p76-grid select[data-geo-province],.p76-grid select[data-geo-city]{min-width:0}.slide-panel.panel-modal-open{overscroll-behavior:contain}.modal-open .app-main::after{content:"";position:fixed;inset:0;background:rgba(2,6,23,.38);backdrop-filter:blur(4px);z-index:9000;pointer-events:none}[data-theme="dark"] .p79-validation-box{color:#fecaca;background:rgba(127,29,29,.28);border-color:rgba(248,113,113,.35)}[data-theme="dark"] .p79-image-upload{background:rgba(148,163,184,.10)}@media(max-width:720px){.p79-wizard-head{align-items:flex-start;flex-direction:column}.p79-wizard-tabs{display:flex;overflow:auto}.p79-wizard-tabs button{white-space:nowrap}.p76-modal-footer>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}.p76-modal-footer button{width:100%}}

/* P79.2 · Maestros enterprise: bancos normalizados sin scroll horizontal y acciones bloqueadas */
.p79-bank-card-list{display:grid;gap:12px;margin-top:10px}
.p79-bank-card{border:1px solid var(--line);border-radius:14px;background:rgba(148,163,184,.045);padding:12px;box-shadow:none;overflow:hidden}
.p79-bank-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.p79-bank-card-head .checkline{margin:0;min-height:34px;padding:7px 10px;background:var(--card)}
.p76-grid.compact{gap:10px}.p76-grid.compact input,.p76-grid.compact select{min-height:38px!important}
.p79-party-wizard-form .p77-guidance-strip{border-left:3px solid var(--orange,var(--accent));}
.p79-party-wizard-form [data-tab-panel="abastecimiento"] .p76-table-wrap{margin-top:10px}
.p79-party-wizard-form [data-tab-panel="pagos"] .p76-table-wrap{display:none!important}
[data-theme="dark"] .p79-bank-card{background:rgba(148,163,184,.075)}
@media(max-width:980px){.p79-bank-card-head{align-items:flex-start;flex-direction:column}.p79-bank-card-head .ghost-button{width:100%}}
