/* AVISTA V20.5 — capa visual, sin cambios funcionales */
:root{--bg:#edf0f2;--panel:#fff;--panel2:#f8f7f3;--border:#dce2e8;--muted:#65758a;--accent:#b89556;--blue:#294968;--red:#b34c4b;--avista-navy:#0d2035;--avista-gold:#b89556;--avista-ink:#1b3047;--avista-serif:"Baskerville Old Face","Baskerville","Libre Baskerville",Georgia,serif;--avista-ui:Arial,"Segoe UI",sans-serif;font-family:var(--avista-serif)}
html{scroll-behavior:smooth}body{background:#edf0f2;color:var(--avista-ink);font-family:var(--avista-serif);font-size:16px;line-height:1.5}body,button,input,select,textarea{font-family:var(--avista-serif)}button,input,select,textarea{font-size:15px}button{transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #bd9a5c;outline-offset:2px}
.shell{grid-template-columns:242px minmax(0,1fr)}.sidebar{background:linear-gradient(180deg,#0a1a2c 0%,#10273e 100%);border-right:1px solid #243a51;padding:24px 15px;gap:25px;position:sticky;top:0;height:100vh;overflow-y:auto}.brand{font:normal 24px var(--avista-serif);letter-spacing:.5px;gap:12px}.brand small{font:10px var(--avista-ui);color:#d5b675;letter-spacing:1.65px}.logo{width:43px;height:43px;background:linear-gradient(135deg,#d2b16c,#ad8647);color:#0a1a2c;border:1px solid #e0c58d;font:normal 21px var(--avista-serif)}.nav{gap:4px}.nav button,.nav-parent{font:14px var(--avista-serif);letter-spacing:.1px;border-radius:5px;padding:12px 13px;line-height:1.3}.nav button:hover,.nav button.active,.nav-parent:hover,.nav-parent[aria-expanded=true]{background:#28415b;color:#fff;border-left:3px solid var(--avista-gold)}.nav-children{border-color:#8c784f}.nav-children button{font-size:13px}.foot{font:12px/1.8 var(--avista-serif);color:#b6c4d1}
.main{padding:34px clamp(22px,3.4vw,62px) 55px;min-width:0}.top{margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #dbe1e6;align-items:flex-start}.eyebrow{font:11px var(--avista-ui);letter-spacing:2.2px;color:#9d773e}h1{font:normal clamp(32px,3.3vw,46px)/1.12 var(--avista-serif);letter-spacing:-.35px;color:#142e49;margin:8px 0 8px}h2{font:normal 25px/1.25 var(--avista-serif);color:#193550;margin:0 0 18px}h3{font-family:var(--avista-serif)}p,.small{color:#65758a}.user{gap:12px}.tag{font:12px var(--avista-serif);color:#66798e}.demo-pill,.pill{font:11px var(--avista-ui);background:#f2e8d4;color:#8a652e;border:1px solid #e7d7b7;border-radius:4px;padding:7px 10px}
.cards{gap:17px;margin:20px 0 23px}.card,.panel{background:#fff;border:1px solid #dde3e8;border-radius:10px;box-shadow:0 3px 18px rgba(13,32,53,.035)}.card{padding:23px 24px;border-top:3px solid #b89556}.card .number{font:normal 39px/1.1 var(--avista-serif);color:#15314d;margin:8px 0}.card .label{font:13px var(--avista-serif);color:#63758a}.panel{padding:26px;margin:17px 0}.panel .section-head{padding-bottom:12px;border-bottom:1px solid #edf0f2;margin-bottom:15px}.panel .section-head h2{margin:0}.btn{border-radius:5px;background:#173650;color:#fff;border:1px solid #173650;font:14px var(--avista-serif);padding:10px 16px;min-height:39px}.btn:hover:not(:disabled){background:#254d70;box-shadow:0 4px 12px rgba(20,47,72,.12)}.btn.secondary{background:#fff;color:#183a58;border-color:#aebcc9}.btn.secondary:hover:not(:disabled){background:#f3f6f8}.btn.gold{background:#b89556;border-color:#b89556;color:#152b41}
.tablewrap{border:1px solid #e6eaed;border-radius:7px;overflow:auto}.tablewrap table{width:100%;border-collapse:collapse;font:14px var(--avista-serif)}.tablewrap th{background:#f7f8f9;font:11px var(--avista-ui);letter-spacing:.9px;color:#66798d;border-bottom:1px solid #dce3e8;padding:14px 15px;white-space:nowrap}.tablewrap td{font:14px/1.4 var(--avista-serif);padding:15px;border-bottom:1px solid #e7ecf0;color:#243a51}.tablewrap tbody tr:hover{background:#f8f9f8}.tablewrap tbody tr:last-child td{border-bottom:0}.tablewrap a,.link{color:#1d6582;text-decoration-color:#91b2be;text-underline-offset:3px}.status,.review-pill{display:inline-block;border-radius:100px;font:11px var(--avista-ui);padding:6px 11px;background:#edf1f5;color:#455c73}.status.aprobado,.status.finalizado{background:#e3f2ea;color:#1d7050}.status.revision,.status.pendiente{background:#fbf0d9;color:#916417}
.search,.field input,.field select,.field textarea,.inline-fields input,.inline-fields select,.inline-fields textarea,input,select,textarea{background:#fff;color:#213b54;border:1px solid #cbd5de;border-radius:5px;padding:11px 12px}.field label,.inline-fields label,.review-field label{font:13px var(--avista-serif);color:#2e4860}.field input[type=file],input[type=file]{background:#f9fafb;border:1px dashed #9baebc;padding:13px;cursor:pointer}.file-list{gap:9px}.file-pill{background:#f7f9fa;border:1px solid #d8e1e8;border-radius:6px;color:#29445d;padding:10px 12px}.geo-map,.review-map{border-radius:8px;border:1px solid #d8e1e8;overflow:hidden}.readonly,.review-note,.note{background:#f8f3e8;color:#705b37;border-left:3px solid #b89556;border-radius:5px;font:13px/1.6 var(--avista-serif);padding:13px 15px}.review-layout{gap:18px}.review-item{border-radius:6px}.review-item.active{background:#fcfaf6}.review-title{font:normal 29px var(--avista-serif)}.review-money{font:normal 35px var(--avista-serif)}.review-tabs button,.review-line,.review-meta{font-family:var(--avista-serif)}.review-tabs button.active{color:#173650}.avista-wallet{border-radius:9px;box-shadow:0 2px 10px rgba(13,32,53,.03)}.avista-progress{background:#e8edf1}.avista-progress span{background:#b89556}.message{border-radius:8px;background:#173650;color:#fff;box-shadow:0 15px 35px #0d203544}.message.error{background:#77333c}
@media(max-width:1000px){.shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto;overflow:visible;padding:15px 18px;gap:12px}.nav{display:flex;flex-wrap:wrap;overflow:visible}.nav-group{min-width:175px}.nav-children{margin-left:5px}.main{padding:25px 18px}.top{gap:14px}}@media(max-width:650px){.top{flex-direction:column}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card{padding:16px}.card .number{font-size:31px}.panel{padding:16px}.grid2,.inline-fields,.split-layout,.review-grid{grid-template-columns:1fr}.tablewrap td,.tablewrap th{padding:11px 12px}.user{width:100%}.sidebar .brand{font-size:21px}}@media(max-width:380px){.cards{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}button{transition:none}}
@media print{.sidebar,.user,.nav,.section-actions{display:none!important}.shell{display:block}.main{padding:0}.panel,.card{box-shadow:none}}
