/* Assessments — Business Status (assets/prospect-quote.js). QualifAI's layout:
   Project | Estimate on top, How this was estimated below, then the two
   secondary cards folded (Pricing & P/L, MO sheet). Sizes come from the lv2
   type scale and the --ctl-* control tokens. */
#perf-assess .pq-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:var(--lv-gap)}
#perf-assess .pq-head__l,#perf-assess .pq-head__r{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
#perf-assess .pq-head .ui-sel{min-width:280px;max-width:420px}
#perf-assess .pq-head .ui-btn[disabled]{opacity:.45;cursor:default}
#perf-assess .pq-del{min-width:34px;padding:0 10px}
#perf-assess .pq-del--arm{color:#B91C1C;border-color:#FCA5A5}

#perf-assess .pq-grid{display:grid;grid-template-columns:minmax(320px,4fr) minmax(0,7fr);gap:var(--lv-gap);align-items:stretch;margin-bottom:var(--lv-gap)}
@media (max-width:1100px){ #perf-assess .pq-grid{grid-template-columns:minmax(0,1fr)} }
#perf-assess .pq-card{padding:16px 18px;min-width:0}
#perf-assess .pq-basis,#perf-assess .pq-fold{margin-bottom:var(--lv-gap)}
#perf-assess .pq-card__h{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
#perf-assess .pq-card__h--wrap{flex-wrap:wrap}

/* Project form */
#perf-assess .pq-form{display:grid;gap:10px}
#perf-assess .pq-row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#perf-assess .pq-f{display:flex;flex-direction:column;gap:4px;min-width:0}
#perf-assess .pq-f__l{font-size:var(--t-item-sub);font-weight:700;color:var(--lv-body)}
#perf-assess .pq-f__h{font-size:var(--t-foot);color:var(--lv-faint)}
#perf-assess .pq-f__h:empty{display:none}
#perf-assess .pq-f .ui-inp,#perf-assess .pq-f .ui-sel{width:100%;min-width:0}

/* Location search — one field, a list under it (QualifAI's) */
#perf-assess .pq-loc{position:relative}
#perf-assess .pq-loc__ic{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--lv-faint);pointer-events:none}
#perf-assess .pq-loc .ui-inp{padding-left:32px}
#perf-assess .pq-loc__list{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:30;max-height:320px;overflow:auto;background:var(--lv-surface);border:1px solid var(--lv-border-soft);border-radius:12px;box-shadow:0 12px 32px rgba(15,23,42,.14);padding:4px}
#perf-assess .pq-loc__list[hidden]{display:none}
#perf-assess .pq-loc__o{all:unset;box-sizing:border-box;display:flex;flex-direction:column;gap:1px;width:100%;padding:8px 10px;border-radius:8px;cursor:pointer}
#perf-assess .pq-loc__o b{font-size:var(--t-item);font-weight:700;color:var(--lv-text)}
#perf-assess .pq-loc__o span{font-size:var(--t-item-sub);color:var(--lv-muted)}
#perf-assess .pq-loc__o:hover,#perf-assess .pq-loc__o.is-on{background:#EFF6FF}
#perf-assess .pq-loc__none{padding:10px;font-size:var(--t-note);color:var(--lv-faint)}

/* Folded secondary cards */
#perf-assess .pq-fold{padding:0}
#perf-assess .pq-fold__h{all:unset;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 18px;cursor:pointer}
#perf-assess .pq-fold__h > span:first-child{display:flex;flex-direction:column;gap:2px}
#perf-assess .pq-fold__c{font-size:var(--t-item-sub);font-weight:700;color:var(--lv-primary);white-space:nowrap}
#perf-assess .pq-fold.is-open > div{padding:0 18px 16px}
#perf-assess .pq-price-ctl{display:grid;grid-template-columns:2fr 1.2fr .8fr 1fr 1fr 1fr;gap:10px;margin-bottom:12px}
@media (max-width:1100px){ #perf-assess .pq-price-ctl{grid-template-columns:1fr 1fr} }
#perf-assess .pq-ctl{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
#perf-assess .pq-inp-s{width:64px}
#perf-assess .pq-peers{max-height:340px}

/* Figures */
:is(#perf-assess,#pq-sheet) .pq-kvs{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:12px}
:is(#perf-assess,#pq-sheet) .pq-kvs--3{grid-template-columns:repeat(3,minmax(0,1fr))}
:is(#perf-assess,#pq-sheet) .pq-kv{border:1px solid var(--lv-border-soft);border-radius:12px;padding:12px 14px;background:#FCFDFF;min-width:0}
:is(#perf-assess,#pq-sheet) .pq-kv .l{font-size:var(--t-th);font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--lv-muted)}
:is(#perf-assess,#pq-sheet) .pq-kv .v{font-size:22px;font-weight:800;color:var(--lv-text);margin-top:4px;font-variant-numeric:tabular-nums}
:is(#perf-assess,#pq-sheet) .pq-kv .s{font-size:var(--t-item-sub);color:var(--lv-muted);margin-top:4px;line-height:1.5}
:is(#perf-assess,#pq-sheet) .pq-kv--big{padding:16px}
:is(#perf-assess,#pq-sheet) .pq-kv--big .v{font-size:var(--t-kpi)}
:is(#perf-assess,#pq-sheet) .pq-kv--main{background:#EFF6FF;border-color:#BFDBFE}
:is(#perf-assess,#pq-sheet) .pq-kv--main .v{color:var(--lv-deep)}
/* The adjustable interest rate: the figure itself is the input */
:is(#perf-assess,#pq-sheet) .pq-ir{display:inline-flex;align-items:baseline;gap:2px}
:is(#perf-assess,#pq-sheet) .pq-ir__inp{all:unset;box-sizing:content-box;min-width:1ch;font:inherit;color:inherit;border-bottom:2px dashed #93C5FD;cursor:text;font-variant-numeric:tabular-nums}
:is(#perf-assess,#pq-sheet) .pq-ir__inp:focus{border-bottom-style:solid;border-bottom-color:var(--lv-primary)}
:is(#perf-assess,#pq-sheet) .pq-auto{font-weight:600;text-transform:none;letter-spacing:0;color:var(--lv-faint);margin-left:4px}
:is(#perf-assess,#pq-sheet) .pq-reset{all:unset;cursor:pointer;font-weight:700;text-transform:none;letter-spacing:0;color:var(--lv-primary);margin-left:4px}
:is(#perf-assess,#pq-sheet) .pq-bring{font-size:var(--t-td);color:var(--lv-body);padding:11px 13px;border-radius:10px;background:#ECFDF5;border:1px solid #A7F3D0;margin-bottom:10px;line-height:1.6}
:is(#perf-assess,#pq-sheet) .pq-tag{display:inline-block;font-size:var(--t-foot);font-weight:800;letter-spacing:.4px;text-transform:uppercase;color:#047857;margin-right:4px}
:is(#perf-assess,#pq-sheet) .pq-asked{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:var(--t-note);color:var(--lv-muted);margin-bottom:10px}
:is(#perf-assess,#pq-sheet) .pq-tgt{display:inline-flex;align-items:center;gap:6px}
:is(#perf-assess,#pq-sheet) .pq-minis{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:var(--t-note);color:var(--lv-muted)}
:is(#perf-assess,#pq-sheet) .pq-mini i{font-style:normal;margin-right:5px}
:is(#perf-assess,#pq-sheet) .pq-mini b{color:var(--lv-text)}
:is(#perf-assess,#pq-sheet) .pq-mini-n{color:var(--lv-faint)}
:is(#perf-assess,#pq-sheet) .pq-note{font-size:var(--t-note);color:var(--lv-muted);line-height:1.5;margin-top:8px}
:is(#perf-assess,#pq-sheet) .pq-why{font-size:var(--t-td);color:#B45309;padding:14px 2px}
:is(#perf-assess,#pq-sheet) .pq-why--soft{color:var(--lv-faint)}
:is(#perf-assess,#pq-sheet) .pq-ok{color:#047857}
:is(#perf-assess,#pq-sheet) .pq-warn{color:#B45309}
:is(#perf-assess,#pq-sheet) .pq-bad{color:#B91C1C}

/* Tables — .tbl-grid with a colgroup (pqTbl): one width for every figure,
   centred, the first column left. Spend Control's pattern and column floor. */
#perf-assess{--pq-col-min:96px}
#perf-assess .pq-tbl{width:100%;table-layout:fixed}
#perf-assess .pq-tbl th,#perf-assess .pq-tbl td{text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}
#perf-assess .pq-tbl th:first-child,#perf-assess .pq-tbl td:first-child{text-align:left}
#perf-assess .pq-tbl th:first-child{min-width:0}
#perf-assess .pq-tbl td:first-child{max-width:none}
#perf-assess .pq-tbl td.no-data{text-align:center}
:is(#perf-assess,#pq-sheet) .pq-tr-main td{background:#F8FAFF}
:is(#perf-assess,#pq-sheet) .pq-grey td{color:var(--lv-faint)}

/* Print-only parts of the Estimate card */
.pq-print-only{display:none}
#pq-sheet .pq-card__h{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
#pq-sheet .card-title{font-size:var(--t-title);font-weight:700;color:var(--lv-text)}
#pq-sheet .card-sub{font-size:var(--t-sub);color:var(--lv-muted);margin-top:2px}
:is(#perf-assess,#pq-sheet) .pq-brand{text-align:right;font-size:12px;font-weight:700;color:var(--lv-text)}
:is(#perf-assess,#pq-sheet) .pq-brand span{font-weight:500;color:var(--lv-muted)}
:is(#perf-assess,#pq-sheet) .pq-meta{margin-bottom:14px;font-size:13px;color:var(--lv-body)}
:is(#perf-assess,#pq-sheet) .pq-meta b{font-size:18px;color:var(--lv-text)}
:is(#perf-assess,#pq-sheet) .pq-foot{font-size:10.5px;color:var(--lv-muted);margin-top:14px;border-top:1px solid var(--lv-border-soft);padding-top:10px}

.pq-toast{position:fixed;right:20px;bottom:20px;z-index:9999;background:#0F172A;color:#fff;font-size:12px;padding:10px 14px;border-radius:10px;box-shadow:0 8px 30px rgba(15,23,42,.25)}
.pq-toast--bad{background:#991B1B}

/* The PDF: a clone of the Estimate card in #pq-sheet, the only thing printed —
   no peers, no pricing. Cloned rather than isolated in place, because the
   app's scroll container clips anything positioned inside it. */
#pq-sheet{display:none}
@media print{
  body.pq-printing > *:not(#pq-sheet){display:none !important}
  body.pq-printing #pq-sheet{display:block;padding:8px 4px;background:#fff}
  #pq-sheet .pq-print-only{display:block}
  #pq-sheet .pq-ir{display:none}
  #pq-sheet .pq-print-only.pq-ir__print{display:inline}
  #pq-sheet .pq-noprint{display:none !important}
  #pq-sheet .pq-kv{break-inside:avoid}
  @page{margin:14mm}
}
