/* Identidad de liberavet.com. Fuentes servidas desde esta instalación. */
@font-face{font-family:Montserrat;src:url('fonts/montserrat-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:'Libre Baskerville';src:url('fonts/libre-baskerville-latin.woff2') format('woff2');font-style:normal;font-weight:400 700;font-display:swap}
:root{--ink:#4a2e1f;--muted:#7a716b;--green:#4a2e1f;--green-hover:#362015;--accent:#ff8000;--line:#eae3d9;--paper:#fff;--canvas:#f7f7f7;--soft:#fffbf0;--danger:#9f3e32;--shadow:0 4px 18px #4a2e1f04}
body{font-family:Montserrat,'Segoe UI',Arial,sans-serif;font-size:17px;line-height:1.65;color:#4a2e1f;background:#f7f7f7}
h1{font-family:'Libre Baskerville',Georgia,serif;font-weight:600;letter-spacing:-1.1px;line-height:1.3}
h2,h3{font-family:Montserrat,'Segoe UI',Arial,sans-serif;font-weight:600;letter-spacing:-.35px}
.brand{display:flex;flex-direction:column;align-items:flex-start;gap:8px;max-width:230px;letter-spacing:normal;font-size:inherit;line-height:1}
.brand-logo{width:205px;height:auto;display:block;object-fit:contain}
.brand-caption{font-family:Montserrat,sans-serif;font-size:14px;font-weight:500;letter-spacing:1.8px;color:#7a6659;margin-left:2px}
.public-site:not(.embedded){min-height:100vh;display:flex;flex-direction:column;background:var(--paper)}
.public-site:not(.embedded) .public-main{flex:1;width:100%}
.public-header{
    width:100%;max-width:none;margin:0;min-height:0;
    padding:16px max(32px,calc((100% - 1116px)/2));
    flex-wrap:wrap;gap:14px;background:var(--soft);
}
.public-header .brand{flex-direction:row;align-items:center;max-width:none;gap:20px}
.public-header .brand-logo{width:160px}
.public-header .brand-caption{
    margin:0;padding-inline-start:20px;border-inline-start:1px solid #ddcdbd;
    line-height:1.4;letter-spacing:.6px;white-space:nowrap;
}
.public-header .staff-link{max-width:none}
.public-site:not(.embedded) .public-footer{width:100%}
.public-main{max-width:1180px;padding:54px 32px 64px}
.staff-link{font-size:16px;font-weight:500;border:1px solid #e8dac9;padding:11px 16px;border-radius:7px;background:#fffaf0}
.staff-link:hover{background:#fff3dd;text-decoration:none}
.intro{max-width:760px;margin-bottom:34px}.intro h1{font-size:clamp(29px,3.1vw,42px);line-height:1.32}.intro p{font-size:17px;color:#766b63;max-width:655px}
.eyebrow{color:#986127;font-size:14px;font-weight:600;letter-spacing:1.8px}
.form-layout{grid-template-columns:minmax(0,1fr) 310px;gap:28px}
.card{border-color:#eae3d9;border-radius:12px;box-shadow:var(--shadow)}
.card.soft{background:#fffbf0;border-color:#eee3cf}.form-card{padding:32px}
.button{background:#ff8000;border-color:#ff8000;color:#4a2e1f;font-size:15px;font-weight:600;min-height:44px;padding:12px 19px}
.button:hover{background:#f49028;border-color:#f49028;color:#362015}
.button.secondary{background:#fff;border-color:#ded0c2;color:#4a2e1f}.button.secondary:hover{background:#fffbf0}
input:not([type=checkbox]):not([type=file]),select,textarea{border-color:#ded8cf;font-size:16px;border-radius:7px;padding:12px;min-height:45px}
input:focus,select:focus,textarea:focus{border-color:#db8e43!important;box-shadow:0 0 0 3px #ff80001a}
input::placeholder,textarea::placeholder{color:#a19891}label{color:#594233;font-size:15px;font-weight:500}
label small,.muted,.form-footnote{color:#82766d}.checkbox input{accent-color:#b95500}
.step{background:#fff0dc;color:#9a5a20;font-weight:600}.section-heading h2{font-size:19px}
.round-icon{background:#fff0d8;color:#9a571c;border-radius:10px}
.upload-zone{background:#fffdf7;border-color:#d6b388}.upload-zone label{color:#4a2e1f;font-weight:600}
input[type=file]::file-selector-button{background:#fff3df;color:#4a2e1f;border-color:#dfc4a6;font-family:Montserrat,sans-serif;font-size:14px}
.form-aside h2{font-family:'Libre Baskerville',Georgia,serif;font-size:22px;line-height:1.45;letter-spacing:-.5px}
.form-aside p,.aside-note,.aside-note p{color:#7d6d61}.benefits li{font-size:14px;line-height:1.7}.benefits .icon{color:#b3621a}
.aside-note>.icon{color:#8e6e54}.public-footer{border-color:#eee4d6;color:#8a7c70;max-width:1180px}
.sidebar{background:#4a2e1f;color:#fffbf0;border-right:1px solid #362015;width:250px;padding:28px 22px 22px}
.sidebar .brand{color:#4a2e1f}.sidebar .brand-logo{width:201px;max-width:100%}.sidebar .brand-caption{font-size:14px;letter-spacing:1.5px;margin:4px 0 0 4px;color:#826b59}
.sidebar-label{color:#9a816b;font-size:14px;letter-spacing:1.5px;margin:43px 12px 15px}
.nav-link{color:#775f4f;font-size:15px;font-weight:500;gap:12px;padding:13px;margin:6px 0;border-radius:6px}
.nav-link.active{background:#fffbf0;color:#4a2e1f;box-shadow:0 4px 10px #4a2e1f0d}
.nav-link.active .icon{color:#ffab54}.nav-link:hover{background:#f4eadb;color:#4a2e1f}.nav-link.active:hover{background:#5c3b28;color:#fff}
.public-link{font-size:14px;color:#896746;margin:28px 12px;line-height:1.7}.public-link .icon{color:#bf6c23}
.user-block{border-top-color:#e7dbc9}.user-block strong{font-size:15px;color:#4a2e1f}.user-block small{font-size:14px;color:#8a7564}
.avatar{background:#f4d4ac;color:#6b3b19}.logout{color:#8d6951;font-family:Montserrat,sans-serif;font-size:14px}.version{color:#aa9584;font-size:14px}
.work-content{margin-left:250px}.work-header{background:#fff;border-color:#ece5dc;padding:0 38px;font-size:15px;color:#88776b;height:70px}.header-date{font-size:14px}
.main{padding:36px 38px 60px;max-width:1590px}.page-heading{margin-bottom:27px}.page-heading h1{font-size:34px;margin-bottom:10px}.page-heading p{font-size:15px;color:#8a7b71}.page-heading .eyebrow{font-size:14px;letter-spacing:1.7px}
.stats{gap:18px;margin-bottom:28px}.stat{min-height:130px;padding:20px 22px;border-color:#eae3d9;border-radius:10px}
.stat>span:first-child{font-size:14px;color:#786557}.stat>strong{font-family:Montserrat,sans-serif;font-size:34px;font-weight:500;color:#4a2e1f;letter-spacing:-1px;margin-top:13px}
.stat-icon{background:#fff0dc;color:#ba6a20;width:35px;height:35px;right:19px;bottom:24px}.stat:nth-child(3) .stat-icon{background:#e4f8f4;color:#368f87}.stat:nth-child(4) .stat-icon{background:#f0ede8;color:#8d705a}
.table-title{padding:24px 25px 23px}.table-title h2{font-size:18px;margin-bottom:21px}.count{color:#a96324;background:#fff1de;font-size:14px}
table{font-size:15px}.table-scroll{position:relative}th{font-size:14px;letter-spacing:.7px;font-weight:600;background:#fffbf4;color:#786557;border-color:#eee4d8;padding-top:14px;padding-bottom:14px}
td{border-bottom-color:#f0ebe5;padding-top:23px;padding-bottom:23px}td>small{font-size:14px;color:#786557;margin-top:5px}.row-link{font-size:15px;font-weight:600;color:#4a2e1f}.mono{font-family:Montserrat,sans-serif;font-size:14px;letter-spacing:.1px}.file-count{color:#9b7a5c}.icon-button{color:#a18267}.icon-button:hover{color:#4a2e1f;background:#fff0dc}
.badge{font-family:Montserrat,sans-serif;font-size:14px;font-weight:500;padding:6px 10px}.badge.new{background:#fff0dc;color:#9a5718}.badge.review{background:#e4f7f3;color:#33796f}.badge.pending{background:#fff4cf;color:#836219}.badge.done{background:#e8eee4;color:#526d42}.badge.archived{background:#efede9;color:#81766d}
.pagination{color:#9e8c7d;font-size:14px;padding-top:20px;padding-bottom:20px}.card-title h2{font-size:19px}.details-grid dt{color:#786557;font-size:14px}.details-grid dd{font-size:15px;line-height:1.75}.document-icon{background:#fff2df;color:#ba7839}.document-row strong{font-size:15px}.folder-path{background:#fffdf7;border-color:#eee0ce;color:#8e6e54}.notes .note{border-top-color:#eee3d6}.cloud-counts{border-color:#eee3d6;color:#8a7665}.cloud-counts strong{color:#4a2e1f}
.login-layout{gap:65px;margin-top:30px}.login-intro h1{font-size:39px;line-height:1.4}.login-intro p{font-size:17px;color:#867365}.login-decoration{background:#fff0dc}.login-decoration .icon{color:#bf7b3c}.login-card h2{font-size:22px}.login-card .round-icon{background:#fff1dd}
.receipt{padding:44px 36px}.receipt h1{font-size:32px;line-height:1.4}.receipt-check{background:#e3f7f2;color:#38867d}.reference{background:#fffbf0}.reference strong{font-family:Montserrat,sans-serif;font-size:17px;letter-spacing:1px}.reference small{color:#9b7a60}
.alert.success{background:#ecf6f1;border-color:#d1e5d9;color:#4b715b}.privacy{border-color:#ede3d6}code{background:#fff0dc;color:#8e541e}.profile-logout{margin-top:24px}.embedded{background:transparent}.embedded .intro h1{font-size:32px}.embedded .form-layout{grid-template-columns:minmax(0,1fr) 270px}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:#d98a35}
@media(min-width:1600px){.main{padding:42px 52px 60px}}
@media(max-width:1200px){.sidebar{width:228px;padding:27px 18px 20px}.sidebar .brand-logo{width:190px}.sidebar .brand-caption{font-size:14px}.work-content{margin-left:228px}.main{padding:31px 27px 45px}.work-header{padding:0 27px}.stat{padding:19px}.stat>span:first-child{font-size:14px}.stat-icon{right:15px}.form-layout{grid-template-columns:minmax(0,1fr) 280px}}
@media(max-width:1040px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{min-height:116px}.stat>strong{font-size:31px}.stat-icon{bottom:20px}.form-layout{grid-template-columns:minmax(0,1fr) 250px}.form-aside>.card{padding:23px}.form-aside h2{font-size:20px}.login-layout{gap:30px;grid-template-columns:1fr 380px}.login-intro h1{font-size:32px}.detail-layout{grid-template-columns:1fr}.detail-layout>aside{display:grid;grid-template-columns:1fr 1fr}}
@media(max-width:740px){.brand-caption{font-size:14px;letter-spacing:1px}.staff-link{font-size:14px;padding:9px 10px;max-width:130px}.public-main{padding:33px 18px 45px}.intro h1{font-size:29px;letter-spacing:-.8px;line-height:1.4}.intro p{font-size:15px;line-height:1.9}.form-layout,.embedded .form-layout{grid-template-columns:1fr}.form-card{padding:23px}.form-aside{display:none}.sidebar{width:100%;position:static;padding:17px 19px 12px;border:0;border-bottom:1px solid #e5d7c4}.sidebar>div:first-child{gap:16px}.sidebar .brand-logo{width:156px}.sidebar .brand-caption{font-size:14px;margin-left:1px}.sidebar nav{gap:3px}.nav-link{font-size:14px;padding:10px 8px;margin:0}.nav-link.active{box-shadow:none}.sidebar-label,.sidebar-bottom,.public-link{display:none}.work-content{margin-left:0}.work-header{height:46px;padding:0 19px;font-size:14px}.header-date{font-size:14px}.main{padding:26px 18px 40px}.page-heading h1{font-size:29px}.page-heading p{font-size:14px}.page-heading .eyebrow{font-size:14px}.page-heading>.button{font-size:14px;padding:10px 14px;min-height:40px}.stats{gap:12px}.stat{min-height:116px;padding:17px}.stat>span:first-child{font-size:14px}.stat>strong{font-size:29px}.stat-icon{width:30px;height:30px;right:13px;bottom:21px}.table-title{padding:21px 18px}.table-title h2{font-size:17px}.filters>input{font-size:14px!important}.filters>select{font-size:14px}.table-scroll table{min-width:690px}.detail-layout>aside{display:flex}.card-title h2{font-size:18px}.login-layout{grid-template-columns:1fr;gap:25px;margin:5px auto}.login-intro h1{font-size:31px}.login-card{padding:25px}.public-footer{font-size:14px}.embedded .public-main{padding:18px 4px}.embedded .intro h1{font-size:28px}.embedded{background:transparent}}
@media(max-width:420px){.sidebar nav{justify-content:flex-start;gap:3px}.nav-link{padding:9px 8px;font-size:14px}.nav-link .icon{width:13px;height:13px}.intro h1{font-size:27px}.form-card{padding:20px}.form-grid{grid-template-columns:1fr}.stats .stat>span:first-child{font-size:14px}.table-title h2{font-size:16px}}

.db-fields{border:1px solid var(--line);border-radius:9px;padding:20px;margin:6px 0 0}.db-fields legend{font-weight:600;font-size:16px;padding:0 8px}.history-separator{border:0;border-top:1px solid var(--line);margin:24px 0}.history-summary{margin-bottom:24px}.history-footnote{margin-top:20px}

/* Legibilidad y contraste de la navegación. */
.login-page:not(.embedded){background:#f8f4ec}
.login-page .public-main{box-sizing:border-box;flex:1;width:100%;padding:clamp(24px,5vh,54px) 18px}
.staff-login{width:100%;max-width:460px;box-sizing:border-box;margin:auto;padding:clamp(22px,5vw,36px);box-shadow:0 10px 32px #4a2e1f0b}
.staff-login h1{font-size:clamp(24px,4vw,31px);line-height:1.25;margin:12px 0 8px}
.staff-login .form-footnote{margin:20px 0 0}
.login-page .public-footer{box-sizing:border-box;width:100%;padding:14px 18px}
.sidebar{overflow-y:auto;scrollbar-color:#8b6350 #4a2e1f}
.sidebar .brand{background:#fffbf0;padding:10px 12px;border-radius:8px}
.sidebar .brand-caption{font-size:14px;letter-spacing:.5px;color:#694a38}
.sidebar-label,.sidebar .public-link,.sidebar .logout,.sidebar .version,.sidebar .user-block small{color:#efddd0}
.sidebar .public-link .icon,.nav-link .icon{color:#ffd0a2}
.sidebar .user-block{border-top-color:#896653}
.sidebar .user-block strong{color:#fff9f1}
.nav-link{color:#fffbf0;font-size:16px}
.nav-link:hover{background:#674632;color:#fff9f1}
.nav-link.active .icon{color:#4a2e1f}
.nav-link.active:hover{background:#fff0dc;color:#4a2e1f}
.sidebar-bottom{margin-top:24px}
.button{white-space:normal;max-width:100%;text-align:center}
.document-row{min-width:0}
.document-row strong, .role-list a{overflow-wrap:anywhere}
.role-permissions{margin:0;min-width:0;padding:16px;border:1px solid var(--line);border-radius:8px}
.role-permissions .checkbox{margin-bottom:12px}
.role-list{list-style:none;padding:0}
.role-list li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:12px 0;border-bottom:1px solid var(--line)}
@media(max-width:740px){
 .public-header{padding:14px 18px;min-height:0;gap:12px}
 .public-header .brand{flex-direction:column;align-items:flex-start;gap:6px}
 .public-header .brand-logo{width:145px}
 .public-header .brand-caption{padding:0;border:0;letter-spacing:.35px}
 .public-header .staff-link{max-width:122px}
 .sidebar nav{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
 .sidebar .brand-caption{font-size:14px}
 .nav-link{font-size:14px;white-space:normal;line-height:1.4;min-height:42px}
 .filters>input{font-size:16px!important}
 .form-layout .form-grid{grid-template-columns:minmax(0,1fr)}
 .table-scroll table{min-width:740px}
}
