@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&family=Syne:wght@400..800&display=swap');

:root{
  /* Base surfaces */
  --bg:#060e1a;--s1:#0a1524;--s2:#0f1d30;--s3:#162438;--s4:#1e3050;
  /* Borders */
  --b1:#1a2e48;--b2:#243d5a;--b3:#2e4e72;
  /* Text */
  --t1:#e8f0f8;--t2:#8aaccc;--t3:#4e6e8e;--t4:#2a3e56;
  /* Brand */
  --gold:#c9a54e;--gold2:#e8c97a;--gold3:#f5dfa0;--gold-bg:rgba(201,165,78,.08);
  /* Quotes */
  --bid:#2ec898;--bid-dim:#1a6e52;--bid-bg:rgba(46,200,152,.07);
  --offer:#f05a5a;--offer-dim:#8e2828;--offer-bg:rgba(240,90,90,.07);
  /* Status */
  --warn:#f0a030;--danger:#f05a5a;--ok:#2ec898;
  /* Country accents */
  --cm:#3b8ae8;--cm-bg:rgba(59,138,232,.10);
  --ga:#2ec898;--ga-bg:rgba(46,200,152,.10);
  --cg:#f05a5a;--cg-bg:rgba(240,90,90,.10);
  --td:#f0a030;--td-bg:rgba(240,160,48,.10);
  --cf:#a78bfa;--cf-bg:rgba(167,139,250,.10);
  --gq:#22d3ee;--gq-bg:rgba(34,211,238,.10);
  /* Typography */
  --ui:'Inter',sans-serif; --mono:'JetBrains Mono',monospace; --syne:'Syne',sans-serif;
  /* Geometry */
  --r:4px;--r2:8px;--r3:12px;--sidebar-w:220px;
  --shadow:0 4px 24px rgba(0,0,0,.5);--shadow2:0 2px 8px rgba(0,0,0,.4);
}
*{box-sizing:border-box;margin:0;padding:0;}
html{font-size:13px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
body{background:var(--bg) !important;color:var(--t1);font-family:var(--ui);min-height:100vh;overflow-x:hidden;}
button{cursor:pointer;border:none;background:none;font-family:var(--ui);color:var(--t1);}
input,select{font-family:var(--mono);color:var(--t1);background:var(--s2);border:1px solid var(--b2);border-radius:var(--r);padding:4px 8px;font-size:12px;}
input:focus,select:focus{outline:none;border-color:var(--gold);}
select option{background:var(--s2);}
a{color:var(--t3);text-decoration:none;}
a:hover{color:var(--gold);}
::-webkit-scrollbar{width:4px;height:4px;}
::-webkit-scrollbar-track{background:var(--s1);}
::-webkit-scrollbar-thumb{background:var(--b3);border-radius:2px;}

/* ══════════════════════════════════
   LAYOUT SHELL
══════════════════════════════════ */
.shell{display:block}

/* ── HEADER ── */
header{background:var(--s1);border-bottom:1px solid var(--b1);padding:0 20px;display:flex;align-items:center;gap:20px;box-shadow:0 2px 16px rgba(0,0,0,.4);position:fixed;top:0;left:0;right:0;height:52px;z-index:200;overflow:hidden;}
.brand{display:flex;flex-direction:column;gap:0;line-height:1;flex-shrink:0;}
.brand-name{font-family:var(--syne);font-size:16px;font-weight:800;letter-spacing:.06em;color:var(--gold2);}
.brand-sub{font-size:9px;color:var(--t3);letter-spacing:.14em;text-transform:uppercase;font-family:var(--mono);}
.header-stats{display:flex;align-items:center;gap:6px;flex:1;justify-content:center;flex-wrap:wrap;}
.hstat{display:flex;flex-direction:column;align-items:center;padding:0 12px;border-right:1px solid var(--b1);}
.hstat:last-child{border-right:none;}
.hstat-label{font-size:9px;color:var(--t3);letter-spacing:.1em;text-transform:uppercase;font-family:var(--mono);}
.hstat-val{font-family:var(--mono);font-size:14px;font-weight:600;color:var(--t1);line-height:1.2;}
.hstat-val.gold{color:var(--gold2);}
.hstat-val.green{color:var(--bid);}
.clock-block{text-align:right;flex-shrink:0;}
.clock-time{font-family:var(--mono);font-size:20px;font-weight:700;color:var(--t1);letter-spacing:.06em;line-height:1;}
.clock-date{font-family:var(--mono);font-size:9px;color:var(--t3);letter-spacing:.1em;}
.clock-tz{font-size:8px;color:var(--t4);letter-spacing:.12em;text-transform:uppercase;font-family:var(--mono);}
.status-live{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--bid);font-family:var(--mono);}
.dot{width:7px;height:7px;border-radius:50%;background:var(--bid);animation:pulse 2s infinite;flex-shrink:0;}
@keyframes pulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(46,200,152,.4);}50%{opacity:.6;box-shadow:0 0 0 4px rgba(46,200,152,0);}}

