/* Inventario Premium Styles */

:root {
    --inv-primary: #0ea5e9;
    --inv-primary-dark: #0369a1;
    --inv-success: #10b981;
    --inv-warning: #f59e0b;
    --inv-danger: #ef4444;
    --inv-bg-card: #ffffff;
    --inv-border: #e2e8f0;
    --inv-text-main: #1e293b;
    --inv-text-muted: #64748b;
    --inv-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
    --inv-shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --inv-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --inv-radius: 16px;
}

#btn-importar-inventario,#btn-plantilla-inventario{display:none!important}.inv-action-dock{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:14px 0}.inv-action-card{border:1px solid #d8e5f0;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(242,248,253,.92));border-radius:17px;padding:15px 16px;display:grid;grid-template-columns:44px 1fr 24px;align-items:center;gap:12px;text-align:left;cursor:pointer;color:#24445e;box-shadow:0 8px 24px rgba(52,91,125,.07);transition:.2s}.inv-action-card>span{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;background:#e4f4fb;color:#0785b8}.inv-action-card div{display:flex;flex-direction:column;gap:3px}.inv-action-card b{font-size:.92rem}.inv-action-card small{font-size:.75rem;color:#6b8093;line-height:1.35}.inv-action-card i{font-style:normal;font-size:1.15rem;color:#86a2b8}.inv-action-card:hover{transform:translateY(-2px);border-color:#76c7e6;box-shadow:0 12px 28px rgba(14,165,233,.12)}.inv-action-card.primary{background:linear-gradient(135deg,#087eb5,#18a7cf);color:white;border-color:transparent}.inv-action-card.primary>span{background:rgba(255,255,255,.16);color:white}.inv-action-card.primary small,.inv-action-card.primary i{color:#dff7ff}@media(max-width:850px){.inv-action-dock{grid-template-columns:1fr}.inv-header-premium>div:last-child{flex-wrap:wrap}}

#btn-toggle-inv-form{display:none!important}
.inv-header-premium #inv-resumen-productos~button{display:none!important}
.inv-prov-quick-actions .material-symbols-outlined{display:none!important}
.inv-action-dock{gap:8px!important;margin:10px 0 12px!important}.inv-action-card{min-height:0!important;padding:10px 13px!important;border-radius:13px!important;grid-template-columns:1fr!important;box-shadow:0 3px 12px rgba(52,91,125,.055)!important}.inv-action-card>span,.inv-action-card>i{display:none!important}.inv-action-card div{gap:1px!important}.inv-action-card b{font-size:.82rem!important}.inv-action-card small{font-size:.68rem!important}.inv-type-cards{gap:8px!important}.inv-type-cards button{min-height:82px!important;padding:12px!important}.inv-type-cards button>span{display:none!important}.inv-header-premium>div:first-child>span{display:none!important}

/* Header & Stats Section */
.inv-header-premium {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
    padding: 0.85rem 1.25rem;
    background: linear-gradient(135deg, rgba(14, 165, 233, 0.05), rgba(99, 102, 241, 0.05));
    border-radius: var(--inv-radius);
    border: 1px solid var(--inv-border);
}

