/* CDI · Bootstrap 5.3.8. Identidad y vistas de inventario. */
.dialog-titlebar{justify-content:space-between}
.dialog-footer{gap:.5rem;border-top:1px solid #e8e6ed}
:root{--cdi-red:#bd0b2f;--cdi-ink:#292731;--cdi-muted:#716e7c;--cdi-border:#e8e6ed;--bs-primary:#bd0b2f;--bs-primary-rgb:189,11,47;--bs-body-color:#292731;--bs-body-bg:#f6f5f8;--bs-body-font-family:"Segoe UI",system-ui,-apple-system,sans-serif;--bs-border-color:#e8e6ed;--bs-link-color:#bd0b2f;--bs-link-hover-color:#940824;--bs-border-radius:.65rem;--bs-border-radius-lg:1rem}
body{min-width:320px;font-size:.9rem}.wrap{max-width:1320px;padding-inline:28px}.ui-icon{width:20px;height:20px;flex-shrink:0}
.btn{--bs-btn-padding-x:1rem;--bs-btn-padding-y:.65rem;--bs-btn-font-size:.85rem;--bs-btn-font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.btn-primary{--bs-btn-bg:var(--cdi-red);--bs-btn-border-color:var(--cdi-red);--bs-btn-hover-bg:#a00929;--bs-btn-hover-border-color:#a00929;--bs-btn-active-bg:#8b0824;--bs-btn-active-border-color:#8b0824;--bs-btn-disabled-bg:var(--cdi-red);--bs-btn-disabled-border-color:var(--cdi-red);--bs-btn-focus-shadow-rgb:189,11,47;box-shadow:0 4px 10px #bd0b2f18}
.btn-outline-secondary{--bs-btn-color:#5e5868;--bs-btn-border-color:#dedbe5;--bs-btn-hover-bg:#f0edf4;--bs-btn-hover-color:#36303f;--bs-btn-hover-border-color:#d0cbd8;--bs-btn-active-bg:#e6e0eb;--bs-btn-active-color:#36303f;--bs-btn-active-border-color:#d0cbd8;--bs-btn-disabled-color:#827b8b;--bs-btn-disabled-border-color:#dedbe5;--bs-btn-focus-shadow-rgb:112,102,127}
.btn-sm{--bs-btn-font-size:.76rem;--bs-btn-padding-x:.75rem;--bs-btn-padding-y:.45rem}.btn:disabled{cursor:not-allowed}button:focus-visible{outline:3px solid #c56b83;outline-offset:3px}
.form-control,.form-select{font-size:.86rem;min-height:44px;background-color:#fff}.form-control:focus,.form-select:focus{border-color:#ce7187;box-shadow:0 0 0 .2rem #bd0b2f16}.form-control::placeholder{color:#8b8495}.form-check-input:checked{background-color:var(--cdi-red);border-color:var(--cdi-red)}.form-check-input:focus{border-color:#ce7187;box-shadow:0 0 0 .2rem #bd0b2f16}
.card{--bs-card-bg:#fff;--bs-card-border-color:var(--cdi-border);--bs-card-border-radius:1rem;box-shadow:0 4px 20px #28203304}
.topbar{padding:0;background:#fff;border-top:4px solid var(--cdi-red);border-bottom:1px solid var(--cdi-border)}.topbar-inner{width:100%;min-height:98px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{gap:24px}.university-logo{width:158px;height:79px;object-fit:contain}.brand>div{border-left:1px solid var(--cdi-border);padding-left:24px}.brand-name{font-size:1rem;font-weight:750;letter-spacing:-.3px}.brand-dot{color:var(--cdi-red)}.brand-desc{color:var(--cdi-muted);font-size:.72rem;margin-top:3px}
.connection-pill{display:inline-flex;align-items:center;gap:7px;padding:.45rem .7rem;border:1px solid var(--cdi-border);border-radius:2rem;font-size:.71rem;color:var(--cdi-muted);background:#faf9fb;white-space:nowrap}.status-dot{display:block;width:6px;height:6px;border-radius:50%;background:#b68831}.connection-pill.cloud .status-dot{background:#278664}
.hero{padding:36px 0 26px;align-items:flex-start}.hero-main{max-width:680px}.eyebrow{color:var(--cdi-red);letter-spacing:1.65px;font-weight:700;font-size:.64rem;margin-bottom:11px}h1{letter-spacing:-1.2px;margin-bottom:.65rem}.subtitle{color:var(--cdi-muted);font-size:.88rem;line-height:1.7;margin:0;max-width:580px}.hero-actions{flex-shrink:0;align-self:center}
.mode-banner{--bs-alert-bg:#fff;--bs-alert-color:#655d70;--bs-alert-border-color:var(--cdi-border);padding:14px 18px;margin-bottom:24px;font-size:.76rem;border-radius:.75rem}.banner-icon{color:var(--cdi-red);display:inline-flex}#modeMessage{flex:1}.cloud-banner{--bs-alert-bg:#f1f8f5;--bs-alert-color:#316a53;--bs-alert-border-color:#d8e9df}.cloud-banner .banner-icon{color:#316a53}.inline-action,.subtle-btn{background:none;border:0;color:var(--cdi-red);font-size:.75rem;font-weight:650;padding:2px 0;text-align:left}.inline-action:hover,.subtle-btn:hover{text-decoration:underline}
.metrics{margin-bottom:26px}.metric .card-body{padding:23px 24px}.metric-caption{font-size:.78rem;font-weight:600;line-height:1.5;margin:0;padding-top:6px;color:#716979}.metric-number{font-size:clamp(2rem,3.5vw,2.85rem);line-height:1.15;letter-spacing:-1.5px;margin:12px 0 8px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.metric-sub{font-size:.71rem;color:#7a7383}.metric-icon{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;flex-shrink:0;background:#f1eef5;color:#7c718b}.metric-featured{background:#a70d2e;border-color:#a70d2e;color:#fff;box-shadow:0 8px 22px #9e0b2921}.metric-featured .metric-caption,.metric-featured .metric-sub{color:#ffe3e9}.metric-featured .metric-icon{background:#ffffff20;color:#fff}.metric-warning .metric-icon{background:#fff5dc;color:#9f6b09}.metric-danger .metric-icon{background:#fcebf0;color:#bd0b2f}
.main-panel{overflow:hidden}.panel-header{padding:24px;border-bottom:none;display:flex;justify-content:space-between;gap:15px;align-items:center}.panel-header h2{font-size:1.08rem;font-weight:700;letter-spacing:-.3px;margin:0 0 5px}.panel-header p{font-size:.72rem;color:var(--cdi-muted);margin:0}.panel-tools{display:flex;gap:7px}.tabbar{--bs-nav-pills-link-active-bg:#f8e9ee;--bs-nav-pills-link-active-color:#ad0b30;--bs-nav-link-color:#70667b;--bs-nav-link-hover-color:#ad0b30;--bs-nav-link-font-size:.8rem;--bs-nav-link-padding-y:.6rem;--bs-nav-link-padding-x:1.1rem;gap:6px;padding:0 24px 19px;border-bottom:1px solid var(--cdi-border)}.tab{display:inline-flex;align-items:center;gap:7px;font-weight:650}.tab-count{color:#74687e;background:#ece9f0;font-variant-numeric:tabular-nums}.tab.active .tab-count{color:#ad0b30;background:#efd1dc}
.filters{padding:4px 12px 20px}.search-box .input-group-text{color:#83778f;background:#fff;border-right:0}.search-box .form-control{border-left:0;padding-left:0}.search-box:focus-within .input-group-text{border-color:#ce7187}.form-switch .form-check-label{color:#6d6378}
.inventory-table-head,.inventory-row{display:grid;grid-template-columns:minmax(190px,2.2fr) minmax(104px,1.1fr) minmax(85px,1fr) 90px 102px 150px;gap:12px;align-items:center}.inventory-table-head{background:#f8f7fa;border-block:1px solid #eeebf2;font-size:.6rem;font-weight:700;letter-spacing:1px;color:#82768e;padding:14px 24px}.inventory-row{padding:18px 24px;border-bottom:1px solid #efedf3;font-size:.76rem;transition:background .15s}.inventory-row:hover{background:#fdfbfd}.inventory-row:last-child{border-bottom:0}.product-cell{display:flex;gap:12px;align-items:center;min-width:0}.product-icon{width:40px;height:40px;display:grid;place-items:center;flex-shrink:0;background:#f4f1f7;border-radius:11px;font-size:1.2rem}.product-name{font-weight:650;overflow-wrap:anywhere}.product-desc{font-size:.68rem;color:#807489;overflow-wrap:anywhere;margin-top:3px}.category-text,.location-text{color:#786c82;overflow-wrap:anywhere}.qty-number{font-size:1.35rem;font-weight:650;letter-spacing:-.5px;font-variant-numeric:tabular-nums}.qty-unit{display:block;font-size:.63rem;color:#82758b}
.status-tag{color:#276a4e;background:#e9f5ee;font-size:.64rem;font-weight:600;padding:.5rem .6rem;display:inline-flex;align-items:center;gap:5px}.status-tag::before{content:"";width:5px;height:5px;background:currentColor;border-radius:50%}.status-tag.low{color:#8f6006;background:#fff3d8}.status-tag.zero{color:#ad2547;background:#fceaf0}.actions{display:flex;gap:4px}.icon-btn{width:32px;height:32px;padding:0;font-size:1rem;border-radius:8px}.list-footer{border-top:1px solid var(--cdi-border);display:flex;justify-content:space-between;align-items:center;gap:10px;padding:16px 24px;font-size:.72rem;color:#7f7289}
.empty-state{text-align:center;padding:45px 20px;color:#80738b}.empty-art{width:57px;height:57px;margin:0 auto 17px;display:grid;place-items:center;background:#f8eaf0;color:var(--cdi-red);border-radius:17px;font-size:1.6rem}.empty-state h3{font-size:1rem;color:#44394f;font-weight:650}.empty-state p{font-size:.78rem;max-width:370px;margin:0 auto 18px}
.movement-intro{padding:20px 24px;color:#7c6e88;font-size:.78rem;border-bottom:1px solid var(--cdi-border)}.movement-row{background:#fff;display:flex;align-items:center;gap:13px;padding:19px 24px;border:0;border-bottom:1px solid var(--cdi-border)}.movement-sign{width:39px;height:39px;border-radius:12px;background:#e9f5ee;color:#27815d;font-size:1.35rem;display:grid;place-items:center;flex-shrink:0}.movement-sign.negative{color:#bd0b2f;background:#fceaf0}.movement-detail{min-width:0;flex:1}.movement-name{font-size:.82rem;font-weight:600;overflow-wrap:anywhere}.movement-note{font-size:.72rem;color:#7f728b;overflow-wrap:anywhere}.movement-quantity{font-size:1.15rem;font-weight:650;color:#27815d;text-align:right;font-variant-numeric:tabular-nums}.movement-quantity.negative{color:#bd0b2f}.movement-date{color:#7f728b;font-size:.65rem;text-align:right}
.bottom-grid{margin-top:7px}.info-card{box-shadow:none;background:#f9f8fb}.info-card .card-body{padding:20px 22px}.small-icon{color:#8c778d;padding-top:1px}.info-card h3{color:#5b4d68;font-size:.8rem;font-weight:650;margin:0 0 6px}.info-card p{color:#80718c;font-size:.72rem;line-height:1.65;margin:0}footer{display:flex;justify-content:space-between;gap:12px;padding:26px 0;font-size:.68rem;color:#8a7b96}
.cdi-toast{position:fixed;right:24px;bottom:24px;z-index:2000;background:#33283e;color:#fff;max-width:min(440px,calc(100vw - 32px));padding:15px 20px;border-radius:12px;font-size:.8rem;box-shadow:0 8px 30px #21152f30}.cdi-toast.error{background:#a70d2e}
.dialog{padding:0;border:0;width:calc(100% - 32px);max-width:530px;max-height:calc(100dvh - 32px);overflow-y:auto;border-radius:18px;color:var(--cdi-ink);box-shadow:0 30px 110px #20132935;background:#fff}.dialog::backdrop{background:#21172869;backdrop-filter:blur(5px)}.dialog-content{margin:0;border:none;background:#fff}.dialog-titlebar{align-items:flex-start;padding:25px 28px 20px}.dialog-overline{color:var(--cdi-red);font-size:.61rem;font-weight:750;letter-spacing:1.5px}.dialog-titlebar h2{font-size:1.4rem;letter-spacing:-.6px;margin:6px 0 0;font-weight:700}.close-btn{width:32px;height:32px;padding:0;color:#776583}.dialog-body{padding:22px 28px}.field{display:block;font-size:.76rem;font-weight:600;color:#5c4b6a;margin-bottom:17px}.field .form-control,.field .form-select{margin-top:7px;font-weight:400}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.req{color:var(--cdi-red)}.hint{font-size:.72rem;color:#81708d;line-height:1.65;margin:0}.dialog-footer{background:#fcfbfd;padding:17px 24px 21px}.current-stock{padding:13px;background:#f5f0f7;color:#6d587b;border-radius:10px;font-size:.8rem}
.settings-dialog{max-width:465px;border-top:4px solid var(--cdi-red)}.login-brand{padding:25px 30px 18px}.login-brand img{width:181px;height:91px;object-fit:contain;display:block}.settings-dialog .dialog-titlebar{border:0;padding:0 30px 15px}.settings-dialog .dialog-body{padding:0 30px 25px}.settings-info strong{display:none}.settings-info p{color:#7c6c89;font-size:.8rem;line-height:1.7;margin-bottom:18px}.cloud-status{--bs-alert-bg:#f6f1f6;--bs-alert-color:#755b7a;--bs-alert-border-color:#eee5f0;font-size:.72rem;padding:11px 13px}.cloud-status.connected{--bs-alert-bg:#edf7f1;--bs-alert-color:#32684e;--bs-alert-border-color:#d9ebdf}.form-error{font-size:.76rem;padding:12px;margin-bottom:0}.settings-dialog .dialog-footer{padding:18px 26px 23px}#connectBtn{flex:1;min-height:45px}.footer-wrap{flex-wrap:wrap}[hidden]{display:none!important}
@media(min-width:1200px){.metric-caption{max-width:145px}}
@media(max-width:1199.98px){.inventory-table-head,.inventory-row{grid-template-columns:minmax(160px,2fr) 105px minmax(75px,1fr) 72px 95px 140px;gap:7px;padding-inline:19px}.metric .card-body{padding:22px}}
@media(max-width:991.98px){.hero-actions{align-self:flex-start}.inventory-table-head{display:none}.inventory-list{padding:4px 16px}.inventory-row{grid-template-columns:1fr auto;gap:12px;border:1px solid var(--cdi-border)!important;border-radius:12px;margin-block:12px;padding:16px}.product-cell{grid-column:1/-1}.inventory-row>.location-text,.status-cell{text-align:right}.qty-cell{display:flex;align-items:center;gap:7px}.actions{grid-column:1/-1;justify-content:flex-end;border-top:1px solid #eee8f2;padding-top:12px;gap:8px}.icon-btn{width:38px;height:36px}.mode-banner{flex-wrap:wrap}.mode-banner .inline-action{margin-left:35px}}
@media(max-width:575.98px){.wrap{padding-inline:16px}.topbar-inner{min-height:82px;gap:8px}.university-logo{width:106px;height:56px}.brand{gap:11px}.brand>div{padding-left:11px}.brand-name{font-size:.8rem}.brand-desc{font-size:.57rem}.connection-pill,.desktop-label{display:none}.btn-top{width:38px;height:38px;padding:0}.hero{padding-top:26px;gap:20px!important}h1.display-6{font-size:1.95rem}.subtitle{font-size:.79rem}.hero-actions{width:100%}.hero-actions .btn{flex:1;padding-inline:.5rem;font-size:.78rem}.mode-banner{padding:12px;gap:9px!important;font-size:.7rem}#modeMessage{flex-basis:calc(100% - 29px)}.mode-banner .inline-action{margin-left:29px}.metrics{--bs-gutter-x:.7rem;--bs-gutter-y:.7rem;margin-bottom:18px}.metric .card-body{padding:15px 13px}.metric-caption{font-size:.69rem;padding-top:0}.metric-icon{width:25px;height:25px;border-radius:8px}.metric-icon .ui-icon{width:16px;height:16px}.metric-number{font-size:2.1rem;margin-top:17px}.metric-sub{font-size:.62rem}.panel-header{padding:19px 16px}.panel-header h2{font-size:.94rem}.panel-header p{font-size:.64rem}.panel-tools .btn{padding:.5rem}.tabbar{padding:0 16px 15px}.filters{padding-inline:4px}.form-control,.form-select{font-size:1rem}.inventory-list{padding-inline:12px}.list-footer,.movement-intro,.movement-row{padding-inline:16px}.movement-date{max-width:95px;font-size:.6rem}.info-card .card-body{padding:17px}footer{display:block;line-height:1.8}footer span{display:block}.dialog-titlebar,.dialog-body{padding:20px}.dialog-footer{padding:15px 16px}.login-brand{padding:22px 22px 14px}.login-brand img{width:156px;height:78px}.settings-dialog .dialog-titlebar{padding:0 22px 14px}.settings-dialog .dialog-body{padding:0 22px 21px}.settings-dialog .dialog-footer{padding:16px 18px 20px}.form-grid{grid-template-columns:1fr;gap:0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

.product-icon{color:#84708e}.inline-action,.subtle-btn{text-decoration:none}

/* Selector de tema disponible tanto en el panel como en el acceso. */
body { min-width: 0; }
.theme-control { width: 116px; flex-shrink: 0; }
.theme-control .form-select { min-height: 40px; height: 40px; font-size: .8rem; cursor: pointer; }
.login-brand { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; }
.login-brand .theme-control { width: 110px; }
.password-field > .form-label { margin-bottom: 0; }
.password-group { margin-top: 7px; }
.password-group .form-control { margin-top: 0; }
.password-toggle { width: 46px; padding: 0; flex-shrink: 0; }
.password-toggle .password-hide { display: none; }
.password-toggle[data-visible="true"] .password-show { display: none; }
.password-toggle[data-visible="true"] .password-hide { display: block; }
.panel-header { background: #fff; }

/* Paleta oscura: el rojo institucional se conserva en las acciones principales. */
[data-bs-theme="dark"] {
  color-scheme: dark;
  --cdi-ink: #f0eef5;
  --cdi-muted: #b0adbc;
  --cdi-border: #363942;
  --cdi-accent: #ff93ac;
  --cdi-surface: #1e2027;
  --cdi-surface-alt: #272a33;
  --bs-body-color: #f0eef5;
  --bs-body-color-rgb: 240,238,245;
  --bs-body-bg: #16181e;
  --bs-body-bg-rgb: 22,24,30;
  --bs-emphasis-color: #fff;
  --bs-secondary-color: #b0adbc;
  --bs-secondary-bg: #272a33;
  --bs-tertiary-bg: #22252d;
  --bs-border-color: #363942;
  --bs-link-color: #ff93ac;
  --bs-link-color-rgb: 255,147,172;
  --bs-link-hover-color: #ffc0cf;
}
[data-bs-theme="dark"] .card { --bs-card-bg: var(--cdi-surface); --bs-card-cap-bg: var(--cdi-surface); box-shadow: 0 4px 20px #00000012; }
[data-bs-theme="dark"] :is(.topbar,.panel-header,.dialog,.dialog-content,.movement-row) { background: var(--cdi-surface); }
[data-bs-theme="dark"] .btn-outline-secondary {
  --bs-btn-color: #d3cedd;
  --bs-btn-border-color: #4c4d59;
  --bs-btn-hover-bg: #333641;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-border-color: #777382;
  --bs-btn-active-bg: #41424e;
  --bs-btn-active-color: #fff;
  --bs-btn-active-border-color: #777382;
  --bs-btn-disabled-color: #a09aab;
  --bs-btn-disabled-border-color: #4c4d59;
}
[data-bs-theme="dark"] .btn-outline-danger { --bs-btn-color: #ff96ac; --bs-btn-border-color: #ab4d64; --bs-btn-hover-bg: #ab2443; --bs-btn-hover-border-color: #ab2443; }
[data-bs-theme="dark"] .btn-light { --bs-btn-color: #d3cedd; --bs-btn-bg: #2d303a; --bs-btn-border-color: #2d303a; --bs-btn-hover-color: #fff; --bs-btn-hover-bg: #3c3f4c; --bs-btn-hover-border-color: #3c3f4c; }
[data-bs-theme="dark"] :is(.form-control,.form-select,.search-box .input-group-text) { background-color: #22252d; color: #ece9f2; }
[data-bs-theme="dark"] .form-control::placeholder { color: #aaa3b6; }
[data-bs-theme="dark"] .form-control:disabled { background: #30333c; color: #b7afc3; }
[data-bs-theme="dark"] :is(.form-control,.form-select):focus { border-color: #e37b95; box-shadow: 0 0 0 .2rem #e37b9520; }
[data-bs-theme="dark"] .connection-pill { background: #272a33; }
[data-bs-theme="dark"] :is(.eyebrow,.dialog-overline,.brand-dot,.banner-icon,.inline-action,.subtle-btn,.req) { color: var(--cdi-accent); }
[data-bs-theme="dark"] .mode-banner { --bs-alert-bg: #20222b; --bs-alert-color: #c2bbce; --bs-alert-border-color: #393a45; }
[data-bs-theme="dark"] .cloud-banner { --bs-alert-bg: #1d322b; --bs-alert-color: #a2d8bc; --bs-alert-border-color: #3b5b4c; }
[data-bs-theme="dark"] .cloud-banner .banner-icon { color: #a2d8bc; }
[data-bs-theme="dark"] .metric:not(.metric-featured) :is(.metric-caption,.metric-sub) { color: #bdb5c9; }
[data-bs-theme="dark"] .metric-icon { background: #33303e; color: #c8b6da; }
[data-bs-theme="dark"] .metric-featured .metric-icon { background: #ffffff20; color: #fff; }
[data-bs-theme="dark"] .metric-warning .metric-icon { background: #3b321f; color: #edc46b; }
[data-bs-theme="dark"] .metric-danger .metric-icon { background: #422633; color: #ff9ab5; }
[data-bs-theme="dark"] .tabbar { --bs-nav-pills-link-active-bg: #482735; --bs-nav-pills-link-active-color: #ffabc1; --bs-nav-link-color: #bfb4cb; --bs-nav-link-hover-color: #ffabc1; }
[data-bs-theme="dark"] .tab-count { background: #39333f; color: #d2c7de; }
[data-bs-theme="dark"] .tab.active .tab-count { background: #633044; color: #ffd7e2; }
[data-bs-theme="dark"] .inventory-table-head { background: #252730; color: #b8afc5; border-color: #363942; }
[data-bs-theme="dark"] :is(.inventory-row,.actions,.dialog-footer) { border-color: #363942; }
[data-bs-theme="dark"] .inventory-row:hover { background: #24262f; }
[data-bs-theme="dark"] :is(.product-icon,.empty-art,.current-stock) { background: #322b3c; color: #d5bddf; }
[data-bs-theme="dark"] :is(.product-desc,.category-text,.location-text,.qty-unit,.list-footer,.empty-state,.movement-intro,.movement-note,.movement-date,.info-card p,.hint,.settings-info p,footer) { color: #b6adbf; }
[data-bs-theme="dark"] :is(.empty-state h3,.info-card h3,.field,.form-switch .form-check-label,.small-icon,.close-btn) { color: #d6cbdc; }
[data-bs-theme="dark"] .status-tag { background: #233d31; color: #a0dbb9; }
[data-bs-theme="dark"] .status-tag.low { background: #40351f; color: #efd08c; }
[data-bs-theme="dark"] .status-tag.zero { background: #482735; color: #ffadc1; }
[data-bs-theme="dark"] .movement-sign { background: #233d31; color: #a0dbb9; }
[data-bs-theme="dark"] .movement-quantity { color: #a0dbb9; }
[data-bs-theme="dark"] .movement-sign.negative { background: #482735; color: #ffadc1; }
[data-bs-theme="dark"] .movement-quantity.negative { color: #ffadc1; }
[data-bs-theme="dark"] .info-card { background: #1c1e25; }
[data-bs-theme="dark"] .dialog-footer { background: #1a1c23; }
[data-bs-theme="dark"] .dialog::backdrop { background: #05060bb3; }
[data-bs-theme="dark"] .cloud-status { --bs-alert-bg: #302735; --bs-alert-color: #d3bedc; --bs-alert-border-color: #4b3a53; }
[data-bs-theme="dark"] .cloud-status.connected { --bs-alert-bg: #233d31; --bs-alert-color: #a0dbb9; --bs-alert-border-color: #3c5a49; }
[data-bs-theme="dark"] .cdi-toast { background: #e7ddeb; color: #2b2233; }
[data-bs-theme="dark"] .cdi-toast.error { background: #7e2039; color: #fff; }
@media(max-width:575.98px) { .topbar-inner { flex-wrap:wrap; padding-block:10px; } .topbar-actions { margin-left:auto; } .theme-control { width:108px; } }
@media(max-width:400px) { .university-logo { width:82px; height:50px; } .brand { gap:8px; } .brand>div { padding-left:8px; } .brand-name { font-size:.73rem; } .brand-desc { display:none; } }
@media(max-width:400px) { .login-brand { gap:8px; flex-wrap:wrap; } .login-brand img { width:120px; height:60px; } .login-brand .theme-control { width:100px; } }

/* Clasificación del artículo, independiente de su disponibilidad. */
.item-type-tag{display:table;margin-top:5px;padding:3px 8px;border-radius:6px;font-size:.65rem;font-weight:600;background:#eeedf1;color:#60566c}
.item-type-tag.activo{background:#e5eefc;color:#234f92}
.item-type-tag.insumo{background:#f0eaf6;color:#694c82}
.item-type-hint{margin:-5px 0 18px}
[data-bs-theme="dark"] .item-type-tag{background:#30323b;color:#c7c9d1}
[data-bs-theme="dark"] .item-type-tag.activo{background:#263952;color:#b2d1ff}
[data-bs-theme="dark"] .item-type-tag.insumo{background:#392e46;color:#dbc0f2}