/* Book progress bar */
.progress-bar-wrap{position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--b1)}
.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--bid),var(--gold));transition:width .4s ease;border-radius:0 2px 2px 0}

/* ── TABS ── */
.tabs{background:var(--s1);border-bottom:1px solid var(--b1);padding:0 20px;display:flex;gap:2px;align-items:stretch;position:fixed;top:52px;left:0;right:0;height:36px;z-index:100;}
.tab{padding:8px 14px;font-size:11px;font-weight:500;color:var(--t3);border-bottom:2px solid transparent;transition:all .15s;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;font-family:var(--mono);}
.tab:hover{color:var(--t2);}
.tab.active{color:var(--gold2);border-bottom-color:var(--gold);}

/* ── BODY (sidebar + main) ── */
.body{display:flex;position:fixed;top:88px;left:0;right:0;bottom:0;overflow:hidden;}

/* ── SIDEBAR ── */
.sidebar{width:var(--sidebar-w);flex-shrink:0;background:var(--s1);border-right:1px solid var(--b1);overflow-y:auto;padding:12px 0;display:flex;flex-direction:column;height:100%;transition:width .2s,opacity .2s;}
.sidebar.collapsed{width:0;opacity:0;padding:0;overflow:hidden;}
.sidebar-section{padding:0 14px 6px;font-size:9px;color:var(--t3);letter-spacing:.14em;text-transform:uppercase;font-family:var(--mono);border-bottom:1px solid var(--b1);margin-bottom:8px;}
.sidebar-group{padding:0 14px;margin-bottom:12px;}
.sidebar-group-label{font-size:10px;color:var(--t3);margin-bottom:6px;font-weight:500;letter-spacing:.06em;}
/* Type toggle */
.type-toggle{display:flex;gap:4px;}
.type-btn{flex:1;padding:5px;font-size:11px;border:1px solid var(--b2);border-radius:var(--r);color:var(--t3);font-family:var(--mono);font-weight:600;transition:all .12s;text-align:center;}
.type-btn:hover{border-color:var(--b3);color:var(--t2);}
.type-btn.active-bta{background:var(--gold-bg);border-color:var(--gold);color:var(--gold2);}
.type-btn.active-ota{background:rgba(59,138,232,.12);border-color:var(--cm);color:var(--cm);}
.type-btn.active-all{background:var(--s3);border-color:var(--b3);color:var(--t1);}
/* Country filter */
.country-filter{display:flex;flex-direction:column;gap:4px;}
.sidebar-group:has(> #country-filter:empty), .sidebar-group:has(> #tenor-chips:empty) { display: none; }
.country-cb{display:flex;align-items:center;gap:8px;cursor:pointer;padding:4px 6px;border-radius:var(--r);transition:background .1s;}
.country-cb:hover{background:var(--s3);}
.country-cb input{display:none;}
.country-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;transition:opacity .15s;}
.country-cb:not(.checked) .country-dot{opacity:.3;}
.country-cb-name{font-size:11px;color:var(--t2);font-family:var(--mono);flex:1;}
.country-cb.checked .country-cb-name{color:var(--t1);}
.country-cb-count{font-size:10px;color:var(--t3);font-family:var(--mono);}
/* Tenor filter */
.tenor-chip:empty{display:none;}
.tenor-chips{display:flex;flex-wrap:wrap;gap:4px;}
.tenor-chip{padding:3px 8px;border:1px solid var(--b2);border-radius:12px;font-size:10px;color:var(--t3);cursor:pointer;font-family:var(--mono);transition:all .12s;}
.tenor-chip:hover{border-color:var(--b3);color:var(--t2);}
.tenor-chip.active{border-color:var(--gold);color:var(--gold2);background:var(--gold-bg);}
/* Maturity brackets */
.mat-btns{display:flex;flex-direction:column;gap:3px;}
.mat-btn{padding:4px 8px;border:1px solid var(--b2);border-radius:var(--r);font-size:10px;color:var(--t3);text-align:left;cursor:pointer;font-family:var(--mono);transition:all .12s;}
.mat-btn:hover{border-color:var(--b3);color:var(--t2);}
.mat-btn.active{border-color:var(--gold);color:var(--gold2);background:var(--gold-bg);}

