/* AVISTA V21.1 — Diseño corporativo responsive y formularios guiados */
:root{--v21-navy:#101d30;--v21-panel:#172b45;--v21-gold:#c29a57;--v21-bg:#f4f6f9;--v21-ink:#20334d;--v21-line:#dce3eb}
body{background:var(--v21-bg)}.shell{grid-template-columns:250px minmax(0,1fr)}.sidebar{background:linear-gradient(180deg,#101d30,#102740);border-right:1px solid #243e5b;position:sticky;top:0;height:100vh;overflow-y:auto;z-index:60}.brand{letter-spacing:.05em}.logo{background:linear-gradient(135deg,#e0be7e,#ad8140);color:#10223a;border-radius:6px}.nav{gap:5px}.nav button{min-height:41px;border-radius:8px;transition:background .15s}.nav button.active{background:#304761;border-left:3px solid var(--v21-gold);color:#fff}.nav button:hover{background:#243b55}.main{background:var(--v21-bg);min-width:0}.top{padding-bottom:18px;border-bottom:1px solid var(--v21-line)}.eyebrow{color:#946e33;letter-spacing:.12em}.top h1{color:var(--v21-ink);font-size:clamp(25px,2.6vw,36px)}.panel,.card{background:#fff;border:1px solid var(--v21-line);box-shadow:0 2px 15px #11243b08;border-radius:13px}.panel{padding:clamp(16px,2vw,28px)}.panel h2,.panel h3{color:#1d3452}.card .number{color:#172b45}.btn{background:#24496b;color:#fff;border-radius:8px}.btn:hover{filter:brightness(1.08)}.btn.gold{background:#b38b49;color:#10233a}.btn.secondary{background:#fff;color:#264565;border:1px solid #cbd6e3}.link{color:#245e94}.tablewrap{border:1px solid #e2e8f0;border-radius:10px;overflow:auto}.tablewrap th{background:#f2f5f9;color:#51637a}.tablewrap td{border-bottom:1px solid #e9edf3}.tablewrap tbody tr:hover{background:#f2f7fc}input,textarea,select{max-width:100%}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #c29a57;outline-offset:1px}.avista-wizard{margin:14px 0 22px}.avista-wizard-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 18px}.avista-wizard-steps button{border:1px solid #d5dee8;border-radius:10px;padding:12px 6px;background:#f6f8fb;color:#586b80;text-align:center;font:600 12px/1.35 Arial,sans-serif;cursor:pointer}.avista-wizard-steps button.active{background:#193451;color:#fff;border-color:#193451}.avista-wizard-steps button.done{border-color:#b99a5e;color:#785922;background:#fffaf0}.avista-step{min-width:0}.avista-step[hidden],.avista-detail-tabs+[data-detail-panel][hidden],[data-detail-panel][hidden]{display:none!important}.avista-step h3{margin:8px 0 12px;font-size:18px}.avista-step-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:18px 0 4px;flex-wrap:wrap}.avista-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.avista-summary div{background:#f5f7fa;border:1px solid #e0e7ee;border-radius:9px;padding:12px;min-width:0;overflow-wrap:anywhere}.avista-summary span{display:block;color:#61748b;font:600 11px Arial,sans-serif;margin-bottom:5px}.avista-summary strong{font-size:15px;color:#20344f}.avista-help{background:#eef4fa;border-left:3px solid #497ba5;border-radius:7px;padding:11px 13px;color:#37506b;font-size:13px}.avista-error{color:#a12e3d;font:600 12px Arial,sans-serif;margin:6px 0}.avista-file-status{font:600 12px Arial,sans-serif;color:#426b4f}.avista-detail-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}.avista-detail-tabs button{border:1px solid #d7e0ea;background:#fff;border-radius:8px;padding:11px 16px;color:#3a536c}.avista-detail-tabs button.active{background:#173550;color:#fff;border-color:#173550}.avista-filterbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:8px 0 15px}.avista-filterbar select,.avista-filterbar input{padding:10px;border:1px solid #d4dfe9;border-radius:8px;background:#fff;color:#243d58;min-width:140px}.avista-mobile-menu{display:none}.geo-map,.review-map{min-height:340px;border-radius:11px;overflow:hidden}.avista-aoi-info{padding:10px 12px;border:1px solid #d6e2ee;border-radius:8px;background:#f2f7fc;margin:8px 0;color:#254867;font-size:13px}.file-pill{overflow-wrap:anywhere}.message{z-index:2000}.avista-upload-progress{margin:8px 0;padding:8px 12px;background:#f2f7fb;border-radius:8px;color:#315574;font-size:13px}.avista-upload-progress progress{width:100%;height:10px;accent-color:#b38b49}
@media(max-width:980px){.shell{grid-template-columns:1fr}.sidebar{position:fixed;left:0;top:0;bottom:0;width:min(300px,86vw);height:100dvh;transform:translateX(-103%);transition:transform .2s;box-shadow:10px 0 25px #0002}.sidebar.avista-open{transform:translateX(0)}.avista-mobile-menu{display:inline-flex;border:1px solid #d4dee9;background:#fff;color:#1b3653;border-radius:8px;padding:10px 13px;align-items:center;gap:8px}.main{width:100%}.nav{display:grid;overflow:visible}.nav button{white-space:normal}.foot{display:block}.top{align-items:flex-start}.avista-menu-backdrop{position:fixed;inset:0;background:#0a1b2a9c;z-index:55}.avista-menu-backdrop[hidden]{display:none}}
@media(max-width:650px){.avista-wizard-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.avista-summary{grid-template-columns:1fr}.inline-fields,.grid2,.split-layout{grid-template-columns:1fr!important}.top .user{width:100%;justify-content:flex-start}.main{padding:18px 12px}.panel{padding:16px}.geo-map{min-height:260px}}
@media(prefers-reduced-motion:reduce){.sidebar{transition:none}}

/* V21.2: commercial proposal and approval controls */
.avista-credit-breakdown{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0;padding:12px;background:#f1f5f9;border-radius:9px;color:#172b45}
.avista-credit-breakdown span{font-size:.86rem;white-space:nowrap}
.avista-decision-dialog{border:1px solid #c7d0dc;border-radius:14px;box-shadow:0 24px 70px #0b1c3199;max-width:490px;width:calc(100% - 28px);padding:26px;color:#172b45;background:#fff}
.avista-decision-dialog::backdrop{background:#0c1727a8}
.avista-decision-dialog h2{margin-top:0}
.avista-decision-dialog .section-actions{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap;margin-top:20px}
