@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

:root {
    --lc-primary: #2563EB;
    --lc-primary-dark: #1D4ED8;
    --lc-primary-soft: #EFF6FF;
    --lc-bg: #F8FAFC;
    --lc-surface: #ffffff;
    --lc-text: #0F172A;
    --lc-muted: #64748B;
    --lc-border: #E2E8F0;
    --lc-sidebar: #F1F5F9;
}

* { box-sizing: border-box; }

body {
    margin: 0;
    font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    background: var(--lc-bg);
    color: var(--lc-text);
    font-size: 14px;
}

a { text-decoration: none; }

.lc-shell { min-height: 100vh; }

.lc-sidebar {
    width: 252px;
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 1000;
    display: flex;
    flex-direction: column;
    padding: 24px 14px 18px;
    background: var(--lc-sidebar);
    border-right: 1px solid var(--lc-border);
}

.lc-brand {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 3px 12px 27px;
}

.lc-brand-icon {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background: var(--lc-primary);
    color: #fff;
    font-size: 21px;
    box-shadow: 0 7px 18px rgba(111,181,44,.24);
}

.lc-brand-name {
    font-size: 20px;
    font-weight: 800;
    letter-spacing: -.6px;
}

.lc-brand-subtitle {
    margin-top: 1px;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 1.7px;
    color: #9aa29a;
}

.lc-nav-section {
    padding: 0 13px 9px;
    color: #a2aaa2;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1.25px;
}

.lc-nav { display: flex; flex-direction: column; gap: 3px; }

.lc-nav-item {
    position: relative;
    display: flex;
    align-items: center;
    gap: 11px;
    min-height: 44px;
    padding: 0 12px;
    border-radius: 11px;
    color: #687068;
    font-weight: 500;
    transition: .18s ease;
}

.lc-nav-item:hover {
    background: #f7faf5;
    color: var(--lc-primary-dark);
}

.lc-nav-item.active {
    color: var(--lc-primary-dark);
    background: var(--lc-primary-soft);
    font-weight: 700;
}

.lc-nav-item.active::before {
    content: "";
    position: absolute;
    left: -14px;
    top: 8px;
    bottom: 8px;
    width: 3px;
    border-radius: 0 5px 5px 0;
    background: var(--lc-primary);
}

.lc-nav-icon {
    width: 22px;
    text-align: center;
    font-size: 17px;
}

.lc-nav-arrow {
    margin-left: auto;
    font-size: 11px;
    color: #a5aca5;
}

.lc-sidebar-bottom { margin-top: auto; }

.lc-version {
    padding: 13px 12px 0;
    color: #adb3ad;
    font-size: 9px;
}

.lc-main {
    min-height: 100vh;
    margin-left: 252px;
}

.lc-topbar {
    height: 72px;
    padding: 0 34px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: rgba(255,255,255,.96);
    border-bottom: 1px solid var(--lc-border);
}

.lc-search {
    width: min(470px, 45vw);
    height: 40px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0 12px;
    border: 1px solid var(--lc-border);
    border-radius: 11px;
    background: #fafcf9;
    color: #929a92;
}

.lc-search input {
    flex: 1;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--lc-text);
    font-size: 12px;
}

.lc-search-shortcut {
    padding: 3px 7px;
    border: 1px solid #e1e6e0;
    border-radius: 5px;
    color: #a0a7a0;
    font-size: 10px;
}

.lc-top-actions { display: flex; align-items: center; gap: 17px; }

.lc-icon-btn {
    position: relative;
    width: 38px;
    height: 38px;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: #697169;
    font-size: 18px;
}