/* ── MAIN CONTENT ── */
.main{flex:1;display:flex;flex-direction:column;overflow:hidden;height:100%;}

/* ── TOOLBAR ── */
.toolbar{
  display:flex;align-items:center;gap:8px;padding:8px 16px;
  background:var(--s2);border-bottom:1px solid var(--b1);flex-shrink:0;flex-wrap:wrap;
}
.sidebar-toggle{padding:5px 8px;border:1px solid var(--b2);border-radius:var(--r);color:var(--t3);font-size:14px;transition:all .12s;line-height:1;}
.sidebar-toggle:hover{border-color:var(--b3);color:var(--t1);}
.search-wrap{position:relative;flex:1;max-width:260px;}
.search-wrap svg{position:absolute;left:8px;top:50%;transform:translateY(-50%);width:13px;height:13px;stroke:var(--t3);fill:none;stroke-width:2;stroke-linecap:round;}
#search-inp{width:100%;padding:5px 8px 5px 28px;font-size:12px;background:var(--s3);border:1px solid var(--b2);}
#search-inp::placeholder{color:var(--t4);}
.tb-sep{width:1px;height:20px;background:var(--b1);margin:0 2px;flex-shrink:0;}
.tb-btn{
  display:flex;align-items:center;gap:5px;padding:5px 11px;
  border:1px solid var(--b2);border-radius:var(--r);
  font-size:11px;color:var(--t3);font-family:var(--mono);
  transition:all .12s;white-space:nowrap;cursor:pointer;
}
.tb-btn:hover{border-color:var(--b3);color:var(--t2);}
.tb-btn svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;}
.tb-btn.template{border-color:var(--cm);color:var(--cm);}
.tb-btn.template:hover{background:rgba(59,138,232,.08);}
.tb-btn.import{border-color:var(--gold);color:var(--gold2);}
.tb-btn.import:hover{background:var(--gold-bg);}
label.tb-btn{cursor:pointer;}

/* ── PANES ── */
.tab-pane{display:none;flex:1;flex-direction:column;height:100%;overflow:hidden;}
.tab-pane.active{display:flex;}

/* ── TABLE AREA ── */
.table-area{flex:1;overflow:auto;position:relative;}
table{width:100%;border-collapse:collapse;min-width:820px;}
thead{position:sticky;top:0;z-index:10;background:var(--s2);}
thead tr{border-bottom:2px solid var(--b2);}
th{
  padding:7px 8px;text-align:right;
  font-size:9.5px;font-weight:600;color:var(--t3);
  letter-spacing:.1em;text-transform:uppercase;font-family:var(--mono);
  white-space:nowrap;user-select:none;
}
th:first-child{text-align:left;padding-left:16px;}
th.sortable{cursor:pointer;}
th.sortable:hover{color:var(--t1);}
th.sorted{color:var(--gold2);}
th.th-quote{text-align:center;color:var(--t2);}

/* Group header rows */
.group-row td{ background:var(--s2) !important;padding:6px 8px 6px 0 !important; border-bottom:1px solid var(--b1) !important;border-top:2px solid var(--b1); cursor:pointer; }
.group-row:first-child td{border-top:none;}
.group-inner{display:flex;align-items:center;gap:10px;}
.group-bar{width:3px;border-radius:2px;flex-shrink:0;align-self:stretch;min-height:24px;}
.group-flag{font-size:16px;line-height:1;}
.group-name{font-family:var(--syne);font-size:13px;font-weight:700;color:var(--t1);}
.group-sub{font-size:10px;color:var(--t3);font-family:var(--mono);}
.group-meta{display:flex;gap:12px;margin-left:auto;padding-right:16px;align-items:center;}
.group-stat{font-size:10px;font-family:var(--mono);color:var(--t3);}
.group-stat span{color:var(--t2);}
.group-chevron{font-size:12px;color:var(--t3);transition:transform .2s;padding-right:12px;flex-shrink:0;}
.group-row.collapsed .group-chevron{transform:rotate(-90deg);}

