/* Identidad del portal: logotipo original y paleta de llanteravite.com. */
:root{
  --vite-red:#e30613;--vite-red-dark:#b90510;--vite-blue:#0b4db8;--vite-navy:#071225;
  --navy:#071225;--navy-light:#15233b;--blue:#e30613;--blue-hover:#b90510;
  --mint:#fff;--ink:#111827;--muted:#596577;--line:#dfe4eb;--canvas:#f3f5f8;--radius:5px;
  font-family:"Segoe UI",Arial,sans-serif;
}
body{color:var(--ink)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#0b4db8}
h1,h2{color:var(--vite-navy);font-weight:800;letter-spacing:-.035em}
h1{font-size:2.15rem}
.eyebrow{color:var(--vite-red);font-weight:800;letter-spacing:.12em}
.brand{padding:0;display:flex;flex-direction:column;gap:12px;align-items:flex-start;letter-spacing:normal}
.brand-logo{display:block;width:190px;max-width:100%;height:auto;object-fit:contain}
.brand-caption{color:#536071;font-size:.75rem;font-weight:700;letter-spacing:.13em;line-height:1.3}
.sidebar{background:#fff;color:#536071;border-right:1px solid var(--line);padding-top:27px}
.sidebar>.brand{margin:0 14px}
.workspace{margin-top:26px;margin-bottom:24px;border-color:#e5e9ee;padding-top:16px;padding-bottom:16px}
.workspace-avatar{background:#f7f8fa;color:var(--vite-navy);border-color:#e0e5ec;border-radius:4px}
.workspace strong{color:var(--vite-navy)}
.workspace small{color:#667385}
.nav-label{color:#778294;font-size:.75rem;font-weight:700}
.nav-item{color:#536071;border-left:3px solid transparent;border-radius:3px;padding-left:10px;font-weight:500}
.nav-item .icon{color:#748197}
.nav-item:hover{background:#f4f6f9;color:var(--vite-navy)}
.nav-item.active{background:#fff0f1;color:#b90510;border-left-color:var(--vite-red);font-weight:700}
.nav-item.active .icon{color:var(--vite-red)}
.nav-count{color:#778294}
.nav-item.active .nav-count{background:#f9dadd;color:#a8000a;border-radius:3px}
.storage{border-color:#dfe4eb}
.storage>div{color:#536071}
.storage small,.sidebar-footer{color:#738095}
.storage progress,.storage progress::-webkit-progress-bar{background:#e6eaf0}
.storage progress::-webkit-progress-value{background:var(--vite-red)}
.storage progress::-moz-progress-bar{background:var(--vite-red)}
.topbar{border-bottom:3px solid var(--vite-red);min-height:83px;background:#fff}
.breadcrumb{font-weight:500;color:#758093}
.breadcrumb strong{color:var(--vite-navy)}
.mobile-brand{display:none}
.profile{color:var(--vite-navy)}
.avatar{background:#fff1f2;color:#be1220;border-color:#f1d4d8;border-radius:5px;font-weight:800}
.page-heading{border-left:4px solid var(--vite-red);padding-left:18px;min-height:90px}
.page-heading h1{margin-bottom:8px}
.page-heading .eyebrow{margin-bottom:8px}
.button{border-radius:4px;font-weight:700;min-height:44px}
.primary{background:var(--vite-red);box-shadow:0 3px 8px #e3061314}
.primary:hover{background:var(--vite-red-dark)}
.secondary{color:#344256;border-color:#cfd7e3}
.secondary:hover{background:#f5f7fa;border-color:#9aa9bd}
.icon-button{color:#718096;border-radius:4px}
.icon-button:hover{color:var(--vite-red);background:#fff0f1}
.download-link{color:var(--vite-red)}
.stat-card{border-radius:5px;border-left:3px solid var(--vite-red);box-shadow:0 4px 16px #07122503}
.stat-card:nth-child(2){border-left-color:var(--vite-blue)}
.stat-card:nth-child(3){border-left-color:var(--vite-navy)}
.stat-icon{border-radius:4px}
.stat-icon.blue{background:#fff0f1;color:var(--vite-red)}
.stat-icon.mint{background:#edf3fc;color:var(--vite-blue)}
.stat-icon.violet{background:#edf0f5;color:var(--vite-navy)}
.stat-card>div>span{font-size:.875rem;color:#596577}
.stat-card>div>strong{color:var(--vite-navy);font-weight:800}
.stat-card>small{color:#788497}
.panel{border-radius:5px}
.library{border-top:3px solid var(--vite-navy)}
.tabs a{color:#657286;font-weight:600}
.tabs a.selected{color:var(--vite-red);border-bottom-color:var(--vite-red)}
.result-count,.table-footer{color:#677489}
.search-row{background:#fff}
input:not([type=radio]):not([type=file]),textarea,select{border-radius:4px;border-color:#ccd5e1}
input::placeholder,textarea::placeholder{color:#7e899a}
.document-table th,th{color:#677489;background:#f4f6f9;font-weight:600}
.document-name strong{color:var(--vite-navy)}
.document-name>div>span{color:#6f7c8d}
.document-description{color:#6b7788}
.category-pill{background:#f3f5f8;color:#59677b;border-color:#e1e6ed;border-radius:3px}
.access-badge{color:#5c6f88}
.access-badge.private{color:#aa2634}
.recipient-name,.date-cell{color:#68768a}
.file-type{border-radius:3px}
.type-pdf{background:#fff0f1;color:#d50819;border-color:#f3d5d9}
.type-docx{background:#edf4ff;color:#0b4db8;border-color:#d8e4f5}
.library-note{color:#657387}
.empty-icon{background:#fff0f1;color:var(--vite-red);border-radius:5px}
.empty-state h2{font-weight:750}
.main-footer{color:#6f7c8f}
.main-footer>span:last-child{color:var(--vite-navy);letter-spacing:.06em;font-size:.6875rem;font-weight:800;text-transform:uppercase}
.modal{border-radius:6px;border-top:4px solid var(--vite-red)}
.modal-heading h2{font-weight:800}
.file-drop{background:#fcfcfd;border-color:#b9c5d5;border-radius:5px}
.file-drop>.icon{color:var(--vite-red)}
input::file-selector-button{background:#fff0f1;color:#ac1321;border-color:#f0ced3;border-radius:3px}
.access-options label{border-radius:4px}
.access-options label:has(input:checked){background:#fff5f5;border-color:#e9aab0}
.access-options .icon{color:#9d3640}
.category-row>.icon{color:var(--vite-red)}
.activation-step{background:#f7f8fb;border-color:#d9e1ed;border-radius:4px}
.activation-step>strong{color:var(--vite-navy)}
.activation-step code{border-color:#cfd9e8;border-radius:3px;color:#153762}
.auth-intro{background:var(--vite-navy);padding-top:38px;position:relative;border-right:5px solid var(--vite-red)}
.auth-intro .brand{background:#fff;padding:17px 23px;border-radius:4px;width:max-content;max-width:100%;gap:8px}
.auth-intro .brand-logo{width:210px}
.auth-intro .brand-caption{font-size:.75rem;color:#536071}
.auth-intro>div{border-left:4px solid var(--vite-red);padding-left:23px}
.auth-intro .eyebrow{color:#fff;background:var(--vite-red);display:inline-block;padding:6px 10px;letter-spacing:.12em;font-size:.6875rem}
.auth-intro h1{color:#fff;text-transform:uppercase;font-size:clamp(2.25rem,3.5vw,3.8rem);font-weight:900;line-height:1.12;letter-spacing:-.03em}
.auth-intro h1 span{color:white}
.auth-intro>div>p:not(.eyebrow){color:#c8d1df}
.auth-folders{gap:17px;margin-top:29px}
.auth-folders>span{color:#e1e6ee}
.auth-folders .icon{color:#f0737d}
.auth-company{color:#b4c1d4}
.auth-form .eyebrow{color:var(--vite-red)}
.auth-form h2{color:var(--vite-navy);font-weight:800}
.auth-form .muted{color:#637084}
.auth-help{color:#6e7b8d}
.setup-notice{border-radius:5px;border-top:4px solid var(--vite-red)}
.setup-notice .brand-logo{width:190px;margin-bottom:25px}
@media(max-width:900px){
  .topbar{min-height:84px}.sidebar{top:84px;box-shadow:14px 0 35px #07122518}
  .sidebar>.brand{display:flex;margin-bottom:17px}.sidebar .brand-logo{width:160px}
  .sidebar .workspace{margin-top:0}.mobile-brand{display:block;margin-right:auto;background:#fff;flex:none}
  .mobile-brand img{width:112px;height:auto;display:block}.topbar .breadcrumb{display:none}
  .auth-intro{padding-left:8%;padding-right:8%}
}
@media(max-width:640px){
  .page-heading{padding-left:14px;border-left-width:3px;min-height:0}.page-heading>.button{align-self:stretch}
  h1{font-size:1.85rem}.stat-card{border-left-width:3px}.stat-card>div>span{font-size:.8125rem}
  .auth-intro{border-right:0;border-bottom:3px solid var(--vite-red);background:white;padding:22px 26px}
  .auth-intro .brand{padding:0}.auth-intro .brand-logo{width:170px}.auth-intro .brand-caption{display:none}
  .auth-form{padding-top:34px}.table-footer{font-size:.75rem}.main-footer{gap:15px;flex-wrap:wrap}
  .modal{padding-top:20px}.brand-caption{font-size:.75rem}
}