.inv-title-container h2 {
    font-size: 1.75rem;
    font-weight: 800;
    color: var(--inv-text-main);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.inv-title-container p {
    color: var(--inv-text-muted);
    margin: 0.25rem 0 0 0;
    font-size: 0.9rem;
}

/* Form Card Premium */
.inv-card-form {
    background: var(--inv-bg-card);
    border-radius: var(--inv-radius);
    border: 1px solid var(--inv-border);
    box-shadow: var(--inv-shadow-lg);
    overflow: hidden;
    margin-bottom: 2rem;
    transition: all 0.3s ease;
}

.inv-card-form-header {
    background: linear-gradient(90deg, #f8fafc 0%, #ffffff 100%);
    padding: 1.25rem 1.5rem;
    border-bottom: 1px solid var(--inv-border);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.inv-card-form-body {
    padding: 1.5rem;
}

.inv-step-heading,.inv-section-title{display:flex;align-items:center;gap:12px;color:#15324b;margin-bottom:14px}.inv-step-heading>span,.inv-section-title>span{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#e0f2fe;color:#0284c7}.inv-step-heading div,.inv-section-title div{display:flex;flex-direction:column}.inv-step-heading strong{font-size:1.05rem}.inv-step-heading small,.inv-section-title small{color:#64748b;margin-top:2px}.inv-type-cards{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:10px}.inv-type-cards button{appearance:none;border:1px solid #dbe7f2;background:linear-gradient(145deg,#fff,#f5faff);border-radius:16px;padding:16px 12px;text-align:left;cursor:pointer;color:#1e3a56;display:flex;flex-direction:column;gap:6px;min-height:128px;transition:.2s}.inv-type-cards button:hover,.inv-type-cards button.active{border-color:#38bdf8;box-shadow:0 10px 24px rgba(14,165,233,.14);transform:translateY(-2px)}.inv-type-cards button>span{color:#0284c7;font-size:1.8rem}.inv-type-cards button small{color:#64748b;line-height:1.3}.inv-selected-type-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 13px;border-radius:12px;background:#eff8ff;border:1px solid #bae6fd}.inv-selected-type-bar div{display:flex;align-items:center;gap:8px;font-weight:800;color:#075985}.inv-selected-type-bar button{border:0;background:transparent;color:#0284c7;font-weight:800;cursor:pointer}.inv-stock-mode-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.inv-stock-mode-options label{position:relative}.inv-stock-mode-options input{position:absolute;opacity:0}.inv-stock-mode-options span{display:flex;flex-direction:column;padding:12px 14px;border:1px solid #dbe7f2;border-radius:12px;background:#fff;cursor:pointer;text-transform:none;letter-spacing:0}.inv-stock-mode-options small{font-weight:500;color:#64748b;margin-top:2px}.inv-stock-mode-options input:checked+span{border-color:#0ea5e9;background:#f0f9ff;box-shadow:0 0 0 3px rgba(14,165,233,.1)}.inv-optical-fields{padding:14px;border:1px solid #dbeafe;background:linear-gradient(145deg,#f8fbff,#eef7ff);border-radius:16px}.inv-optical-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media(max-width:980px){.inv-type-cards{grid-template-columns:repeat(2,1fr)}.inv-optical-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.inv-type-cards,.inv-stock-mode-options,.inv-optical-grid{grid-template-columns:1fr}}
.inv-empty-action{border:1px solid #bfd3e3;background:#fff;color:#27536f;border-radius:10px;padding:8px 13px;font-size:.78rem;font-weight:800;cursor:pointer}.inv-empty-action.primary{background:#087fb5;border-color:#087fb5;color:#fff}.inv-empty-action:focus-visible{outline:3px solid rgba(14,165,233,.28);outline-offset:2px}
#btn-traslado-inventario[hidden],#btn-traslado-inventario[data-permission-hidden="true"]{display:none!important}
#inv-bulk-actions-bar{display:none!important}#inv-bulk-actions-bar.is-open{display:flex!important;position:absolute;z-index:20;right:0;top:108px;max-width:min(760px,92vw);flex-wrap:wrap;box-shadow:0 18px 40px rgba(25,57,83,.16);background:#fff!important}.inv-controls-bar{position:relative}.inv-utility-btn{height:40px;border:1px solid #d7e3ed;background:rgba(255,255,255,.8);color:#36536b;border-radius:10px;padding:0 12px;font-size:.74rem;font-weight:800;cursor:pointer;white-space:nowrap}.inv-utility-btn:hover{border-color:#79bdd9;color:#087eae}.inv-kardex-main-btn{min-width:200px;height:48px;border:1px solid #9ed9ed;background:linear-gradient(145deg,#f7fdff,#e9f7fc);color:#17617f;border-radius:13px;padding:7px 13px;display:flex;align-items:center;gap:9px;text-align:left;cursor:pointer}.inv-kardex-main-btn>span:last-child{display:flex;flex-direction:column}.inv-kardex-main-btn b{font-size:.8rem}.inv-kardex-main-btn small{font-size:.66rem;color:#66879a;margin-top:1px}.inv-kardex-main-btn .material-symbols-outlined{font-size:1.2rem}
.kdx-panel{text-align:left;color:#29465d}.kdx-filters{display:flex;gap:8px;align-items:end;flex-wrap:wrap;padding:12px;background:#f4f9fc;border:1px solid #d9e8f1;border-radius:13px}.kdx-filters label{display:flex;flex-direction:column;gap:4px;font-size:.68rem;font-weight:800;color:#607b8f}.kdx-filters label.grow{flex:1;min-width:210px}.kdx-filters input,.kdx-filters select{height:36px;border:1px solid #cbdce8;border-radius:8px;background:white;padding:0 9px;color:#29465d}.kdx-filters button{height:36px;border:0;border-radius:9px;background:#157fa9;color:white;padding:0 13px;font-weight:800;cursor:pointer}.kdx-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0}.kdx-summary>div{border:1px solid #dce8f0;border-radius:11px;padding:9px 11px;background:#fff}.kdx-summary b{display:block;font-size:1.1rem;color:#147ba4}.kdx-summary span{font-size:.67rem;color:#73899a}.kdx-table-wrap{max-height:52vh;overflow:auto;border:1px solid #dce8f0;border-radius:12px}.kdx-table{width:100%;border-collapse:collapse;font-size:.72rem}.kdx-table th{position:sticky;top:0;background:#edf5fa;color:#49677d;text-align:left;padding:9px;z-index:1}.kdx-table td{padding:9px;border-top:1px solid #edf2f6;vertical-align:top}.kdx-table small{display:block;color:#7a8e9d;margin-top:2px}.kdx-type{display:inline-flex;padding:3px 7px;border-radius:999px;font-size:.65rem;font-weight:850}.kdx-type.in{background:#e8f8f1;color:#08775c}.kdx-type.out{background:#fff0ed;color:#b74735}.kdx-empty{text-align:center!important;padding:34px!important;color:#8195a4}.kdx-note{font-size:.66rem;color:#7c909e;margin:8px 2px 0}@media(max-width:700px){.kdx-summary{grid-template-columns:repeat(2,1fr)}.kdx-table{min-width:850px}}
.inv-count-main-btn{border-color:#b7dfd4;background:linear-gradient(145deg,#fbfffd,#eef9f5);color:#176752}.cnt-panel{text-align:left;color:#29465d}.cnt-head{display:flex;justify-content:space-between;gap:10px;align-items:end;flex-wrap:wrap;padding:11px;background:#f5fafc;border:1px solid #dce8ef;border-radius:12px}.cnt-head>div{display:flex;gap:8px;flex-wrap:wrap}.cnt-head label,.cnt-notes{display:flex;flex-direction:column;gap:4px;font-size:.68rem;font-weight:800;color:#60798b}.cnt-head input{height:36px;border:1px solid #cbdae5;border-radius:8px;padding:0 9px;background:#fff}.cnt-head>input{min-width:260px}.cnt-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:9px 0}.cnt-summary span{padding:8px 10px;border:1px solid #dce8ef;border-radius:9px;font-size:.68rem;color:#6e8494}.cnt-summary b{display:block;font-size:1rem;color:#19799d}.cnt-table-wrap{max-height:48vh;overflow:auto;border:1px solid #dce8ef;border-radius:11px}.cnt-table{width:100%;border-collapse:collapse;font-size:.76rem}.cnt-table th{position:sticky;top:0;background:#edf5f8;padding:9px;text-align:left}.cnt-table td{padding:8px 9px;border-top:1px solid #edf2f5}.cnt-table small{display:block;color:#8093a1;margin-top:2px}.cnt-real{width:92px;height:34px;border:1px solid #bcd3df;border-radius:8px;padding:0 8px;font-weight:800}.cnt-diff{font-weight:900}.cnt-diff.neg{color:#c2413b}.cnt-diff.pos{color:#087f63}.cnt-diff.ok{color:#6b7f8d}.cnt-notes{margin-top:9px}.cnt-notes textarea{min-height:58px;border:1px solid #cadce7;border-radius:9px;padding:8px;resize:vertical}.cnt-warning{font-size:.68rem;color:#7d6532;background:#fffaf0;border:1px solid #f1dfb5;border-radius:8px;padding:7px 9px}@media(max-width:700px){.cnt-summary{grid-template-columns:repeat(2,1fr)}.cnt-head>input{min-width:100%;width:100%}}
.inv-expiry-badge{display:inline-flex;width:max-content;margin-top:5px;padding:3px 7px;border-radius:999px;font-size:.65rem;font-weight:850;border:1px solid}.inv-expiry-badge.vigente{background:#effaf6;color:#16745d;border-color:#bce8da}.inv-expiry-badge.proximo{background:#fff9e8;color:#8a6814;border-color:#efdda4}.inv-expiry-badge.urgente,.inv-expiry-badge.vencido{background:#fff0ed;color:#b63f37;border-color:#f0bab5}
.cnt-head-tools{display:flex;gap:7px;align-items:end}.cnt-head-tools>input{min-width:245px}.cnt-head-tools button{height:36px;border:1px solid #b7d8e5;background:#fff;color:#24718e;border-radius:8px;padding:0 10px;font-size:.7rem;font-weight:800;cursor:pointer}.cnt-history{text-align:left;max-height:65vh;overflow:auto}.cnt-history-item{border:1px solid #dce8ef;border-radius:10px;margin-bottom:7px;background:#fff}.cnt-history-item summary{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:10px 12px;cursor:pointer;list-style:none}.cnt-history-item summary div{display:flex;flex-direction:column}.cnt-history-item summary small{color:#8193a0;margin-top:2px}.cnt-history-item summary span{font-size:.72rem;color:#607889}.cnt-history-item summary strong{font-size:.7rem;padding:4px 7px;border-radius:999px}.cnt-history-item summary strong.ok{background:#eaf8f2;color:#13745b}.cnt-history-item summary strong.warn{background:#fff2ec;color:#b64b35}.cnt-history-body{padding:0 12px 12px}.cnt-history-body p{font-size:.72rem;color:#657d8e}.cnt-history-body table{width:100%;border-collapse:collapse;font-size:.72rem}.cnt-history-body th,.cnt-history-body td{padding:7px;border-top:1px solid #edf2f5;text-align:left}.cnt-neg{color:#bd4138;font-weight:850}.cnt-pos{color:#087a5f;font-weight:850}@media(max-width:700px){.cnt-head-tools{width:100%;flex-wrap:wrap}.cnt-head-tools>input{min-width:100%;width:100%}.cnt-history-item summary{grid-template-columns:1fr}}

/* Cabecera operativa compacta: mantiene la tabla cerca de las acciones frecuentes. */
#view-inventario .inv-header-premium{min-height:0;padding:7px 12px;margin-bottom:4px;border-radius:12px}
#view-inventario .inv-header-premium h2{font-size:1rem!important}
#view-inventario .inv-header-premium>div:first-child>div{display:flex;align-items:center;gap:12px}
#view-inventario .inv-header-premium>div:first-child>div>div{margin-top:0!important}
#view-inventario #inv-resumen-productos>div{padding:2px 8px!important;font-size:.68rem!important}
#view-inventario .inv-action-dock{display:none!important}
#view-inventario .inv-header-actions{display:flex;align-items:center;gap:6px;margin-left:auto}
#view-inventario .inv-header-tool{height:36px;padding:0 11px;border:1px solid #cddde7;border-radius:9px;background:rgba(255,255,255,.78);color:#38566c;font-size:.7rem;font-weight:800;cursor:pointer;white-space:nowrap}
#view-inventario .inv-header-tool:hover{background:#fff;border-color:#8ec6da;color:#147396}
#view-inventario .inv-header-menu{position:relative}
#view-inventario .inv-header-menu>summary{display:flex;align-items:center;gap:6px;list-style:none;user-select:none}
#view-inventario .inv-header-menu>summary::-webkit-details-marker{display:none}
#view-inventario .inv-header-menu>summary>.material-symbols-outlined{font-size:1.05rem}
#view-inventario .inv-header-menu .inv-menu-chevron{font-size:.92rem;transition:transform .18s ease}
#view-inventario .inv-header-menu[open] .inv-menu-chevron{transform:rotate(180deg)}
#view-inventario .inv-header-menu[open]>summary{background:#fff;border-color:#7bc4df;color:#0b789f;box-shadow:0 3px 10px rgba(30,91,119,.1)}
#view-inventario .inv-header-menu-panel{position:absolute;z-index:120;top:43px;right:0;width:290px;padding:9px;border:1px solid #d5e3ed;border-radius:14px;background:rgba(255,255,255,.98);box-shadow:0 20px 50px rgba(30,64,90,.2);backdrop-filter:blur(14px)}
#view-inventario .inv-header-menu-panel .inv-menu-section-title{display:block;padding:7px 9px 5px;color:#7a8e9e;font-size:.6rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
#view-inventario .inv-header-menu-panel button{width:100%;display:flex;align-items:center;gap:10px;padding:10px;border:0;border-radius:10px;background:transparent;color:#294b63;text-align:left;cursor:pointer}
#view-inventario .inv-header-menu-panel button:hover{background:#eef7fb;color:#087ba8}
#view-inventario .inv-header-menu-panel button>.material-symbols-outlined{width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;border-radius:9px;background:#e5f4fa;color:#087fae;font-size:1.08rem}
#view-inventario .inv-header-menu-panel button>span:last-child{display:flex;min-width:0;flex-direction:column;gap:2px}
#view-inventario .inv-header-menu-panel button b{font-size:.75rem}
#view-inventario .inv-header-menu-panel button small{color:#718696;font-size:.62rem;line-height:1.3}
#view-inventario #btn-toggle-inv-form{display:flex!important;height:36px!important;padding:0 14px!important;border-radius:9px!important;font-size:.72rem!important;box-shadow:0 4px 11px rgba(14,165,233,.2)!important;cursor:pointer}
#view-inventario #btn-toggle-inv-form .material-symbols-outlined{font-size:1rem}
#view-inventario .inv-action-card{width:auto!important;min-width:0!important;padding:8px 12px!important;border-radius:10px!important;display:flex!important;box-shadow:none!important}
#view-inventario .inv-action-card b{font-size:.76rem!important;white-space:nowrap}
#view-inventario .inv-action-card small{display:none!important}
#view-inventario .inv-action-card.primary{padding-inline:15px!important}
#view-inventario .inv-subnav-tabs{display:block!important;margin:7px 0 10px!important;padding:0 0 5px!important;border:0!important;overflow:visible}
#view-inventario .inv-tab-list{display:flex!important;align-items:center;gap:8px!important;flex-wrap:nowrap!important;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:none;padding:1px 2px 7px;cursor:grab}
#view-inventario .inv-tab-list::-webkit-scrollbar{display:none}
#view-inventario .inv-subtab-btn{flex:0 0 auto!important;min-height:42px;padding:0 12px!important;border:1.5px solid #cbdcf0!important;border-radius:13px!important;background:#fff!important;color:#4a5c74!important;font-size:.75rem!important;font-weight:850!important;box-shadow:0 2px 5px rgba(51,84,120,.035)!important;display:inline-flex!important;align-items:center!important;gap:7px!important;white-space:nowrap;scroll-snap-align:start;transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease!important}
#view-inventario .inv-subtab-btn:hover{border-color:#77aee7!important;background:#f5f9ff!important;color:#2565a7!important;transform:translateY(-1px)}
#view-inventario .inv-subtab-btn>.material-symbols-outlined{display:inline-flex!important;color:#67a0dc!important;font-size:1.2rem!important}
#view-inventario .inv-subtab-btn>span[id^="badge-count-"]{min-width:27px;padding:3px 7px!important;border-radius:999px!important;background:#edf2f7!important;color:#63758c!important;font-size:.68rem!important;font-weight:900!important;text-align:center}
#view-inventario .inv-subtab-btn.active{border-color:#247fd3!important;background:linear-gradient(135deg,#248ce5,#1672c8)!important;color:#fff!important;box-shadow:0 7px 16px rgba(29,119,203,.22)!important;transform:none}
#view-inventario .inv-subtab-btn.active>.material-symbols-outlined{color:#fff!important}
#view-inventario .inv-subtab-btn.active>span[id^="badge-count-"]{background:rgba(255,255,255,.2)!important;color:#fff!important}
#view-inventario .inv-subtab-btn[hidden]{display:none!important}
#view-inventario .inv-subtab-btn[draggable="true"]{cursor:grab}
#view-inventario .inv-subtab-btn.is-dragging{opacity:.4;transform:scale(.97)!important}
#view-inventario .inv-subtab-btn.is-drag-target{border-color:#2588dc!important;box-shadow:0 0 0 3px rgba(37,136,220,.13)!important}
#view-inventario .inv-category-more{position:relative;flex:0 0 auto}
#view-inventario .inv-category-more>summary{list-style:none;cursor:pointer}
#view-inventario .inv-category-more>summary::-webkit-details-marker{display:none}
#view-inventario .inv-category-more>summary>.material-symbols-outlined:last-child{font-size:.95rem!important;transition:transform .18s ease}
#view-inventario .inv-category-more[open]>summary>.material-symbols-outlined:last-child{transform:rotate(180deg)}
#view-inventario .inv-category-more.is-active>summary{border-color:#247fd3!important;background:#eef7ff!important;color:#176fbd!important}
#view-inventario .inv-category-more-menu{position:fixed;z-index:190;width:235px;display:grid;gap:5px;padding:7px;border:1px solid #d4e1ec;border-radius:13px;background:#fff;box-shadow:0 16px 36px rgba(35,64,88,.2)}
#view-inventario .inv-category-more:not([open])>.inv-category-more-menu{display:none}
#view-inventario .inv-category-more-menu .inv-subtab-btn{width:100%;min-height:40px!important;border:0!important;border-radius:9px!important;box-shadow:none!important;justify-content:flex-start}
#view-inventario .inv-category-more-menu .inv-subtab-btn>span[id^="badge-count-"]{margin-left:auto}
#view-inventario .inv-controls-bar{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:nowrap!important;padding:8px!important;margin-bottom:8px!important;border-radius:13px!important;min-height:58px}
#view-inventario .inv-controls-bar>.inv-search-wrapper{flex:1 1 330px!important;min-width:230px!important}
#view-inventario .inv-controls-bar>.inv-search-wrapper .inv-search-input{height:42px!important}
#view-inventario .inv-controls-bar>div:not(.inv-search-wrapper):not(.inv-secondary-tools){flex:0 1 190px!important;min-width:145px!important}
#view-inventario .inv-controls-bar .inv-input-premium{height:42px!important;padding:8px 10px!important}
#view-inventario .inv-kardex-main-btn{height:42px;min-width:155px;padding:5px 10px;border-radius:10px}
#view-inventario .inv-kardex-main-btn small{display:none}
.inv-bulk-visible{height:42px!important;border-color:#aed2e0!important;background:#f7fcfe!important;color:#245d74!important;padding-inline:12px!important}
.inv-bulk-visible.is-active{background:#176f91!important;border-color:#176f91!important;color:#fff!important;box-shadow:0 5px 14px rgba(23,111,145,.2)}
.inv-more-trigger{height:42px;border:1px solid #c9dbe7;background:#fff;color:#36566e;border-radius:10px;padding:0 10px;font-size:.72rem;font-weight:800;display:flex;align-items:center;gap:4px;cursor:pointer;white-space:nowrap}.inv-more-trigger .material-symbols-outlined{font-size:1rem;transition:transform .2s}
.inv-secondary-tools{display:none!important;position:absolute;right:8px;top:58px;z-index:30;align-items:center;flex-wrap:wrap;max-width:min(760px,94vw);padding:8px;background:rgba(255,255,255,.98);border:1px solid #d6e4ed;border-radius:12px;box-shadow:0 18px 42px rgba(35,64,88,.17)}.inv-secondary-tools.is-open{display:flex!important}
#inv-bulk-actions-bar.is-open{top:54px!important;right:8px!important}
.inv-options-menu{position:relative;flex:0 0 auto;z-index:40}
.inv-options-menu>summary{height:42px;min-width:142px;display:flex;align-items:center;justify-content:center;gap:7px;padding:0 12px;border:1px solid #b8d5e3;border-radius:10px;background:#fff;color:#315970;font-size:.74rem;font-weight:850;cursor:pointer;list-style:none;white-space:nowrap;user-select:none}
.inv-options-menu>summary::-webkit-details-marker{display:none}
.inv-options-menu>summary>.material-symbols-outlined{font-size:1.08rem}
.inv-options-menu>summary:hover,.inv-options-menu[open]>summary{border-color:#62b7d5;background:#edf9fd;color:#087ba5}
.inv-options-chevron{margin-left:3px;transition:transform .18s ease}.inv-options-menu[open] .inv-options-chevron{transform:rotate(180deg)}
.inv-options-panel{position:absolute;z-index:150;top:49px;right:0;width:min(720px,calc(100vw - 48px));max-height:min(620px,76vh);padding:11px;overflow-y:auto;border:1px solid #d2e2eb;border-radius:16px;background:rgba(255,255,255,.99);box-shadow:0 22px 55px rgba(28,62,88,.23);backdrop-filter:blur(16px)}
.inv-options-menu:not([open])>.inv-options-panel{display:none}
.inv-options-panel section{padding:6px}
.inv-options-panel section+section{margin-top:5px;padding-top:11px;border-top:1px solid #e3edf3}
.inv-options-panel section>strong{display:block;padding:0 3px 8px;color:#718696;font-size:.62rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.inv-options-panel section>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.inv-options-panel section button{width:100%;display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;min-height:60px;padding:9px;border:0;border-radius:12px;background:#f4f8fb;color:#294b63;text-align:left;cursor:pointer}
.inv-options-panel section button:hover{background:#eaf6fb;color:#087ba5}
.inv-options-panel section button>.material-symbols-outlined{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#dff1f8;color:#087da8;font-size:1.15rem}
.inv-options-panel section button>span:last-child{display:flex;min-width:0;flex-direction:column;gap:3px}
.inv-options-panel section button b{font-size:.75rem;line-height:1.2}.inv-options-panel section button small{color:#718696;font-size:.63rem;line-height:1.3}
.inv-options-panel section button.is-active,.inv-options-panel section button.active{background:#e8f5fb;color:#08779f;box-shadow:inset 0 0 0 1px #81c9e1}
#view-inventario .inv-controls-bar>div.inv-corner-tools.inv-corner-tools{position:static!important;z-index:8;display:flex!important;align-items:center;justify-content:flex-end;gap:7px;flex:0 0 auto!important;width:auto!important;min-width:0!important;max-width:none!important}
#view-inventario .inv-controls-bar .inv-view-toggles.inv-view-corner{position:static!important;display:flex!important;flex:0 0 72px!important;inline-size:72px!important;width:72px!important;min-width:72px!important;max-width:72px!important;height:38px;padding:3px;box-sizing:border-box;border:1px solid #d5e2ea;border-radius:10px;background:#edf3f7;gap:2px}
#view-inventario .inv-bulk-corner{height:38px;display:flex;align-items:center;gap:7px;padding:0 12px;border:1px solid #c8dce7;border-radius:10px;background:#fff;color:#315970;font-size:.7rem;font-weight:850;cursor:pointer;white-space:nowrap;box-shadow:0 2px 7px rgba(38,76,101,.05)}
#view-inventario .inv-bulk-corner>.material-symbols-outlined{font-size:1.05rem;color:#087da8}
#view-inventario .inv-bulk-corner:hover{border-color:#70bdd7;background:#f1fafd;color:#08779f}
#view-inventario .inv-bulk-corner.is-active{border-color:#176f91;background:#176f91;color:#fff;box-shadow:0 5px 14px rgba(23,111,145,.2)}
#view-inventario .inv-bulk-corner.is-active>.material-symbols-outlined{color:#fff}
#view-inventario .inv-view-corner .inv-view-btn{width:32px;height:30px;display:grid;place-items:center;padding:0;border-radius:7px;color:#8093a1}
#view-inventario .inv-view-corner .inv-view-btn .material-symbols-outlined{font-size:1rem}
#view-inventario .inv-view-corner .inv-view-btn:hover{background:rgba(255,255,255,.72);color:#39728e}
#view-inventario .inv-view-corner .inv-view-btn.active{background:#fff;color:#087da8;box-shadow:0 2px 7px rgba(38,76,101,.13)}
@media(min-width:721px) and (max-width:1100px){#view-inventario .inv-controls-bar>div.inv-corner-tools.inv-corner-tools{position:static!important;flex:0 0 auto!important;width:auto!important;min-width:0!important;max-width:none!important}}
@media(max-width:720px){#view-inventario .inv-header-premium{align-items:flex-start;gap:7px;flex-direction:column}#view-inventario .inv-header-actions{width:100%;overflow-x:auto;margin-left:0}#view-inventario .inv-header-actions>*{flex:1 0 auto;justify-content:center}#view-inventario .inv-controls-bar{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}#view-inventario .inv-controls-bar>.inv-search-wrapper{grid-column:span 2!important;width:100%!important}#view-inventario .inv-controls-bar>div:not(.inv-search-wrapper):not(.inv-secondary-tools){grid-column:span 1!important;width:100%!important;min-width:0!important}#view-inventario .inv-kardex-main-btn{grid-column:span 1!important;width:100%!important;min-width:0!important;justify-content:center!important}#view-inventario #inv-bulk-toggle,#view-inventario #inv-more-tools-trigger{grid-column:span 1!important;width:100%!important}#view-inventario .inv-secondary-tools{grid-column:span 2!important;position:static;width:100%;max-width:none}.inv-more-trigger{justify-content:center}.inv-secondary-tools.is-open{display:flex!important}}

/* Catálogo de laboratorio: componente independiente de la barra de stock. */
.inv-catalog-toolbar{display:block;width:100%;box-sizing:border-box}
.inv-catalog-intro{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px;padding:0 0 10px;border-bottom:1px solid #dbe7ef}
.inv-catalog-intro-copy{display:flex;align-items:center;gap:10px;min-width:0}
.inv-catalog-intro-copy>.material-symbols-outlined{width:36px;height:36px;display:grid;place-items:center;flex:0 0 36px;border-radius:10px;background:#e0e7ff;color:#4f46e5;font-size:1.15rem}
.inv-catalog-intro-copy>div{display:flex;flex-direction:column;gap:1px;min-width:0}
.inv-catalog-intro strong{font-size:.82rem;color:#23455e}
.inv-catalog-intro span{font-size:.7rem;color:#6e8495;line-height:1.35}
.inv-catalog-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.inv-catalog-import{height:34px;padding:0 11px;border:1px solid #9ecedf;border-radius:9px;background:#fff;color:#176784;font-size:.7rem;font-weight:850;white-space:nowrap;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:5px}
.inv-catalog-import>.material-symbols-outlined{font-size:.95rem}
.inv-catalog-import.primary{border-color:#4f46e5;background:#4f46e5;color:#fff;box-shadow:0 5px 12px rgba(79,70,229,.18)}
.inv-catalog-import:hover{background:#edf9fd;border-color:#55b4d4}
.inv-catalog-import.primary:hover{background:#4338ca;border-color:#4338ca}
.inv-catalog-toolbar>.inv-catalog-filters{display:grid!important;grid-template-columns:minmax(260px,1.7fr) repeat(5,minmax(145px,1fr))!important;gap:8px!important;width:100%!important;align-items:center}
.inv-catalog-toolbar>.inv-catalog-filters>.inv-search-wrapper{grid-column:auto!important;min-width:0!important}
.inv-catalog-toolbar .inv-search-input,.inv-catalog-toolbar .inv-input-premium{height:40px!important;padding-top:7px!important;padding-bottom:7px!important;font-size:.76rem!important;border-width:1px!important;border-radius:9px!important}
.inv-catalog-toolbar .inv-search-input{padding-left:38px!important}
.inv-catalog-toolbar>.inv-catalog-summary{margin-top:9px!important;padding-top:8px!important}
.inv-catalog-toolbar>.inv-catalog-summary>div:first-child{gap:6px!important}
.inv-catalog-toolbar>.inv-catalog-summary>div:first-child>div{padding:3px 8px!important;font-size:.68rem!important}
.inv-catalog-toolbar>.inv-catalog-summary>div:first-child>span{font-size:.68rem!important}
@media(max-width:1450px){.inv-catalog-toolbar>.inv-catalog-filters{grid-template-columns:repeat(3,minmax(180px,1fr))!important}.inv-catalog-toolbar>.inv-catalog-filters>.inv-search-wrapper{grid-column:span 2!important}}
.inv-catalog-labs-heading{display:flex;align-items:center;justify-content:space-between;margin:10px 0 6px;padding-top:9px;border-top:1px solid #e1eaf1}.inv-catalog-labs-heading>span{display:flex;align-items:baseline;gap:7px}.inv-catalog-labs-heading b{color:#294b63;font-size:.72rem}.inv-catalog-labs-heading small{color:#8193a1;font-size:.65rem}
.inv-catalog-labs-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:8px;width:100%;margin:0}
.inv-catalog-lab-card{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr) auto 34px;align-items:center;gap:10px;min-width:0;padding:8px;border:1px solid #dbe4ee;border-radius:12px;background:#fff;box-shadow:0 3px 10px rgba(15,23,42,.035)}
.inv-catalog-lab-card:hover{border-color:#b8c9f6;box-shadow:0 7px 18px rgba(79,70,229,.08)}
.inv-catalog-lab-logo{width:72px;height:64px;border:1px solid #e2e8f0;border-radius:9px;overflow:hidden;background:#fff;display:grid;place-items:center}.inv-catalog-lab-logo img{width:100%;height:100%;object-fit:contain;object-position:center;padding:5px;box-sizing:border-box;background:#fff}
.inv-catalog-lab-copy{display:flex;min-width:0;flex-direction:column;justify-content:center;gap:1px}.inv-catalog-lab-copy small{color:#6366f1;font-size:.64rem;font-weight:900;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inv-catalog-lab-copy b{color:#172033;font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inv-catalog-lab-copy span{color:#718096;font-size:.65rem}.inv-catalog-lab-copy span strong{color:#475569}
.inv-catalog-lab-open{height:32px;padding:0 11px;border:1px solid #9ecedf;border-radius:8px;background:#f7fcfe;color:#176784;font-size:.68rem;font-weight:850;cursor:pointer;white-space:nowrap}.inv-catalog-lab-open:hover{background:#e8f7fc;border-color:#62b9d6}
.inv-catalog-lab-menu{position:relative}.inv-catalog-lab-menu>summary{width:32px;height:32px;display:grid;place-items:center;border:1px solid #d8e2ea;border-radius:8px;background:#fff;color:#607589;cursor:pointer;list-style:none}.inv-catalog-lab-menu>summary::-webkit-details-marker{display:none}.inv-catalog-lab-menu>summary span{font-size:1.1rem}.inv-catalog-lab-menu>div{position:absolute;z-index:20;top:37px;right:0;width:150px;padding:5px;border:1px solid #d8e2ea;border-radius:10px;background:#fff;box-shadow:0 14px 32px rgba(15,23,42,.16)}.inv-catalog-lab-menu:not([open])>div{display:none}.inv-catalog-lab-menu button{width:100%;padding:8px;border:0;border-radius:7px;background:transparent;color:#40586c;font-size:.68rem;font-weight:750;text-align:left;cursor:pointer}.inv-catalog-lab-menu button:hover{background:#f1f5f9}
@media(max-width:900px){.inv-catalog-intro{align-items:flex-start;flex-direction:column}.inv-catalog-actions{width:100%;justify-content:flex-start}.inv-catalog-labs-grid{grid-template-columns:1fr}}
@media(max-width:760px){.inv-catalog-toolbar>.inv-catalog-filters{grid-template-columns:1fr!important}.inv-catalog-toolbar>.inv-catalog-filters>.inv-search-wrapper{grid-column:auto!important}.inv-catalog-actions{display:grid;grid-template-columns:1fr 1fr}.inv-catalog-actions .inv-catalog-import{width:100%}.inv-catalog-actions .primary{grid-column:span 2}.inv-catalog-labs-heading small{display:none}.inv-catalog-lab-card{grid-template-columns:58px minmax(0,1fr) 34px}.inv-catalog-lab-logo{width:58px;height:54px}.inv-catalog-lab-open{grid-column:1/-1;width:100%}.inv-catalog-lab-menu{grid-column:3;grid-row:1}.inv-catalog-intro-copy>div span{display:none}}

/* Libro de movimientos: prioriza la lectura del historial sobre la captura manual. */
.inv-ledger-modal{width:min(1380px,96vw)!important;max-width:none!important;height:min(850px,92vh);display:flex!important;flex-direction:column!important;overflow:hidden!important;border:1px solid rgba(255,255,255,.86)!important;border-radius:24px!important;background:rgba(247,251,254,.94)!important;box-shadow:0 32px 80px rgba(20,45,68,.28)!important;backdrop-filter:blur(26px) saturate(125%)}
.inv-ledger-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #d8e6ef;background:linear-gradient(120deg,rgba(255,255,255,.98),rgba(235,247,252,.88))}
.inv-ledger-title{display:flex;align-items:center;gap:13px}.inv-ledger-title>span{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#dff4fb;color:#087da6;font-size:1.35rem}.inv-ledger-title>div{display:grid;gap:1px}.inv-ledger-title>div>span{font-size:.64rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#668196}.inv-ledger-title h2{margin:0;color:#17354d;font-size:1.16rem;line-height:1.15}.inv-ledger-title p{margin:2px 0 0;color:#718899;font-size:.72rem}
.inv-ledger-close{width:38px;height:38px;border:1px solid #cfdee8;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.82);color:#4d697d;cursor:pointer}.inv-ledger-close:hover{background:#fff;color:#164e69;border-color:#9dc8da}.inv-ledger-close .material-symbols-outlined{font-size:1.15rem}
.inv-ledger-body{min-height:0;flex:1;display:flex;flex-direction:column;padding:13px 16px 16px;gap:10px}
.inv-ledger-entry{flex:0 0 auto;border:1px solid #cfe2ec;border-radius:13px;background:rgba(242,250,253,.9);overflow:hidden}.inv-ledger-entry>summary{list-style:none;display:flex;align-items:center;gap:9px;padding:9px 12px;cursor:pointer;color:#22536d}.inv-ledger-entry>summary::-webkit-details-marker{display:none}.inv-ledger-entry>summary>span:first-child{font-size:1.1rem;color:#1687af}.inv-ledger-entry>summary>span:nth-child(2){display:flex;flex-direction:column}.inv-ledger-entry>summary b{font-size:.76rem}.inv-ledger-entry>summary small{font-size:.65rem;color:#7890a0;margin-top:1px}.inv-ledger-entry>summary>i{margin-left:auto;font-size:1rem;transition:.2s}.inv-ledger-entry[open]>summary>i{transform:rotate(180deg)}
.inv-ledger-entry-body{padding:11px;border-top:1px solid #dce9f0;background:rgba(255,255,255,.82)}.inv-ledger-entry label{display:flex;flex-direction:column;gap:4px;min-width:0}.inv-ledger-entry label>span{font-size:.63rem;font-weight:850;color:#5f788a}.inv-ledger-entry .premium-input{height:37px!important;min-height:37px!important;padding:7px 9px!important;border:1px solid #cbdce7!important;border-radius:8px!important;background:#fff!important;font-size:.74rem!important}.inv-ledger-main-fields{display:grid;grid-template-columns:2fr 1fr .65fr;gap:8px}.inv-ledger-reason{margin-top:8px}.inv-ledger-reason textarea{height:48px!important;resize:vertical}.inv-ledger-detail-fields{display:grid;grid-template-columns:1.4fr 1fr .8fr .7fr 1fr;gap:8px;margin-top:8px}.inv-ledger-detail-fields .provider>div{display:flex;gap:5px}.inv-ledger-detail-fields .provider input{min-width:0}.inv-ledger-detail-fields .provider button{width:37px;flex:0 0 37px;border:1px solid #bad3df;border-radius:8px;background:#f5fbfd;color:#197896;cursor:pointer}.inv-ledger-detail-fields .provider button span{font-size:1rem}.inv-ledger-entry-actions{display:flex;justify-content:flex-end;margin-top:9px}.inv-ledger-entry-actions button{height:36px;border:0;border-radius:9px;padding:0 14px;display:flex;align-items:center;gap:6px;background:#147fa7;color:#fff;font-size:.72rem;font-weight:850;cursor:pointer;box-shadow:0 5px 13px rgba(20,127,167,.18)}.inv-ledger-entry-actions button span{font-size:1rem}
.inv-ledger-toolbar{flex:0 0 auto;display:flex;align-items:center;gap:7px;padding:7px;border:1px solid #dae7ee;border-radius:11px;background:rgba(255,255,255,.75)}.inv-ledger-search{height:38px;flex:1;min-width:230px;display:flex;align-items:center;gap:7px;padding:0 10px;border:1px solid #cbdce7;border-radius:8px;background:#fff}.inv-ledger-search span{font-size:1.05rem;color:#7991a2}.inv-ledger-search input{width:100%;border:0;outline:0;background:transparent;color:#27465d;font-size:.75rem}.inv-ledger-toolbar select,.inv-ledger-toolbar>button{height:38px;border:1px solid #cbdce7;border-radius:8px;background:#fff;color:#38566d;padding:0 11px;font-size:.72rem;font-weight:750}.inv-ledger-toolbar>button{cursor:pointer}.inv-ledger-toolbar>span{margin-left:auto;padding-right:7px;color:#758a99;font-size:.68rem;white-space:nowrap}
.inv-ledger-table-wrap{min-height:0;flex:1;overflow:auto;border:1px solid #d7e4ec;border-radius:12px;background:rgba(255,255,255,.88)}.inv-ledger-table{width:100%;min-width:1100px;border-collapse:separate;border-spacing:0;font-size:.72rem}.inv-ledger-table thead{position:sticky;top:0;z-index:5}.inv-ledger-table th{padding:10px 11px;text-align:left;background:#eaf3f8;color:#526d80;font-size:.64rem;font-weight:900;text-transform:uppercase;letter-spacing:.045em;border-bottom:1px solid #d4e2eb}.inv-ledger-table td{padding:10px 11px!important;border-bottom:1px solid #edf2f5;vertical-align:middle}.inv-ledger-table tbody tr:hover{background:#f5fbfd}.inv-ledger-table th:nth-child(4),.inv-ledger-table th:nth-child(5),.inv-ledger-table th:nth-child(6){text-align:center}.inv-ledger-table th:nth-child(1){width:130px}.inv-ledger-table th:nth-child(2){min-width:180px}.inv-ledger-table th:nth-child(7){min-width:200px}.inv-ledger-table th:nth-child(8){min-width:165px}
.inv-ledger-modal.product-entry-mode{width:min(760px,94vw)!important;height:auto!important;max-height:92vh!important}
.inv-ledger-modal.product-entry-mode .inv-ledger-body{display:block;overflow:auto;padding:16px}
.inv-ledger-modal.product-entry-mode .inv-ledger-toolbar,.inv-ledger-modal.product-entry-mode .inv-ledger-table-wrap{display:none!important}
.inv-ledger-modal.product-entry-mode .inv-ledger-entry{border:0;background:transparent;overflow:visible}
.inv-ledger-modal.product-entry-mode .inv-ledger-entry>summary{display:none}
.inv-ledger-modal.product-entry-mode .inv-ledger-entry-body{padding:0;border:0;background:transparent}
.inv-ledger-modal.product-entry-mode .inv-ledger-main-fields{grid-template-columns:1fr .72fr}
.inv-ledger-modal.product-entry-mode .inv-ledger-main-fields .wide{grid-column:1/-1}
.inv-ledger-modal.product-entry-mode #mov-producto{pointer-events:none;background:#eef6fa!important;color:#244d63;font-weight:800}
.inv-ledger-modal.product-entry-mode .inv-ledger-reason{margin-top:12px}
.inv-ledger-modal.product-entry-mode .inv-ledger-detail-fields{grid-template-columns:1.35fr 1fr 1fr;margin-top:12px}
.inv-ledger-modal.product-entry-mode .inv-ledger-detail-fields .provider{grid-column:span 2}
.inv-ledger-modal.product-entry-mode .inv-ledger-entry-actions{margin-top:16px}
.inv-ledger-modal.product-entry-mode .inv-ledger-entry-actions button{height:42px;padding:0 18px;font-size:.78rem}
@media(max-width:850px){.inv-ledger-modal{height:95vh}.inv-ledger-title p{display:none}.inv-ledger-main-fields,.inv-ledger-detail-fields{grid-template-columns:1fr 1fr}.inv-ledger-main-fields .wide,.inv-ledger-detail-fields .provider{grid-column:1/-1}.inv-ledger-toolbar{flex-wrap:wrap}.inv-ledger-search{flex-basis:100%}.inv-ledger-toolbar>span{margin-left:0}.inv-ledger-entry-body{max-height:48vh;overflow:auto}}

/* Custom Grid for Inputs */
.inv-formula-range-card{margin-bottom:12px;padding:12px;border:1px solid #a9d8e8;border-radius:13px;background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(231,247,252,.86))}.inv-formula-range-head{display:flex;align-items:baseline;gap:8px;margin-bottom:9px}.inv-formula-range-head b{font-size:.82rem;color:#185b75}.inv-formula-range-head small{font-size:.68rem;color:#70899a}.inv-formula-range-grid{display:grid;grid-template-columns:repeat(6,minmax(105px,1fr));gap:7px}.inv-formula-range-grid label,.inv-formula-summary{display:flex;flex-direction:column;gap:4px}.inv-formula-range-grid label>span,.inv-formula-summary>span{font-size:.62rem;font-weight:850;color:#5d788b}.inv-formula-range-grid .inv-input-premium{height:38px;padding:7px 8px;font-size:.75rem}.inv-formula-summary{margin-top:8px}.inv-formula-summary .inv-input-premium{height:39px;padding:7px 9px;font-size:.76rem}@media(max-width:1100px){.inv-formula-range-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.inv-formula-range-grid{grid-template-columns:repeat(2,1fr)}.inv-formula-range-head{align-items:flex-start;flex-direction:column}}

.inv-form-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
}

.inv-form-group-full {
    grid-column: 1 / -1;
}

/* Premium Inputs */
.inv-input-group {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.inv-input-group label {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--inv-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.inv-input-premium {
    width: 100%;
    padding: 0.75rem 1rem;
    background: #f8fafc;
    border: 2px solid #e2e8f0;
    border-radius: 12px;
    font-size: 0.95rem;
    color: var(--inv-text-main);
    transition: all 0.2s ease;
}

.inv-input-premium:focus {
    background: #ffffff;
    border-color: var(--inv-primary);
    box-shadow: 0 0 0 4px rgba(14, 165, 233, 0.1);
    outline: none;
}

/* Modern Controls Bar */
.inv-controls-bar {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding: 1rem;
    background: #ffffff;
    border-radius: 14px;
    border: 1px solid var(--inv-border);
    align-items: center;
}

.inv-search-wrapper {
    position: relative;
    flex: 2;
    min-width: 250px;
}

.inv-search-icon {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--inv-text-muted);
}

.inv-search-input {
    width: 100%;
    padding: 0.75rem 0.75rem 0.75rem 40px;
    border-radius: 12px;
    border: 2px solid var(--inv-border);
    background: #f8fafc;
    transition: all 0.2s;
}

.inv-search-input:focus {
    background: #ffffff;
    border-color: var(--inv-primary);
}

/* View Toggles */
.inv-view-toggles {
    display: flex;
    background: #f1f5f9;
    padding: 4px;
    border-radius: 10px;
    gap: 4px;
}

.inv-view-btn {
    padding: 6px 12px;
    border-radius: 8px;
    border: none;
    background: transparent;
    color: var(--inv-text-muted);
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 6px;
    font-weight: 600;
    font-size: 0.85rem;
    transition: all 0.2s;
}

.inv-view-btn.active {
    background: white;
    color: var(--inv-primary);
    box-shadow: var(--inv-shadow-sm);
}

/* Premium Table Styling */
.inv-table-container {
    background: white;
    border-radius: var(--inv-radius);
    border: 1px solid var(--inv-border);
    overflow: hidden;
    box-shadow: var(--inv-shadow-md);
}

.inv-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}

.inv-table th {
    background: #f8fafc;
    padding: 1rem;
    text-align: left;
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--inv-text-muted);
    border-bottom: 1px solid var(--inv-border);
}

.inv-table td {
    padding: 1rem;
    vertical-align: middle;
    border-bottom: 1px solid var(--inv-border);
    transition: background 0.2s;
}

.inv-table tr:hover td {
    background: #f0f9ff;
}

.inv-table tr:last-child td {
    border-bottom: none;
}

@media(min-width:721px){
    #view-inventario #tabla-inventario .inv-img{width:68px!important;height:68px!important;border-radius:13px!important}
    #view-inventario #tabla-inventario .inv-img-premium-placeholder{--inv-placeholder-size:68px!important;--inv-placeholder-icon:1.8rem!important}
}

/* Grid/Card View */
.inv-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1.5rem;
    margin-top: 1rem;
}

.inv-item-card {
    background: white;
    border-radius: var(--inv-radius);
    border: 1px solid var(--inv-border);
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    display: flex;
    flex-direction: column;
}

.inv-item-card:hover {
    transform: translateY(-8px);
    box-shadow: var(--inv-shadow-lg);
    border-color: var(--inv-primary);
}

.inv-item-image-container {
    height: 180px;
    background: #f8fafc;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
}

.inv-item-image {
    max-width: 100%;
    max-height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.inv-item-card:hover .inv-item-image {
    transform: scale(1.1);
}

.inv-item-image-placeholder {
    font-size: 3rem;
    color: #cbd5e1;
}

.inv-img-premium-placeholder {
    width: var(--inv-placeholder-size, 48px);
    height: var(--inv-placeholder-size, 48px);
    min-width: var(--inv-placeholder-size, 48px);
    display: grid;
    place-items: center;
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(148, 184, 220, .34);
    border-radius: clamp(10px, 12%, 18px);
    color: #fff;
    background: linear-gradient(145deg, #dfeeff, #5e7fe7);
    box-shadow: 0 10px 24px -16px rgba(30, 64, 175, .62), inset 0 1px 0 rgba(255,255,255,.78);
    isolation: isolate;
}

.inv-img-premium-placeholder > img {
    position: absolute;
    inset: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .45s cubic-bezier(.22,1,.36,1), filter .3s ease;
}

.inv-img-premium-placeholder.has-photo .inv-placeholder-fallback { opacity: 0; }
.inv-img-premium-placeholder.is-icon { background: linear-gradient(145deg, #7186ec, #3f5bd4); }
.inv-img-premium-placeholder.is-service { background: linear-gradient(145deg, #20a7bb, #2874dc); }
.inv-placeholder-fallback { z-index: 0; font-size: var(--inv-placeholder-icon, 1.5rem); font-variation-settings: 'FILL' 1, 'wght' 420, 'GRAD' 0, 'opsz' 24; }
.inv-placeholder-glow { position: absolute; inset: 0; z-index: 2; pointer-events: none; background: linear-gradient(145deg, rgba(255,255,255,.25), transparent 42%, rgba(30,64,175,.08)); }
.inv-item-card:hover .inv-img-premium-placeholder > img { transform: scale(1.045); filter: saturate(1.04) contrast(1.02); }

.cat-product-select { display: grid; grid-template-columns: auto 46px minmax(0,1fr); align-items: center; gap: 9px; }
.cat-product-thumb { width: 46px; height: 46px; border-radius: 11px; overflow: hidden; }
.cat-product-thumb > img { width: 100%; height: 100%; display: block; object-fit: contain; padding:6px; box-sizing:border-box; background:#fff; border: 1px solid #dbe7f3; border-radius: 11px; }

.inv-item-badge {
    position: absolute;
    top: 12px;
    right: 12px;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    box-shadow: var(--inv-shadow-md);
}

.inv-item-content {
    padding: 1.25rem;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.inv-item-cat {
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--inv-primary);
    text-transform: uppercase;
    margin-bottom: 0.5rem;
}

.inv-item-name {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--inv-text-main);
    margin-bottom: 0.5rem;
    line-height: 1.3;
}

.inv-item-meta {
    font-size: 0.85rem;
    color: var(--inv-text-muted);
    margin-bottom: 1rem;
}

.inv-item-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: auto;
    padding-top: 1rem;
    border-top: 1px solid #f1f5f9;
}

.inv-item-price {
    font-size: 1.25rem;
    font-weight: 800;
    color: var(--inv-text-main);
}

.inv-item-stock-tag {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 0.85rem;
    font-weight: 600;
}

/* Status Colors */
.status--critico {
    color: var(--inv-danger);
    background: #fee2e2;
}

.status--bajo {
    color: var(--inv-warning);
    background: #fef3c7;
}

.status--exceso {
    color: #8b5cf6;
    background: #f5f3ff;
}

.status--disponible {
    color: var(--inv-success);
    background: #dcfce7;
}

/* Animation for the form visibility */
.inv-expand-btn {
    background: transparent;
    border: none;
    color: var(--inv-primary);
    cursor: pointer;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 4px;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .inv-header-premium {
        flex-direction: column;
        text-align: center;
        gap: 1rem;
    }

    .inv-controls-bar {
        flex-direction: column;
        align-items: stretch;
    }

    .inv-search-wrapper {
        min-width: 100%;
    }
}
.cat-product-select { display:flex; align-items:flex-start; gap:9px; }
.cat-product-select input, .cat-select-all input { width:16px; height:16px; margin-top:2px; accent-color:#159fc8; cursor:pointer; }
.cat-select-all { display:flex; align-items:center; gap:7px; cursor:pointer; }
.cat-bulk-price-btn { border:1px solid #83cce0; background:#edfaff; color:#126783; border-radius:9px; padding:7px 13px; font-size:.75rem; font-weight:850; cursor:pointer; }
.cat-bulk-price-btn:disabled { opacity:.45; cursor:not-allowed; }
.cat-bulk-delete-btn { border-color:#fecaca; background:#fff1f2; color:#dc2626; }
/* La tabla del catálogo es más ancha que una pantalla normal. La columna de
   acciones queda fija a la derecha para que editar y eliminar se vean sin
   tener que alejar el navegador. */
@media(min-width:769px){
    .inv-catalog-table thead th:last-child,.inv-catalog-table .cat-catalog-row>td:last-child{position:sticky;right:0;z-index:1;background:#fff;box-shadow:-8px 0 12px -10px rgba(15,23,42,.35)}
    .inv-catalog-table thead th:last-child{background:#f1f5f9}
    .inv-catalog-table .cat-catalog-row:hover>td:last-child{background:#f8fbff}
}
.cat-bulk-price-dialog { display:grid; gap:12px; text-align:left; color:#294e65; }
.cat-bulk-price-dialog label { display:grid; gap:6px; padding:10px; border:1px solid #d5e5ee; border-radius:10px; font-size:.8rem; font-weight:800; }
.cat-bulk-price-dialog select, .cat-bulk-price-dialog input { border:1px solid #a9cbd9; border-radius:8px; padding:8px; background:#fff; color:#17394d; }
.cat-bulk-number { display:flex; align-items:center; gap:6px; font-size:1rem; }
.cat-bulk-price-dialog small { color:#6c8290; font-weight:500; }
.inv-catalog-filter-toggle,.cat-mobile-actions,.cat-mobile-specs{display:none}.inv-catalog-table .cat-product-select{display:grid;grid-template-columns:auto 72px minmax(0,1fr);align-items:center;gap:12px}.inv-catalog-table .cat-product-thumb{width:72px;height:72px;border-radius:15px;background:#fff}.inv-catalog-table .cat-product-thumb>img{width:100%;height:100%;object-fit:contain;padding:7px;box-sizing:border-box;background:#fff;border-radius:15px}.inv-catalog-table tbody td{vertical-align:middle}.inv-catalog-table tbody tr{transition:background .18s ease,box-shadow .18s ease}.inv-catalog-table tbody tr:hover{background:#f8fbff}.inv-catalog-table th:first-child{min-width:330px!important}

@media(max-width:768px){
    .inv-catalog-toolbar{padding:12px!important;border-radius:18px!important;background:linear-gradient(145deg,#f7fbff,#f8fafc)!important}
    .inv-catalog-intro{align-items:flex-start;gap:12px}.inv-catalog-intro>div span{line-height:1.45}.inv-catalog-import{width:100%;justify-content:center;min-height:44px}
    .inv-catalog-filter-toggle{display:flex;width:100%;min-height:44px;margin-top:12px;align-items:center;justify-content:center;gap:7px;border:1px solid #cbddec;border-radius:13px;background:#fff;color:#31536b;font-weight:850;cursor:pointer}
    .inv-catalog-filters{display:block!important}.inv-catalog-filters>div{display:none}.inv-catalog-filters>div:first-child{display:block;margin-top:10px}.inv-catalog-toolbar.filters-open .inv-catalog-filters{display:grid!important;grid-template-columns:1fr!important;margin-top:10px}.inv-catalog-toolbar.filters-open .inv-catalog-filters>div{display:block}.inv-catalog-toolbar.filters-open .inv-catalog-filters>div:first-child{margin-top:0;grid-column:auto!important}
    .inv-catalog-summary{margin-top:10px!important}.inv-catalog-summary>div:first-child{width:100%;display:flex!important;gap:6px!important;overflow:auto}.inv-catalog-summary>div:first-child>span{display:none}.inv-catalog-summary .cat-bulk-price-btn{display:none}
    .inv-catalog-table,.inv-catalog-table tbody{display:block;width:100%}.inv-catalog-table thead{display:none}.inv-catalog-table .cat-catalog-row{display:grid;margin:0 0 12px;padding:14px;border:1px solid #dce7f2!important;border-radius:19px;background:#fff;box-shadow:0 8px 24px rgba(30,64,175,.07)}
    .inv-catalog-table .cat-catalog-row>td{display:none!important;padding:0!important;border:0!important}.inv-catalog-table .cat-catalog-row>td:first-child,.inv-catalog-table .cat-catalog-row>td:nth-child(8),.inv-catalog-table .cat-catalog-row>td:nth-child(9){display:block!important}
    .inv-catalog-table .cat-product-select{grid-template-columns:78px minmax(0,1fr);align-items:start;gap:13px}.inv-catalog-table .cat-product-select>.cat-price-select{display:none}.inv-catalog-table .cat-product-thumb{width:78px;height:78px;border-radius:17px}.inv-catalog-table .cat-product-thumb>img{border-radius:17px}.inv-catalog-table .cat-product-select>div:last-child>div:first-child{font-size:1rem!important;line-height:1.25}
    .cat-mobile-specs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:11px}.cat-mobile-specs span{min-width:0;padding:8px;border-radius:10px;background:#f4f8fc;color:#36536b;font-size:.68rem;overflow:hidden;text-overflow:ellipsis}.cat-mobile-specs b{display:block;margin-bottom:3px;color:#8293a6;font-size:.58rem;text-transform:uppercase;letter-spacing:.04em}
    .inv-catalog-table .cat-catalog-row>td:nth-child(8){margin-top:13px!important;padding-top:13px!important;border-top:1px solid #e7eef5!important}.inv-catalog-table .cat-catalog-row>td:nth-child(8)>div{justify-content:flex-start!important}.inv-catalog-table .cat-catalog-row>td:nth-child(8)>div:before{content:'Precio de venta';margin-right:auto;color:#64748b;font-size:.72rem;font-weight:800}.inv-catalog-table .cat-catalog-row>td:nth-child(8) input{width:112px!important;height:40px;background:#fff!important}
    .cat-desktop-actions{display:none!important}.cat-mobile-actions{display:block;position:relative;margin-top:10px}.cat-mobile-actions summary{display:flex;align-items:center;justify-content:center;gap:6px;min-height:42px;border:1px solid #cbddec;border-radius:12px;background:#f8fbff;color:#31536b;font-weight:850;font-size:.78rem;cursor:pointer;list-style:none}.cat-mobile-actions summary::-webkit-details-marker{display:none}.cat-mobile-actions>div{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:7px}.cat-mobile-actions button{display:flex;align-items:center;justify-content:center;gap:5px;min-height:40px;border:1px solid #bfdbfe;border-radius:11px;background:#eff6ff;color:#1d4ed8;font-weight:800}.cat-mobile-actions button.danger{border-color:#fecaca;background:#fff1f2;color:#dc2626}
    .inv-table-container:has(.inv-catalog-table){overflow:visible!important;border:0!important;background:transparent!important;box-shadow:none!important}
}
.imp-system-preview { margin-top:10px; padding:11px; border:1px solid #b8d9e8; border-radius:11px; background:#fff; text-align:left; }
.imp-system-preview-head { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:8px; color:#214b62; }
.imp-system-preview-head b { display:block; font-size:.82rem; }
.imp-system-preview-head small { display:block; margin-top:2px; color:#718796; font-size:.68rem; }
.imp-system-preview-head > span { padding:4px 8px; border-radius:999px; background:#fff4d8; color:#9a5b00; font-size:.67rem; font-weight:850; }
.imp-system-preview-table { max-height:190px; overflow:auto; border:1px solid #dfeaf0; border-radius:8px; }
.imp-system-preview table { width:100%; border-collapse:collapse; font-size:.7rem; }
.imp-system-preview th { position:sticky; top:0; padding:7px 8px; background:#edf6fa; color:#496779; text-align:left; }
.imp-system-preview td { padding:7px 8px; border-top:1px solid #edf2f5; color:#29485a; }
.imp-system-price { color:#167453 !important; font-weight:850; }
.imp-system-price.pending { color:#aa6400 !important; }
.imp-no-price-warning { display:flex; flex-direction:column; gap:2px; margin-top:8px; padding:8px 10px; border-radius:8px; background:#fff8e7; border:1px solid #f1cf78; color:#825113; font-size:.7rem; }

.inv-medication-fields { padding:16px; border:1px solid #fecaca; border-radius:16px; background:linear-gradient(145deg,#fff 0%,#fff7f7 100%); }
.inv-medication-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-top:14px; }
.inv-medication-storage { grid-column:span 2; }
.inv-medication-note { display:flex; gap:8px; align-items:flex-start; margin:12px 0 0; padding:10px 12px; border-radius:10px; background:#eff6ff; color:#1e40af; font-size:.76rem; line-height:1.45; }
.inv-medication-note .material-symbols-outlined { font-size:1rem; }
.inv-medication-head { display:flex; justify-content:space-between; align-items:center; gap:18px; margin-bottom:16px; }
.inv-medication-eyebrow { display:block; margin-bottom:4px; color:#0f7490; font-size:.68rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.inv-medication-head h3 { margin:0; color:#102a43; font-size:1.28rem; letter-spacing:-.025em; }
.inv-medication-head p { margin:5px 0 0; color:#627d98; font-size:.82rem; }
.inv-med-primary { display:flex; align-items:center; gap:10px; min-width:205px; padding:10px 15px; border:1px solid #0e7490; border-radius:12px; background:#0e7490; color:#fff; text-align:left; cursor:pointer; box-shadow:0 8px 18px rgba(14,116,144,.2); transition:transform .18s ease,box-shadow .18s ease,background .18s ease; }
.inv-med-primary:hover { transform:translateY(-1px); background:#0b6078; box-shadow:0 11px 23px rgba(14,116,144,.24); }
.inv-med-primary .material-symbols-outlined { font-size:1.45rem; }
.inv-med-primary b,.inv-med-primary small { display:block; }
.inv-med-primary b { font-size:.82rem; }
.inv-med-primary small { margin-top:2px; color:#cffafe; font-size:.66rem; }
.inv-expiry-console { display:grid; grid-template-columns:190px 1fr; gap:14px; align-items:stretch; margin-bottom:14px; padding:10px; border:1px solid #d8e5ec; border-radius:15px; background:#fff; box-shadow:0 4px 14px rgba(35,70,88,.055); }
.inv-expiry-console-label { display:flex; align-items:center; gap:10px; padding:8px 10px; border-right:1px solid #e5edf2; color:#294e62; }
.inv-expiry-console-label .material-symbols-outlined { color:#0e7490; }
.inv-expiry-console-label b,.inv-expiry-console-label small { display:block; }
.inv-expiry-console-label b { font-size:.77rem; }
.inv-expiry-console-label small { margin-top:2px; color:#829ab1; font-size:.65rem; }
.inv-medication-summary { display:grid; grid-template-columns:repeat(5,minmax(95px,1fr)); gap:6px; }
.inv-medication-summary button { display:flex; align-items:center; gap:8px; min-height:52px; padding:7px 9px; border:1px solid transparent; border-radius:10px; background:transparent; color:#486581; text-align:left; cursor:pointer; transition:background .16s ease,border-color .16s ease,transform .16s ease; }
.inv-medication-summary button:hover { background:#f5f9fb; transform:translateY(-1px); }
.inv-medication-summary button.active { border-color:#9cc9d5; background:#edf8fa; box-shadow:inset 0 0 0 1px rgba(14,116,144,.08); }
.inv-medication-summary button span:last-child { min-width:0; }
.inv-medication-summary button small,.inv-medication-summary button b { display:block; }
.inv-medication-summary button small { overflow:hidden; color:#627d98; font-size:.63rem; font-weight:750; line-height:1.15; text-overflow:ellipsis; white-space:nowrap; }
.inv-medication-summary button b { margin-top:3px; color:#243b53; font-size:1rem; line-height:1; }
.inv-expiry-dot { width:8px; height:8px; flex:0 0 8px; border-radius:50%; background:#38b2ac; box-shadow:0 0 0 4px rgba(56,178,172,.1); }
.inv-medication-summary .danger .inv-expiry-dot { background:#dc2626; box-shadow:0 0 0 4px rgba(220,38,38,.1); }
.inv-medication-summary .urgent .inv-expiry-dot { background:#f97316; box-shadow:0 0 0 4px rgba(249,115,22,.1); }
.inv-medication-summary .warning .inv-expiry-dot { background:#d69e2e; box-shadow:0 0 0 4px rgba(214,158,46,.1); }
.inv-medication-summary .muted .inv-expiry-dot { background:#94a3b8; box-shadow:0 0 0 4px rgba(148,163,184,.1); }
.inv-medication-toolbar { display:flex; gap:8px; align-items:center; flex-wrap:wrap; margin-bottom:12px; }
.inv-medication-toolbar .inv-search-wrapper { flex:1; min-width:260px; }
.inv-medication-toolbar button { display:inline-flex; align-items:center; gap:6px; }
.inv-med-tool { height:40px; padding:0 12px; border:1px solid #cbdde6; border-radius:10px; background:#fff; color:#365f73; font-size:.72rem; font-weight:800; cursor:pointer; }
.inv-med-tool:hover { border-color:#75b5c5; background:#f1fafb; color:#0e7490; }
.inv-med-tool .material-symbols-outlined { font-size:1.05rem; }
.inv-expiry-guidance { display:flex; align-items:center; gap:10px; margin-bottom:12px; padding:10px 13px; border:1px solid #cfe2e8; border-radius:11px; background:#f5fafb; color:#285a6c; }
.inv-expiry-guidance b,.inv-expiry-guidance small { display:block; }
.inv-expiry-guidance small { margin-top:2px; line-height:1.4; color:#627d98; }
.inv-fefo-mark { margin-left:auto; padding:4px 8px; border-radius:6px; background:#dff3f5; color:#0e7490; font-size:.65rem; font-weight:950; letter-spacing:.08em; }
.inv-medication-table td small { display:block; margin-top:4px; color:#64748b; font-size:.72rem; }
.med-expiry-state { display:inline-flex; padding:4px 8px; border-radius:999px; font-size:.72rem; font-weight:900; }
.med-expiry-state.vencidos { background:#fee2e2; color:#b91c1c; }
.med-expiry-state.\33 0 { background:#ffedd5; color:#c2410c; }
.med-expiry-state.\39 0 { background:#fef3c7; color:#a16207; }
.med-expiry-state.vigentes { background:#dcfce7; color:#166534; }
.med-expiry-state.sin_fecha { background:#f1f5f9; color:#475569; }
.med-row--vencidos td:first-child { border-left:4px solid #dc2626; }
.med-row--\33 0 td:first-child { border-left:4px solid #f97316; }
.med-row--\39 0 td:first-child { border-left:4px solid #eab308; }
.med-stock-btn { background:#ecfdf5; color:#047857; border:0; }
.inv-medication-empty { padding:30px !important; text-align:center; color:#64748b; }

@media (max-width: 900px) {
    .inv-medication-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .inv-expiry-console { grid-template-columns:1fr; }
    .inv-expiry-console-label { border-right:0; border-bottom:1px solid #e5edf2; }
    .inv-medication-summary { grid-template-columns:repeat(3,minmax(105px,1fr)); }
}
@media (max-width: 560px) {
    .inv-medication-grid { grid-template-columns:1fr; }
    .inv-medication-storage { grid-column:auto; }
    .inv-medication-head { align-items:stretch; flex-direction:column; }
    .inv-med-primary { width:100%; }
    .inv-medication-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

.inv-template-popup { padding:0 0 18px !important; overflow:hidden; border-radius:20px !important; background:#f8fbfc !important; }
.inv-template-popup .swal2-title { margin:0 !important; padding:24px 28px 6px !important; text-align:left !important; }
.inv-template-title { color:#173f50; font-size:1.35rem; letter-spacing:-.025em; }
.inv-template-popup .swal2-html-container { margin:0 !important; padding:0 28px !important; }
.inv-template-dialog { text-align:left; }
.inv-template-lead { margin:0 0 12px; color:#6b8593; font-size:.84rem; }
.inv-template-country { display:flex; align-items:center; gap:8px; width:fit-content; margin:0 0 16px; padding:8px 12px; border:1px solid rgba(8,131,156,.18); border-radius:999px; color:#36586a; background:#effafd; font-size:.76rem; }
.inv-template-country .material-symbols-outlined { color:#0785a0; font-size:19px; }
.inv-template-country span:not(.material-symbols-outlined) { padding-left:8px; border-left:1px solid rgba(8,131,156,.18); }
.inv-template-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.inv-template-option { position:relative; display:grid; grid-template-columns:42px 1fr 24px; gap:11px; align-items:center; min-height:105px; padding:15px; border:1px solid #d9e7ed; border-radius:14px; background:#fff; cursor:pointer; transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease; }
.inv-template-option:hover { transform:translateY(-1px); border-color:#8ec2cf; box-shadow:0 8px 18px rgba(39,83,101,.08); }
.inv-template-option input { position:absolute; opacity:0; pointer-events:none; }
.inv-template-option:has(input:checked) { border-color:#16819a; background:#f2fbfc; box-shadow:inset 0 0 0 1px #16819a,0 7px 18px rgba(22,129,154,.1); }
.inv-template-option-icon { display:grid; width:42px; height:42px; place-items:center; border-radius:12px; background:#e8f5f7; color:#0e7490; }
.inv-template-option-copy b,.inv-template-option-copy small { display:block; }
.inv-template-option-copy b { color:#243b53; font-size:.84rem; }
.inv-template-option-copy small { margin-top:4px; color:#6b8190; font-size:.7rem; line-height:1.35; }
.inv-template-tags { display:flex; gap:4px; flex-wrap:wrap; margin-top:8px; }
.inv-template-tags i { padding:3px 6px; border-radius:5px; background:#eef4f6; color:#55707e; font-size:.58rem; font-style:normal; font-weight:800; }
.inv-template-check { color:#16819a; opacity:0; transform:scale(.75); transition:opacity .16s ease,transform .16s ease; }
.inv-template-option:has(input:checked) .inv-template-check { opacity:1; transform:scale(1); }
.inv-template-foot { display:flex; align-items:center; gap:7px; margin-top:14px; padding:9px 11px; border-radius:9px; background:#edf7f0; color:#3c6e4c; font-size:.68rem; font-weight:700; }
.inv-template-foot .material-symbols-outlined { font-size:1rem; }
.inv-template-actions { width:calc(100% - 56px) !important; box-sizing:border-box; justify-content:flex-end !important; gap:8px; margin:18px 28px 0 !important; padding:16px 0 0 !important; border-top:1px solid #dce8ed; }
.inv-template-confirm,.inv-template-all,.inv-template-cancel { display:inline-flex; align-items:center; gap:7px; min-height:40px; padding:0 16px; border-radius:10px; font-size:.76rem; font-weight:850; cursor:pointer; }
.inv-template-confirm { border:1px solid #0e7490; background:#0e7490; color:#fff; }
.inv-template-all { border:1px solid #b9d7e4; background:#eaf7fb; color:#0e6178; }
.inv-template-all:hover { background:#dff2f8; border-color:#74b8cc; }
.inv-template-cancel { border:1px solid #cbdde6; background:#fff; color:#526d7a; }
.inv-template-confirm .material-symbols-outlined { font-size:1rem; }
@media (max-width:620px) {
    .inv-template-popup .swal2-title { padding:20px 18px 6px !important; }
    .inv-template-popup .swal2-html-container { padding:0 18px !important; }
    .inv-template-options { grid-template-columns:1fr; }
    .inv-template-option { min-height:92px; }
    .inv-template-actions { width:calc(100% - 36px) !important; margin:16px 18px 0 !important; }
    .inv-template-confirm,.inv-template-all,.inv-template-cancel { flex:1; justify-content:center; padding:0 10px; }
}

.inv-mobile-command-bar{display:none}
.inv-list-mobile-actions{display:none}
@media(max-width:720px){
    #view-inventario .inv-header-premium{display:grid;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;padding:14px!important;margin-bottom:10px!important;border-radius:18px!important}
    #view-inventario .inv-header-premium>div:first-child{min-width:0}
    #view-inventario .inv-header-premium>div:first-child>span{display:none}
    #view-inventario .inv-header-premium>div:first-child>div{display:block!important}
    #view-inventario .inv-header-premium h2{font-size:1.12rem!important;line-height:1.15}
    #view-inventario #inv-resumen-productos{margin-top:7px!important}
    #view-inventario #inv-resumen-productos>div{font-size:.68rem!important;padding:3px 8px!important}
    #view-inventario #inv-resumen-productos>div:nth-child(2){display:none}
    #view-inventario .inv-header-premium>div:first-child>div>div>button{display:none!important}
    #view-inventario .inv-header-actions{width:auto!important;margin:0!important;overflow:visible!important}
    #view-inventario .inv-header-menu{display:none!important}
    #view-inventario .inv-header-actions>.inv-header-tool,#view-inventario .inv-header-actions>#btn-traslado-inventario{display:none!important}
    #view-inventario #btn-toggle-inv-form{width:46px!important;height:46px!important;min-width:46px!important;padding:0!important;border-radius:15px!important;justify-content:center!important;box-shadow:0 9px 22px rgba(14,165,233,.25)!important}
    #view-inventario #btn-toggle-inv-form .material-symbols-outlined{font-size:1.45rem!important}
    #view-inventario #text-toggle-inv-form{display:none}
    #view-inventario .inv-subnav-tabs{display:block!important;margin:0 0 10px!important;padding:0 0 8px!important;overflow:hidden}
    #view-inventario .inv-subnav-tabs>div{display:flex!important;flex-wrap:nowrap!important;gap:7px!important;overflow-x:auto;padding:1px 2px 5px;scrollbar-width:none;scroll-snap-type:x proximity}
    #view-inventario .inv-subnav-tabs>div::-webkit-scrollbar{display:none}
    #view-inventario .inv-subtab-btn{flex:0 0 auto!important;min-height:42px;padding:8px 12px!important;border-radius:12px!important;scroll-snap-align:start}
    #view-inventario .inv-subtab-btn>span:nth-child(2){white-space:nowrap}
    #view-inventario .inv-controls-bar{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;padding:10px!important;margin-bottom:10px!important;border-radius:17px!important;min-height:0!important}
    #view-inventario .inv-controls-bar>.inv-search-wrapper{grid-column:1!important;min-width:0!important;width:100%!important}
    #view-inventario .inv-controls-bar>.inv-search-wrapper .inv-search-input{height:48px!important;font-size:.92rem!important;padding-left:45px!important}
    .inv-mobile-command-bar{display:grid!important;grid-template-columns:1fr 1fr;gap:8px;position:relative}
    .inv-mobile-command-bar>button,.inv-mobile-command-bar>details>summary{display:flex;align-items:center;justify-content:center;gap:6px;min-height:42px;border:1px solid #cbdde8;border-radius:12px;background:#fff;color:#31536b;font-size:.78rem;font-weight:850;cursor:pointer;list-style:none}
    .inv-mobile-command-bar summary::-webkit-details-marker{display:none}
    .inv-mobile-command-bar .material-symbols-outlined{font-size:1.08rem}
    .inv-mobile-command-bar>details{position:relative}
    .inv-mobile-command-bar>details>div{position:absolute;z-index:80;top:48px;right:0;width:min(310px,calc(100vw - 48px));display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:9px;border:1px solid #d5e3ed;border-radius:15px;background:#fff;box-shadow:0 18px 45px rgba(30,64,90,.2)}
    .inv-mobile-command-bar>details:not([open])>div{display:none}
    .inv-mobile-command-bar>details>div button{display:flex;align-items:center;gap:8px;min-width:0;padding:10px;border:0;border-radius:11px;background:#f4f8fc;color:#294b63;text-align:left;cursor:pointer}
    .inv-mobile-command-bar>details>div button>span:last-child{display:grid;min-width:0}.inv-mobile-command-bar>details>div b{font-size:.72rem}.inv-mobile-command-bar>details>div small{margin-top:2px;color:#71869a;font-size:.58rem}
    .inv-mobile-command-bar>details>.inv-mobile-tools-panel{display:block;width:min(340px,calc(100vw - 32px));max-height:min(68vh,560px);padding:8px;overflow-y:auto}
    .inv-mobile-command-bar>details:not([open])>.inv-mobile-tools-panel{display:none}
    .inv-mobile-tools-panel section{padding:6px 4px 8px}
    .inv-mobile-tools-panel section+section{border-top:1px solid #e4edf3}
    .inv-mobile-tools-panel section>strong{display:block;padding:2px 5px 7px;color:#718697;font-size:.62rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
    .inv-mobile-tools-panel section>div{display:grid;grid-template-columns:1fr 1fr;gap:7px}
    .inv-mobile-command-bar>details>.inv-mobile-tools-panel section button{display:flex;align-items:center;gap:8px;min-width:0;padding:10px;border:0;border-radius:11px;background:#f4f8fc;color:#294b63;text-align:left;cursor:pointer}
    .inv-mobile-command-bar>details>.inv-mobile-tools-panel section button>span:last-child{display:grid;min-width:0}
    #view-inventario .inv-options-menu{display:none!important}
    #view-inventario .inv-controls-bar>div:not(.inv-search-wrapper):not(.inv-secondary-tools):not(.inv-mobile-command-bar){display:none!important}
    #view-inventario .inv-controls-bar>.inv-kardex-main-btn,#view-inventario .inv-controls-bar>#inv-bulk-toggle,#view-inventario .inv-controls-bar>#inv-more-tools-trigger,#view-inventario .inv-controls-bar>.inv-secondary-tools{display:none!important}
    #view-inventario .inv-controls-bar.mobile-filters-open>div:not(.inv-search-wrapper):not(.inv-secondary-tools):not(.inv-mobile-command-bar){display:block!important;grid-column:1!important;width:100%!important}
    #view-inventario .inv-controls-bar.mobile-filters-open .inv-mobile-command-bar>button:first-child{background:#e8f6fc;border-color:#72c6e4;color:#0876a5}
    #view-inventario #inv-bulk-actions-bar.is-open{display:flex!important;position:fixed!important;left:12px!important;right:12px!important;top:auto!important;bottom:92px!important;max-width:none!important;z-index:1000}
}

@media(max-width:720px){
    body.inv-product-form-open .main-nav,
    body.inv-product-form-open .mobile-bottom-nav,
    body.inv-product-form-open .opti-mentor-wrapper,
    body.inv-product-form-open .mentor-show-fab,
    body.inv-product-form-open #fab-optometria{display:none!important}
    .inv-mobile-command-bar{grid-template-columns:minmax(0,1.45fr) .72fr .86fr}
    .inv-mobile-view-switch{display:grid;grid-template-columns:1fr 1fr;padding:3px;border:1px solid #cbdde8;border-radius:12px;background:#eef4f8}
    .inv-mobile-view-switch button{display:flex;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:34px;padding:0 6px;border:0;border-radius:9px;background:transparent;color:#718195;font-size:.68rem;font-weight:850;cursor:pointer}
    .inv-mobile-view-switch button.active{background:#fff;color:#087eae;box-shadow:0 3px 9px rgba(42,83,112,.12)}
    .inv-mobile-view-switch .material-symbols-outlined{font-size:.98rem}
    body.inv-product-form-open{overflow:hidden}
    #view-inventario #inv-form-container{position:fixed!important;z-index:2147483600!important;inset:0!important;width:100%!important;height:100dvh!important;margin:0!important;border:0!important;border-radius:0!important;background:#f3f7fb!important;overflow-y:auto!important;overscroll-behavior:contain;box-shadow:none!important;isolation:isolate}
    #view-inventario #inv-form-container .inv-card-form-header{position:sticky;z-index:30;top:0;min-height:70px;padding:calc(10px + env(safe-area-inset-top)) 12px 10px 16px!important;border-bottom:1px solid #dce7f0;background:rgba(255,255,255,.98);backdrop-filter:blur(18px)}
    #view-inventario #inv-form-container .inv-card-form-header h3{font-size:1.05rem!important}
    #view-inventario #inv-form-container .inv-card-form-header button.inv-form-close{width:auto;min-width:88px;height:44px;display:flex;align-items:center;justify-content:center;gap:5px;padding:0 12px!important;border:1px solid #cfdee7!important;border-radius:13px!important;background:#eef3f7!important;color:#294b63!important;font-weight:850}
    #view-inventario #inv-form-container .inv-card-form-body{padding:16px 14px 104px!important}
    #view-inventario #inv-form-container .inv-step-heading{align-items:flex-start;padding:14px;border-radius:16px;background:#fff;border:1px solid #dce7f0}
    #view-inventario #inv-form-container .inv-type-cards{grid-template-columns:1fr 1fr!important;gap:9px!important;margin-top:12px}
    #view-inventario #inv-form-container .inv-type-cards button{min-height:118px;padding:13px 10px!important;border-radius:16px!important;text-align:center;align-items:center!important}
    #view-inventario #inv-form-container .inv-type-cards button>.material-symbols-outlined{font-size:1.65rem}
    #view-inventario #inv-form-container .inv-type-cards b{font-size:.82rem}
    #view-inventario #inv-form-container .inv-type-cards small{font-size:.66rem;line-height:1.3}
    #view-inventario #inv-product-fields{display:grid;grid-template-columns:1fr!important;gap:13px!important}
    #view-inventario #inv-product-fields>*{grid-column:1/-1!important;width:100%!important;min-width:0!important}
    #view-inventario #inv-product-fields>.inv-input-group{padding:13px;border:1px solid #dce7f0;border-radius:15px;background:#fff}
    #view-inventario #inv-product-fields>.inv-input-group[style*="display: none"]{display:none!important}
    #view-inventario #inv-product-fields>.inv-input-group>div[style*="flex: 0 0 60%"]{flex:1 1 100%!important;width:100%!important}
    #view-inventario #inv-product-fields .inv-input-premium{min-height:48px;font-size:16px!important;border-radius:12px}
    #view-inventario #inv-product-fields .inv-selected-type-bar{padding:11px 12px;border-radius:13px}
    #view-inventario #inv-product-fields .inv-stock-mode-options{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}
    #view-inventario #inv-product-fields .inv-stock-mode-options label{min-height:58px!important;padding:9px 11px!important}
    #view-inventario #inv-product-fields .inv-optical-grid,#view-inventario #inv-product-fields .inv-formula-range-grid,#view-inventario #inv-product-fields .inv-medication-grid{grid-template-columns:1fr 1fr!important;gap:9px!important}
    #view-inventario #inv-product-fields #inv-medication-fields,#view-inventario #inv-product-fields #inv-optical-fields{padding:13px!important;border-radius:16px!important}
    #view-inventario #inv-product-fields .inv-input-group:has(#inv-imagen-file)>div:first-of-type{flex-direction:column!important}
    #view-inventario #inv-product-fields #inv-imagen-file{width:100%;min-width:0!important}
    #view-inventario #inv-form-container .inv-form-footer{position:fixed;z-index:25;left:0;right:0;bottom:0;margin:0!important;padding:12px 14px calc(12px + env(safe-area-inset-bottom));border-top:1px solid #dce7f0;background:rgba(255,255,255,.97);box-shadow:0 -10px 30px rgba(30,64,90,.12)}
    #view-inventario #inv-form-container .inv-form-footer>button{flex:1;min-height:48px;padding:10px!important;justify-content:center;border-radius:13px!important}
}

@media(max-width:390px){#view-inventario #inv-form-container .inv-type-cards{grid-template-columns:1fr!important}#view-inventario #inv-product-fields .inv-optical-grid,#view-inventario #inv-product-fields .inv-formula-range-grid,#view-inventario #inv-product-fields .inv-medication-grid{grid-template-columns:1fr!important}.inv-mobile-command-bar{grid-template-columns:1fr 1fr}.inv-mobile-view-switch{grid-column:1/-1}}

@media(max-width:720px){
    #view-inventario #inv-table-view{overflow:visible;border:0;background:transparent;box-shadow:none}
    #view-inventario #inv-table-view>.inv-table,#view-inventario #inv-table-view>.inv-table>tbody{display:block;width:100%}
    #view-inventario #inv-table-view>.inv-table>thead{display:none}
    #view-inventario #tabla-inventario>.inv-row{display:grid;grid-template-columns:92px minmax(0,1fr);grid-template-rows:auto auto auto;gap:7px 13px;margin-bottom:11px;padding:13px;border:1px solid #dce7f0;border-radius:18px;background:#fff;box-shadow:0 8px 22px rgba(42,73,105,.07)}
    #view-inventario #tabla-inventario>.inv-row>td{display:block!important;width:auto!important;padding:0!important;border:0!important;text-align:left!important}
    #view-inventario #tabla-inventario>.inv-row>td:before{display:none!important;content:none!important}
    #view-inventario #tabla-inventario>.inv-row>td:nth-child(1){grid-column:1;grid-row:1/4;align-self:start;position:relative}
    #view-inventario #tabla-inventario>.inv-row>td:nth-child(1)>.inv-select-iva{display:none}
    #view-inventario #tabla-inventario>.inv-row>td:nth-child(1)>div{display:block!important}
    #view-inventario #tabla-inventario>.inv-row>td:nth-child(1) .inv-img{width:92px!important;height:92px!important;border-radius:17px!important;box-shadow:0 8px 18px rgba(30,64,90,.12)!important}
    #view-inventario #tabla-inventario>.inv-row>td:nth-child(1) .inv-img-premium-placeholder{--inv-placeholder-size:92px!important;--inv-placeholder-icon:2.2rem!important;border-radius:17px!important}
    #view-inventario #tabla-inventario>.inv-row>td:nth-child(2){grid-column:2;grid-row:1}
    #view-inventario #tabla-inventario>.inv-row>td:nth-child(2)>div:first-child{font-size:.96rem!important;line-height:1.24;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
    #view-inventario #tabla-inventario>.inv-row>td:nth-child(2)>div:nth-child(2){margin-top:4px;font-size:.7rem!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    #view-inventario #tabla-inventario>.inv-row>td:nth-child(2)>div:nth-child(3){display:none}
    #view-inventario #tabla-inventario>.inv-row>td:nth-child(3),#view-inventario #tabla-inventario>.inv-row>td:nth-child(4){display:none!important}
    #view-inventario #tabla-inventario>.inv-row>td:nth-child(5){grid-column:2;grid-row:2}
    #view-inventario #tabla-inventario>.inv-row>td:nth-child(5)>div{flex-direction:row!important;align-items:center;gap:7px}
    #view-inventario #tabla-inventario>.inv-row>td:nth-child(5)>div>span:first-child{font-size:.9rem!important}
    #view-inventario #tabla-inventario>.inv-row>td:nth-child(5) .inv-item-stock-tag{margin:0!important;font-size:.6rem!important;border-radius:999px!important;padding:3px 7px!important}
    #view-inventario #tabla-inventario>.inv-row>td:nth-child(6){grid-column:2;grid-row:3;align-self:end}
    #view-inventario #tabla-inventario>.inv-row>td:nth-child(6)>span{font-size:1.05rem!important}
    #view-inventario #tabla-inventario>.inv-row>td:nth-child(7){grid-column:1/-1;grid-row:4;margin-top:5px!important;padding-top:10px!important;border-top:1px solid #e8eef4!important}
    #view-inventario .inv-list-desktop-actions{display:none!important}
    #view-inventario .inv-list-mobile-actions{display:flex;align-items:center;gap:7px}
    #view-inventario .inv-list-mobile-actions>button{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;min-height:40px;padding:0 10px;border:1px solid #cbdde8;border-radius:11px;background:#f7fafc;color:#31536b;font-size:.72rem;font-weight:850}
    #view-inventario .inv-list-mobile-actions>button.primary{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}
    #view-inventario .inv-list-mobile-actions .material-symbols-outlined{font-size:1.05rem}
    #view-inventario .inv-list-mobile-actions>details{position:relative;flex:0 0 44px}
    #view-inventario .inv-list-mobile-actions>details>summary{width:44px;height:40px;display:grid;place-items:center;border:1px solid #cbdde8;border-radius:11px;background:#fff;color:#475569;cursor:pointer;list-style:none}
    #view-inventario .inv-list-mobile-actions>details>summary::-webkit-details-marker{display:none}
    #view-inventario .inv-list-mobile-actions>details>div{position:absolute;z-index:90;right:0;bottom:46px;width:205px;display:grid;gap:5px;padding:7px;border:1px solid #d7e3ec;border-radius:13px;background:#fff;box-shadow:0 16px 38px rgba(30,64,90,.22)}
    #view-inventario .inv-list-mobile-actions>details:not([open])>div{display:none}
    #view-inventario .inv-list-mobile-actions>details button{display:flex;align-items:center;gap:8px;min-height:39px;padding:8px 10px;border:0;border-radius:9px;background:#f5f8fb;color:#31536b;font-size:.72rem;font-weight:800;text-align:left}
    #view-inventario .inv-list-mobile-actions>details button.danger{background:#fff1f2;color:#dc2626}
}

/* Menú descriptivo de acciones por producto. Sustituye las filas de iconos
   difíciles de reconocer y funciona igual en tabla, tarjetas y móvil. */
#view-inventario .inv-product-actions-menu{position:relative;display:inline-block;min-width:132px;color:#294b63}
#view-inventario .inv-product-actions-menu>summary{height:39px;display:flex;align-items:center;justify-content:center;gap:7px;padding:0 11px;border:1px solid #c7dbe7;border-radius:10px;background:#fff;color:#31566f;font-size:.72rem;font-weight:850;cursor:pointer;list-style:none;user-select:none;box-shadow:0 2px 7px rgba(35,75,105,.06)}
#view-inventario .inv-product-actions-menu>summary::-webkit-details-marker{display:none}
#view-inventario .inv-product-actions-menu>summary>.material-symbols-outlined{font-size:1.05rem}
#view-inventario .inv-product-actions-menu>summary:hover{border-color:#69bbd8;background:#f5fbfe;color:#087aa5}
#view-inventario .inv-product-actions-menu[open]>summary{border-color:#52afd1;background:#eaf7fc;color:#087aa5;box-shadow:0 4px 12px rgba(8,122,165,.13)}
#view-inventario .inv-product-actions-chevron{margin-left:auto;transition:transform .18s ease}
#view-inventario .inv-product-actions-menu[open] .inv-product-actions-chevron{transform:rotate(180deg)}
#view-inventario .inv-product-actions-panel{position:absolute;z-index:160;top:45px;right:0;width:340px;max-height:min(510px,72vh);padding:8px;overflow-y:auto;border:1px solid #d4e2eb;border-radius:15px;background:rgba(255,255,255,.99);box-shadow:0 22px 55px rgba(28,62,88,.24);backdrop-filter:blur(16px)}
#view-inventario .inv-product-actions-panel.inv-actions-top-layer{position:fixed!important;z-index:2147483500!important;inset:auto!important;left:var(--inv-actions-left)!important;top:var(--inv-actions-top)!important;right:auto!important;bottom:auto!important;width:var(--inv-actions-width)!important;max-height:var(--inv-actions-max-height)!important;margin:0!important;box-sizing:border-box}
#view-inventario .inv-product-actions-panel.inv-actions-top-layer::backdrop{background:transparent}
#view-inventario .inv-product-actions-menu.inv-actions-open-up>.inv-product-actions-panel{top:auto;bottom:45px}
#view-inventario .inv-product-actions-menu:not([open])>.inv-product-actions-panel{display:none}
#view-inventario .inv-product-actions-help{display:block;margin-bottom:5px;padding:9px 11px;border-radius:11px;background:#edf7fc;color:#2d5f79}
#view-inventario .inv-product-actions-help>span:last-child{display:flex;min-width:0;flex-direction:column;gap:1px}
#view-inventario .inv-product-actions-help b{font-size:.7rem}
#view-inventario .inv-product-actions-help small{overflow:hidden;color:#6e8494;font-size:.61rem;text-overflow:ellipsis;white-space:nowrap}
#view-inventario .inv-product-actions-panel>button{width:100%;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:9px;min-height:56px;padding:7px 8px;border:0;border-radius:11px;background:transparent;color:#294b63;text-align:left;cursor:pointer}
#view-inventario .inv-product-actions-panel>button:hover{background:#f2f7fa}
#view-inventario .inv-product-actions-panel>button>span:nth-child(2){display:flex;min-width:0;flex-direction:column;gap:3px}
#view-inventario .inv-product-actions-panel>button b{font-size:.73rem;line-height:1.2}
#view-inventario .inv-product-actions-panel>button small{color:#718696;font-size:.62rem;line-height:1.3}
#view-inventario .inv-product-action-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;font-size:1.08rem;background:#eaf3f8;color:#315f77}
#view-inventario .inv-product-action-icon.edit{background:#eaf2ff;color:#2563eb}
#view-inventario .inv-product-action-icon.stock{background:#e8f9f1;color:#07815f}
#view-inventario .inv-product-action-icon.image{background:#f4eafe;color:#7c3aed}
#view-inventario .inv-product-action-icon.history{background:#e5f5fd;color:#0879a5}
#view-inventario .inv-product-action-icon.barcode{background:#edf7fb;color:#036b91}
#view-inventario .inv-product-action-icon.delete{background:#fff0f0;color:#dc4545}
#view-inventario .inv-product-actions-panel>button.danger{margin-top:4px;border-top:1px solid #f5dddd;color:#b83232}
#view-inventario .inv-product-actions-panel>button.danger:hover{background:#fff4f4}
#view-inventario #inv-data-container:has(.inv-product-actions-menu[open]),#view-inventario .inv-table-container:has(.inv-product-actions-menu[open]),#view-inventario .inv-table:has(.inv-product-actions-menu[open]),#view-inventario #tabla-inventario:has(.inv-product-actions-menu[open]){overflow:visible!important}
#view-inventario .inv-row:has(.inv-product-actions-menu[open]){position:relative;z-index:60}
#view-inventario .inv-product-actions-menu--tarjeta{display:block;width:100%;margin-top:1rem}
#view-inventario .inv-product-actions-menu--tarjeta>summary{width:100%;box-sizing:border-box;justify-content:flex-start;min-height:44px}
#view-inventario .inv-product-actions-menu--tarjeta>.inv-product-actions-panel{position:absolute;top:auto;right:0;bottom:calc(100% + 8px);width:min(340px,calc(100vw - 36px));max-height:min(510px,72vh);margin:0;box-sizing:border-box;box-shadow:0 18px 45px rgba(28,62,88,.22)}
#view-inventario .inv-item-card:has(.inv-product-actions-menu[open]){z-index:80;overflow:visible;transform:none}

@media(max-width:720px){
    #view-inventario .inv-product-actions-menu{display:block;width:100%;min-width:0}
    #view-inventario .inv-product-actions-menu>summary{width:100%;height:44px;box-sizing:border-box;justify-content:flex-start;padding:0 13px;border-radius:12px}
    #view-inventario .inv-product-actions-panel{position:static;width:auto;max-height:none;margin-top:8px;padding:7px;box-shadow:0 10px 28px rgba(28,62,88,.13)}
    #view-inventario .inv-product-actions-panel>button{min-height:59px}
    #view-inventario .inv-product-actions-panel>button b{font-size:.76rem}
    #view-inventario .inv-product-actions-panel>button small{font-size:.65rem}
    #view-inventario .inv-product-actions-menu--tarjeta>.inv-product-actions-panel{position:absolute;top:auto;right:0;bottom:calc(100% + 8px);width:min(340px,calc(100vw - 28px));max-height:min(460px,68vh);margin:0}
}

.inv-image-source-popup{border-radius:22px!important}
.inv-image-source-picker{text-align:left;color:#294b63}
.inv-image-source-picker>p{margin:0 0 12px;padding:10px 12px;border-radius:11px;background:#edf7fc;color:#557184;font-size:.78rem;line-height:1.4}
.inv-image-source-picker>button{width:100%;display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:12px;margin-top:8px;padding:12px;border:1px solid #d7e5ed;border-radius:14px;background:#fff;color:#294b63;text-align:left;cursor:pointer;transition:.18s ease}
.inv-image-source-picker>button:hover{transform:translateY(-1px);border-color:#68bcd9;background:#f4fbfe;box-shadow:0 8px 20px rgba(37,91,122,.1)}
.inv-image-source-picker>button>.material-symbols-outlined{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;background:#e4f4fb;color:#087da9;font-size:1.35rem}
.inv-image-source-picker>button:nth-of-type(2)>.material-symbols-outlined{background:#eaf8f1;color:#087b5e}
.inv-image-source-picker>button:nth-of-type(3)>.material-symbols-outlined{background:#f3eafe;color:#7c3aed}
.inv-image-source-picker>button>span:last-child{display:flex;min-width:0;flex-direction:column;gap:3px}
.inv-image-source-picker b{font-size:.88rem}
.inv-image-source-picker small{color:#708696;font-size:.7rem;line-height:1.35}

/* Acciones masivas: popover anclado al botón de la esquina. */
#view-inventario #inv-bulk-actions-bar.inv-bulk-popover.is-open{display:block!important;position:absolute!important;z-index:140!important;top:-8px!important;right:87px!important;width:min(700px,calc(100vw - 130px))!important;max-width:700px!important;padding:11px!important;border:1px solid #cfdee8!important;border-radius:16px!important;background:rgba(255,255,255,.99)!important;box-shadow:0 20px 50px rgba(28,62,88,.22)!important;box-sizing:border-box;flex-wrap:nowrap!important}
#view-inventario #inv-bulk-actions-bar.inv-bulk-popover.is-open::before{content:"";position:absolute;top:-7px;right:28px;width:12px;height:12px;border-left:1px solid #cfdee8;border-top:1px solid #cfdee8;background:#fff;transform:rotate(45deg)}
.inv-bulk-popover-head{display:grid;grid-template-columns:minmax(0,1fr) auto 34px;align-items:center;gap:10px;padding:2px 2px 10px;border-bottom:1px solid #e3edf3}
.inv-bulk-popover-head>span:first-child{display:flex;min-width:0;flex-direction:column;gap:2px}.inv-bulk-popover-head b{color:#294b63;font-size:.82rem}.inv-bulk-popover-head small{color:#748998;font-size:.65rem}
.inv-bulk-selected-count{padding:5px 9px;border-radius:999px;background:#e7f5fb;color:#08779f;font-size:.66rem;font-weight:900;white-space:nowrap}
.inv-bulk-popover-head>button{width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:9px;background:#eef3f6;color:#587184;cursor:pointer}.inv-bulk-popover-head>button:hover{background:#e1ebf0;color:#264e65}.inv-bulk-popover-head>button .material-symbols-outlined{font-size:1.05rem}
.inv-bulk-gesture-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding-top:9px}
.inv-bulk-gesture-guide>span{display:grid;grid-template-columns:27px minmax(0,1fr);grid-template-rows:auto auto;column-gap:7px;align-items:center;padding:7px 8px;border-radius:10px;background:#edf7fb;color:#31566f}
.inv-bulk-gesture-guide i{grid-row:1/3;width:27px;height:27px;display:grid;place-items:center;border-radius:8px;background:#d9f0f8;color:#087da9;font-size:.95rem;font-style:normal}
.inv-bulk-gesture-guide b{font-size:.62rem;line-height:1.2}.inv-bulk-gesture-guide small{color:#718694;font-size:.55rem;line-height:1.2}
.inv-bulk-popover-groups{display:grid;grid-template-columns:190px minmax(0,1fr);gap:11px;padding-top:10px}
.inv-bulk-popover-groups section{min-width:0}.inv-bulk-popover-groups section>strong{display:block;margin-bottom:7px;color:#758998;font-size:.6rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.inv-bulk-popover-groups section>div{display:grid;gap:7px}.inv-bulk-apply-group>div{grid-template-columns:repeat(2,minmax(0,1fr))}
#view-inventario .inv-bulk-popover .inv-view-btn{width:100%;min-width:0;height:40px;display:flex;align-items:center;justify-content:flex-start;gap:7px;padding:0 10px;border:1px solid #d7e3eb;border-radius:10px;background:#f7fafc;color:#36566d;font-size:.67rem;font-weight:800;box-shadow:none;white-space:normal;text-align:left}
#view-inventario .inv-bulk-popover .inv-view-btn:hover{border-color:#7fc2da;background:#edf8fc;color:#08779f}
#view-inventario .inv-bulk-popover .inv-view-btn .material-symbols-outlined{flex:0 0 auto;font-size:1rem}
#view-inventario .inv-bulk-popover .inv-view-btn.danger{border-color:#f2c4c8;background:#fff5f5;color:#bc3742}
#view-inventario .inv-bulk-popover .inv-view-btn.danger:hover{border-color:#e98e97;background:#ffebed}

@media(max-width:720px){
    #view-inventario #inv-bulk-actions-bar.inv-bulk-popover.is-open{position:fixed!important;left:12px!important;right:12px!important;top:auto!important;bottom:82px!important;width:auto!important;max-width:none!important;max-height:72vh;overflow-y:auto}
    #view-inventario #inv-bulk-actions-bar.inv-bulk-popover.is-open::before{display:none}
    .inv-bulk-popover-head{grid-template-columns:minmax(0,1fr) auto 34px}
    .inv-bulk-popover-head small{white-space:normal}
    .inv-bulk-gesture-guide{grid-template-columns:1fr}
    .inv-bulk-popover-groups{grid-template-columns:1fr}
    .inv-bulk-popover-groups section>div,.inv-bulk-apply-group>div{grid-template-columns:1fr 1fr}
}

/* Flujo guiado para acciones masivas: seleccionar primero, actuar después. */
#view-inventario .inv-bulk-popover-groups section>strong>span{display:inline-grid;width:19px;height:19px;margin-right:5px;place-items:center;border-radius:50%;background:#e4f3fa;color:#08779f;font-size:.62rem}
#view-inventario .inv-bulk-selection-group{padding:10px;border:1px solid #9cd2e6;border-radius:12px;background:#f1faff}
#view-inventario .inv-bulk-apply-group{padding:10px;border:1px solid #dbe6ec;border-radius:12px;transition:opacity .18s ease,background .18s ease}
#view-inventario .inv-bulk-apply-group.is-disabled{background:#f4f6f8;opacity:.58}
#view-inventario .inv-bulk-apply-group.is-disabled .inv-view-btn{cursor:not-allowed;filter:grayscale(.45)}
#view-inventario.bulk-selection-mode .inv-row,#view-inventario.bulk-selection-mode .inv-item-card{cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
#view-inventario.bulk-selection-mode .inv-select-iva{width:24px!important;height:24px!important;opacity:1!important;pointer-events:auto!important;filter:drop-shadow(0 2px 4px rgba(8,121,159,.22))}
#view-inventario.bulk-selection-mode .inv-row:hover,#view-inventario.bulk-selection-mode .inv-item-card:hover{background:#f3fbfe;box-shadow:0 0 0 2px rgba(14,145,190,.2)}
#view-inventario .inv-row.is-bulk-selected,#view-inventario .inv-item-card.is-bulk-selected{border-color:#0795c6!important;background:#eaf8fd!important;box-shadow:0 0 0 3px rgba(7,149,198,.18)!important}
#view-inventario .inv-row.is-bulk-selected td:first-child{position:relative}

/* La selección debe entenderse sin conocer el significado de un checkbox. */
#view-inventario #tabla-inventario>tr>td:first-child{position:relative}
#view-inventario #tabla-inventario .inv-select-control{display:none;position:absolute;z-index:9;top:9px;left:9px;width:34px;height:34px;align-items:center;justify-content:center;margin:0;padding:0;border:1px solid #8bbfd3;border-radius:10px;background:rgba(255,255,255,.96);color:#356278;cursor:pointer;user-select:none;box-shadow:0 3px 10px rgba(26,70,96,.16)}
#view-inventario.bulk-selection-mode #tabla-inventario .inv-select-control{display:inline-flex}
#view-inventario #tabla-inventario>.inv-row:hover .inv-select-control,#view-inventario #tabla-inventario .inv-select-control:has(.inv-select-iva:checked){display:inline-flex}
#view-inventario #tabla-inventario .inv-select-control>span{display:none}
#view-inventario .inv-select-control .inv-select-iva{width:18px;height:18px;margin:0;accent-color:#0789b8;cursor:pointer}
#view-inventario.bulk-selection-mode .inv-select-control .inv-select-iva{width:22px!important;height:22px!important;cursor:crosshair}
#view-inventario #tabla-inventario .inv-select-control:has(.inv-select-iva:checked){border-color:#0789b8;background:#e5f6fc;color:#08779f}
#view-inventario #tabla-inventario .inv-img{width:104px!important;height:104px!important;padding:4px!important;border-radius:16px!important;background:#f5f8fa!important;object-fit:contain!important;box-sizing:border-box!important;box-shadow:0 7px 18px rgba(30,64,90,.14)!important}
#view-inventario #tabla-inventario .inv-img-premium-placeholder{--inv-placeholder-size:104px!important;--inv-placeholder-icon:2.35rem!important;border-radius:16px!important}
#view-inventario .inv-select-control--card{position:absolute;z-index:7;top:12px;left:12px;width:36px;height:36px;display:none;align-items:center;justify-content:center;padding:0;border:1px solid rgba(8,121,159,.28);border-radius:10px;background:rgba(255,255,255,.94);color:#315a70;cursor:pointer;user-select:none;box-shadow:0 3px 9px rgba(25,62,86,.12)}
#view-inventario.bulk-selection-mode .inv-select-control--card{display:flex}
#view-inventario .inv-item-card:hover .inv-select-control--card,#view-inventario .inv-select-control--card:has(.inv-select-iva:checked){display:flex}
#view-inventario .inv-select-control--card>span{display:none}
#view-inventario .inv-select-control--card:has(.inv-select-iva:checked){background:#0789b8;color:#fff;border-color:#0789b8}
#view-inventario.bulk-selection-mode{user-select:none}
#view-inventario img{-webkit-user-drag:none;user-drag:none}
#view-inventario.bulk-selection-mode .inv-row,#view-inventario.bulk-selection-mode .inv-item-card{touch-action:manipulation}
#view-inventario #inv-bulk-actions-bar.inv-bulk-attention{animation:invBulkAttention .42s ease}
@keyframes invBulkAttention{0%,100%{transform:translateX(0)}25%{transform:translateX(-7px)}50%{transform:translateX(7px)}75%{transform:translateX(-4px)}}
.inv-selection-floating{position:fixed;z-index:210;left:50%;bottom:20px;transform:translateX(-50%);display:grid;grid-template-columns:38px minmax(190px,1fr) auto auto;align-items:center;gap:9px;width:min(620px,calc(100vw - 28px));padding:9px 11px;border:1px solid #8fcde2;border-radius:16px;background:rgba(255,255,255,.97);box-shadow:0 16px 45px rgba(24,69,96,.25);box-sizing:border-box;backdrop-filter:blur(12px)}
.inv-selection-floating[hidden]{display:none!important}
.inv-selection-floating>.material-symbols-outlined{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:#dff5fc;color:#0782ad}
.inv-selection-floating>span:nth-child(2){display:flex;min-width:0;flex-direction:column}.inv-selection-floating b{color:#294b63;font-size:.76rem}.inv-selection-floating small{color:#748998;font-size:.59rem}
.inv-selection-floating button{height:36px;padding:0 12px;border:1px solid #cfdee7;border-radius:10px;background:#f3f7f9;color:#3b596d;font-size:.66rem;font-weight:850;cursor:pointer}.inv-selection-floating button.primary{border-color:#0789b8;background:#0789b8;color:#fff}
body.inv-product-form-open .inv-selection-floating{display:none!important}
body.inv-product-form-open #view-inventario .inv-corner-tools,
body.inv-product-form-open #view-inventario #inv-bulk-actions-bar{display:none!important}
body.inv-product-form-open #view-inventario .inv-controls-bar>div.inv-corner-tools.inv-corner-tools,
body:has(#inv-form-container[style*="display: block"]) #view-inventario .inv-controls-bar>div.inv-corner-tools.inv-corner-tools,
body:has(#inv-form-container[style*="display: block"]) #inv-selection-floating,
body:has(#inv-form-container[style*="display: block"]) #inv-bulk-actions-bar{display:none!important}
#view-inventario #inv-bulk-actions-bar.inv-bulk-popover.is-open.is-floating-open{position:fixed!important;top:auto!important;right:20px!important;bottom:82px!important;width:min(700px,calc(100vw - 40px))!important;max-height:calc(100vh - 110px);overflow-y:auto}
#view-inventario #inv-bulk-actions-bar.inv-bulk-popover.is-open.is-floating-open::before{display:none}

@media(max-width:720px){
    #view-inventario #tabla-inventario>.inv-row>td:nth-child(1)>.inv-select-control{display:none}
    #view-inventario.bulk-selection-mode #tabla-inventario>.inv-row>td:nth-child(1)>.inv-select-control{display:flex!important;position:absolute;z-index:8;top:5px;left:5px;margin:0!important;padding:4px 6px}
    #view-inventario #tabla-inventario>.inv-row>td:nth-child(1)>.inv-select-control{display:flex}
    #view-inventario.bulk-selection-mode #tabla-inventario>.inv-row>td:nth-child(1)>div{margin-top:38px}
}

@media(max-width:620px){
    .inv-selection-floating{grid-template-columns:34px minmax(0,1fr) auto;bottom:10px;padding:8px}
    .inv-selection-floating>span:nth-child(2) small{display:none}
    .inv-selection-floating button{padding:0 9px}
    .inv-selection-floating button:last-child{grid-column:2/4;width:100%}
}

/* Fotografía del formulario de producto: vista amplia y edición comprensible. */
#view-inventario .inv-product-image-toolbar{display:flex;gap:10px;align-items:flex-start}
#view-inventario .inv-product-image-sources{width:100%;display:flex;flex-wrap:wrap;gap:8px}
#view-inventario .inv-product-image-sources .inv-view-btn{min-height:44px;display:flex;align-items:center;gap:7px;padding:0 14px;border:0;color:#fff;font-weight:800}
#view-inventario .inv-image-camera-btn{background:#147bd1!important}
#view-inventario .inv-image-web-btn{background:linear-gradient(135deg,#7c3aed,#5b21b6)!important}
#view-inventario .inv-product-image-preview{margin-top:12px;padding:12px;border:1px solid #cfe0ea;border-radius:16px;background:#f6f9fb}
#view-inventario .inv-product-image-stage{min-height:320px;display:grid;place-items:center;padding:10px;border-radius:13px;background:linear-gradient(135deg,#eaf0f4,#fff);overflow:hidden}
#view-inventario .inv-product-image-stage img{display:block;max-width:100%;width:auto;max-height:360px;border-radius:12px;object-fit:contain;box-shadow:0 10px 28px rgba(31,64,88,.18)}
#view-inventario .inv-product-image-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:10px}
#view-inventario .inv-product-image-actions button{min-height:40px;display:flex;align-items:center;gap:6px;padding:0 13px;border:1px solid #cbdde8;border-radius:10px;background:#fff;color:#31566d;font-size:.72rem;font-weight:850;cursor:pointer}
#view-inventario .inv-product-image-actions button:hover{border-color:#6dbbd6;background:#edf8fc}
#view-inventario .inv-product-image-actions button.danger{border-color:#f2c7ca;background:#fff5f5;color:#c43842}
#view-inventario .inv-product-image-actions .material-symbols-outlined{font-size:1.05rem}
.inv-image-editor{display:grid;gap:12px}.inv-image-editor canvas{display:block;width:100%;max-height:min(480px,52vh);border-radius:14px;background:#eef3f6;cursor:grab;touch-action:none}.inv-image-editor canvas:active{cursor:grabbing}.inv-image-editor-help{display:flex;align-items:center;justify-content:center;gap:7px;margin:0;padding:8px 10px;border-radius:10px;background:#eaf7fc;color:#315f77;font-size:.72rem}.inv-image-editor-help .material-symbols-outlined{font-size:1rem}.inv-image-editor-zoom{display:grid;grid-template-columns:auto minmax(120px,1fr) 48px;align-items:center;gap:10px;color:#31566d;font-size:.72rem;font-weight:850}.inv-image-editor-zoom input{width:100%;accent-color:#0789b8}.inv-image-editor-zoom output{text-align:right;color:#087da9}.inv-image-editor-controls{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.inv-image-editor-controls button{min-height:40px;padding:0 12px;border:1px solid #cbdde8;border-radius:10px;background:#fff;color:#31566d;font-weight:800;cursor:pointer}.inv-image-editor-controls button.active{border-color:#0789b8;background:#e8f7fc;color:#087da9}

@media(max-width:720px){
    #view-inventario .inv-product-image-stage{min-height:240px}
    #view-inventario .inv-product-image-stage img{max-height:300px}
    #view-inventario .inv-product-image-sources{display:grid;grid-template-columns:1fr 1fr}
    #view-inventario .inv-product-image-sources #inv-imagen-file{grid-column:1/-1}
}

/* Campo "Código de barras" con Generar + Escanear (js/modules/inventario-module.js) */
.inv-codigo-campo { display: flex; gap: 6px; align-items: stretch; }
.inv-codigo-campo input { flex: 1; min-width: 0; }
.inv-codigo-btn { display: inline-flex; align-items: center; justify-content: center; gap: 4px; flex: 0 0 auto; min-width: 42px; padding: 0 10px; border: 1px solid #bae6fd; border-radius: 12px; background: #f0f9ff; color: #0369a1; font: inherit; font-size: .74rem; font-weight: 800; cursor: pointer; transition: background .15s, transform .15s; }
.inv-codigo-btn:hover { background: #e0f2fe; transform: translateY(-1px); }
.inv-codigo-btn .material-symbols-outlined { font-size: 19px; }
.inv-codigo-ayuda { display: block; margin-top: 5px; color: #64748b; font-size: .7rem; line-height: 1.35; }
.inv-codigo-ayuda.aviso { color: #b45309; font-weight: 700; }
.inv-codigo-ayuda.error { color: #b91c1c; font-weight: 700; }
.inv-codigo-ayuda button { margin-left: 4px; padding: 2px 8px; border: 0; border-radius: 99px; background: #0369a1; color: #fff; font: inherit; font-size: .68rem; font-weight: 800; cursor: pointer; }
@media (max-width: 640px) { .inv-codigo-btn span:not(.material-symbols-outlined) { display: none; } }

/* Tarjeta "Código de barras": dato que pone el sistema, no un campo de texto */
.inv-codigo-card { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 52px; padding: 6px 6px 6px 10px; border: 1px solid #dbe4ef; border-radius: 14px; background: #fff; box-sizing: border-box; outline: none; transition: border-color .15s, box-shadow .15s; }
.inv-codigo-card:focus-visible, .inv-codigo-card:focus { border-color: #38bdf8; box-shadow: 0 0 0 3px rgba(56, 189, 248, .18); }
.inv-codigo-card.vacio { border-style: dashed; background: #f8fafc; }
.inv-codigo-card.error { border-color: #fca5a5; background: #fef2f2; }
.inv-codigo-card.aviso { border-color: #fcd34d; background: #fffbeb; }
.inv-cc-vacio, .inv-cc-codigo { display: flex; align-items: center; gap: 9px; min-width: 0; }
.inv-cc-vacio > .material-symbols-outlined { color: #94a3b8; font-size: 24px; }
.inv-cc-vacio b, .inv-cc-codigo b { display: block; color: #0f172a; font-size: .86rem; font-weight: 800; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.inv-cc-codigo b { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .04em; }
.inv-cc-vacio small, .inv-cc-codigo small { display: block; color: #64748b; font-size: .68rem; font-weight: 650; }
.inv-cc-codigo > div { min-width: 0; }
.inv-cc-barras { display: block; flex: 0 0 auto; width: 56px; height: 30px; padding: 2px 3px; border-radius: 6px; background: #fff; box-shadow: inset 0 0 0 1px #e2e8f0; }
.inv-cc-barras svg { display: block; width: 100%; height: 100%; }
.inv-cc-acciones { display: flex; align-items: center; gap: 4px; flex: 0 0 auto; }
.inv-cc-btn { display: inline-flex; align-items: center; gap: 4px; height: 36px; padding: 0 11px; border: 0; border-radius: 10px; background: #0284c7; color: #fff; font: inherit; font-size: .74rem; font-weight: 800; cursor: pointer; }
.inv-cc-btn .material-symbols-outlined { font-size: 17px; color: #fff; }
.inv-cc-ic { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid #e2e8f0; border-radius: 10px; background: #f8fafc; color: #0369a1; cursor: pointer; }
.inv-cc-ic:hover { background: #e0f2fe; border-color: #bae6fd; }
.inv-cc-ic .material-symbols-outlined { font-size: 18px; }
.inv-cc-manual { display: flex; align-items: center; gap: 6px; width: 100%; }
.inv-cc-manual input { flex: 1; min-width: 0; height: 36px; padding: 0 10px; border: 1px solid #cbd5e1; border-radius: 10px; font: inherit; font-size: .84rem; text-transform: uppercase; }
.inv-codigo-ayuda .inv-cc-link, .inv-cc-link { margin-left: 2px; padding: 0; border: 0; background: none; color: #0369a1; font: inherit; font-size: .68rem; font-weight: 800; text-decoration: underline; cursor: pointer; }