/* Data rows */
table td, table th {border: 0 !important; background: none !important;}
tbody tr.data-row{border-bottom:1px solid rgba(26,46,72,.6);transition:background .08s;cursor: pointer;}
tbody tr.data-row:hover{background:var(--s3);}
tbody tr.data-row.priced{background:rgba(46,200,152,.025);}
tbody tr.data-row.priced:hover{background:rgba(46,200,152,.04);}
td{padding:6px 8px !important;text-align:right;vertical-align:middle;font-family:var(--mono);font-size:12px;color:var(--t2);white-space:nowrap;}
td:first-child{text-align:left;padding-left:0;}

/* Country bar cell */
.td-country-bar{width:3px;padding:0 !important;border-right:none;}
.country-bar{height:100%;width:3px;border-radius:0;}

/* Issuer cell */
.td-issuer{padding-left:8px;}
.td-issuer{position:relative;}
.instrument-edit-link{
  position:absolute;left:8px;top:50%;display:flex;width:20px;height:20px;
  align-items:center;justify-content:center;transform:translateY(-50%);
  color:var(--gold2);opacity:0;pointer-events:none;transition:opacity .12s;
}
.instrument-edit-link svg{width:15px;height:15px;fill:currentColor;}
tbody tr.data-row:hover .instrument-edit-link {opacity:1;pointer-events:auto;}
tbody tr.data-row.edit-link-activated .instrument-edit-link{opacity:0;pointer-events:none;}
.instrument-edit-link:focus-visible{outline:1px solid var(--gold2);outline-offset:2px;border-radius:2px;}
.issuer-name{font-family:var(--ui);font-size:12px;font-weight:500;color:var(--t1);}
.issuer-isin{font-family:var(--mono);font-size:10px;color:var(--t3);display:block;margin-top:1px;}

/* Badge */
.badge{display:inline-flex;align-items:center;padding:1px 6px;border-radius:3px;font-size:10px;font-weight:700;font-family:var(--mono);letter-spacing:.04em;}
.badge-bta{background:rgba(201,165,78,.12);color:var(--gold2);border:1px solid rgba(201,165,78,.25);}
.badge-ota{background:rgba(59,138,232,.12);color:var(--cm);border:1px solid rgba(59,138,232,.25);}

/* Residual maturity */
.resid{display:inline-flex;align-items:center;gap:4px;}
.resid-val{font-weight:600;}
.resid-bar{width:28px;height:3px;border-radius:2px;background:var(--b2);overflow:hidden;display:inline-block;vertical-align:middle;}
.resid-bar-fill{height:100%;display:block;border-radius:2px;transition:width .3s;}

/* Quote cell — the signature element */
.td-quote{padding:0 !important;width:148px;}
.td-yield{width:86px;color:var(--t2);font-weight:600;}
.quote-cell{
  display:flex;align-items:stretch;height:100%;
  border-left:1px solid var(--b1);border-right:1px solid var(--b1);
}
.quote-side{
  flex:1;display:flex;flex-direction:column;align-items:center;
  justify-content:center;padding:5px 8px;
  cursor:text;transition:background .12s;position:relative;
}
.quote-side.quote-readonly{cursor:pointer;}
.quote-side:hover{background:var(--s3);}
.quote-side.bid-side{border-right:1px solid var(--b2);}
.quote-label{font-size:8px;color:var(--t4);letter-spacing:.1em;text-transform:uppercase;line-height:1;margin-bottom:2px;}
.quote-val{font-size:13px;font-weight:700;line-height:1;font-family:var(--mono);}
.quote-val.bid{color:var(--bid);}
.quote-val.offer{color:var(--offer);}
.quote-side.unset .quote-val{color:var(--t4);font-weight:400;}
.quote-side.editing{background:var(--s4)!important;}
.quote-inp{
  position:absolute;inset:2px;border:1px solid var(--gold);border-radius:3px;
  background:var(--s4);text-align:center;font-family:var(--mono);
  font-size:13px;font-weight:700;color:var(--gold2);padding:0;width:calc(100% - 4px);
}