.lc-icon-btn:hover { background: #f4f7f3; }

.lc-notification-dot {
    position: absolute;
    top: 7px;
    right: 7px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #e46d55;
    border: 1.5px solid #fff;
}

.lc-divider { height: 30px; width: 1px; background: var(--lc-border); }

.lc-user { display: flex; align-items: center; gap: 10px; }

.lc-avatar {
    width: 37px;
    height: 37px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #e8f1df;
    color: var(--lc-primary-dark);
    font-size: 11px;
    font-weight: 800;
}

.lc-user-info { display: flex; flex-direction: column; line-height: 1.35; }

.lc-user-info strong { font-size: 12px; }
.lc-user-info span { color: #9aa29a; font-size: 10px; }

.lc-user-chevron { color: #9ca49c; font-size: 10px; margin-left: 3px; }

.lc-content { padding: 31px 34px 10px; max-width: 1600px; }

.lc-page-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 26px;
}

.lc-eyebrow {
    margin-bottom: 7px;
    color: #98a098;
    font-size: 10px;
    font-weight: 600;
}

.lc-eyebrow i { margin-right: 5px; }

.lc-page-header h1 {
    margin: 0;
    font-size: 27px;
    line-height: 1.15;
    font-weight: 800;
    letter-spacing: -.7px;
}

.lc-page-header p {
    margin: 7px 0 0;
    color: var(--lc-muted);
    font-size: 12px;
}

.lc-primary-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 11px 17px;
    border-radius: 10px;
    background: var(--lc-primary);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    box-shadow: 0 8px 18px rgba(111,181,44,.18);
}

.lc-primary-btn:hover {
    background: var(--lc-primary-dark);
    color: #fff;
}

.lc-metric {
    min-height: 164px;
    padding: 19px 20px;
    border: 1px solid var(--lc-border);
    border-radius: 16px;
    background: var(--lc-surface);
    box-shadow: 0 7px 25px rgba(25,45,25,.035);
}

.lc-metric-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.lc-metric-icon {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    font-size: 18px;
}

.lc-card-green .lc-metric-icon { background: #edf8e6; color: #67a928; }
.lc-card-blue .lc-metric-icon { background: #eaf4fb; color: #3282b8; }
.lc-card-orange .lc-metric-icon { background: #fff3e7; color: #df8b32; }
.lc-card-purple .lc-metric-icon { background: #f1edfb; color: #795dc0; }

.lc-metric-period {
    color: #a0a7a0;
    font-size: 10px;
}

.lc-metric-value {
    margin-top: 16px;
    font-size: 27px;
    font-weight: 800;
    letter-spacing: -.8px;
}

.lc-metric-label {
    margin-top: 1px;
    font-size: 12px;
    font-weight: 700;
}

.lc-metric-caption {
    margin-top: 5px;
    color: #9ba29b;
    font-size: 9px;
}

.lc-panel {
    overflow: hidden;
    border: 1px solid var(--lc-border);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 7px 25px rgba(25,45,25,.035);
}

.lc-panel-header {
    min-height: 78px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 17px 21px;
}

.lc-panel-header h2 {
    margin: 0;
    font-size: 14px;
    font-weight: 800;
}

.lc-panel-header p {
    margin: 4px 0 0;
    color: #9aa19a;
    font-size: 10px;
}

.lc-panel-link {
    color: var(--lc-primary-dark);
    font-size: 10px;
    font-weight: 700;
}

.lc-table thead th {
    padding: 10px 20px;
    border-top: 1px solid #f0f2ef;
    border-bottom: 1px solid #edf0ec;
    color: #9aa19a;
    background: #fbfcfb;
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .4px;
}

.lc-table tbody td {
    padding: 14px 20px;
    border-color: #f0f2ef;
    color: #4c554c;
    font-size: 11px;
}

.lc-reference { font-weight: 800; color: #293029; }
.lc-date { color: #8f978f !important; }

.lc-status {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 8px;
    border-radius: 999px;
    color: var(--status-color);
    background: color-mix(in srgb, var(--status-color) 10%, white);
    font-size: 9px;
    font-weight: 700;
}

.lc-status > span {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--status-color);
}

.lc-empty {
    min-height: 220px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #8d968d;
}

.lc-empty-icon {
    width: 46px;
    height: 46px;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: #f2f5f1;
    color: #9da59d;
    font-size: 20px;
}

.lc-empty strong { color: #596159; font-size: 11px; }
.lc-empty span { margin-top: 4px; font-size: 9px; }

.lc-status-panel { height: 100%; }

.lc-more-btn {
    border: 0;
    background: transparent;
    color: #9da49d;
}

.lc-state-row {
    min-height: 54px;
    display: flex;
    align-items: center;
    gap: 11px;
    margin: 0 21px;
    border-bottom: 1px solid #f0f2ef;
}

.lc-state-icon {
    width: 29px;
    height: 29px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    font-size: 12px;
}

.lc-state-icon.green { background: #edf8e6; color: #67a928; }
.lc-state-icon.blue { background: #eaf4fb; color: #3282b8; }
.lc-state-icon.orange { background: #fff3e7; color: #df8b32; }
.lc-state-icon.yellow { background: #fff8dc; color: #bd951b; }
.lc-state-icon.red { background: #fcedeb; color: #d86c5e; }

.lc-state-row span:not(.lc-state-icon) {
    color: #596159;
    font-size: 11px;
}

.lc-state-row strong {
    margin-left: auto;
    font-size: 12px;
}

.lc-mini-note {
    margin: 18px 21px;
    padding: 10px 11px;
    border-radius: 9px;
    background: #f7faf5;
    color: #8b958a;
    font-size: 9px;
    line-height: 1.45;
}

.lc-mini-note i { margin-right: 5px; color: var(--lc-primary); }

.lc-footer {
    padding: 22px 34px;
    color: #a3aaa3;
    font-size: 9px;
    text-align: center;
}

@media (max-width: 900px) {
    .lc-sidebar { width: 74px; padding-left: 10px; padding-right: 10px; }
    .lc-brand { justify-content: center; padding-left: 0; padding-right: 0; }
    .lc-brand > div:not(.lc-brand-icon),
    .lc-nav-item > span:not(.lc-nav-icon),
    .lc-nav-section,
    .lc-version { display: none; }
    .lc-nav-item { justify-content: center; padding: 0; }
    .lc-nav-item.active::before { left: -10px; }
    .lc-main { margin-left: 74px; }
    .lc-topbar { padding: 0 18px; }
    .lc-content { padding: 25px 18px 10px; }
    .lc-search { width: 45vw; }
    .lc-user-info, .lc-user-chevron, .lc-divider { display: none; }
}

@media (max-width: 576px) {
    .lc-topbar { height: 62px; }
    .lc-search { width: 60vw; }
    .lc-page-header { align-items: flex-start; flex-direction: column; }
}

/* ===== Seguridad y acceso ===== */

.lc-secondary-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 13px;border:1px solid var(--lc-border);border-radius:9px;background:#fff;color:#606960;font-size:11px;font-weight:700}
.lc-secondary-btn:hover{background:#f7faf6;color:var(--lc-primary-dark)}
.lc-status-active{color:#4e9721;background:#edf8e6}.lc-status-inactive{color:#a15a52;background:#fcedeb}
.lc-count-badge{display:inline-block;padding:4px 8px;border-radius:999px;background:#f0f5ed;color:#5f8750;font-size:9px;font-weight:700}
.lc-icon-action{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:transparent;color:#8b948b}
.lc-icon-action:hover{background:#f2f6f0;color:var(--lc-primary-dark)}
.lc-modal{border:0;border-radius:16px;box-shadow:0 25px 70px rgba(20,35,20,.18)}
.lc-modal .modal-header,.lc-modal .modal-footer{border-color:var(--lc-border);padding:20px 24px}.lc-modal .modal-body{padding:24px}.lc-modal .modal-title{font-size:16px;font-weight:800}
.lc-form-label{display:block;margin-bottom:6px;color:#5e665e;font-size:10px;font-weight:700}.lc-form-control{min-height:42px;border-color:#e1e7df;border-radius:9px;font-size:12px}
.lc-form-control:focus{border-color:#9dcc70;box-shadow:0 0 0 3px rgba(111,181,44,.1)}
.lc-permission-group{padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid #edf0ec}.lc-permission-group:last-child{border:0}
.lc-permission-module{margin-bottom:10px;color:#8e988e;font-size:9px;font-weight:800;letter-spacing:1px}.lc-permission{min-height:58px;display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid #edf0eb;border-radius:10px;cursor:pointer}.lc-permission:hover{background:#fafcf9}
.lc-permission input{width:17px;height:17px;accent-color:var(--lc-primary)}.lc-permission span{display:flex;flex-direction:column}.lc-permission strong{color:#4f584f;font-size:10px}.lc-permission small{color:#a0a7a0;font-size:8px}
.lc-auth-page{min-height:100vh;background:radial-gradient(circle at 10% 20%,rgba(111,181,44,.12),transparent 32%),#f4f7f3}
.lc-login-shell{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px}.lc-login-brand{display:flex;align-items:center;gap:11px;margin-bottom:22px}
.lc-login-card{width:min(420px,100%);padding:34px;border:1px solid var(--lc-border);border-radius:20px;background:#fff;box-shadow:0 25px 80px rgba(25,45,25,.08)}
.lc-login-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;border-radius:14px;background:var(--lc-primary-soft);color:var(--lc-primary-dark);font-size:20px}
.lc-login-card h1{margin:0;font-size:22px;font-weight:800}.lc-login-card>p{margin:6px 0 25px;color:#8b948b;font-size:11px}.lc-input-group{height:44px;display:flex;align-items:center;gap:9px;padding:0 12px;border:1px solid #e1e7df;border-radius:9px}.lc-input-group:focus-within{border-color:#9dcc70;box-shadow:0 0 0 3px rgba(111,181,44,.1)}.lc-input-group i{color:#9ba39b}.lc-input-group .form-control{border:0;box-shadow:none;padding-left:0;font-size:12px}.lc-login-footer{margin-top:18px;color:#a5ada5;font-size:9px}


/* ===== Administración / cuenta de usuario ===== */
.lc-nav-button{font:inherit;cursor:pointer}
.lc-subnav{margin:0 10px 8px 45px;padding-left:10px;border-left:1px solid rgba(111,181,44,.20)}
.lc-subnav-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:7px;color:#879087;text-decoration:none;font-size:10px;font-weight:600}
.lc-subnav-item:hover{background:#f3f7f0;color:var(--lc-primary-dark)}
.lc-subnav-item.active{background:#edf7e8;color:var(--lc-primary-dark)}
.lc-subnav-item i{font-size:11px}
.lc-user-button{border:0;background:transparent;padding:4px 6px;cursor:pointer}
.lc-user-button:hover{background:#f5f7f4}
.lc-user-menu{min-width:235px;padding:8px;border:1px solid var(--lc-border);border-radius:12px;box-shadow:0 16px 40px rgba(25,45,25,.12)}
.lc-user-menu .dropdown-item{display:flex;align-items:center;gap:9px;border-radius:8px;padding:9px 10px;color:#5d665d;font-size:11px}
.lc-user-menu .dropdown-item:hover{background:#f3f7f0;color:var(--lc-primary-dark)}
.lc-user-menu .dropdown-item i{font-size:14px}
.lc-user-menu-head{display:flex;flex-direction:column;padding:7px 10px}
.lc-user-menu-head strong{font-size:11px;color:#303830}
.lc-user-menu-head span{margin-top:3px;color:#99a199;font-size:9px;overflow:hidden;text-overflow:ellipsis}
.lc-logout-item{width:100%;border:0;background:transparent;text-align:left}


/* ===== Tema oscuro LogiCore — Slate Blue / Low Contrast ===== */
:root[data-theme="dark"] {
    /* Superficies: no usar negro puro ni azul saturado */
    --lc-bg: #0F172A;
    --lc-surface: #172033;
    --lc-surface-raised: #1C273A;
    --lc-surface-hover: #202D42;
    --lc-surface-selected: #1E3150;

    /* Texto */
    --lc-text: #E2E8F0;
    --lc-muted: #94A3B8;
    --lc-muted-strong: #CBD5E1;

    /* Bordes */
    --lc-border: #29364A;
    --lc-border-strong: #3A4A61;

    /* Azul de marca suavizado para dark mode */
    --lc-primary: #60A5FA;
    --lc-primary-dark: #93C5FD;
    --lc-primary-soft: #172C49;
}

:root[data-theme="dark"] body {
    background: var(--lc-bg);
    color: var(--lc-text);
}

:root[data-theme="dark"] .lc-sidebar {
    background: #111B2E;
    border-color: var(--lc-border);
}

:root[data-theme="dark"] .lc-panel,
:root[data-theme="dark"] .lc-topbar,
:root[data-theme="dark"] .lc-modal,
:root[data-theme="dark"] .lc-login-card {
    background: var(--lc-surface);
    color: var(--lc-text);
    border-color: var(--lc-border);
}

:root[data-theme="dark"] .lc-topbar {
    background: rgba(23, 32, 51, .96);
}

:root[data-theme="dark"] .lc-search {
    background: #121C2E;
    border-color: var(--lc-border);
}

:root[data-theme="dark"] .lc-search input {
    color: var(--lc-text);
}

:root[data-theme="dark"] .lc-nav-item {
    color: #A8B5C7;
}

:root[data-theme="dark"] .lc-nav-item:hover {
    background: #1A2639;
    color: #BFDBFE;
}

:root[data-theme="dark"] .lc-nav-item.active {
    background: #1B304D;
    color: #BFDBFE;
}

:root[data-theme="dark"] .lc-nav-section {
    color: #718096;
}

:root[data-theme="dark"] .lc-brand-subtitle,
:root[data-theme="dark"] .lc-user-info span,
:root[data-theme="dark"] .lc-eyebrow,
:root[data-theme="dark"] .lc-page-header p,
:root[data-theme="dark"] .lc-panel-header p,
:root[data-theme="dark"] .lc-version,
:root[data-theme="dark"] .lc-footer {
    color: #7F8DA3;
}

:root[data-theme="dark"] .lc-table {
    background: var(--lc-surface);
}

:root[data-theme="dark"] .lc-table thead th {
    background: #141E30;
    border-color: var(--lc-border);
    color: #94A3B8;
}

:root[data-theme="dark"] .lc-table tbody td {
    border-color: var(--lc-border);
    color: #C7D2E1;
}

:root[data-theme="dark"] .lc-table tbody tr:hover {
    background: #1A2639;
}

:root[data-theme="dark"] .lc-reference {
    color: #E2E8F0;
}

:root[data-theme="dark"] .lc-search-shortcut {
    border-color: var(--lc-border-strong);
    color: #8291A6;
}

:root[data-theme="dark"] .lc-icon-btn {
    color: #A8B5C7;
}

:root[data-theme="dark"] .lc-icon-btn:hover {
    background: var(--lc-surface-hover);
}

:root[data-theme="dark"] .lc-secondary-btn {
    background: #1B2638;
    color: #CBD5E1;
    border-color: var(--lc-border-strong);
}

:root[data-theme="dark"] .lc-secondary-btn:hover {
    background: #243248;
}

:root[data-theme="dark"] .lc-form-control {
    background: #121C2E;
    color: var(--lc-text);
    border-color: var(--lc-border-strong);
}

:root[data-theme="dark"] .lc-form-control::placeholder {
    color: #68778C;
}

:root[data-theme="dark"] .lc-form-control:focus {
    border-color: #60A5FA;
    background: #152137;
    box-shadow: 0 0 0 3px rgba(96, 165, 250, .12);
}

:root[data-theme="dark"] .lc-permission,
:root[data-theme="dark"] .lc-role-option {
    border-color: var(--lc-border);
    background: #141F31;
}

:root[data-theme="dark"] .lc-permission:hover,
:root[data-theme="dark"] .lc-role-option:hover {
    background: #1B293E;
}

:root[data-theme="dark"] .lc-permission strong,
:root[data-theme="dark"] .lc-role-option strong {
    color: #D7E0EB;
}

:root[data-theme="dark"] .lc-user-menu {
    background: #182236;
    border-color: var(--lc-border-strong);
}

:root[data-theme="dark"] .lc-user-menu .dropdown-item {
    color: #C5D0DE;
}

:root[data-theme="dark"] .lc-user-menu .dropdown-item:hover {
    background: #243248;
    color: #BFDBFE;
}

:root[data-theme="dark"] .lc-user-menu-head strong {
    color: #E2E8F0;
}

:root[data-theme="dark"] .lc-auth-page {
    background: radial-gradient(circle at 12% 18%, rgba(96, 165, 250, .08), transparent 30%), #0B1220;
}

:root[data-theme="dark"] .lc-login-card > p,
:root[data-theme="dark"] .lc-login-footer {
    color: #8290A4;
}

:root[data-theme="dark"] .lc-input-group {
    background: #121C2E;
    border-color: var(--lc-border-strong);
}

:root[data-theme="dark"] .lc-input-group .form-control {
    background: transparent;
    color: var(--lc-text);
}

:root[data-theme="dark"] .lc-form-label {
    color: #B8C4D3;
}

:root[data-theme="dark"] .lc-form-section-title {
    color: #D5DEE9;
}

:root[data-theme="dark"] .lc-form-help {
    color: #7F8DA1;
}

:root[data-theme="dark"] .lc-account-info {
    border-color: var(--lc-border);
}

:root[data-theme="dark"] .lc-account-info span {
    color: #8492A6;
}

:root[data-theme="dark"] .lc-role-option small {
    color: #78879B;
}

:root[data-theme="dark"] .lc-role-inline-list {
    background: #121C2E;
    border-color: var(--lc-border-strong);
}

/* Estados: suaves y consistentes, sin saturar la interfaz */
:root[data-theme="dark"] .lc-status-active {
    background: #173329;
    color: #86EFAC;
}

:root[data-theme="dark"] .lc-status-inactive {
    background: #342328;
    color: #FDA4AF;
}

:root[data-theme="dark"] .lc-state-icon.green { background: #173329; color: #86EFAC; }
:root[data-theme="dark"] .lc-state-icon.blue { background: #172C49; color: #93C5FD; }
:root[data-theme="dark"] .lc-state-icon.orange { background: #352B20; color: #FCD34D; }
:root[data-theme="dark"] .lc-state-icon.yellow { background: #332F1F; color: #FDE68A; }
:root[data-theme="dark"] .lc-state-icon.red { background: #342328; color: #FDA4AF; }

/* ===== Formularios de cuentas ===== */
.lc-form-section-title{display:flex;align-items:center;gap:8px;margin-bottom:18px;color:#4c564c;font-size:12px;font-weight:800}
.lc-form-section-title i{color:var(--lc-primary);font-size:16px}
.lc-form-help{margin-top:6px;color:#929a92;font-size:9px;line-height:1.45}
.lc-role-selector{display:flex;flex-direction:column;gap:8px}
.lc-role-option{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid #edf0eb;border-radius:10px;cursor:pointer}
.lc-role-option input{width:17px;height:17px;accent-color:var(--lc-primary)}
.lc-role-option span{display:flex;flex-direction:column}.lc-role-option strong{font-size:10px;color:#4f584f}.lc-role-option small{font-size:8px;color:#9ca49c;margin-top:2px}
.lc-role-inline-list{max-height:94px;overflow:auto;padding:8px 10px;border:1px solid #e1e7df;border-radius:9px}
.lc-role-inline-list label{display:block;padding:3px 0;color:#667066;font-size:9px}.lc-role-inline-list input{accent-color:var(--lc-primary)}
.lc-account-info{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #edf0eb;font-size:10px}
.lc-account-info:last-child{border-bottom:0}.lc-account-info span{color:#8d968d}.lc-account-info strong{color:#4c554c}
.lc-auth-theme-toggle{position:fixed;top:24px;right:24px;z-index:10;background:rgba(255,255,255,.72);border:1px solid var(--lc-border)}
:root[data-theme="dark"] .lc-auth-theme-toggle{background:#1a221a;color:#dbe6d7}


/* ===== Dark mode: contrast and surfaces ===== */
:root[data-theme="dark"]{
  --lc-bg:#0f140f;
  --lc-surface:#171e17;
  --lc-surface-2:#1d261d;
  --lc-text:#f0f4ee;
  --lc-text-soft:#c5cec2;
  --lc-muted:#8f9a8d;
  --lc-border:#303a30;
  --lc-primary:#6fbb2b;
}
:root[data-theme="dark"] .bg-white,
:root[data-theme="dark"] .bg-light,
:root[data-theme="dark"] .white,
:root[data-theme="dark"] .modal-content,
:root[data-theme="dark"] .dropdown-menu,
:root[data-theme="dark"] .card,
:root[data-theme="dark"] .table,
:root[data-theme="dark"] .form-control,
:root[data-theme="dark"] .form-select{
  background-color:var(--lc-surface) !important;
  color:var(--lc-text) !important;
  border-color:var(--lc-border) !important;
}
:root[data-theme="dark"] .table{
  --bs-table-bg:var(--lc-surface);
  --bs-table-color:var(--lc-text);
  --bs-table-border-color:var(--lc-border);
}
:root[data-theme="dark"] .table > :not(caption) > * > *{
  background-color:var(--lc-surface) !important;
  color:var(--lc-text) !important;
  border-color:var(--lc-border) !important;
}
:root[data-theme="dark"] .table thead th{
  background:#121812 !important;
  color:#b9c4b6 !important;
}
:root[data-theme="dark"] .text-dark,
:root[data-theme="dark"] .text-body,
:root[data-theme="dark"] .text-black{
  color:var(--lc-text) !important;
}
:root[data-theme="dark"] .text-muted{
  color:var(--lc-muted) !important;
}
:root[data-theme="dark"] a:not(.lc-primary-btn):not(.lc-secondary-btn){
  color:#9bd565;
}
:root[data-theme="dark"] .alert{
  color:var(--lc-text);
  border-color:var(--lc-border);
}
:root[data-theme="dark"] .modal-header,
:root[data-theme="dark"] .modal-footer{
  border-color:var(--lc-border);
}
:root[data-theme="dark"] .btn-close{
  filter:invert(1) grayscale(100%);
}
:root[data-theme="dark"] .form-control:disabled,
:root[data-theme="dark"] .form-select:disabled{
  background:#111711 !important;
  color:#7d887c !important;
}
:root[data-theme="dark"] .form-control::placeholder{
  color:#727d70 !important;
}
:root[data-theme="dark"] .form-check-label{
  color:var(--lc-text-soft);
}

/* ===== Collapsible / scrollable sidebar ===== */
.lc-sidebar{
  overflow-y:auto;
  overflow-x:hidden;
  scrollbar-width:thin;
  scrollbar-color:rgba(111,187,43,.55) transparent;
}
.lc-sidebar::-webkit-scrollbar{width:7px}
.lc-sidebar::-webkit-scrollbar-track{background:transparent}
.lc-sidebar::-webkit-scrollbar-thumb{
  background:rgba(111,187,43,.45);
  border-radius:20px;
}
.lc-sidebar::-webkit-scrollbar-thumb:hover{background:rgba(111,187,43,.75)}

.lc-sidebar-toggle{
  position:absolute;
  right:-13px;
  top:76px;
  width:28px;
  height:28px;
  border-radius:50%;
  border:1px solid #dfe5dd;
  background:#fff;
  color:#687268;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:20;
  box-shadow:0 4px 12px rgba(0,0,0,.10);
  cursor:pointer;
}
.lc-sidebar-toggle:hover{color:#5fa522;border-color:#a9c98d}
:root[data-theme="dark"] .lc-sidebar-toggle{
  background:#202920;
  color:#c6d0c3;
  border-color:#3b483b;
}

body.lc-sidebar-collapsed .lc-sidebar{
  width:76px !important;
}
body.lc-sidebar-collapsed .lc-main,
body.lc-sidebar-collapsed .lc-topbar{
  margin-left:76px !important;
}
body.lc-sidebar-collapsed .lc-sidebar .lc-brand-text,
body.lc-sidebar-collapsed .lc-sidebar .lc-nav-section,
body.lc-sidebar-collapsed .lc-sidebar .lc-nav-item span,
body.lc-sidebar-collapsed .lc-sidebar .lc-version,
body.lc-sidebar-collapsed .lc-sidebar .lc-footer,
body.lc-sidebar-collapsed .lc-sidebar .lc-user-card,
body.lc-sidebar-collapsed .lc-sidebar .lc-sidebar-label{
  display:none !important;
}
body.lc-sidebar-collapsed .lc-sidebar .lc-nav-item{
  justify-content:center;
  padding-left:0;
  padding-right:0;
}
body.lc-sidebar-collapsed .lc-sidebar .lc-nav-item i{
  margin:0 !important;
}
body.lc-sidebar-collapsed .lc-sidebar-toggle{
  right:-13px;
}
:root[data-theme="dark"] body.lc-sidebar-collapsed .lc-sidebar{
  background:#151c15;
}

@media (max-width: 991.98px){
  .lc-sidebar-toggle{display:none}
}

html.logicore-sidebar-collapsed body .lc-sidebar{width:76px!important}html.logicore-sidebar-collapsed body .lc-main,html.logicore-sidebar-collapsed body .lc-topbar{margin-left:76px!important}


/* ==========================================================
   LogiCore Sidebar v1.11 — compacto, scroll independiente
   ========================================================== */
.lc-sidebar{
    width:252px;
    height:100vh;
    overflow:hidden !important;
    transition:width .22s ease;
}
.lc-sidebar-scroll{
    height:100%;
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    padding:24px 14px 18px;
    scrollbar-width:thin;
    scrollbar-color:rgba(111,187,43,.55) transparent;
}
.lc-sidebar-scroll::-webkit-scrollbar{width:7px}
.lc-sidebar-scroll::-webkit-scrollbar-track{background:transparent}
.lc-sidebar-scroll::-webkit-scrollbar-thumb{
    background:rgba(111,187,43,.45);
    border-radius:20px;
}
.lc-sidebar-scroll::-webkit-scrollbar-thumb:hover{
    background:rgba(111,187,43,.78);
}

/* The collapse button stays visible and never participates in scrolling. */
.lc-sidebar-toggle{
    position:absolute;
    top:88px;
    right:-14px;
    width:30px;
    height:30px;
    padding:0;
    border-radius:50%;
    border:1px solid #dce5d8;
    background:#fff;
    color:#5d695c;
    display:flex;
    align-items:center;
    justify-content:center;
    z-index:1100;
    box-shadow:0 4px 14px rgba(28,45,25,.14);
    cursor:pointer;
    transition:background .2s ease,color .2s ease,transform .2s ease;
}
.lc-sidebar-toggle:hover{
    color:#5fa522;
    border-color:#a9ca8e;
    transform:scale(1.05);
}
:root[data-theme="dark"] .lc-sidebar-toggle{
    background:#202a20;
    color:#cbd6c8;
    border-color:#3b483b;
}

/* Expanded state */
.lc-sidebar .lc-brand{
    flex-shrink:0;
}

/* Collapsed state: preserve icons, hide only labels. */
body.lc-sidebar-collapsed .lc-sidebar{
    width:76px !important;
}
body.lc-sidebar-collapsed .lc-sidebar-scroll{
    padding-left:10px;
    padding-right:10px;
}
body.lc-sidebar-collapsed .lc-sidebar .lc-brand{
    justify-content:center;
    padding-left:0;
    padding-right:0;
}
body.lc-sidebar-collapsed .lc-sidebar .lc-brand > div:not(.lc-brand-icon),
body.lc-sidebar-collapsed .lc-sidebar .lc-nav-section,
body.lc-sidebar-collapsed .lc-sidebar .lc-nav-item > span:not(.lc-nav-icon),
body.lc-sidebar-collapsed .lc-sidebar .lc-nav-arrow,
body.lc-sidebar-collapsed .lc-sidebar .lc-subnav,
body.lc-sidebar-collapsed .lc-sidebar .lc-version,
body.lc-sidebar-collapsed .lc-sidebar .lc-footer,
body.lc-sidebar-collapsed .lc-sidebar .lc-user-card{
    display:none !important;
}
body.lc-sidebar-collapsed .lc-sidebar .lc-nav-item{
    width:100%;
    min-height:42px;
    justify-content:center;
    padding-left:0;
    padding-right:0;
    gap:0;
}
body.lc-sidebar-collapsed .lc-sidebar .lc-nav-item > .lc-nav-icon{
    margin:0 !important;
}
body.lc-sidebar-collapsed .lc-sidebar .lc-nav-button{
    border:0;
}
body.lc-sidebar-collapsed .lc-sidebar-toggle{
    right:-14px;
}
body.lc-sidebar-collapsed .lc-sidebar .lc-nav-item{
    position:relative;
}

/* Tooltip with the menu label while compact. */
body.lc-sidebar-collapsed .lc-sidebar .lc-nav-item[data-tooltip]::after{
    content:attr(data-tooltip);
    position:absolute;
    left:62px;
    top:50%;
    transform:translateY(-50%);
    white-space:nowrap;
    padding:7px 10px;
    border-radius:7px;
    background:#172017;
    color:#fff;
    font-size:10px;
    font-weight:600;
    opacity:0;
    pointer-events:none;
    transition:opacity .15s ease,transform .15s ease;
    z-index:1500;
    box-shadow:0 5px 18px rgba(0,0,0,.18);
}
body.lc-sidebar-collapsed .lc-sidebar .lc-nav-item[data-tooltip]:hover::after{
    opacity:1;
    transform:translate(4px,-50%);
}

/* Content follows the sidebar width smoothly. */
.lc-main,.lc-topbar{
    transition:margin-left .22s ease;
}
body.lc-sidebar-collapsed .lc-main,
body.lc-sidebar-collapsed .lc-topbar{
    margin-left:76px !important;
}

/* Prevent the pre-paint collapsed class from showing labels for a frame. */
html.logicore-sidebar-collapsed body .lc-sidebar{
    width:76px !important;
}
html.logicore-sidebar-collapsed body .lc-sidebar-scroll{
    padding-left:10px;
    padding-right:10px;
}
html.logicore-sidebar-collapsed body .lc-sidebar .lc-brand{
    justify-content:center;
    padding-left:0;
    padding-right:0;
}
html.logicore-sidebar-collapsed body .lc-sidebar .lc-brand > div:not(.lc-brand-icon),
html.logicore-sidebar-collapsed body .lc-sidebar .lc-nav-section,
html.logicore-sidebar-collapsed body .lc-sidebar .lc-nav-item > span:not(.lc-nav-icon),
html.logicore-sidebar-collapsed body .lc-sidebar .lc-nav-arrow,
html.logicore-sidebar-collapsed body .lc-sidebar .lc-subnav,
html.logicore-sidebar-collapsed body .lc-sidebar .lc-version{
    display:none !important;
}
html.logicore-sidebar-collapsed body .lc-sidebar .lc-nav-item{
    justify-content:center;
    padding-left:0;
    padding-right:0;
}
html.logicore-sidebar-collapsed body .lc-main,
html.logicore-sidebar-collapsed body .lc-topbar{
    margin-left:76px !important;
}

@media (max-width:900px){
    .lc-sidebar{width:74px}
    .lc-sidebar-scroll{padding-left:10px;padding-right:10px}
    .lc-sidebar-toggle{display:none}
    .lc-main{margin-left:74px}
}


/* ==========================================================
   LogiCore Sidebar v1.12 — final
   Functional scroll, invisible scrollbar, reliable icons
   ========================================================== */
.lc-sidebar{
    position:fixed !important;
    left:0 !important;
    top:0 !important;
    bottom:0 !important;
    width:252px !important;
    height:100vh !important;
    padding:0 !important;
    overflow:hidden !important;
    z-index:1000;
    background:var(--lc-sidebar);
    border-right:1px solid var(--lc-border);
    transition:width .2s ease;
}

.lc-sidebar-scroll{
    display:flex !important;
    flex-direction:column !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    padding:24px 14px 18px !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;

    /* Scroll works, scrollbar is invisible. */
    scrollbar-width:none !important;
    -ms-overflow-style:none !important;
}
.lc-sidebar-scroll::-webkit-scrollbar{
    width:0 !important;
    height:0 !important;
    display:none !important;
}
.lc-sidebar-scroll::-webkit-scrollbar-thumb,
.lc-sidebar-scroll::-webkit-scrollbar-track{
    background:transparent !important;
}

.lc-brand{
    flex:0 0 auto !important;
    width:100% !important;
    min-height:70px;
}
.lc-nav{
    flex:0 0 auto !important;
    width:100% !important;
}
.lc-sidebar-bottom{
    flex:0 0 auto !important;
    width:100% !important;
    margin-top:22px !important;
}

/* Icons are NEVER hidden. */
.lc-nav-item > .lc-nav-icon,
.lc-nav-icon{
    display:inline-flex !important;
    flex:0 0 22px !important;
    width:22px !important;
    min-width:22px !important;
    height:22px !important;
    align-items:center !important;
    justify-content:center !important;
    visibility:visible !important;
    opacity:1 !important;
}
.lc-nav-icon i{
    display:inline-block !important;
    visibility:visible !important;
    opacity:1 !important;
    font-size:17px !important;
    line-height:1 !important;
}

/* Compact sidebar */
body.lc-sidebar-collapsed .lc-sidebar,
html.logicore-sidebar-collapsed body .lc-sidebar{
    width:84px !important;
}

body.lc-sidebar-collapsed .lc-sidebar-scroll,
html.logicore-sidebar-collapsed body .lc-sidebar-scroll{
    padding:22px 10px 18px !important;
}

body.lc-sidebar-collapsed .lc-brand,
html.logicore-sidebar-collapsed body .lc-brand{
    justify-content:center !important;
    padding:0 !important;
}

body.lc-sidebar-collapsed .lc-brand > div:not(.lc-brand-icon),
html.logicore-sidebar-collapsed body .lc-brand > div:not(.lc-brand-icon),
body.lc-sidebar-collapsed .lc-nav-section,
html.logicore-sidebar-collapsed body .lc-nav-section,
body.lc-sidebar-collapsed .lc-nav-item > span:not(.lc-nav-icon),
html.logicore-sidebar-collapsed body .lc-nav-item > span:not(.lc-nav-icon),
body.lc-sidebar-collapsed .lc-nav-arrow,
html.logicore-sidebar-collapsed body .lc-nav-arrow,
body.lc-sidebar-collapsed .lc-subnav,
html.logicore-sidebar-collapsed body .lc-subnav,
body.lc-sidebar-collapsed .lc-version,
html.logicore-sidebar-collapsed body .lc-version{
    display:none !important;
}

/* Explicitly restore the icon span after hiding the other spans. */
body.lc-sidebar-collapsed .lc-nav-item > .lc-nav-icon,
html.logicore-sidebar-collapsed body .lc-nav-item > .lc-nav-icon{
    display:inline-flex !important;
    visibility:visible !important;
    opacity:1 !important;
}

body.lc-sidebar-collapsed .lc-nav-item,
html.logicore-sidebar-collapsed body .lc-nav-item{
    width:100% !important;
    min-height:44px !important;
    height:44px !important;
    padding:0 !important;
    margin:2px 0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:0 !important;
    border-radius:11px !important;
}

body.lc-sidebar-collapsed .lc-nav-item.active::before,
html.logicore-sidebar-collapsed body .lc-nav-item.active::before{
    left:-10px !important;
}

body.lc-sidebar-collapsed .lc-sidebar-bottom,
html.logicore-sidebar-collapsed body .lc-sidebar-bottom{
    margin-top:22px !important;
}

.lc-sidebar-toggle{
    position:absolute !important;
    top:128px !important;
    right:-15px !important;
    width:30px !important;
    height:30px !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border:1px solid #dce5d8 !important;
    border-radius:50% !important;
    background:#fff !important;
    color:#667166 !important;
    z-index:2000 !important;
    box-shadow:0 4px 14px rgba(28,45,25,.14) !important;
}
body.lc-sidebar-collapsed .lc-sidebar-toggle,
html.logicore-sidebar-collapsed body .lc-sidebar-toggle{
    right:-15px !important;
}
:root[data-theme="dark"] .lc-sidebar-toggle{
    background:#202a20 !important;
    color:#d4ded1 !important;
    border-color:#3b483b !important;
}

/* Tooltips in compact mode, only when useful. */
body.lc-sidebar-collapsed .lc-nav-item[data-tooltip]::after{
    content:attr(data-tooltip);
    position:absolute;
    left:68px;
    top:50%;
    transform:translateY(-50%);
    white-space:nowrap;
    padding:7px 10px;
    border-radius:7px;
    background:#172017;
    color:#fff;
    font-size:10px;
    font-weight:600;
    opacity:0;
    pointer-events:none;
    z-index:3000;
    box-shadow:0 5px 18px rgba(0,0,0,.18);
    transition:opacity .12s ease;
}
body.lc-sidebar-collapsed .lc-nav-item[data-tooltip]:hover::after{
    opacity:1;
}

.lc-main,.lc-topbar{
    transition:margin-left .2s ease !important;
}
body.lc-sidebar-collapsed .lc-main,
body.lc-sidebar-collapsed .lc-topbar,
html.logicore-sidebar-collapsed body .lc-main,
html.logicore-sidebar-collapsed body .lc-topbar{
    margin-left:84px !important;
}

@media (max-width:900px){
    .lc-sidebar{
        width:84px !important;
    }
    .lc-sidebar-scroll{
        padding-left:10px !important;
        padding-right:10px !important;
    }
    .lc-sidebar-toggle{
        display:none !important;
    }
    .lc-main{
        margin-left:84px !important;
    }
}


/* ==========================================================
   LogiCore UI v2 — sidebar inspired by modern ERP layouts
   ========================================================== */
:root{
    --lc-sidebar-dark:#0d2145;
    --lc-sidebar-dark-2:#10294f;
    --lc-sidebar-text:#aebbd2;
    --lc-sidebar-muted:#7183a1;
    --lc-sidebar-active:#3e5fe6;
    --lc-sidebar-border:rgba(255,255,255,.08);
}

/* Main shell */
.lc-shell{min-height:100vh;background:var(--lc-bg)}
.lc-sidebar{
    position:fixed !important;
    inset:0 auto 0 0 !important;
    width:256px !important;
    height:100vh !important;
    padding:0 !important;
    overflow:hidden !important;
    background:linear-gradient(180deg,var(--lc-sidebar-dark),#0d2349) !important;
    border-right:1px solid rgba(255,255,255,.07) !important;
    color:#fff;
    z-index:1100;
    transition:width .22s ease;
}
.lc-sidebar-inner{
    height:100%;
    display:flex;
    flex-direction:column;
    min-height:0;
}
.lc-sidebar-brand{
    height:94px;
    flex:0 0 94px;
    display:flex;
    align-items:center;
    gap:12px;
    padding:20px 18px;
}
.lc-brand-icon{
    width:40px !important;
    height:40px !important;
    min-width:40px;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:13px !important;
    background:linear-gradient(135deg,#5c6ff1,#4455e8) !important;
    color:#fff !important;
    font-size:20px !important;
    box-shadow:0 7px 18px rgba(42,67,190,.25) !important;
}
.lc-brand-icon i{display:block !important;color:#fff !important;opacity:1 !important}
.lc-brand-copy{min-width:0}
.lc-brand-name{color:#fff !important;font-size:20px !important;font-weight:800 !important;letter-spacing:-.5px}
.lc-brand-subtitle{color:#8192b0 !important;font-size:8px !important;letter-spacing:1.5px !important}

.lc-sidebar-scroll{
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    padding:8px 12px 18px !important;
    scrollbar-width:thin;
    scrollbar-color:rgba(178,194,221,.32) transparent;
}
.lc-sidebar-scroll::-webkit-scrollbar{width:7px}
.lc-sidebar-scroll::-webkit-scrollbar-track{background:transparent}
.lc-sidebar-scroll::-webkit-scrollbar-thumb{
    background:rgba(178,194,221,.28);
    border-radius:20px;
}
.lc-sidebar-scroll::-webkit-scrollbar-thumb:hover{background:rgba(178,194,221,.45)}

.lc-nav-section{
    padding:13px 10px 9px !important;
    color:var(--lc-sidebar-muted) !important;
    font-size:9px !important;
    font-weight:700 !important;
    letter-spacing:1.35px !important;
}
.lc-section-gap{margin-top:13px}
.lc-nav{display:flex;flex-direction:column;gap:4px}
.lc-nav-item{
    position:relative;
    display:flex !important;
    align-items:center !important;
    width:100% !important;
    min-height:44px !important;
    height:44px !important;
    padding:0 12px !important;
    gap:13px !important;
    border:0 !important;
    border-radius:10px !important;
    background:transparent !important;
    color:var(--lc-sidebar-text) !important;
    font-size:13px !important;
    font-weight:500 !important;
    text-align:left;
    transition:background .16s ease,color .16s ease;
}
.lc-nav-item:hover{
    background:rgba(255,255,255,.065) !important;
    color:#fff !important;
}
.lc-nav-item.active{
    background:var(--lc-sidebar-active) !important;
    color:#fff !important;
    font-weight:600 !important;
    box-shadow:0 6px 15px rgba(24,48,170,.20);
}
.lc-nav-item.active::before{display:none !important}
.lc-nav-icon{
    display:inline-flex !important;
    flex:0 0 22px !important;
    width:22px !important;
    height:22px !important;
    min-width:22px !important;
    align-items:center !important;
    justify-content:center !important;
    color:#afbdd4 !important;
    font-size:17px !important;
    line-height:1 !important;
    opacity:1 !important;
    visibility:visible !important;
}
.lc-nav-item:hover .lc-nav-icon,
.lc-nav-item.active .lc-nav-icon{color:#fff !important}
.lc-nav-arrow{
    display:block !important;
    margin-left:auto !important;
    color:#8fa0bd !important;
    font-size:11px !important;
}
.lc-nav-button{font-family:inherit}
.lc-subnav{
    margin:0 0 3px 47px !important;
    padding-left:11px;
    border-left:1px solid rgba(255,255,255,.10);
}
.lc-subnav-item{
    display:flex;
    align-items:center;
    gap:9px;
    min-height:34px;
    padding:0 8px;
    border-radius:7px;
    color:#8394b1;
    font-size:11px;
}
.lc-subnav-item:hover,.lc-subnav-item.active{color:#fff;background:rgba(255,255,255,.05)}

.lc-sidebar-mode{
    flex:0 0 58px;
    margin:0 12px 4px;
    padding:0 10px;
    border:1px solid rgba(255,255,255,.10);
    border-radius:11px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    color:#8799b7;
    font-size:9px;
    letter-spacing:1.25px;
}
.lc-mode-button{
    width:38px;
    height:36px;
    border:0;
    border-radius:10px;
    background:#f7f8fb;
    color:#6d7582;
    display:flex;
    align-items:center;
    justify-content:center;
}
.lc-sidebar-footer{
    flex:0 0 auto;
    padding:8px 20px 14px;
    color:#627796;
    font-size:8px;
}

/* Topbar toggle like the reference */
.lc-main{margin-left:256px !important;transition:margin-left .22s ease}
.lc-topbar{
    height:72px !important;
    padding:0 32px !important;
}
.lc-topbar-left{
    display:flex;
    align-items:center;
    gap:18px;
    min-width:0;
}
.lc-sidebar-menu-toggle{
    width:42px;
    height:42px;
    flex:0 0 42px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid #e1e6ee;
    border-radius:11px;
    background:#fff;
    color:#7c8795;
    font-size:16px;
    cursor:pointer;
}
.lc-sidebar-menu-toggle:hover{background:#f6f8fb;color:#4c5b70}
:root[data-theme="dark"] .lc-sidebar-menu-toggle{
    background:#192330;border-color:#334052;color:#c5cfdd;
}

/* Compact mode: preserve every icon and use a small centered rail. */
body.lc-sidebar-collapsed .lc-sidebar,
html.logicore-sidebar-collapsed body .lc-sidebar{width:78px !important}
body.lc-sidebar-collapsed .lc-main,
html.logicore-sidebar-collapsed body .lc-main{margin-left:78px !important}
body.lc-sidebar-collapsed .lc-brand-copy,
html.logicore-sidebar-collapsed body .lc-brand-copy,
body.lc-sidebar-collapsed .lc-nav-section,
html.logicore-sidebar-collapsed body .lc-nav-section,
body.lc-sidebar-collapsed .lc-nav-item > span,
html.logicore-sidebar-collapsed body .lc-nav-item > span,
body.lc-sidebar-collapsed .lc-nav-arrow,
html.logicore-sidebar-collapsed body .lc-nav-arrow,
body.lc-sidebar-collapsed .lc-subnav,
html.logicore-sidebar-collapsed body .lc-subnav,
body.lc-sidebar-collapsed .lc-sidebar-mode,
html.logicore-sidebar-collapsed body .lc-sidebar-mode,
body.lc-sidebar-collapsed .lc-sidebar-footer,
html.logicore-sidebar-collapsed body .lc-sidebar-footer{display:none !important}
body.lc-sidebar-collapsed .lc-sidebar-brand,
html.logicore-sidebar-collapsed body .lc-sidebar-brand{
    justify-content:center !important;
    padding:20px 0 !important;
}
body.lc-sidebar-collapsed .lc-sidebar-scroll,
html.logicore-sidebar-collapsed body .lc-sidebar-scroll{
    padding:8px 9px 18px !important;
}
body.lc-sidebar-collapsed .lc-nav-item,
html.logicore-sidebar-collapsed body .lc-nav-item{
    justify-content:center !important;
    padding:0 !important;
    gap:0 !important;
}
body.lc-sidebar-collapsed .lc-nav-icon,
html.logicore-sidebar-collapsed body .lc-nav-icon{
    display:inline-flex !important;
    visibility:visible !important;
    opacity:1 !important;
    color:#b7c4d9 !important;
    margin:0 !important;
}
body.lc-sidebar-collapsed .lc-nav-item.active .lc-nav-icon,
html.logicore-sidebar-collapsed body .lc-nav-item.active .lc-nav-icon{color:#fff !important}

/* Compact tooltips */
body.lc-sidebar-collapsed .lc-nav-item[data-tooltip]::after{
    content:attr(data-tooltip);
    position:absolute;
    left:61px;
    top:50%;
    transform:translateY(-50%);
    padding:7px 10px;
    border-radius:7px;
    white-space:nowrap;
    background:#162a4d;
    color:#fff;
    font-size:10px;
    font-weight:600;
    opacity:0;
    pointer-events:none;
    z-index:4000;
    box-shadow:0 6px 18px rgba(0,0,0,.22);
}
body.lc-sidebar-collapsed .lc-nav-item[data-tooltip]:hover::after{opacity:1}

@media(max-width:900px){
    .lc-sidebar{width:78px !important}
    .lc-main{margin-left:78px !important}
    .lc-brand-copy,.lc-nav-section,.lc-nav-item > span,.lc-nav-arrow,.lc-subnav,.lc-sidebar-mode,.lc-sidebar-footer{display:none !important}
    .lc-sidebar-brand{justify-content:center !important;padding:20px 0 !important}
    .lc-nav-item{justify-content:center !important;padding:0 !important;gap:0 !important}
}


/* ==========================================================
   LogiCore Brand Palette — based on approved reference
   ========================================================== */
:root{
    --lc-brand-green:#15834F;
    --lc-brand-green-dark:#0E5A37;
    --lc-brand-green-deep:#0B4E31;
    --lc-brand-green-soft:#EAF6E8;
    --lc-bg:#F4F7F5;
    --lc-surface:#FFFFFF;
    --lc-border:#E2E9E4;
    --lc-text:#102018;
    --lc-muted:#718078;
    --lc-sidebar:#158349;
    --lc-sidebar-bottom:#0E5A37;
    --lc-sidebar-text:#C7DED3;
    --lc-sidebar-muted:#82AFA0;
    --lc-sidebar-active:#0D593B;
}

/* Main shell */
.lc-sidebar{
    background:linear-gradient(180deg,#188650 0%,#15834F 46%,#0E5A37 100%) !important;
    border-right:1px solid rgba(255,255,255,.08) !important;
}

/* Brand */
.lc-brand-icon{
    background:rgba(5,67,43,.42) !important;
    box-shadow:none !important;
    border-radius:15px !important;
}
.lc-brand-name{color:#fff !important}
.lc-brand-subtitle{color:#82B2A1 !important}

/* Sidebar sections and navigation */
.lc-nav-section{
    color:#86B09F !important;
}
.lc-nav-item{
    color:#C5DDD2 !important;
}
.lc-nav-item:hover{
    background:rgba(5,67,43,.25) !important;
    color:#fff !important;
}
.lc-nav-item.active{
    background:#0D593B !important;
    color:#fff !important;
    box-shadow:none !important;
}
.lc-nav-icon{
    color:#B8D6C9 !important;
}
.lc-nav-item:hover .lc-nav-icon,
.lc-nav-item.active .lc-nav-icon{
    color:#fff !important;
}
.lc-nav-arrow{
    color:#86B8A7 !important;
}
.lc-subnav{
    border-left-color:rgba(255,255,255,.13) !important;
}
.lc-subnav-item{
    color:#9FC3B5 !important;
}
.lc-subnav-item:hover,
.lc-subnav-item.active{
    color:#fff !important;
    background:rgba(5,67,43,.20) !important;
}

/* Scroll remains functional but subtle */
.lc-sidebar-scroll{
    scrollbar-color:rgba(255,255,255,.24) transparent !important;
}
.lc-sidebar-scroll::-webkit-scrollbar-thumb{
    background:rgba(255,255,255,.22) !important;
}
.lc-sidebar-scroll::-webkit-scrollbar-thumb:hover{
    background:rgba(255,255,255,.35) !important;
}

/* Mode panel */
.lc-sidebar-mode{
    border-color:rgba(255,255,255,.12) !important;
    background:rgba(5,67,43,.12) !important;
}
.lc-mode-button{
    background:#F7F9F8 !important;
    color:#69766F !important;
}

/* Topbar and general application */
.lc-topbar{
    background:#fff !important;
    border-bottom:1px solid #E5EBE7 !important;
}
.lc-sidebar-menu-toggle{
    background:#fff !important;
    border-color:#DDE6E0 !important;
    color:#718078 !important;
}
.lc-sidebar-menu-toggle:hover{
    background:#F1F6F2 !important;
    color:#0E5A37 !important;
}

/* Cards */
.lc-panel,
.lc-card,
.card{
    border-color:#E2E9E4;
}
.lc-primary-btn{
    background:#15834F !important;
    border-color:#15834F !important;
}
.lc-primary-btn:hover{
    background:#0E6B40 !important;
}

/* Compact mode keeps the same brand */
body.lc-sidebar-collapsed .lc-sidebar,
html.logicore-sidebar-collapsed body .lc-sidebar{
    background:linear-gradient(180deg,#188650 0%,#0E5A37 100%) !important;
}

/* Dark theme: retain the same green brand accents */
:root[data-theme="dark"]{
    --lc-brand-green:#69B83A;
    --lc-brand-green-dark:#3F8E28;
    --lc-bg:#101612;
    --lc-surface:#18201A;
    --lc-border:#303A31;
    --lc-text:#EFF5EE;
    --lc-muted:#91A092;
}
:root[data-theme="dark"] .lc-sidebar{
    background:linear-gradient(180deg,#116A43 0%,#0D5938 55%,#083D29 100%) !important;
}
:root[data-theme="dark"] .lc-nav-item.active{
    background:#084A30 !important;
}


/* ==========================================================
   Tracking module
   ========================================================== */
.lc-track-stat{
    min-height:88px;padding:15px 16px;background:var(--lc-surface);border:1px solid var(--lc-border);
    border-radius:13px;display:flex;align-items:center;gap:12px;
}
.lc-track-stat-icon{width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:17px}
.lc-track-stat-icon.green{background:#EAF6E8;color:#62A82D}.lc-track-stat-icon.blue{background:#EAF3FB;color:#2786D4}
.lc-track-stat-icon.orange{background:#FFF0E4;color:#E78525}.lc-track-stat-icon.purple{background:#F1ECFB;color:#7658D3}
.lc-track-stat-icon.success{background:#E7F6EE;color:#1B9A5B}
.lc-track-stat strong{display:block;font-size:21px;line-height:1.1;color:var(--lc-text)}
.lc-track-stat span{display:block;margin-top:3px;font-size:9px;color:var(--lc-muted)}
.lc-filter-top{display:flex;gap:10px;align-items:center}
.lc-filter-search{height:43px;flex:1;display:flex;align-items:center;gap:10px;padding:0 13px;border:1px solid var(--lc-border);border-radius:10px;background:var(--lc-bg)}
.lc-filter-search i{color:#87958b}.lc-filter-search input{border:0;outline:0;background:transparent;width:100%;font-size:11px;color:var(--lc-text)}
.lc-filter-search input::placeholder{color:#98a29b}
.lc-tracking-live{font-size:9px;color:#5B8E3A;display:flex;align-items:center;gap:6px}
.lc-tracking-live i{font-size:6px}
.lc-tracking-ref{font-weight:800;color:var(--lc-text);text-decoration:none;font-size:10px}.lc-tracking-ref:hover{color:var(--lc-brand-green)}
.lc-tracking-table td small{display:block;color:var(--lc-muted);font-size:8px;margin-top:4px}
.lc-route-mini{display:flex;align-items:center;gap:6px;font-size:9px;font-weight:600}.lc-route-mini i{color:#90a095}
.lc-progress{height:6px;width:110px;background:#E8EEE9;border-radius:20px;overflow:hidden;display:inline-block;vertical-align:middle}
.lc-progress>div{height:100%;background:var(--lc-brand-green);border-radius:inherit}
.lc-progress.large{width:100%;height:8px}.lc-progress.large>div{background:#15834F}
.lc-tracking-empty{padding:60px 20px}
.lc-track-hero{
    padding:22px 24px;background:linear-gradient(100deg,#EAF6E8,#fff);border:1px solid #DDE8DE;border-radius:16px;
    display:flex;align-items:center;justify-content:space-between;gap:30px;
}
.lc-track-hero-main{display:flex;align-items:center;gap:14px}.lc-track-status-icon{
    width:54px;height:54px;border-radius:14px;background:#DDF1D8;color:#15834F;display:flex;align-items:center;justify-content:center;font-size:23px
}
.lc-track-hero-main span,.lc-track-hero-progress span{display:block;color:#77867c;font-size:9px}.lc-track-hero-main strong{display:block;font-size:18px;margin-top:3px}.lc-track-hero-main small{display:block;color:#91a097;font-size:8px;margin-top:3px}
.lc-track-hero-progress{width:310px}.lc-track-hero-progress>div:first-child{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.lc-track-hero-progress strong{font-size:15px}.lc-track-hero-progress small{display:block;color:#8a968e;font-size:8px;margin-top:6px}
.lc-timeline{padding:8px 25px 24px}
.lc-timeline-item{position:relative;display:flex;gap:16px;padding:15px 0}.lc-timeline-item:not(:last-child)::after{content:"";position:absolute;left:13px;top:43px;bottom:-1px;width:1px;background:#DFE7E0}
.lc-timeline-dot{position:relative;z-index:1;width:27px;height:27px;min-width:27px;border-radius:50%;background:#F0F4F1;border:1px solid #DCE5DE;color:#91a098;display:flex;align-items:center;justify-content:center;font-size:10px}
.lc-timeline-item.completed .lc-timeline-dot{background:#E7F6DF;border-color:#CDE6BE;color:#65A82D}
.lc-timeline-body{flex:1}.lc-timeline-top{display:flex;justify-content:space-between;gap:10px}.lc-timeline-top strong{font-size:11px}.lc-timeline-top span{font-size:8px;color:#87938c}
.lc-timeline-location{font-size:9px;color:#59655d;margin-top:7px}.lc-timeline-location i{color:#7DAE5D;margin-right:5px}.lc-timeline-meta{font-size:8px;color:#8b968f;margin-top:4px}.lc-timeline-body p{font-size:9px;color:#7c8780;margin:7px 0 0}
.lc-status-history{padding:0 20px 16px}.lc-status-history-row{display:grid;grid-template-columns:135px 120px 1fr 90px;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--lc-border);font-size:8px;color:var(--lc-muted)}
.lc-info-list{padding:5px 20px 15px}.lc-info-list>div{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid var(--lc-border)}.lc-info-list span{font-size:9px;color:var(--lc-muted)}.lc-info-list strong{text-align:right;font-size:9px;color:var(--lc-text)}
.lc-load-summary{display:grid;grid-template-columns:repeat(3,1fr);padding:8px 18px 16px;gap:8px}.lc-load-summary>div{text-align:center;padding:12px 5px;background:var(--lc-bg);border-radius:9px}.lc-load-summary strong{display:block;font-size:15px}.lc-load-summary span{display:block;font-size:8px;color:var(--lc-muted);margin-top:3px}
.lc-load-list{border-top:1px solid var(--lc-border);padding:6px 18px 12px}.lc-load-list>div{padding:9px 0;border-bottom:1px solid var(--lc-border)}.lc-load-list strong{display:block;font-size:9px}.lc-load-list span{display:block;color:var(--lc-muted);font-size:8px;margin-top:3px}
:root[data-theme="dark"] .lc-track-hero{background:linear-gradient(100deg,#142718,#18201A);border-color:#304031}
:root[data-theme="dark"] .lc-filter-search{background:#131A14}
:root[data-theme="dark"] .lc-route-mini{color:#d7e0d5}
:root[data-theme="dark"] .lc-timeline-location{color:#c3cec1}
:root[data-theme="dark"] .lc-progress{background:#2A342B}
@media(max-width:900px){.lc-filter-top{flex-wrap:wrap}.lc-filter-search{min-width:100%}.lc-track-hero{flex-direction:column;align-items:stretch}.lc-track-hero-progress{width:100%}.lc-status-history-row{grid-template-columns:1fr 1fr}.lc-sidebar{width:78px!important}.lc-main{margin-left:78px!important}}


/* Operaciones */
.lc-page-header .lc-primary-btn,.lc-page-header .lc-secondary-btn{display:inline-flex;align-items:center;gap:7px}
.lc-status{display:inline-flex;align-items:center;gap:6px;font-size:9px;color:var(--lc-text);white-space:nowrap}.lc-status>span{width:7px;height:7px;border-radius:50%;background:var(--status-color)}
.lc-table th{font-size:8px;text-transform:uppercase;letter-spacing:.8px;color:var(--lc-muted);white-space:nowrap}.lc-table td{font-size:9px;color:var(--lc-text)}
.lc-form-label{display:block;margin-bottom:6px;font-size:9px;font-weight:700;color:var(--lc-muted);text-transform:uppercase;letter-spacing:.45px}.lc-form-control{min-height:40px;border-color:var(--lc-border);border-radius:9px;font-size:10px;background:var(--lc-surface);color:var(--lc-text)}textarea.lc-form-control{min-height:auto}
.lc-icon-action{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--lc-border);border-radius:8px;color:var(--lc-muted);text-decoration:none}.lc-icon-action:hover{color:var(--lc-brand-green);border-color:#BBD8C2}
:root[data-theme="dark"] .lc-track-hero{background:linear-gradient(100deg,#142718,#18201A);border-color:#304031}

/* ==========================================================
   PALETA LOGICORE — SEA / SLATE GRAYS
   ========================================================== */

/* ==========================================================
   PALETA LOGICORE — SEA / SLATE GRAYS
   Basada en la paleta entregada por el usuario.
   ========================================================== */
:root{
    --lc-primary:#4D5A62;
    --lc-primary-dark:#1C222E;
    --lc-primary-soft:#E7EAEC;
    --lc-bg:#F2F4F5;
    --lc-surface:#FFFFFF;
    --lc-text:#1C222E;
    --lc-muted:#697277;
    --lc-border:#D7DCDE;
    --lc-sidebar:#1C222E;
    --lc-sidebar-bottom:#3F474A;
    --lc-sidebar-text:#D8DDDF;
    --lc-sidebar-muted:#9AA3A7;
    --lc-sidebar-active:#3F474A;
    --lc-brand-green:#4D5A62;
    --lc-brand-green-dark:#1C222E;
    --lc-brand-green-deep:#3F474A;
    --lc-brand-green-soft:#E7EAEC;
}

/* Main shell */
body{background:var(--lc-bg);color:var(--lc-text)}
.lc-sidebar,
body.lc-sidebar-collapsed .lc-sidebar,
html.logicore-sidebar-collapsed body .lc-sidebar{
    background:linear-gradient(180deg,#1C222E 0%,#3F474A 100%) !important;
    border-right:1px solid rgba(255,255,255,.08) !important;
}
.lc-brand-icon{background:#3F474A !important;box-shadow:none !important}
.lc-brand-subtitle{color:#AEB7BB !important}
.lc-nav-section{color:#A2ABB0 !important}
.lc-nav-item{color:#D0D6D9 !important}
.lc-nav-item:hover{background:rgba(255,255,255,.07) !important;color:#fff !important}
.lc-nav-item.active{background:#4D5A62 !important;color:#fff !important}
.lc-nav-item.active::before{background:#959FA2 !important}
.lc-nav-icon{color:#B9C1C5 !important}
.lc-nav-arrow{color:#9EA8AC !important}
.lc-subnav{border-left-color:rgba(255,255,255,.14) !important}
.lc-subnav-item{color:#B7C0C4 !important}
.lc-subnav-item:hover,.lc-subnav-item.active{background:rgba(255,255,255,.07) !important;color:#fff !important}
.lc-sidebar-mode{border-color:rgba(255,255,255,.12) !important;background:rgba(255,255,255,.05) !important}
.lc-mode-button{background:#F0F2F3 !important;color:#4D5A62 !important}

.lc-topbar{background:rgba(255,255,255,.97) !important;border-bottom:1px solid #D7DCDE !important}
.lc-sidebar-menu-toggle{background:#fff !important;border-color:#D1D7D9 !important;color:#697277 !important}
.lc-sidebar-menu-toggle:hover{background:#ECEFF0 !important;color:#1C222E !important}
.lc-search{background:#F8F9FA !important;border-color:#D7DCDE !important}
.lc-search-shortcut{border-color:#D5DADD !important;color:#7D878C !important}
.lc-icon-btn{color:#626D72 !important}
.lc-icon-btn:hover{background:#ECEFF0 !important}
.lc-avatar{background:#E1E5E7 !important;color:#1C222E !important}

.lc-panel,.lc-card,.card{border-color:#D7DCDE !important;background:#fff}
.lc-primary-btn{background:#4D5A62 !important;border-color:#4D5A62 !important;color:#fff !important}
.lc-primary-btn:hover{background:#1C222E !important;border-color:#1C222E !important}
.lc-secondary-btn{background:#fff !important;color:#4D5A62 !important;border-color:#CBD1D4 !important}
.lc-secondary-btn:hover{background:#ECEFF0 !important;color:#1C222E !important}
.lc-form-control{border-color:#D1D7D9 !important;background:#fff !important;color:#1C222E !important}
.lc-form-control:focus{border-color:#4D5A62 !important;box-shadow:0 0 0 .2rem rgba(77,90,98,.12) !important}
.lc-icon-action:hover{color:#1C222E !important;border-color:#9AA3A7 !important;background:#ECEFF0 !important}
.lc-tracking-ref{color:#1C222E !important}
.lc-tracking-ref:hover{color:#4D5A62 !important}
.lc-form-section-title i,.lc-mini-note i{color:#4D5A62 !important}
.lc-role-option{border-color:#DDE1E3 !important;background:#fff !important}
.lc-role-option:hover{background:#F1F3F4 !important}
.lc-role-option input,.lc-role-inline-list input,.lc-permission input{accent-color:#4D5A62 !important}

/* Tracking / progress: neutralize the former green brand */
.lc-track-stat-icon.green{background:#E5E8EA !important;color:#4D5A62 !important}
.lc-track-stat-icon.success{background:#E5E8EA !important;color:#4D5A62 !important}
.lc-tracking-live{color:#4D5A62 !important}
.lc-progress{background:#DCE1E3 !important}
.lc-progress>div,.lc-progress.large>div{background:#4D5A62 !important}
.lc-track-hero{background:linear-gradient(100deg,#E7EAEC,#fff) !important;border-color:#D5DBDD !important}
.lc-track-status-icon{background:#DDE2E4 !important;color:#1C222E !important}
.lc-timeline-item.completed .lc-timeline-dot{background:#E5E8EA !important;border-color:#C9D0D3 !important;color:#4D5A62 !important}
.lc-timeline-location i{color:#697277 !important}

/* Authentication */
.lc-auth-page{background:radial-gradient(circle at 10% 20%,rgba(77,90,98,.12),transparent 32%),#F2F4F5 !important}
.lc-login-icon{background:#E7EAEC !important;color:#1C222E !important}
.lc-input-group:focus-within{border-color:#959FA2 !important;box-shadow:0 0 0 3px rgba(77,90,98,.10) !important}

/* Dark mode — same monochrome family */
:root[data-theme="dark"]{
    --lc-primary:#959FA2;
    --lc-primary-dark:#D8DDDF;
    --lc-primary-soft:#3F474A;
    --lc-bg:#1C222E;
    --lc-surface:#283136;
    --lc-text:#EEF1F2;
    --lc-muted:#AAB3B7;
    --lc-border:#465055;
    --lc-sidebar:#1C222E;
    --lc-brand-green:#959FA2;
    --lc-brand-green-dark:#D8DDDF;
    --lc-brand-green-soft:#3F474A;
}
:root[data-theme="dark"] body{background:var(--lc-bg);color:var(--lc-text)}
:root[data-theme="dark"] .lc-sidebar,
:root[data-theme="dark"] body.lc-sidebar-collapsed .lc-sidebar{background:linear-gradient(180deg,#1C222E 0%,#3F474A 100%) !important}
:root[data-theme="dark"] .lc-topbar{background:rgba(28,34,46,.97) !important;border-color:#3F474A !important}
:root[data-theme="dark"] .lc-search{background:#232B30 !important;border-color:#465055 !important}
:root[data-theme="dark"] .lc-panel,
:root[data-theme="dark"] .lc-card,
:root[data-theme="dark"] .card{background:#283136 !important;border-color:#465055 !important}
:root[data-theme="dark"] .lc-form-control{background:#232B30 !important;color:#EEF1F2 !important;border-color:#465055 !important}
:root[data-theme="dark"] .lc-secondary-btn{background:#303A3F !important;color:#E2E6E8 !important;border-color:#505B60 !important}
:root[data-theme="dark"] .lc-secondary-btn:hover{background:#3F474A !important}
:root[data-theme="dark"] .lc-primary-btn{background:#4D5A62 !important;border-color:#4D5A62 !important}
:root[data-theme="dark"] .lc-table thead th{background:#222A2F !important;border-color:#465055 !important;color:#AAB3B7 !important}
:root[data-theme="dark"] .lc-table tbody td{border-color:#465055 !important;color:#D8DDDF !important}
:root[data-theme="dark"] .lc-track-hero{background:linear-gradient(100deg,#303A3F,#283136) !important;border-color:#465055 !important}
:root[data-theme="dark"] .lc-filter-search{background:#232B30 !important}
:root[data-theme="dark"] .lc-timeline-location{color:#CBD2D5 !important}
:root[data-theme="dark"] .lc-role-option{background:#232B30 !important;border-color:#465055 !important}
:root[data-theme="dark"] .lc-auth-page{background:radial-gradient(circle at 10% 20%,rgba(149,159,162,.10),transparent 32%),#1C222E !important}

/* =========================================================
   LogiCore 2.9 · Slate system configuration
   ========================================================= */
:root {
    --lc-primary: #4D5A62 !important;
    --lc-primary-dark: #1C222E !important;
    --lc-primary-soft: #E7EAEC !important;
    --lc-bg: #F2F4F5 !important;
    --lc-surface: #FFFFFF !important;
    --lc-text: #1C222E !important;
    --lc-muted: #697277 !important;
    --lc-border: #D8DDDF !important;
    --lc-sidebar: #1C222E !important;
}

.lc-brand-logo {
    display: block;
    max-width: 180px;
    max-height: 48px;
    width: auto;
    height: auto;
    object-fit: contain;
}

.lc-switch-row {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 16px;
    border: 1px solid var(--lc-border);
    border-radius: 12px;
    background: #F7F8F9;
    cursor: pointer;
}
.lc-switch-row input { width: 20px; height: 20px; accent-color: #4D5A62; }
.lc-switch-row span { display: flex; flex-direction: column; gap: 3px; }
.lc-switch-row small { color: var(--lc-muted); }

.lc-logo-setting {
    display: flex;
    gap: 14px;
    padding: 16px 0;
    border-bottom: 1px solid var(--lc-border);
}
.lc-logo-setting:last-child { border-bottom: 0; padding-bottom: 0; }
.lc-logo-preview {
    width: 92px;
    height: 70px;
    flex: 0 0 92px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px dashed #BFC6C9;
    border-radius: 10px;
    background: #F2F4F5;
    color: #959FA2;
    font-size: 24px;
}
.lc-logo-preview img { max-width: 84px; max-height: 62px; object-fit: contain; }
.lc-logo-info { min-width: 0; flex: 1; }
.lc-logo-info strong, .lc-logo-info small { display: block; }
.lc-logo-info small { color: var(--lc-muted); line-height: 1.45; margin-top: 3px; }

.lc-system-note {
    display: flex;
    gap: 10px;
    padding: 12px;
    border-radius: 10px;
    background: #F2F4F5;
    color: #697277;
    font-size: 12px;
    line-height: 1.5;
}
.lc-system-note i { color: #4D5A62; }

.lc-filter-search { max-width: 360px; }
.lc-filter-search button { border: 1px solid #D8DDDF; background: #fff; color: #4D5A62; }
.lc-filter-search button:hover { background: #ECEFF0; }

@media (max-width: 700px) {
    .lc-logo-setting { flex-direction: column; }
    .lc-logo-preview { width: 100%; height: 90px; }
    .lc-filter-search { max-width: none; width: 100%; }
}

:root[data-theme="dark"] {
    --lc-primary: #959FA2 !important;
    --lc-primary-dark: #E4E8E9 !important;
    --lc-primary-soft: #3F474A !important;
    --lc-bg: #171D21 !important;
    --lc-surface: #242C31 !important;
    --lc-text: #EEF1F2 !important;
    --lc-muted: #AAB3B7 !important;
    --lc-border: #465055 !important;
}
:root[data-theme="dark"] .lc-switch-row,
:root[data-theme="dark"] .lc-logo-preview,
:root[data-theme="dark"] .lc-system-note { background: #232B30 !important; border-color: #465055 !important; color: #CBD2D5; }
:root[data-theme="dark"] .lc-logo-setting { border-color: #465055; }
:root[data-theme="dark"] .lc-filter-search button { background: #303A3F; border-color: #505B60; color: #E2E6E8; }

/* ============================================================
   REPORTES - LogiCore Slate
   ============================================================ */
.lc-report-tabs{display:flex;gap:8px;flex-wrap:wrap}.lc-report-tab{display:inline-flex;align-items:center;gap:8px;padding:10px 15px;border:1px solid var(--lc-border);border-radius:10px;background:var(--lc-surface);color:var(--lc-text);text-decoration:none;font-size:13px;font-weight:600}.lc-report-tab:hover{color:var(--lc-text);background:var(--lc-bg)}.lc-report-tab.active{background:#4D5A62;color:#fff;border-color:#4D5A62}.lc-report-kpi{height:100%;min-height:110px;padding:18px;border:1px solid var(--lc-border);border-radius:12px;background:var(--lc-surface);display:flex;flex-direction:column;justify-content:space-between;gap:8px}.lc-report-kpi-icon{font-size:19px;color:#4D5A62}.lc-report-kpi span{font-size:12px;color:var(--lc-muted);font-weight:600}.lc-report-kpi strong{font-size:25px;line-height:1.1;color:var(--lc-text)}.lc-report-bar-row{margin-bottom:16px}.lc-report-bar-row:last-child{margin-bottom:0}.lc-report-bar-row>div:first-child{font-size:13px;color:var(--lc-text)}.lc-report-bar{height:9px;background:var(--lc-bg);border-radius:99px;overflow:hidden}.lc-report-bar span{display:block;height:100%;border-radius:99px}

/* ============================================================
   LOGICORE 2.9.4 - LAYOUT DEFINITIVO
   Una sola fuente de verdad para sidebar/main/topbar.
   ============================================================ */
html, body { max-width:100%; overflow-x:hidden !important; }
body { margin:0; }
.lc-shell { width:100%; min-width:0; overflow-x:hidden; }
.lc-sidebar { width:256px !important; left:0 !important; right:auto !important; }
.lc-main { margin-left:256px !important; width:calc(100% - 256px) !important; max-width:none !important; min-width:0 !important; transition:margin-left .22s ease, width .22s ease !important; overflow-x:hidden !important; }
.lc-topbar { width:100% !important; margin-left:0 !important; position:sticky; top:0; z-index:50; box-sizing:border-box !important; }
.lc-content { width:100% !important; max-width:1600px !important; min-width:0 !important; margin-left:auto !important; margin-right:auto !important; box-sizing:border-box !important; overflow-x:hidden !important; }
.lc-content > .row { max-width:100%; }
.lc-report-tabs { width:100%; min-width:0; overflow-x:auto; flex-wrap:nowrap !important; padding-bottom:4px; scrollbar-width:thin; }
.lc-report-tabs .lc-report-tab { flex:0 0 auto; white-space:nowrap; }
.lc-report-kpi { min-width:0 !important; overflow:hidden; }
.lc-panel { min-width:0; overflow:hidden; }
.lc-panel .table-responsive { max-width:100%; overflow-x:auto; }
.lc-page-header { min-width:0; }
.lc-page-header > div { min-width:0; }
.lc-page-header h1, .lc-page-header p { overflow-wrap:anywhere; }

/* Collapsed sidebar is controlled ONLY here. */
body.lc-sidebar-collapsed .lc-sidebar,
html.logicore-sidebar-collapsed body .lc-sidebar { width:78px !important; }
body.lc-sidebar-collapsed .lc-main,
html.logicore-sidebar-collapsed body .lc-main { margin-left:78px !important; width:calc(100% - 78px) !important; }
body.lc-sidebar-collapsed .lc-topbar,
html.logicore-sidebar-collapsed body .lc-topbar { margin-left:0 !important; width:100% !important; }

/* Never add a second left offset to topbar. */
body.lc-sidebar-collapsed .lc-main > .lc-topbar,
html.logicore-sidebar-collapsed body .lc-main > .lc-topbar { margin-left:0 !important; }

/* Error page remains inside the normal application shell. */
.lc-error-page { display:flex; align-items:flex-start; justify-content:center; padding-top:42px !important; }
.lc-error-card { width:min(760px,100%); padding:34px; border:1px solid var(--lc-border); border-radius:18px; background:var(--lc-surface); box-shadow:0 16px 40px rgba(28,34,46,.08); }
.lc-error-icon { width:58px; height:58px; display:flex; align-items:center; justify-content:center; border-radius:15px; background:#E7EAEC; color:#4D5A62; font-size:25px; margin-bottom:18px; }
.lc-error-card h1 { margin:6px 0 10px; color:var(--lc-text); font-size:clamp(32px,4vw,52px); line-height:1.05; }
.lc-error-card p { margin:0; color:var(--lc-muted); line-height:1.6; }
.lc-error-detail { margin-top:20px; border:1px solid var(--lc-border); border-radius:12px; overflow:hidden; }
.lc-error-detail summary { padding:12px 14px; cursor:pointer; font-weight:700; color:var(--lc-text); background:var(--lc-bg); }
.lc-error-detail pre { margin:0; padding:14px; max-height:280px; overflow:auto; white-space:pre-wrap; word-break:break-word; color:#8c2f2f; background:#fff7f7; font:12px/1.5 Consolas,monospace; }
.lc-error-actions { display:flex; gap:10px; flex-wrap:wrap; margin-top:22px; }

:root[data-theme="dark"] .lc-error-card { box-shadow:0 16px 40px rgba(0,0,0,.24); }
:root[data-theme="dark"] .lc-error-icon { background:#303A3F; color:#D8DDDF; }
:root[data-theme="dark"] .lc-error-detail summary { background:#222A2F; }
:root[data-theme="dark"] .lc-error-detail pre { background:#241C1C; color:#F0B0B0; }

@media (max-width:760px) {
    .lc-main { margin-left:78px !important; width:calc(100% - 78px) !important; }
    .lc-sidebar { width:78px !important; }
    .lc-brand-copy, .lc-nav-section, .lc-nav-item > span, .lc-nav-arrow, .lc-subnav, .lc-sidebar-mode, .lc-sidebar-footer { display:none !important; }
    .lc-sidebar-brand { justify-content:center !important; }
    .lc-nav-item { justify-content:center !important; padding-left:0 !important; padding-right:0 !important; }
    .lc-topbar { margin-left:0 !important; width:100% !important; }
}

@media (max-width:700px) {
    .lc-topbar { padding:0 14px !important; }
    .lc-search { min-width:0 !important; }
    .lc-search input { min-width:0 !important; }
    .lc-content { padding-left:14px !important; padding-right:14px !important; }
    .lc-page-header { flex-direction:column; align-items:stretch !important; gap:14px; }
    .lc-page-header .lc-primary-btn { width:100%; justify-content:center; }
    .lc-error-card { padding:24px; }
}


/* ============================================================
   LOGICORE 3.0.0 - AUTHORITATIVE SHELL
   No secondary margin/padding system. Desktop remains expanded;
   collapse is user-controlled. Automatic compact mode starts only
   on genuinely small screens.
   ============================================================ */
html,body{width:100%;max-width:100%;margin:0!important;overflow-x:hidden!important}
.lc-shell{position:relative;width:100%;min-width:0;overflow-x:hidden}
.lc-sidebar{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:256px!important;z-index:1000!important;transition:width .22s ease!important}
.lc-main{position:relative!important;margin-left:256px!important;width:calc(100% - 256px)!important;max-width:none!important;min-width:0!important;overflow-x:hidden!important;transition:margin-left .22s ease,width .22s ease!important}
.lc-topbar{position:sticky!important;top:0!important;margin-left:0!important;width:100%!important;max-width:none!important;box-sizing:border-box!important;z-index:900!important}
.lc-content{width:100%!important;max-width:1600px!important;min-width:0!important;margin:0 auto!important;box-sizing:border-box!important}
.lc-page-header,.lc-panel,.lc-report-tabs,.lc-report-kpi{min-width:0!important}
.lc-report-tabs{display:flex!important;flex-wrap:nowrap!important;max-width:100%!important;overflow-x:auto!important;scrollbar-width:thin}
.lc-report-tab{flex:0 0 auto!important;white-space:nowrap!important}
body.lc-sidebar-collapsed .lc-sidebar,html.logicore-sidebar-collapsed body .lc-sidebar{width:78px!important}
body.lc-sidebar-collapsed .lc-main,html.logicore-sidebar-collapsed body .lc-main{margin-left:78px!important;width:calc(100% - 78px)!important}
body.lc-sidebar-collapsed .lc-topbar,html.logicore-sidebar-collapsed body .lc-topbar{margin-left:0!important;width:100%!important}

/* Do not force-collapse the sidebar on desktop/tablet widths. */
@media (max-width:760px){
  .lc-sidebar{width:78px!important}
  .lc-main{margin-left:78px!important;width:calc(100% - 78px)!important}
  .lc-brand-copy,.lc-nav-section,.lc-nav-item>span,.lc-nav-arrow,.lc-subnav,.lc-sidebar-mode,.lc-sidebar-footer{display:none!important}
  .lc-sidebar-brand{justify-content:center!important}
  .lc-nav-item{justify-content:center!important;padding-left:0!important;padding-right:0!important}
  .lc-topbar{margin-left:0!important;width:100%!important}
}

/* Reportes: same shell as every other module. */
.reportes-page{padding:28px 30px 40px!important;min-width:0!important}
.reportes-page .reportes-grid{min-width:0!important}
.reportes-page .reportes-card{min-width:0!important;overflow:hidden}
.reportes-page .reportes-table{max-width:100%;overflow:auto}


/* ============================================================
   LOGICORE DESIGN SYSTEM 3.1 — CLARA / ENTERPRISE
   Paleta optimizada para baja fatiga visual y accesibilidad.
   ============================================================ */
:root {
    --lc-primary: #2563EB;
    --lc-primary-dark: #1D4ED8;
    --lc-primary-active: #1E40AF;
    --lc-primary-soft: #EFF6FF;
    --lc-primary-surface: #F5F9FF;

    --lc-bg: #F8FAFC;
    --lc-surface: #FFFFFF;
    --lc-surface-subtle: #F1F5F9;
    --lc-surface-hover: #F1F5F9;
    --lc-surface-selected: #EFF6FF;

    --lc-text: #0F172A;
    --lc-muted: #64748B;
    --lc-text-secondary: #475569;
    --lc-text-tertiary: #64748B;
    --lc-text-disabled: #94A3B8;

    --lc-border: #E2E8F0;
    --lc-border-strong: #CBD5E1;
    --lc-border-focus: #2563EB;
    --lc-sidebar: #F1F5F9;

    --lc-success: #16A34A;
    --lc-success-soft: #F0FDF4;
    --lc-success-border: #86EFAC;
    --lc-warning: #D97706;
    --lc-warning-soft: #FFFBEB;
    --lc-warning-border: #FCD34D;
    --lc-danger: #DC2626;
    --lc-danger-soft: #FEF2F2;
    --lc-danger-border: #FCA5A5;
    --lc-info: #2563EB;
    --lc-info-soft: #EFF6FF;
    --lc-info-border: #93C5FD;
    --lc-neutral: #64748B;
    --lc-neutral-soft: #F8FAFC;
    --lc-neutral-border: #CBD5E1;
}

/* Brand / navigation */
.lc-sidebar {
    background: var(--lc-sidebar) !important;
    border-right-color: var(--lc-border) !important;
}
.lc-brand-icon {
    background: var(--lc-primary) !important;
    box-shadow: 0 7px 18px rgba(37,99,235,.16) !important;
}
.lc-brand-subtitle,
.lc-nav-section { color: #64748B !important; }
.lc-nav-item { color: #475569 !important; }
.lc-nav-item:hover {
    background: #EAF2FF !important;
    color: var(--lc-primary-dark) !important;
}
.lc-nav-item.active {
    color: var(--lc-primary-dark) !important;
    background: var(--lc-primary-soft) !important;
}
.lc-nav-item.active::before { background: var(--lc-primary) !important; }
.lc-nav-arrow { color: #94A3B8 !important; }

/* Topbar / content */
.lc-topbar {
    background: rgba(255,255,255,.97) !important;
    border-bottom-color: var(--lc-border) !important;
}
.lc-search {
    background: #FFFFFF !important;
    border-color: var(--lc-border) !important;
    color: #64748B !important;
}
.lc-search-shortcut {
    border-color: var(--lc-border-strong) !important;
    color: #64748B !important;
}
.lc-icon-btn { color: #475569 !important; }
.lc-icon-btn:hover { background: #F1F5F9 !important; }
.lc-user-info span,
.lc-user-chevron,
.lc-eyebrow { color: #64748B !important; }

/* Buttons */
.lc-primary-btn {
    background: var(--lc-primary) !important;
    box-shadow: 0 6px 16px rgba(37,99,235,.16) !important;
}
.lc-primary-btn:hover {
    background: var(--lc-primary-dark) !important;
}
.lc-secondary-btn {
    background: #FFFFFF !important;
    border-color: var(--lc-border-strong) !important;
    color: #475569 !important;
}
.lc-secondary-btn:hover {
    background: #F8FAFC !important;
    color: var(--lc-primary-dark) !important;
}

/* Cards / panels */
.lc-metric,
.lc-panel {
    background: var(--lc-surface) !important;
    border-color: var(--lc-border) !important;
    box-shadow: 0 6px 24px rgba(15,23,42,.045) !important;
}
.lc-metric-icon {
    background: var(--lc-primary-soft) !important;
    color: var(--lc-primary) !important;
}
.lc-metric-period,
.lc-metric-caption,
.lc-panel-header p { color: #64748B !important; }
.lc-panel-link { color: var(--lc-primary-dark) !important; }

/* Tables */
.lc-table thead th {
    background: #F8FAFC !important;
    color: #64748B !important;
    border-color: var(--lc-border) !important;
}
.lc-table tbody td {
    color: #475569 !important;
    border-color: #E2E8F0 !important;
}
.lc-table tbody tr:hover { background: #F8FAFC !important; }
.lc-reference { color: #0F172A !important; }
.lc-date { color: #64748B !important; }

/* Form controls */
.lc-form-label { color: #475569 !important; }
.lc-form-control {
    background: #FFFFFF !important;
    border-color: var(--lc-border-strong) !important;
    color: var(--lc-text) !important;
}
.lc-form-control:focus {
    border-color: var(--lc-primary) !important;
    box-shadow: 0 0 0 3px rgba(37,99,235,.12) !important;
}

/* Status semantics */
.lc-status-active { color: #15803D !important; background: #F0FDF4 !important; }
.lc-status-inactive { color: #B91C1C !important; background: #FEF2F2 !important; }
.lc-count-badge { background: #EFF6FF !important; color: #1D4ED8 !important; }
.lc-icon-action { color: #64748B !important; }
.lc-icon-action:hover { background: #F1F5F9 !important; color: var(--lc-primary-dark) !important; }

.lc-state-icon.green { background: #F0FDF4 !important; color: #16A34A !important; }
.lc-state-icon.blue { background: #EFF6FF !important; color: #2563EB !important; }
.lc-state-icon.orange { background: #FFFBEB !important; color: #D97706 !important; }
.lc-state-icon.yellow { background: #FFFBEB !important; color: #B45309 !important; }
.lc-state-icon.red { background: #FEF2F2 !important; color: #DC2626 !important; }

.lc-mini-note { background: #F8FAFC !important; color: #64748B !important; }
.lc-mini-note i { color: var(--lc-primary) !important; }
.lc-empty-icon { background: #F1F5F9 !important; color: #64748B !important; }
.lc-empty { color: #64748B !important; }
.lc-empty strong { color: #475569 !important; }

/* Modal / borders */
.lc-modal { box-shadow: 0 25px 70px rgba(15,23,42,.14) !important; }
.lc-modal .modal-header,
.lc-modal .modal-footer { border-color: var(--lc-border) !important; }

/* Accessibility: visible keyboard focus */
:focus-visible {
    outline: 2px solid var(--lc-primary) !important;
    outline-offset: 2px;
}

/* Keep Bootstrap semantic colors, but make common LogiCore surfaces calm. */
.alert-success { background:#F0FDF4; border-color:#BBF7D0; color:#166534; }
.alert-warning { background:#FFFBEB; border-color:#FDE68A; color:#92400E; }
.alert-danger { background:#FEF2F2; border-color:#FECACA; color:#991B1B; }
.alert-info { background:#EFF6FF; border-color:#BFDBFE; color:#1E40AF; }


/* ============================================================
   LOGICORE 3.2 — DARK MODE REFINADO / LOW-EYE-STRAIN
   Dark mode is neutral slate, not green/black. No gradients,
   no pure black, no neon accents. Designed for long sessions.
   ============================================================ */
:root[data-theme="dark"] {
    color-scheme: dark;

    --lc-bg: #111827 !important;                 /* app canvas */
    --lc-surface: #182233 !important;            /* cards */
    --lc-surface-subtle: #151F2F !important;
    --lc-surface-hover: #202C3F !important;
    --lc-surface-selected: #203452 !important;

    --lc-text: #E5E7EB !important;
    --lc-text-secondary: #CBD5E1 !important;
    --lc-text-tertiary: #94A3B8 !important;
    --lc-muted: #94A3B8 !important;
    --lc-text-disabled: #64748B !important;

    --lc-border: #2B374A !important;
    --lc-border-strong: #3A485E !important;
    --lc-border-focus: #60A5FA !important;

    --lc-primary: #60A5FA !important;
    --lc-primary-dark: #3B82F6 !important;
    --lc-primary-active: #2563EB !important;
    --lc-primary-soft: #1B2C45 !important;
    --lc-primary-surface: #17263C !important;

    --lc-sidebar: #141E2D !important;

    --lc-success: #4ADE80 !important;
    --lc-success-soft: #162A23 !important;
    --lc-success-border: #28563E !important;
    --lc-warning: #FBBF24 !important;
    --lc-warning-soft: #2B2618 !important;
    --lc-warning-border: #5A4920 !important;
    --lc-danger: #F87171 !important;
    --lc-danger-soft: #2B1D22 !important;
    --lc-danger-border: #5B3037 !important;
    --lc-info: #60A5FA !important;
    --lc-info-soft: #1B2C45 !important;
    --lc-info-border: #31577F !important;
    --lc-neutral: #94A3B8 !important;
    --lc-neutral-soft: #1A2433 !important;
    --lc-neutral-border: #3A485E !important;
}

/* Global surfaces */
:root[data-theme="dark"] body,
:root[data-theme="dark"] .lc-shell,
:root[data-theme="dark"] .lc-main,
:root[data-theme="dark"] .lc-content {
    background: var(--lc-bg) !important;
    color: var(--lc-text) !important;
}

:root[data-theme="dark"] .lc-sidebar {
    background: #141E2D !important;
    background-image: none !important;
    border-right: 1px solid #263247 !important;
    color: var(--lc-text) !important;
}

:root[data-theme="dark"] .lc-sidebar * {
    text-shadow: none !important;
}

:root[data-theme="dark"] .lc-brand-icon {
    background: #2563EB !important;
    box-shadow: 0 4px 14px rgba(37,99,235,.18) !important;
}

:root[data-theme="dark"] .lc-brand-subtitle,
:root[data-theme="dark"] .lc-nav-section {
    color: #7F8EA3 !important;
}

:root[data-theme="dark"] .lc-nav-item {
    color: #B8C4D4 !important;
    background: transparent !important;
}

:root[data-theme="dark"] .lc-nav-item:hover {
    color: #E5E7EB !important;
    background: #1C283A !important;
}

:root[data-theme="dark"] .lc-nav-item.active {
    color: #BFDBFE !important;
    background: #1D304B !important;
}

:root[data-theme="dark"] .lc-nav-item.active::before {
    background: #60A5FA !important;
}

:root[data-theme="dark"] .lc-nav-arrow {
    color: #718096 !important;
}

/* Topbar */
:root[data-theme="dark"] .lc-topbar {
    background: rgba(17,24,39,.96) !important;
    border-bottom: 1px solid #263247 !important;
    box-shadow: 0 1px 0 rgba(255,255,255,.02) !important;
    backdrop-filter: blur(10px);
}

:root[data-theme="dark"] .lc-search {
    background: #182233 !important;
    border-color: #334155 !important;
    color: #CBD5E1 !important;
}

:root[data-theme="dark"] .lc-search input {
    background: transparent !important;
    color: #E5E7EB !important;
}

:root[data-theme="dark"] .lc-search input::placeholder {
    color: #718096 !important;
}

:root[data-theme="dark"] .lc-search-shortcut {
    background: #202B3C !important;
    border-color: #39475B !important;
    color: #94A3B8 !important;
}

:root[data-theme="dark"] .lc-icon-btn {
    color: #AAB7C8 !important;
    background: transparent !important;
}

:root[data-theme="dark"] .lc-icon-btn:hover {
    background: #202C3F !important;
    color: #E5E7EB !important;
}

:root[data-theme="dark"] .lc-user-info span,
:root[data-theme="dark"] .lc-user-chevron,
:root[data-theme="dark"] .lc-eyebrow {
    color: #94A3B8 !important;
}

/* Headings and generic text */
:root[data-theme="dark"] h1,
:root[data-theme="dark"] h2,
:root[data-theme="dark"] h3,
:root[data-theme="dark"] h4,
:root[data-theme="dark"] h5,
:root[data-theme="dark"] h6,
:root[data-theme="dark"] .text-dark,
:root[data-theme="dark"] .text-body,
:root[data-theme="dark"] .text-black {
    color: #E5E7EB !important;
}

:root[data-theme="dark"] .text-muted {
    color: #94A3B8 !important;
}

:root[data-theme="dark"] a:not(.lc-primary-btn):not(.lc-secondary-btn) {
    color: #93C5FD !important;
}

:root[data-theme="dark"] a:not(.lc-primary-btn):not(.lc-secondary-btn):hover {
    color: #BFDBFE !important;
}

/* Cards / panels */
:root[data-theme="dark"] .lc-metric,
:root[data-theme="dark"] .lc-panel,
:root[data-theme="dark"] .card,
:root[data-theme="dark"] .dropdown-menu,
:root[data-theme="dark"] .modal-content {
    background: #182233 !important;
    border-color: #2B374A !important;
    color: #E5E7EB !important;
    box-shadow: 0 8px 28px rgba(0,0,0,.18) !important;
}

:root[data-theme="dark"] .lc-metric-icon {
    background: #1B2C45 !important;
    color: #60A5FA !important;
}

:root[data-theme="dark"] .lc-metric-period,
:root[data-theme="dark"] .lc-metric-caption,
:root[data-theme="dark"] .lc-panel-header p {
    color: #94A3B8 !important;
}

:root[data-theme="dark"] .lc-panel-link {
    color: #93C5FD !important;
}

/* Tables: soft separation, no high-contrast striping */
:root[data-theme="dark"] .lc-table,
:root[data-theme="dark"] .table {
    --bs-table-bg: #182233;
    --bs-table-color: #CBD5E1;
    --bs-table-border-color: #2B374A;
    color: #CBD5E1 !important;
}

:root[data-theme="dark"] .lc-table thead th,
:root[data-theme="dark"] .table thead th {
    background: #151F2F !important;
    color: #94A3B8 !important;
    border-color: #2B374A !important;
}

:root[data-theme="dark"] .lc-table tbody td,
:root[data-theme="dark"] .table tbody td {
    background: #182233 !important;
    color: #CBD5E1 !important;
    border-color: #263247 !important;
}

:root[data-theme="dark"] .lc-table tbody tr:hover,
:root[data-theme="dark"] .table tbody tr:hover {
    background: #1D293B !important;
}

:root[data-theme="dark"] .lc-table tbody tr:hover td,
:root[data-theme="dark"] .table tbody tr:hover td {
    background: #1D293B !important;
}

:root[data-theme="dark"] .lc-reference {
    color: #E5E7EB !important;
}

:root[data-theme="dark"] .lc-date {
    color: #94A3B8 !important;
}

/* Forms */
:root[data-theme="dark"] label,
:root[data-theme="dark"] .lc-form-label,
:root[data-theme="dark"] .form-label {
    color: #CBD5E1 !important;
}

:root[data-theme="dark"] .lc-form-control,
:root[data-theme="dark"] .form-control,
:root[data-theme="dark"] .form-select,
:root[data-theme="dark"] textarea,
:root[data-theme="dark"] input,
:root[data-theme="dark"] select {
    background-color: #151F2F !important;
    border-color: #3A485E !important;
    color: #E5E7EB !important;
}

:root[data-theme="dark"] .lc-form-control:focus,
:root[data-theme="dark"] .form-control:focus,
:root[data-theme="dark"] .form-select:focus,
:root[data-theme="dark"] textarea:focus,
:root[data-theme="dark"] input:focus,
:root[data-theme="dark"] select:focus {
    border-color: #60A5FA !important;
    box-shadow: 0 0 0 3px rgba(96,165,250,.13) !important;
}

:root[data-theme="dark"] input::placeholder,
:root[data-theme="dark"] textarea::placeholder,
:root[data-theme="dark"] .form-control::placeholder {
    color: #718096 !important;
}

:root[data-theme="dark"] .form-control:disabled,
:root[data-theme="dark"] .form-select:disabled,
:root[data-theme="dark"] input:disabled,
:root[data-theme="dark"] select:disabled {
    background: #111A28 !important;
    color: #64748B !important;
}

/* Buttons */
:root[data-theme="dark"] .lc-primary-btn {
    background: #3B82F6 !important;
    color: #FFFFFF !important;
    box-shadow: 0 5px 14px rgba(59,130,246,.16) !important;
}

:root[data-theme="dark"] .lc-primary-btn:hover {
    background: #2563EB !important;
}

:root[data-theme="dark"] .lc-secondary-btn {
    background: #182233 !important;
    border-color: #3A485E !important;
    color: #CBD5E1 !important;
}

:root[data-theme="dark"] .lc-secondary-btn:hover {
    background: #202C3F !important;
    color: #E5E7EB !important;
}

/* Bootstrap controls */
:root[data-theme="dark"] .btn-outline-secondary {
    color: #CBD5E1 !important;
    border-color: #3A485E !important;
}

:root[data-theme="dark"] .btn-outline-secondary:hover {
    background: #202C3F !important;
    color: #FFFFFF !important;
}

:root[data-theme="dark"] .btn-close {
    filter: invert(1) grayscale(1);
    opacity: .72;
}

/* Dropdowns / lists */
:root[data-theme="dark"] .dropdown-menu {
    background: #182233 !important;
    border-color: #2B374A !important;
}

:root[data-theme="dark"] .dropdown-item {
    color: #CBD5E1 !important;
}

:root[data-theme="dark"] .dropdown-item:hover,
:root[data-theme="dark"] .dropdown-item:focus {
    background: #202C3F !important;
    color: #FFFFFF !important;
}

/* Status badges */
:root[data-theme="dark"] .lc-status-active,
:root[data-theme="dark"] .badge.bg-success {
    color: #86EFAC !important;
    background: #162A23 !important;
}

:root[data-theme="dark"] .lc-status-inactive,
:root[data-theme="dark"] .badge.bg-danger {
    color: #FCA5A5 !important;
    background: #2B1D22 !important;
}

:root[data-theme="dark"] .lc-count-badge {
    background: #1B2C45 !important;
    color: #93C5FD !important;
}

:root[data-theme="dark"] .lc-state-icon.green {
    background: #162A23 !important; color: #4ADE80 !important;
}
:root[data-theme="dark"] .lc-state-icon.blue {
    background: #1B2C45 !important; color: #60A5FA !important;
}
:root[data-theme="dark"] .lc-state-icon.orange,
:root[data-theme="dark"] .lc-state-icon.yellow {
    background: #2B2618 !important; color: #FBBF24 !important;
}
:root[data-theme="dark"] .lc-state-icon.red {
    background: #2B1D22 !important; color: #F87171 !important;
}

/* Alerts */
:root[data-theme="dark"] .alert-success {
    background: #162A23 !important; border-color: #28563E !important; color: #86EFAC !important;
}
:root[data-theme="dark"] .alert-warning {
    background: #2B2618 !important; border-color: #5A4920 !important; color: #FCD34D !important;
}
:root[data-theme="dark"] .alert-danger {
    background: #2B1D22 !important; border-color: #5B3037 !important; color: #FCA5A5 !important;
}
:root[data-theme="dark"] .alert-info {
    background: #1B2C45 !important; border-color: #31577F !important; color: #93C5FD !important;
}

/* Common utility surfaces */
:root[data-theme="dark"] .lc-mini-note {
    background: #151F2F !important;
    color: #94A3B8 !important;
    border-color: #2B374A !important;
}
:root[data-theme="dark"] .lc-empty-icon {
    background: #202C3F !important;
    color: #94A3B8 !important;
}
:root[data-theme="dark"] .lc-empty {
    color: #94A3B8 !important;
}
:root[data-theme="dark"] .lc-empty strong {
    color: #CBD5E1 !important;
}
:root[data-theme="dark"] .lc-icon-action {
    color: #94A3B8 !important;
}
:root[data-theme="dark"] .lc-icon-action:hover {
    background: #202C3F !important;
    color: #93C5FD !important;
}

/* Sidebar controls / scrollbars — neutral slate */
:root[data-theme="dark"] .lc-sidebar-toggle,
:root[data-theme="dark"] .lc-sidebar-menu-toggle {
    background: #1B2638 !important;
    color: #B8C4D4 !important;
    border-color: #344256 !important;
}

:root[data-theme="dark"] .lc-sidebar-toggle:hover,
:root[data-theme="dark"] .lc-sidebar-menu-toggle:hover {
    background: #243247 !important;
    color: #E5E7EB !important;
    border-color: #4A5A70 !important;
}

:root[data-theme="dark"] .lc-sidebar {
    scrollbar-color: #3A485E transparent !important;
}
:root[data-theme="dark"] .lc-sidebar::-webkit-scrollbar-thumb {
    background: #3A485E !important;
}

/* Tracking / reports: remove legacy green/slate accents */
:root[data-theme="dark"] .lc-track-hero {
    background: #18283C !important;
    border-color: #2E4864 !important;
}
:root[data-theme="dark"] .lc-filter-search {
    background: #151F2F !important;
    border-color: #2B374A !important;
}
:root[data-theme="dark"] .lc-route-mini,
:root[data-theme="dark"] .lc-timeline-location {
    color: #CBD5E1 !important;
}

/* Modal */
:root[data-theme="dark"] .modal-header,
:root[data-theme="dark"] .modal-footer,
:root[data-theme="dark"] .lc-modal .modal-header,
:root[data-theme="dark"] .lc-modal .modal-footer {
    border-color: #2B374A !important;
}

/* Keyboard focus */
:root[data-theme="dark"] :focus-visible {
    outline: 2px solid #60A5FA !important;
    outline-offset: 2px;
}

/* Collapsed sidebar */
:root[data-theme="dark"] body.lc-sidebar-collapsed .lc-sidebar,
:root[data-theme="dark"] html.logicore-sidebar-collapsed body .lc-sidebar {
    background: #141E2D !important;
    background-image: none !important;
}


/* =========================================================
   LogiCore — Ajustes visuales Dashboard / Filtros
   2026-09-14
   ========================================================= */

/* KPI cards: color diferenciado, suave y profesional */
.lc-metric {
    position: relative;
    overflow: hidden;
    border-width: 1px;
    box-shadow: 0 10px 28px rgba(15, 23, 42, .045);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.lc-metric::after {
    content: "";
    position: absolute;
    width: 120px;
    height: 120px;
    right: -48px;
    bottom: -55px;
    border-radius: 50%;
    opacity: .26;
    pointer-events: none;
}

.lc-metric:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 34px rgba(15, 23, 42, .075);
}

.lc-card-green {
    background: linear-gradient(145deg, #FFFFFF 0%, #F2FAEE 100%);
    border-color: #D8EAD0;
}
.lc-card-green::after { background: #9CCB7A; }
.lc-card-green .lc-metric-icon {
    background: #E1F1D8;
    color: #3F7F23;
}
.lc-card-green .lc-metric-value { color: #23451A; }

.lc-card-blue {
    background: linear-gradient(145deg, #FFFFFF 0%, #EEF6FB 100%);
    border-color: #D6E6F0;
}
.lc-card-blue::after { background: #8AB9D8; }
.lc-card-blue .lc-metric-icon {
    background: #DCECF7;
    color: #28698F;
}
.lc-card-blue .lc-metric-value { color: #183F58; }

.lc-card-orange {
    background: linear-gradient(145deg, #FFFFFF 0%, #FFF5E9 100%);
    border-color: #F0DEC8;
}
.lc-card-orange::after { background: #E8B46D; }
.lc-card-orange .lc-metric-icon {
    background: #FCE9CF;
    color: #A76617;
}
.lc-card-orange .lc-metric-value { color: #5A3914; }

.lc-card-purple {
    background: linear-gradient(145deg, #FFFFFF 0%, #F4F0FB 100%);
    border-color: #E2D9F0;
}
.lc-card-purple::after { background: #B9A4DF; }
.lc-card-purple .lc-metric-icon {
    background: #E9E0F7;
    color: #68509D;
}
.lc-card-purple .lc-metric-value { color: #382C57; }

.lc-metric-top,
.lc-metric-value,
.lc-metric-label,
.lc-metric-caption {
    position: relative;
    z-index: 1;
}

/* Filtros de Operaciones: espacio consistente entre marco y controles */
.lc-filter-panel-form {
    padding: 20px 20px 21px;
}

.lc-filter-panel-form .lc-filter-top {
    gap: 12px;
    margin: 0;
}

.lc-filter-panel-form .lc-filter-search {
    min-height: 46px;
    background: #FFFFFF;
    border-color: #D6DEE5;
    box-shadow: inset 0 1px 2px rgba(15, 23, 42, .018);
}

.lc-filter-panel-form .lc-filter-search:focus-within {
    border-color: #9CB5C6;
    box-shadow: 0 0 0 3px rgba(77, 90, 98, .08);
}

.lc-filter-panel-form .lc-filter-search input {
    font-size: 12px;
}

.lc-filter-panel-form .lc-primary-btn {
    min-width: 104px;
}

.lc-filter-panel-form .row {
    margin-top: 12px !important;
}

.lc-filter-panel-form .lc-secondary-btn {
    min-height: 42px;
    padding: 0 15px;
    white-space: nowrap;
}

/* Dark mode: tarjetas diferenciadas sin saturación */
:root[data-theme="dark"] .lc-card-green {
    background: linear-gradient(145deg, #182A25 0%, #1B332B 100%) !important;
    border-color: #2D5446 !important;
}
:root[data-theme="dark"] .lc-card-green::after { background: #3E8A6C; opacity: .16; }
:root[data-theme="dark"] .lc-card-green .lc-metric-icon { background: #214436 !important; color: #7DD3A7 !important; }
:root[data-theme="dark"] .lc-card-green .lc-metric-value { color: #ECFDF5 !important; }

:root[data-theme="dark"] .lc-card-blue {
    background: linear-gradient(145deg, #18283A 0%, #1A3047 100%) !important;
    border-color: #2F4F6D !important;
}
:root[data-theme="dark"] .lc-card-blue::after { background: #4A91C9; opacity: .16; }
:root[data-theme="dark"] .lc-card-blue .lc-metric-icon { background: #203D5A !important; color: #8EC5F7 !important; }
:root[data-theme="dark"] .lc-card-blue .lc-metric-value { color: #EFF6FF !important; }

:root[data-theme="dark"] .lc-card-orange {
    background: linear-gradient(145deg, #2A241B 0%, #342A1D 100%) !important;
    border-color: #57452A !important;
}
:root[data-theme="dark"] .lc-card-orange::after { background: #D99A3D; opacity: .13; }
:root[data-theme="dark"] .lc-card-orange .lc-metric-icon { background: #49371D !important; color: #F6C66B !important; }
:root[data-theme="dark"] .lc-card-orange .lc-metric-value { color: #FFFBEB !important; }

:root[data-theme="dark"] .lc-card-purple {
    background: linear-gradient(145deg, #262137 0%, #2E2744 100%) !important;
    border-color: #4D416A !important;
}
:root[data-theme="dark"] .lc-card-purple::after { background: #9E82D3; opacity: .14; }
:root[data-theme="dark"] .lc-card-purple .lc-metric-icon { background: #3F335A !important; color: #C9B5F5 !important; }
:root[data-theme="dark"] .lc-card-purple .lc-metric-value { color: #F5F3FF !important; }

:root[data-theme="dark"] .lc-filter-panel-form .lc-filter-search {
    background: #151F2F !important;
    border-color: #3A485E !important;
    box-shadow: none;
}

:root[data-theme="dark"] .lc-filter-panel-form .lc-filter-search:focus-within {
    border-color: #657B96 !important;
    box-shadow: 0 0 0 3px rgba(96, 165, 250, .09);
}

@media (max-width: 767.98px) {
    .lc-filter-panel-form {
        padding: 16px;
    }
    .lc-filter-panel-form .lc-filter-top {
        flex-direction: column;
        align-items: stretch;
    }
    .lc-filter-panel-form .lc-primary-btn {
        width: 100%;
    }
    .lc-filter-panel-form .lc-secondary-btn {
        width: 100%;
    }
}

/* ===== Finanzas: integración visual con el layout global ===== */
.lc-finance-page{max-width:1600px;margin:0 auto;padding-bottom:30px}
.lc-finance-page .lc-page-header{margin-bottom:22px;align-items:flex-end}
.lc-finance-page .lc-page-header h1{color:var(--lc-text,#1C222E)}
.lc-page-subtitle{margin-top:7px;color:var(--lc-muted,#667077);font-size:15px}
.lc-secondary-btn{height:42px;border-radius:11px;padding:0 15px;font-weight:700}
.lc-finance-card{border:1px solid var(--lc-border,#D8DDDF)!important;border-radius:16px!important;box-shadow:0 8px 28px rgba(28,34,46,.06)!important;overflow:hidden;background:var(--lc-card,#fff)!important}
.lc-finance-card .card-body{padding:24px}
.lc-finance-card .form-label{font-size:13px;font-weight:700;color:var(--lc-text,#1C222E);margin-bottom:8px}
.lc-finance-card .form-control,.lc-finance-card .form-select{min-height:46px;border-radius:10px;border-color:var(--lc-border,#D8DDDF);color:var(--lc-text,#1C222E);background:var(--lc-card,#fff)}
.lc-finance-card .form-control:focus,.lc-finance-card .form-select:focus{border-color:#6f7d84;box-shadow:0 0 0 .2rem rgba(77,90,98,.14)}
.lc-finance-footer{padding:16px 24px;background:rgba(242,244,245,.55);border-top:1px solid var(--lc-border,#D8DDDF)}
.lc-finance-footer .btn{min-height:42px;border-radius:10px;font-weight:700;padding:0 17px}
:root[data-theme="dark"] .lc-finance-page .lc-page-header h1,
:root[data-theme="dark"] .lc-finance-card .form-label{color:#EEF2F3}
:root[data-theme="dark"] .lc-page-subtitle{color:#AEB7BB}
:root[data-theme="dark"] .lc-finance-card{background:#1B2633!important;border-color:#3A4650!important}
:root[data-theme="dark"] .lc-finance-card .form-control,
:root[data-theme="dark"] .lc-finance-card .form-select{background:#111A24;color:#EEF2F3;border-color:#46535E}
:root[data-theme="dark"] .lc-finance-footer{background:#18222D;border-top-color:#3A4650}
@media(max-width:900px){
  .lc-finance-page{padding:20px 16px 30px}
  .lc-finance-page .lc-page-header{align-items:flex-start;flex-direction:column}
  .lc-secondary-btn{width:100%}
}

/* ============================================================
   LOGICORE 3.2 — SHELL + FINANZAS DEFINITIVE FIX
   Única capa de autoridad al final del CSS para evitar que
   reglas históricas de versiones anteriores rompan el layout.
   ============================================================ */
html, body {
    width: 100%;
    max-width: 100%;
    min-height: 100%;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
}

.lc-shell {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 100vh !important;
    overflow-x: hidden !important;
}

.lc-sidebar {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: auto !important;
    bottom: 0 !important;
    width: 256px !important;
    height: 100vh !important;
    max-height: 100vh !important;
    display: flex !important;
    flex-direction: column !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: none !important;
    z-index: 2000 !important;
    overflow: hidden !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.lc-sidebar-inner {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    min-width: 0 !important;
    min-height: 0 !important;
    width: 100% !important;
    height: 100% !important;
}

.lc-sidebar-scroll {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    width: 100% !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
}

.lc-main {
    position: relative !important;
    display: block !important;
    width: calc(100% - 256px) !important;
    min-width: 0 !important;
    min-height: 100vh !important;
    margin: 0 0 0 256px !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
    transition: margin-left .22s ease, width .22s ease !important;
}

.lc-topbar {
    position: sticky !important;
    top: 0 !important;
    z-index: 1500 !important;
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 72px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

.lc-content {
    display: block !important;
    width: 100% !important;
    max-width: 1600px !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    padding: 30px 34px 24px !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}

.lc-page-header {
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

/* Estado contraído: únicamente por acción explícita del usuario. */
body.lc-sidebar-collapsed .lc-sidebar,
html.logicore-sidebar-collapsed body .lc-sidebar {
    width: 78px !important;
}

body.lc-sidebar-collapsed .lc-main,
html.logicore-sidebar-collapsed body .lc-main {
    width: calc(100% - 78px) !important;
    margin-left: 78px !important;
}

body.lc-sidebar-collapsed .lc-sidebar-brand,
html.logicore-sidebar-collapsed body .lc-sidebar-brand {
    justify-content: center !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.lc-sidebar-collapsed .lc-brand-copy,
html.logicore-sidebar-collapsed body .lc-brand-copy,
body.lc-sidebar-collapsed .lc-nav-section,
html.logicore-sidebar-collapsed body .lc-nav-section,
body.lc-sidebar-collapsed .lc-nav-item > span,
html.logicore-sidebar-collapsed body .lc-nav-item > span,
body.lc-sidebar-collapsed .lc-nav-arrow,
html.logicore-sidebar-collapsed body .lc-nav-arrow,
body.lc-sidebar-collapsed .lc-subnav,
html.logicore-sidebar-collapsed body .lc-subnav,
body.lc-sidebar-collapsed .lc-sidebar-mode,
html.logicore-sidebar-collapsed body .lc-sidebar-mode,
body.lc-sidebar-collapsed .lc-sidebar-footer,
html.logicore-sidebar-collapsed body .lc-sidebar-footer {
    display: none !important;
}

body.lc-sidebar-collapsed .lc-nav-item,
html.logicore-sidebar-collapsed body .lc-nav-item {
    justify-content: center !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Finanzas: siempre dentro del área útil del main. */
.lc-finance-page {
    width: 100% !important;
    max-width: 1600px !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    padding: 0 0 34px !important;
    box-sizing: border-box !important;
}

.lc-finance-page .lc-page-header {
    width: 100% !important;
    margin-bottom: 22px !important;
}

.lc-finance-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

.lc-finance-card .card-body,
.lc-finance-card .card-footer {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.lc-finance-card .row {
    --bs-gutter-x: 1.25rem;
    --bs-gutter-y: 1.1rem;
    max-width: 100% !important;
}

.lc-finance-card .form-control,
.lc-finance-card .form-select {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

.lc-finance-card .input-group {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    width: 100% !important;
    min-width: 0 !important;
}

.lc-finance-card .input-group > .form-control {
    min-width: 0 !important;
    width: 100% !important;
    border-radius: 10px !important;
}

@media (max-width: 991.98px) {
    .lc-content {
        padding-left: 24px !important;
        padding-right: 24px !important;
    }
}

@media (max-width: 760px) {
    .lc-sidebar {
        width: 78px !important;
    }
    .lc-main {
        width: calc(100% - 78px) !important;
        margin-left: 78px !important;
    }
    .lc-content {
        padding: 24px 16px 20px !important;
    }
    .lc-finance-card .input-group {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }
}


/* ============================================================
   LogiCore 3.2.4 - FINANZAS ROUTE HARDENING
   Prioridad: conservar el shell completo aunque existan estilos
   legacy o un estado de sidebar persistido.
   ============================================================ */
body.lc-finance-route .lc-sidebar,
body.lc-finance-route .lc-sidebar-inner {
    visibility: visible !important;
    opacity: 1 !important;
}
body.lc-finance-route .lc-sidebar {
    display: flex !important;
    width: 256px !important;
    left: 0 !important;
    right: auto !important;
    transform: none !important;
    z-index: 3000 !important;
}
body.lc-finance-route .lc-main {
    display: block !important;
    margin-left: 256px !important;
    width: calc(100% - 256px) !important;
    min-width: 0 !important;
}
body.lc-finance-route .lc-topbar {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
}
body.lc-finance-route .lc-content {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 28px 34px 28px !important;
}
body.lc-finance-route .lc-finance-page {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
}
body.lc-finance-route .lc-finance-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
}
body.lc-finance-route .lc-finance-card .card-body {
    min-width: 0 !important;
    overflow: visible !important;
}
body.lc-finance-route .lc-finance-card .row {
    min-width: 0 !important;
    width: 100% !important;
}
body.lc-finance-route .lc-finance-card [class*="col-"] {
    min-width: 0 !important;
}
body.lc-finance-route .lc-finance-card .form-control,
body.lc-finance-route .lc-finance-card .form-select,
body.lc-finance-route .lc-finance-card .input-group {
    min-width: 0 !important;
    max-width: 100% !important;
}

@media (max-width: 900px) {
    body.lc-finance-route .lc-sidebar {
        width: 78px !important;
    }
    body.lc-finance-route .lc-main {
        margin-left: 78px !important;
        width: calc(100% - 78px) !important;
    }
}
