
/* V35 — BOQ extractor & tender summary */
.detail-analysis-head{align-items:flex-end!important;gap:12px;flex-wrap:wrap}
.proc-analysis-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.analysis-action{border:1px solid #d7e2ee;background:#fff;color:#27445f;border-radius:10px;min-height:37px;padding:8px 10px;display:inline-flex;align-items:center;gap:7px;font-size:7.7px;font-weight:800;cursor:pointer;transition:.18s;white-space:nowrap}
.analysis-action:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(23,68,110,.08)}
.analysis-action.official{background:linear-gradient(135deg,#0d559f,#1769d2);border-color:#1769d2;color:#fff}
.analysis-action.boq{background:#effaf5;border-color:#bce6cf;color:#08734b}.analysis-action.boq i{color:#0b9b69}
.analysis-action.summary{background:#f3efff;border-color:#d9cef9;color:#6041ad}.analysis-action.summary i{color:#7653cc}

.procurement-analysis-modal{z-index:560!important}
.procurement-analysis-dialog{width:min(1160px,calc(100vw - 28px));height:min(88vh,900px);padding:0!important;overflow:hidden!important;border-radius:23px!important;background:var(--panel)!important}
.analysis-modal-shell{height:100%;display:flex;flex-direction:column}
.analysis-modal-title{display:flex;align-items:center;gap:12px;padding:19px 23px 15px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--panel),var(--panel-2))}
.analysis-title-icon{width:45px;height:45px;border-radius:13px;display:grid;place-items:center;font-size:17px}.analysis-title-icon.boq{background:#e7f8ef;color:#07875b}.analysis-title-icon.summary{background:#eee8ff;color:#6544bd}
.analysis-modal-title h2{font:800 19px "Plus Jakarta Sans";margin:3px 0}.analysis-modal-title p{font-size:8px;color:var(--muted);margin:0}
.analysis-modal-body{flex:1;overflow-y:auto;padding:18px 22px 24px;scrollbar-width:thin;scrollbar-color:#79a5d3 #edf2f7}
.analysis-modal-body::-webkit-scrollbar{width:8px}.analysis-modal-body::-webkit-scrollbar-track{background:#edf2f7}.analysis-modal-body::-webkit-scrollbar-thumb{background:#6e9dcd;border-radius:999px;border:2px solid #edf2f7}
.analysis-loading{text-align:center;padding:80px 20px}.analysis-spinner{width:58px;height:58px;border-radius:17px;background:#edf5ff;color:#1769d2;display:grid;place-items:center;font-size:21px;margin:0 auto 13px}.analysis-loading h3{font:800 15px "Plus Jakarta Sans";margin:0 0 5px}.analysis-loading p{font-size:8.5px;color:var(--muted);max-width:520px;margin:0 auto}.analysis-progress{width:min(420px,80%);height:4px;background:#e7edf4;border-radius:999px;margin:17px auto;overflow:hidden}.analysis-progress i{display:block;width:38%;height:100%;background:#1769d2;border-radius:999px;animation:analysis-slide 1.2s ease-in-out infinite alternate}@keyframes analysis-slide{from{transform:translateX(-20%)}to{transform:translateX(180%)}}
.analysis-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding-bottom:14px;border-bottom:1px solid var(--line)}.analysis-result-head h2{font:800 18px "Plus Jakarta Sans";margin:4px 0}.analysis-result-head p{font-size:8.5px;color:var(--muted);margin:0}.analysis-cache{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border-radius:999px;font-size:7px;font-weight:800;white-space:nowrap}.analysis-cache.cached{background:#edf5ff;color:#1769d2}.analysis-cache.fresh{background:#e8f8ef;color:#08734b}
.boq-summary-strip{display:grid;grid-template-columns:.7fr 1.8fr .8fr .8fr;gap:8px;margin:13px 0}.boq-summary-strip>div{border:1px solid var(--line);background:var(--panel-2);border-radius:11px;padding:10px}.boq-summary-strip span{display:block;font-size:6.5px;text-transform:uppercase;color:var(--muted);font-weight:800}.boq-summary-strip strong{display:block;font:800 12px "Plus Jakarta Sans";margin-top:4px}
.analysis-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px}.boq-table{width:100%;border-collapse:collapse;min-width:860px}.boq-table th,.boq-table td{padding:9px 10px;border-bottom:1px solid #e9eef4;text-align:left;font-size:8px;vertical-align:top}.boq-table th{position:sticky;top:0;background:#f5f8fb;color:#65798f;text-transform:uppercase;font-size:6.8px;letter-spacing:.04em;z-index:2}.boq-table td b{display:block;font-size:8.3px}.boq-table td small{display:block;font-size:6.8px;color:#7a8da2;margin-top:3px}.not-found{font-size:7px;color:#8a98a8;font-style:italic}
.analysis-no-data,.analysis-error{text-align:center;padding:55px 20px;border:1px dashed var(--line);border-radius:14px;background:var(--panel-2)}.analysis-no-data>i,.analysis-error>i{font-size:24px;color:#879aae}.analysis-error>i{color:#c16a00}.analysis-no-data h3,.analysis-error h3{font:800 13px "Plus Jakarta Sans";margin:9px 0 5px}.analysis-no-data p,.analysis-error p{font-size:8.5px;line-height:1.6;color:var(--muted);max-width:650px;margin:0 auto 12px}
.parser-notes{margin-top:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2);padding:8px 10px}.parser-notes summary{font-size:7.5px;font-weight:800;cursor:pointer;color:#667a90}.parser-notes ul{font-size:7.5px;color:var(--muted);line-height:1.5;padding-left:18px}
.analysis-footnote{display:flex;gap:7px;align-items:flex-start;margin-top:12px;padding:10px 11px;border-radius:10px;background:#f6f9fc;border:1px solid #e3eaf1;color:#63778d;font-size:7.5px;line-height:1.5}.analysis-footnote i{color:#1769d2;margin-top:1px}

.summary-meta-row{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.summary-meta-row span{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border:1px solid var(--line);border-radius:999px;background:var(--panel-2);font-size:7px;color:#61758b}.summary-meta-row i{color:#1769d2}
.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.summary-clause{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:12px}.summary-clause header{display:flex;align-items:center;gap:8px;padding-bottom:7px;border-bottom:1px solid #edf1f5}.summary-clause header i{width:28px;height:28px;border-radius:8px;background:#edf5ff;color:#1769d2;display:grid;place-items:center}.summary-clause h3{font:800 10px "Plus Jakarta Sans";margin:0}.summary-clause ul{padding-left:17px;margin:9px 0 0;display:grid;gap:6px}.summary-clause li{font-size:8.2px;line-height:1.58;color:#425870}.summary-clause li::marker{color:#1769d2}.summary-clause .proc-important{font-weight:800;color:#a14e00}.summary-missing{font-size:8px;color:#8796a6;font-style:italic;margin:10px 0 2px}
@media(max-width:900px){.boq-summary-strip{grid-template-columns:1fr 1fr}.summary-grid{grid-template-columns:1fr}.proc-analysis-actions{justify-content:flex-start;width:100%}}
@media(max-width:600px){.proc-analysis-actions{display:grid;grid-template-columns:1fr}.analysis-action{justify-content:center}.procurement-analysis-dialog{height:94vh;width:calc(100vw - 12px)}.boq-summary-strip{grid-template-columns:1fr}.analysis-modal-body{padding:14px}.analysis-result-head{flex-direction:column}}