/* MàJ time cell */
.td-maj{text-align:center;}
.maj-badge{font-size:9px;font-family:var(--mono);color:var(--bid);display:flex;align-items:center;gap:3px;justify-content:center;}
.maj-dot{width:5px;height:5px;border-radius:50%;background:var(--bid);flex-shrink:0;}
.maj-none{font-size:10px;color:var(--b3);}

/* Table footer */
.table-footer{
  display:flex;align-items:center;justify-content:space-between;
  padding:6px 16px;background:var(--s1);border-top:1px solid var(--b1);
  flex-shrink:0;font-size:10px;color:var(--t3);font-family:var(--mono);
}

/* ── CURVES TAB ── */
.curves-layout{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px;overflow-y:auto;height:100%;}
.chart-card{background:var(--s2);border:1px solid var(--b1);border-radius:var(--r2);padding:16px;}
.chart-card.full{grid-column:1/-1;}
.chart-label{font-size:10px;color:var(--t3);letter-spacing:.1em;text-transform:uppercase;font-family:var(--mono);margin-bottom:12px;}
.chart-wrap{position:relative;height:280px;}
.curve-controls{display:flex;gap:6px;margin-bottom:10px;flex-wrap:wrap;}
.cc-btn{padding:3px 10px;border:1px solid var(--b2);border-radius:12px;font-size:10px;color:var(--t3);font-family:var(--mono);cursor:pointer;transition:all .12s;}
.cc-btn:hover{border-color:var(--b3);color:var(--t2);}
.cc-btn.active{border-color:var(--gold);color:var(--gold2);background:var(--gold-bg);}
.curve-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px;}
.legend-item{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--t3);font-family:var(--mono);}
.legend-line{width:16px;height:2px;border-radius:1px;}
.curve-no-data{position:absolute;right:8px;bottom:4px;color:var(--t3);font-size:10px;font-family:var(--mono);text-align:right;pointer-events:none;}

/* ── TOAST ── */
#toast{
  position:fixed;bottom:20px;right:20px;z-index:9999;
  padding:10px 16px;border-radius:var(--r2);
  font-family:var(--mono);font-size:11px;max-width:400px;line-height:1.5;
  box-shadow:var(--shadow);transition:opacity .3s,transform .3s;
  opacity:0;transform:translateY(8px);pointer-events:none;
}
#toast.show{opacity:1;transform:translateY(0);pointer-events:auto;}
#toast.info{background:var(--s3);border:1px solid var(--b3);color:var(--t1);}
#toast.success{background:rgba(46,200,152,.12);border:1px solid var(--bid-dim);color:var(--bid);}
#toast.error{background:rgba(240,90,90,.12);border:1px solid var(--offer-dim);color:var(--offer);}
#toast.warning{background:rgba(240,160,48,.1);border:1px solid rgba(240,160,48,.4);color:var(--warn);}

