.epi{--epi-blue:#1366ca;--epi-ink:#162e49;color:var(--epi-ink)}
.epi h1,.epi h2,.epi h3{margin:0}.epi p{line-height:1.5}.epi .epi-head{padding:24px;background:#102e52;color:#fff;border-radius:16px;display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap}.epi-head small{color:#a9d6fa;text-transform:uppercase;letter-spacing:.13em;font-weight:700}
.epi button{cursor:pointer;border:1px solid #c7d6e7;border-radius:8px;padding:8px 12px;background:#fff;color:var(--epi-ink);font:inherit;font-weight:700}.epi button:disabled{opacity:.55;cursor:wait}.epi button.epi-primary,.epi button[aria-pressed="true"]{color:#fff;background:var(--epi-blue);border-color:var(--epi-blue)}
.epi-tabs,.epi-actions{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.epi-box{padding:18px;margin:12px 0;background:#fff;border:1px solid #dce6f0;border-radius:12px}.epi-box small,.epi-muted{color:#536d86}
.epi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:10px}.epi label{display:grid;gap:5px;font-size:13px;font-weight:700}.epi input,.epi select,.epi textarea{box-sizing:border-box;width:100%;min-width:0;border:1px solid #c4d4e6;border-radius:7px;padding:8px;background:#fff;color:#182e45;font:inherit}
.epi-scroll{overflow:auto;max-height:65vh;border:1px solid #dce6f0;border-radius:8px}.epi table{border-collapse:separate;border-spacing:0;width:100%;font-size:13px}.epi th,.epi td{padding:10px;border-bottom:1px solid #e1e9f0;text-align:left;vertical-align:top;min-width:100px}.epi th{background:#eaf2fb;position:sticky;top:0;z-index:1}.epi .epi-matrix th:first-child,.epi .epi-matrix td:first-child{position:sticky;left:0;background:#f1f6fc;min-width:195px}.epi .epi-matrix th:first-child{z-index:2}.epi .epi-best{background:#e7f7ee;color:#165f3c}.epi .epi-matrix label{display:flex;align-items:center;gap:6px}.epi .epi-matrix input{width:auto}
.epi .epi-msg{padding:10px 12px;border-radius:8px;background:#e9f4ff;margin:12px 0}.epi .epi-msg:empty{display:none}.epi .epi-error{background:#ffebeb;color:#8b2222}.epi dialog{max-width:min(980px,94vw);width:100%;max-height:90vh;border:1px solid #c6d5e5;border-radius:14px;color:inherit;padding:20px}.epi dialog::backdrop{background:#0c244b80}.epi .epi-line{padding:12px;margin:8px 0;border:1px solid #e0e8f0;border-radius:8px}.epi .epi-stat{padding:8px 10px;background:#edf4fc;border-radius:8px;margin:6px 0}.epi .epi-matrix small{display:block}.epi .epi-wide{min-width:150px}
.epi-public{font:15px system-ui,sans-serif;background:#f0f5fa;margin:0}.epi-public main{max-width:1020px;margin:auto;padding:22px}
@media(max-width:600px){.epi .epi-box{padding:12px}.epi dialog{padding:12px}.epi .epi-head{padding:16px}.epi .epi-matrix th:first-child,.epi .epi-matrix td:first-child{min-width:135px}.epi-public main{padding:12px}}
.epi .epi-picker{margin:8px 0;padding:10px;border:1px solid #dce6f0;border-radius:8px;background:#f7fafd}.epi .epi-pick-results{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.epi .epi-pick-results small{align-self:center}.epi .epi-pick-results button{text-align:left;font-size:12px}.epi .epi-line>[data-epi-action=line-remove]{margin-top:8px}.epi #epiCreate h3{margin-top:14px}

.epi dialog.epi-compose{box-sizing:border-box;width:min(1120px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:0;overflow:hidden;background:#fff;box-shadow:0 22px 70px #0b274a38}
.epi dialog.epi-compose[open]{display:flex;flex-direction:column}
.epi-compose #epiEditorContent,.epi-compose #epiCreate{display:flex;flex-direction:column;min-height:0}
.epi-compose-head,.epi-compose-foot{display:flex;align-items:center;justify-content:space-between;flex:none;gap:12px;padding:16px 24px;background:#fff}
.epi-compose-head{border-bottom:1px solid #dce6f0}
.epi-compose-head small{display:block;color:#155ab1;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:3px}
.epi-compose-head h2{font-size:24px;line-height:1.2}
.epi .epi-compose-close{padding:0;width:36px;height:36px;font-size:24px;line-height:1;background:#f1f5fa}
.epi-compose-body{overflow:auto;overscroll-behavior:contain;padding:20px 24px;background:#f3f6fa}
.epi-compose-top,.epi-compose-panels{display:grid;gap:16px}
.epi-compose-top{grid-template-columns:minmax(0,1fr) minmax(160px,235px);margin-bottom:16px}
.epi-compose-top.is-manual{grid-template-columns:repeat(3,minmax(0,1fr))}
.epi-compose-panels{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:start}
.epi-draft-panel{min-width:0;background:#fff;border:1px solid #dce6f0;border-radius:12px;overflow:hidden}
.epi-draft-panel header,.epi-draft-selected{padding:14px}
.epi #epiCreate .epi-draft-panel h3{font-size:16px;margin:0}
.epi-draft-panel header p,.epi-draft-empty{margin:4px 0 0;color:#536d86;font-size:13px}
.epi .epi-compose .epi-picker{margin:0 14px 12px;padding:10px}
.epi .epi-compose input{min-height:38px;padding-inline:10px}
.epi .epi-compose .epi-pick-results{display:block;overflow:auto;max-height:156px;overscroll-behavior:contain}
.epi .epi-compose .epi-pick-results:empty{display:none}
.epi .epi-pick-row{width:100%;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:6px 8px;min-height:45px;border-radius:0;border:0;border-bottom:1px solid #e1e9f0}
.epi .epi-pick-row:last-child{border-bottom:0}
.epi .epi-pick-row:hover,.epi .epi-pick-row:focus-visible{background:#e8f2ff}
.epi .epi-pick-row span:first-child,.epi-picked-name{min-width:0;overflow-wrap:anywhere}
.epi .epi-pick-row strong,.epi .epi-pick-row small,.epi-picked-name small{display:block}
.epi .epi-pick-row small,.epi-picked-name small,.epi-pick-hint{color:#536d86;font-weight:500}
.epi-pick-add{flex:none;color:#1258a8}
.epi-pick-hint{display:block;margin-top:6px;font-size:11px}
.epi-draft-selected{border-top:1px solid #e1e9f0}
.epi-draft-bar{display:flex;justify-content:space-between;align-items:center;gap:8px}
.epi-draft-bar h4{font-size:13px;margin:0}
.epi-draft-bar h4 span{display:inline-block;color:#155ab1;background:#eaf3ff;border-radius:999px;padding:2px 7px;margin-left:3px}
.epi .epi-draft-bar button,.epi .epi-compose .epi-line>button{font-size:12px;padding:6px 8px}
.epi .epi-compose .epi-line{background:#f7fafd;margin-bottom:0}
.epi .epi-compose .epi-line-picked{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.epi .epi-compose .epi-line-picked>button{margin:0}
.epi .epi-line-picked .epi-grid{grid-template-columns:minmax(0,1fr) minmax(75px,94px);align-items:center}
.epi .epi-line[data-kind=supplier] .epi-grid{grid-template-columns:minmax(0,1fr)}
.epi .epi-line-priced.epi-line-picked .epi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.epi .epi-line-priced .epi-picked-name{grid-column:1/-1}
.epi-compose-foot{border-top:1px solid #dce6f0}
.epi-compose-foot strong,.epi-compose-foot small{display:block}
.epi-compose-foot small{color:#536d86;margin-top:3px}
.epi .epi-compose-foot button{min-height:42px}
.epi .epi-compose>.epi-msg{margin:0 14px 10px}
@media(max-width:760px){
 .epi-compose-panels{grid-template-columns:minmax(0,1fr)}
 .epi-compose-body,.epi-compose-head,.epi-compose-foot{padding:12px}
}
@media(max-width:480px){
 .epi dialog.epi-compose{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}
 .epi-compose-top,.epi-compose-top.is-manual{grid-template-columns:minmax(0,1fr);gap:10px}
 .epi-compose-foot{align-items:stretch;flex-direction:column;gap:7px}
 .epi-compose-foot small{display:none}
 .epi .epi-compose .epi-line-picked{display:block}
 .epi .epi-compose .epi-line-picked>button{margin-top:6px}
}

.epi-compose-top:not(.is-manual){grid-template-columns:minmax(0,1fr) minmax(235px,300px)}
.epi-compose-top:not(.is-manual)>label{align-self:end}
.epi-deadline{min-width:0;margin:0;padding:0;border:0}
.epi-deadline legend{padding:0;font-size:13px;font-weight:700}
.epi-deadline legend small{font-size:11px;color:#536d86;font-weight:500}
.epi-deadline>div{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:8px;margin-top:5px}
.epi .epi-deadline label{font-size:11px}
.epi .epi-deadline input{font-size:13px}
@media(max-width:600px){.epi-compose-top:not(.is-manual){grid-template-columns:minmax(0,1fr)}}

#comprasEpi{--epi-blue:#125dbe}
#comprasEpi>.epi-head{padding:24px 28px;background:linear-gradient(108deg,#102e52,#164a76);border-radius:14px}
#comprasEpi>.epi-head h1{font-size:clamp(24px,3vw,34px);line-height:1.2;margin-top:4px}
#comprasEpi>.epi-head p{margin:7px 0 0;color:#dceaf8}
#comprasEpi>.epi-head .epi-primary{background:#dbeafe;border-color:#dbeafe;color:#123d69}
#comprasEpi>.epi-tabs{gap:4px;border-bottom:1px solid #d3dfec;padding-bottom:7px;margin:16px 0}
#comprasEpi>.epi-tabs button{border-color:transparent;background:transparent;color:#28465f;padding:10px 14px}
#comprasEpi>.epi-tabs button[aria-pressed=true]{background:#e0eeff;color:#104e9c}
.epi-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}
.epi .epi-metrics button{text-align:left;padding:14px 16px;border-color:#d6e2ee;border-radius:12px}
.epi .epi-metrics button:hover{border-color:#4e88ce;background:#f7faff}
.epi-metrics span,.epi-metrics small{display:block;color:#405f7a}
.epi-metrics strong{display:block;font-size:26px;line-height:1.2;margin:4px 0}
.epi-metrics small{font-size:11px;font-weight:500}
#epiContent>.epi-box{padding:20px;border-color:#d6e2ee}
#epiContent>.epi-box>p{color:#405f7a;margin:6px 0 14px}
#epiContent .epi-scroll td{vertical-align:middle}
#epiContent .epi-scroll td button+button{margin-left:6px}
.epi-badge{display:inline-block;padding:4px 9px;border-radius:20px;background:#edf1f5;color:#425a71;font-size:12px;font-weight:700}
.epi-badge.is-active{background:#e5f0ff;color:#154f94}
.epi-badge.is-done{background:#e6f6ed;color:#14623c}
.epi-badge.is-warn{background:#fff2d9;color:#7c4903}
.epi .epi-compose-notes{margin-bottom:16px}
.epi .epi-compose-notes textarea{resize:vertical}
.epi-doc{color:#163450}
.epi-issuer{display:flex;gap:16px;align-items:center;padding:14px 0 18px;border-bottom:2px solid #164a76}
.epi-issuer img{object-fit:contain;flex:none}
.epi-issuer small,.epi-doc-heading small,.epi-doc-facts small{display:block;color:#49667e;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.045em}
.epi-issuer strong{display:block;margin:3px 0;font-size:16px}
.epi-issuer span{display:block;color:#314d66;font-size:13px}
.epi-doc-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:16px 0 12px}
.epi-doc-heading h2{font-size:23px;line-height:1.2;margin-top:4px}
.epi-doc-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:12px;padding:12px;margin:0 0 16px;background:#f0f5fb;border:1px solid #d9e4ef;border-radius:8px}
.epi-doc-facts strong{display:block;font-size:13px;margin-top:3px}
.epi-doc-notes{white-space:pre-wrap;overflow-wrap:anywhere;background:#f4f8fc;border-left:3px solid #6999ce;padding:10px 12px;margin:10px 0 16px}
.epi-doc td small{display:block;color:#405f7a}
.epi-doc td small:empty{display:none}
.epi-doc-total{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:16px;padding:14px 0}
.epi-doc form>.epi-grid{margin-top:12px}
.epi-print .epi-scroll{overflow:visible;max-height:none}
.epi-print th,.epi-print td{min-width:0;position:static;padding:6px;overflow-wrap:anywhere}
.epi-print tr,.epi-print .epi-issuer,.epi-print .epi-doc-total{break-inside:avoid}
@media print{body.epi-print{padding:0}.epi-print thead{display:table-header-group}.epi-print .epi-doc{print-color-adjust:exact}}
@media(max-width:600px){
 #comprasEpi>.epi-head{padding:16px}
 #epiContent>.epi-box{padding:12px}
 .epi-metrics{gap:6px}
 .epi .epi-metrics button{padding:8px;font-size:12px}
 .epi-metrics small{display:none}
 .epi-doc-heading{align-items:flex-start}
 .epi-issuer img{width:62px;height:52px}
}

.epi-badge.is-error{background:#feeaea;color:#932424}

.epi-map{container-type:inline-size}
.epi-map-nav,.epi-map-tools{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.epi-map-nav{justify-content:space-between}
.epi-map-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:10px;margin:20px 0 14px}
.epi-map-kicker{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:11px;letter-spacing:.1em;font-weight:800;color:#365c7d}
.epi-map-kicker span{border-radius:6px;background:#eaf2fb;padding:4px 7px;letter-spacing:.04em;color:#17568c}
.epi .epi-map-header h2{font-size:clamp(21px,3vw,30px);line-height:1.2;margin-top:6px;overflow-wrap:anywhere}
.epi-map-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 22px}
.epi-map-facts>div{border:1px solid #dce7f3;background:#f5f9fd;border-radius:10px;padding:12px}
.epi-map-facts small,.epi-map-facts strong{display:block}
.epi-map-facts strong{margin-top:4px;font-size:15px;color:#153859}
.epi-map-section h3{font-size:17px}
.epi-map-section p,.epi-map .epi-map-guide{margin:5px 0 10px;color:#425e77;font-size:13px}
.epi-map .epi-map-guide{padding:10px 12px;background:#edf5ff;border-left:3px solid #6191c6;border-radius:6px}
.epi .epi-map-table{max-height:62vh;border-radius:10px}
.epi .epi-map-table th,.epi .epi-map-table td{padding:12px;min-width:180px;border-right:1px solid #dce6f0;overflow-wrap:anywhere}
.epi .epi-map-table tr>*:last-child{border-right:0}
.epi .epi-map-table tbody tr:last-child>*{border-bottom:0}
.epi .epi-map-table th:first-child{width:23%;min-width:190px}
.epi .epi-map-table thead th{z-index:3}
.epi .epi-map-table thead th:first-child{z-index:4}
.epi .epi-map-table tbody th:first-child{top:auto;z-index:2}
.epi-map-table tbody tr:nth-child(even) td{background:#f8fbfe}
.epi-map-table tbody th>small{margin-top:4px}
.epi-map-qty{display:inline-block;background:#e1eefc;color:#244c73;border-radius:5px;padding:3px 6px;margin-top:6px;font-size:12px}
.epi-map-supplier>strong{display:block;color:#143c62}
.epi-map-supplier>.epi-badge{margin-top:7px}
.epi-map-supplier dl{margin:8px 0;color:#344f68;font-size:12px}
.epi-map-supplier dl>div{display:flex;gap:4px 8px;flex-wrap:wrap}
.epi-map-supplier dd{margin:0;font-weight:700}
.epi-map-supplier details{font-size:12px;margin-bottom:6px}
.epi-map-supplier details p{font-weight:400;margin:4px 0;white-space:pre-wrap}
.epi-map-supplier .epi-map-tools{margin-top:8px;gap:5px}
.epi .epi-map-supplier button{padding:5px 7px;font-size:11px}
.epi-map-empty{color:#526a83;font-size:12px}
.epi .epi-map-table .epi-map-offer{display:flex;align-items:flex-start;gap:8px;padding:8px;border:1px solid transparent;border-radius:8px;font-weight:400}
.epi-map-offer>span{min-width:0}
.epi-map-offer small{margin-top:3px}
.epi-map-offer .epi-badge{margin:5px 4px 0 0}
.epi .epi-map-price{display:block;color:#173e65;font-size:16px;font-weight:800}
.epi .epi-map-price small{display:inline;font-size:11px}
.epi .epi-map-offer input{flex:none;margin:4px 0 0;accent-color:#125dbe}
.epi .epi-map-offer:has(input){cursor:pointer;border-color:#dbe6f2}
.epi .epi-map-offer:has(input:checked){background:#ebf4ff;border-color:#3d79bd}
.epi .epi-map-offer:has(input:focus-visible),.epi .epi-map-table:focus-visible{outline:2px solid #125dbe;outline-offset:-2px}
.epi-map-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:14px}
.epi-map-footer .epi-map-tools{margin-left:auto}
.epi-map-footer #epiTotals{display:grid;gap:3px;color:#24486a}
.epi .epi-map-footer button:disabled{cursor:not-allowed}
@container (max-width:550px){
 .epi-map-facts{grid-template-columns:1fr;gap:6px}
 .epi-map-facts>div{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 10px;padding:8px 10px}
 .epi-map-facts strong{margin-top:0;font-size:13px}
 .epi .epi-map-table th:first-child{min-width:116px;width:116px}
 .epi .epi-map-table th,.epi .epi-map-table td{padding:8px}
}

.epi-public{background:#eef4fa}
.epi-public main{max-width:1060px}
.epi .epi-supplier-head{padding:22px 26px;background:linear-gradient(115deg,#102e52,#184d78)}
.epi-supplier-head h1{font-size:clamp(24px,4vw,34px);margin-top:4px}
.epi-supplier-head p{margin:4px 0 0;color:#deebfa}
.epi #epiSupplierPanel{padding:22px 26px;margin-top:16px}
.epi #epiSupplierPanel .epi-doc-heading{flex-wrap:wrap}
.epi #epiSupplierPanel .epi-doc-heading h2{overflow-wrap:anywhere}
.epi-supplier-section{margin-bottom:12px}
.epi-supplier-section h3,.epi-supplier-received h3{font-size:17px}
.epi-supplier-section p,.epi-supplier-received p{margin:4px 0 0;color:#405f7a;font-size:13px}
.epi-supplier-items{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.epi-supplier-item{border:1px solid #d8e4f0;border-radius:10px;padding:12px 14px;background:#fff;min-width:0;overflow-wrap:anywhere}
.epi-supplier-item-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:10px}
.epi-supplier-item-head small,.epi-supplier-item-head strong{display:block}
.epi-supplier-item-head small:empty{display:none}
.epi-supplier-item-head .epi-supplier-index{font-size:10px;letter-spacing:.09em;font-weight:800;color:#315d86}
.epi-supplier-item-head strong{margin:2px 0;color:#173e65;font-size:15px}
.epi-supplier-item-head .epi-map-qty{white-space:nowrap;margin:0}
.epi-supplier-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:10px}
.epi-supplier-subtotal{padding:7px 10px;background:#edf5ff;border-radius:7px}
.epi-supplier-subtotal small,.epi-supplier-subtotal strong{display:block}
.epi-public input,.epi-public textarea{font-size:16px}
.epi-supplier-terms{margin-top:20px;border:1px solid #d8e4f0;border-radius:10px;padding:14px;background:#f6f9fd}
.epi-supplier-terms>.epi-grid{margin-bottom:12px}
.epi-supplier-terms textarea{resize:vertical}
.epi-supplier-submit{display:flex;align-items:stretch;flex-wrap:wrap;gap:10px;margin-top:14px}
.epi-supplier-submit>.epi-supplier-totals{flex:1 1 390px}
.epi-supplier-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px 12px;padding:10px 12px;border:1px solid #d7e5f5;background:#edf5ff;border-radius:9px}
.epi-supplier-totals small,.epi-supplier-totals strong{display:block;overflow-wrap:anywhere}
.epi-supplier-totals small{font-size:11px;color:#3f5d79}
.epi-supplier-totals>div:last-child strong{color:#104f96}
.epi-supplier-received{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:13px 14px;margin:0 0 12px;border:1px solid #c6e8d4;border-radius:9px;background:#ebf8f0;color:#165c3b}
.epi-supplier-offer{display:flex;flex-wrap:wrap;gap:4px 18px;color:#405f7a;font-size:13px}
.epi-supplier-commercial{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:10px;margin:12px 0}
.epi-supplier-commercial dt{font-size:12px;color:#405f7a}
.epi-supplier-commercial dd{margin:2px 0 0;font-size:13px;font-weight:700;white-space:pre-wrap;overflow-wrap:anywhere}
.epi #epiSupplierReview{box-sizing:border-box;width:min(750px,calc(100% - 20px));max-height:calc(100dvh - 20px);padding:0;overflow:hidden}
#epiSupplierReview[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.epi-supplier-review-head,.epi-supplier-review-footer{padding:12px 16px;background:#f4f8fc}
.epi-supplier-review-head{border-bottom:1px solid #d7e4f2}
.epi-supplier-review-head small{color:#375e82;font-weight:800;letter-spacing:.09em}
.epi-supplier-review-body{overflow:auto;padding:12px 16px}
.epi-supplier-review-body>p{margin:0 0 10px;color:#405f7a;font-size:13px}
.epi-supplier-review-footer{border-top:1px solid #d7e4f2}
.epi-supplier-review-footer .epi-actions{justify-content:flex-end;margin:0}
.epi-supplier-review-footer .epi-msg{margin:0 0 8px}
@media(max-width:620px){
 .epi-public main{padding:10px}
 .epi .epi-supplier-head,.epi #epiSupplierPanel{padding:13px}
 .epi-supplier-fields,.epi-supplier-totals{grid-template-columns:repeat(2,minmax(0,1fr))}
 .epi-supplier-submit>button{width:100%;min-height:42px}
}
@media(max-width:360px){.epi-supplier-fields{grid-template-columns:1fr}}
