/* Suite UI v0.1 · Capa global reversible. Se carga solamente cuando theme_ui_enabled=1. */
html[data-suite-ui="enabled"]{min-height:100%;background:var(--sui-background);color:var(--sui-text);font-family:var(--sui-font);scroll-behavior:smooth}
body.suite-ui-enabled{min-height:100vh;background:var(--sui-background);color:var(--sui-text);font-family:var(--sui-font);font-size:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body.suite-ui-enabled ::selection{background:var(--sui-primary-soft);color:var(--sui-text)}
body.suite-ui-enabled :focus-visible{outline:3px solid rgba(var(--sui-primary-rgb),.25);outline-offset:2px}
body.suite-ui-enabled a{transition:color var(--sui-transition),background var(--sui-transition),border-color var(--sui-transition),transform var(--sui-transition),box-shadow var(--sui-transition)}
body.suite-ui-enabled main{min-height:calc(100vh - 150px)}
body.suite-ui-enabled .container,body.suite-ui-enabled .container-fluid{--bs-gutter-x:1.8rem}

body.suite-ui-enabled .suite-main-nav{min-height:72px;border-bottom:1px solid color-mix(in srgb,var(--sui-border) 82%,transparent)!important;background:color-mix(in srgb,var(--sui-surface) 90%,transparent)!important;backdrop-filter:blur(22px);box-shadow:0 8px 28px rgba(25,30,52,.035)}
body.suite-ui-enabled .suite-main-nav .navbar-brand{color:var(--sui-text);font-weight:850!important;letter-spacing:-.025em}
body.suite-ui-enabled .suite-main-nav .nav-brand-icon{width:39px;height:39px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,var(--sui-primary),color-mix(in srgb,var(--sui-primary) 70%,#8a6cff));color:#fff;box-shadow:0 10px 25px rgba(var(--sui-primary-rgb),.23)}
body.suite-ui-enabled .suite-main-nav .nav-link{border-radius:12px;color:var(--sui-text-soft);font-size:.88rem;font-weight:680;padding:.58rem .72rem}
body.suite-ui-enabled .suite-main-nav .nav-link:hover,body.suite-ui-enabled .suite-main-nav .nav-link.active{background:var(--sui-primary-soft);color:var(--sui-primary)}
body.suite-ui-enabled .suite-main-nav .dropdown-menu{min-width:245px;padding:.62rem;border:1px solid var(--sui-border)!important;border-radius:16px!important;background:var(--sui-surface);box-shadow:var(--sui-shadow)!important}
body.suite-ui-enabled .suite-main-nav .dropdown-item{border-radius:11px;color:var(--sui-text-soft);font-size:.88rem;padding:.58rem .72rem}
body.suite-ui-enabled .suite-main-nav .dropdown-item:hover{background:var(--sui-primary-soft);color:var(--sui-primary)}
body.suite-ui-enabled .suite-main-nav .dropdown-header{color:var(--sui-muted)}
body.suite-ui-enabled .navbar-toggler{border:1px solid var(--sui-border);border-radius:12px;box-shadow:none!important}

body.suite-ui-enabled h1,body.suite-ui-enabled h2,body.suite-ui-enabled h3,body.suite-ui-enabled h4,body.suite-ui-enabled h5,body.suite-ui-enabled h6{color:var(--sui-text);letter-spacing:-.025em}
body.suite-ui-enabled .text-muted,body.suite-ui-enabled .small-muted,body.suite-ui-enabled .form-text{color:var(--sui-muted)!important}
body.suite-ui-enabled code{padding:.15em .42em;border:1px solid var(--sui-border);border-radius:7px;background:var(--sui-surface-alt);color:var(--sui-text);font-size:.9em}
body.suite-ui-enabled section.py-4>.container,body.suite-ui-enabled section.py-4>.container-fluid{padding-top:.5rem;padding-bottom:.75rem}

body.suite-ui-enabled .card,body.suite-ui-enabled .suite-hero-card,body.suite-ui-enabled .suite-filter-panel,body.suite-ui-enabled .suite-profile-hero,body.suite-ui-enabled .suite-profile-content-card,body.suite-ui-enabled .suite-profile-nav{border:1px solid var(--sui-border)!important;border-radius:var(--sui-radius)!important;background:var(--sui-surface)!important;box-shadow:var(--sui-shadow-sm)!important;color:var(--sui-text)!important}
body.suite-ui-enabled .suite-hero-card{padding:clamp(1.35rem,2vw,2rem);background:linear-gradient(135deg,var(--sui-surface),color-mix(in srgb,var(--sui-primary) 4%,var(--sui-surface)))!important}
body.suite-ui-enabled .module-tile{transition:transform var(--sui-transition),box-shadow var(--sui-transition),border-color var(--sui-transition)}
body.suite-ui-enabled .module-tile:hover{transform:translateY(-2px);border-color:rgba(var(--sui-primary-rgb),.22)!important;box-shadow:var(--sui-shadow)!important}
body.suite-ui-enabled .module-logo-box,body.suite-ui-enabled .tile-icon{border-color:var(--sui-border)!important;background:var(--sui-surface-alt)!important}
body.suite-ui-enabled .card-header{border-bottom:1px solid var(--sui-border)!important;background:var(--sui-surface-alt)!important;color:var(--sui-text)!important}
body.suite-ui-enabled .accordion{border-radius:var(--sui-radius);overflow:hidden;border:1px solid var(--sui-border);background:var(--sui-surface);box-shadow:var(--sui-shadow-sm)!important}
body.suite-ui-enabled .accordion-item{border-color:var(--sui-border);background:var(--sui-surface)}
body.suite-ui-enabled .accordion-button{min-height:58px;background:var(--sui-surface);color:var(--sui-text);font-weight:760;box-shadow:none!important}
body.suite-ui-enabled .accordion-button:not(.collapsed){background:var(--sui-primary-soft);color:var(--sui-primary)}
body.suite-ui-enabled .accordion-body{background:var(--sui-surface)}

body.suite-ui-enabled .btn{min-height:var(--sui-control-height);display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border-radius:var(--sui-radius-sm);font-weight:730;box-shadow:none;transition:transform var(--sui-transition),box-shadow var(--sui-transition),background var(--sui-transition),border-color var(--sui-transition),color var(--sui-transition)}
body.suite-ui-enabled .btn:hover{transform:translateY(-1px)}
body.suite-ui-enabled .btn-primary{border-color:var(--sui-primary);background:var(--sui-primary);color:#fff}
body.suite-ui-enabled .btn-primary:hover,body.suite-ui-enabled .btn-primary:focus{border-color:var(--sui-primary-hover);background:var(--sui-primary-hover);box-shadow:0 9px 22px rgba(var(--sui-primary-rgb),.2)}
body.suite-ui-enabled .btn-outline-primary{border-color:rgba(var(--sui-primary-rgb),.35);color:var(--sui-primary)}
body.suite-ui-enabled .btn-outline-primary:hover{border-color:var(--sui-primary);background:var(--sui-primary-soft);color:var(--sui-primary)}
body.suite-ui-enabled .btn-outline-secondary,body.suite-ui-enabled .btn-light{border-color:var(--sui-border);background:var(--sui-surface);color:var(--sui-text-soft)}
body.suite-ui-enabled .btn-outline-secondary:hover,body.suite-ui-enabled .btn-light:hover{border-color:var(--sui-border-strong);background:var(--sui-surface-alt);color:var(--sui-text)}
body.suite-ui-enabled .btn-sm{min-height:34px;border-radius:10px}
body.suite-ui-enabled .btn-lg{min-height:48px;border-radius:14px}

body.suite-ui-enabled .form-label{color:var(--sui-text-soft);font-size:.82rem;font-weight:730}
body.suite-ui-enabled .form-control,body.suite-ui-enabled .form-select{min-height:var(--sui-control-height);border:1px solid var(--sui-border);border-radius:var(--sui-radius-sm);background:var(--sui-surface-alt);color:var(--sui-text);box-shadow:none}
body.suite-ui-enabled textarea.form-control{min-height:92px}
body.suite-ui-enabled .form-control:focus,body.suite-ui-enabled .form-select:focus{border-color:var(--sui-primary);background:var(--sui-surface);box-shadow:0 0 0 4px var(--sui-primary-soft)}
body.suite-ui-enabled .form-check-input{border-color:var(--sui-border-strong);box-shadow:none}
body.suite-ui-enabled .form-check-input:checked{border-color:var(--sui-primary);background-color:var(--sui-primary)}
body.suite-ui-enabled .form-range{accent-color:var(--sui-primary)}

body.suite-ui-enabled .table{--bs-table-bg:transparent;--bs-table-color:var(--sui-text);--bs-table-border-color:var(--sui-border);color:var(--sui-text)}
body.suite-ui-enabled .table thead th{border-bottom-color:var(--sui-border-strong);background:var(--sui-surface-alt);color:var(--sui-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em}
body.suite-ui-enabled .table>:not(caption)>*>*{padding:.8rem .85rem;border-color:var(--sui-border)}
body.suite-ui-enabled .table-hover>tbody>tr:hover>*{--bs-table-accent-bg:var(--sui-primary-soft);color:var(--sui-text)}

body.suite-ui-enabled .alert{border-radius:var(--sui-radius-sm);border-width:1px;box-shadow:none}
body.suite-ui-enabled .alert-light,body.suite-ui-enabled .alert-secondary{border-color:var(--sui-border);background:var(--sui-surface-alt);color:var(--sui-text-soft)}
body.suite-ui-enabled .alert-success{border-color:rgba(var(--sui-success-rgb),.2);background:rgba(var(--sui-success-rgb),.07);color:var(--sui-success)}
body.suite-ui-enabled .alert-warning{border-color:rgba(var(--sui-warning-rgb),.2);background:rgba(var(--sui-warning-rgb),.08);color:var(--sui-warning)}
body.suite-ui-enabled .alert-danger{border-color:rgba(var(--sui-danger-rgb),.2);background:rgba(var(--sui-danger-rgb),.07);color:var(--sui-danger)}
body.suite-ui-enabled .badge.text-bg-primary{background:var(--sui-primary)!important}
body.suite-ui-enabled .badge.text-bg-light{border:1px solid var(--sui-border);background:var(--sui-surface-alt)!important;color:var(--sui-muted)!important}

body.suite-ui-enabled .login-shell{background:radial-gradient(circle at 15% 10%,rgba(var(--sui-primary-rgb),.1),transparent 32%),var(--sui-background)}
body.suite-ui-enabled .login-card{border:1px solid var(--sui-border)!important;border-radius:calc(var(--sui-radius) + 4px)!important;background:var(--sui-surface)!important;box-shadow:var(--sui-shadow)!important}
body.suite-ui-enabled footer{border-top:1px solid var(--sui-border)!important;background:var(--sui-surface)!important;color:var(--sui-muted)}

@media(max-width:991.98px){
  body.suite-ui-enabled .suite-main-nav .navbar-collapse{margin-top:.75rem;padding:.75rem;border:1px solid var(--sui-border);border-radius:16px;background:var(--sui-surface)}
  body.suite-ui-enabled .suite-main-nav .nav-link{padding:.7rem .8rem}
}
@media(prefers-reduced-motion:reduce){body.suite-ui-enabled *,body.suite-ui-enabled *::before,body.suite-ui-enabled *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