/* ── INSTRUMENT REQUEST MODAL ── */
.cf7-modal label[hidden]{display:none !important;}
.cf7-modal:not([hidden]){position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;}
.cf7-modal-backdrop{position:absolute;inset:0;background:rgba(2,8,15,.78);backdrop-filter:blur(3px);}
.cf7-modal-panel{position:relative;width:min(620px,100%);max-height:calc(100vh - 40px);overflow-y:auto;background:var(--s1);border:1px solid var(--b3);border-radius:var(--r2);box-shadow:var(--shadow);}
.cf7-modal-header{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;padding:18px 20px;background:var(--s1);border-bottom:1px solid var(--b1); height:auto;}
.cf7-modal-eyebrow{margin-bottom:4px;color:var(--gold2);font:10px var(--mono);letter-spacing:.1em;text-transform:uppercase;}
.cf7-modal-header h2{font:600 18px var(--syne);color:var(--t1);}
.cf7-modal-close{display: grid;width:32px;height:32px;border:1px solid var(--b2);border-radius:var(--r);font-size:22px;color:var(--t2);}
.cf7-modal-close:hover{border-color:var(--gold);color:var(--gold2);}
.cf7-modal-content{padding:20px;color:var(--t2);}
.cf7-modal-content .wpcf7 form{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.cf7-modal-content .wpcf7 form p br {display:none;}
.cf7-modal-content .wpcf7 form p {display:flex;flex-direction:column;gap:20px;}
.cf7-modal-content .wpcf7 form label{display:flex;flex-direction:column;gap:5px;color:var(--t2);font:10px var(--mono);text-transform:uppercase;}
.cf7-modal-content .wpcf7 form label:has(textarea),.cf7-modal-content .wpcf7 form p:has(input[type="submit"]){grid-column:1/-1;}
.cf7-modal-content .wpcf7 input:not([type="submit"]),.cf7-modal-content .wpcf7 textarea,.cf7-modal-content .wpcf7 select{width:100%;min-height:38px;padding:9px 10px;background:var(--s2);border:1px solid var(--b2);border-radius:var(--r);font:12px var(--mono);color:var(--t1);text-transform:none;}
.cf7-modal-content .wpcf7 input[readonly]{color:var(--gold2);background:var(--bg);}
.cf7-modal-content .wpcf7 textarea{min-height:90px;resize:vertical;outline: none;}
p:has(textarea.full-width), .wpcf7-response-output {grid-column: span 2 / span 2;}
.cf7-modal-content .wpcf7 input[type="submit"]{width: 100%;padding:10px 18px;background:var(--gold);border:0;border-radius:var(--r);color:var(--bg);font:700 11px var(--mono);text-transform:uppercase;cursor: pointer;}
.cf7-modal-content .wpcf7-not-valid-tip{font-size:10px;color:var(--danger);}
.cf7-modal-unavailable{font-size:12px;line-height:1.6;}
.hstat:has(#hs-pct), .hstat:has(#hs-spread), .hstat:has(#hs-mid) {display: none;}

/* ── RESPONSIVE ── */
@media(max-width:900px){
  /* .sidebar{width:var(--sidebar-w);flex-shrink:0;background:var(--s1);border-right:1px solid var(--b1);overflow-y:auto;padding:12px 0;display:flex;flex-direction:column;height:100%;transition:width .2s,opacity .2s;}
  .sidebar.mobile-open{width:var(--sidebar-w);opacity:1} */
  .header-stats .hstat:nth-child(n+4){display:none;}
  .curves-layout{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px;overflow-y:auto;height:100%;}
  .chart-card.full{grid-column:auto;}
}
@media(max-width:600px){
  .brand-sub{display:none;}
  .hstat:nth-child(n+3){display:none;}
  .tab {letter-spacing: 0;}
  .search-wrap{max-width: fit-content;}
  #search-inp {width: auto;}
  .curves-layout {grid-template-columns: auto;}
  .cf7-modal:not([hidden]){padding:10px;}
  .cf7-modal-panel{max-height:calc(100vh - 20px);}
  .cf7-modal-content{padding:14px;}
  .cf7-modal-content .wpcf7 form{grid-template-columns:1fr;}
  .cf7-modal-content .wpcf7 form label:has(textarea),.cf7-modal-content .wpcf7 form p:has(input[type="submit"]){grid-column:auto;}
  p:has(textarea.full-width), .wpcf7-response-output {grid-column: auto;}
}

/* ── PRINT ── */
@media print{
  @page{size:portrait;margin:5mm 0;}
  header,.sidebar,.toolbar,.tabs,.table-footer,#toast{display:none!important;}
  body{background:#fff!important;color:#000!important;min-height:0!important;overflow:visible!important;}
  .body{display:block!important;position:static!important;inset:auto!important;height:auto!important;overflow:visible!important;}
  .tab-pane{display:none!important;}
  #pane-cotations{display:flex!important;height:auto!important;overflow:visible!important;}
  .main{display:block!important;height:auto!important;overflow:visible!important;}
  .table-area{display:block!important;position:static!important;height:auto!important;max-height:none!important;overflow:visible!important;}
  #main-table{width:100%!important;min-width:0!important;}
  #main-table thead{position:static!important;}
  #main-table tr{break-inside:avoid;page-break-inside:avoid}
  th,td{color:#000!important;background:#fff!important;border-color:#ccc!important;font-size:9px!important;}
  .quote-val.bid{color:#006633!important;}
  .quote-val.offer{color:#cc0000!important;}
}
