/* Reuse the portal palette and type; desktop parity concerns the form layout. */
.ds-tabs{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--border);margin:16px 0}
.ds-tabs [role=tab]{font:inherit;font-size:13px;white-space:nowrap;background:var(--panel);color:var(--text);border:1px solid var(--border);border-bottom:0;padding:12px 16px;border-radius:6px 6px 0 0;cursor:pointer}
.ds-tabs [aria-selected=true]{font-weight:700;box-shadow:inset 0 -3px 0 var(--primary,#246da0)}
.ds-panel[hidden]{display:none}
.ds-panel,.ds-split>*,.ds-directory-bottom>*,.ds-requisites>*{min-width:0}
.ds-requisites{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px 10px;margin-bottom:10px}
.ds-requisites>label{display:grid!important;grid-template-columns:minmax(70px,auto) minmax(0,1fr);align-items:center;gap:6px!important;font-size:12px}
.ds-requisites>label.ds-check{display:flex!important}
.ds-requisites input,.ds-requisites select,.ds-requisites textarea{padding:5px 7px!important;min-width:0;font-size:12px!important}
.ds-requisites p{margin:2px 0}
.ds-requisites .sales-note{font-size:12px;align-self:center}
.ds-requisites label.ds-all{grid-template-columns:150px minmax(0,1fr)}
.ds-requisites label.ds-all small{grid-column:2}
.ds-requisites .ds-span2,.ds-requisites .ds-wide{grid-column:span 2}
.ds-requisites .ds-all{grid-column:1/-1}
.ds-inline{display:flex;align-items:center;gap:8px;min-width:0}
.ds-inline input{min-width:0;flex:1;width:100%}
.ds-inline button{flex-shrink:0}
#tab-sales .ds-check,.ds-directory .ds-check{display:flex;flex-direction:row;align-items:center;gap:8px}
#tab-sales .ds-check input,.ds-directory .ds-check input{width:18px;height:18px;flex-shrink:0}
.ds-split{display:grid;grid-template-columns:minmax(480px,44%) minmax(0,1fr);gap:12px;align-items:start}
.ds-panel fieldset,.ds-directory fieldset{border:1px solid var(--border);border-radius:6px;padding:14px;min-width:0}
.ds-panel legend,.ds-directory legend{font-weight:600;font-size:14px}
.ds-config form{display:grid;gap:5px}
.ds-config form>label,.ds-config-row{display:grid!important;grid-template-columns:minmax(165px,44%) minmax(0,1fr);align-items:center;gap:6px!important;font-size:12px}
.ds-config input,.ds-config select,.ds-config textarea{min-width:0;padding:5px 7px!important;font-size:12px!important}
.ds-config-row .sales-actions{gap:4px;margin:0}
.ds-config [name=sensors]{width:65px;flex:none}
.ds-config [data-preview] p{margin:5px 0}
.ds-config .sales-actions{flex-wrap:wrap}
.ds-grid{min-height:280px;max-height:520px}
.ds-grid table{min-width:950px;table-layout:fixed;width:100%}
.ds-grid .lead-table th,.ds-grid .lead-table td{padding:6px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ds-grid .lead-table th:nth-child(2){width:105px}
.ds-grid .lead-table th:nth-child(3){width:auto}
.ds-grid .lead-table th:nth-child(n+4){width:75px}
.ds-grid .lead-table td:first-child,.ds-grid .lead-table th:first-child{min-width:42px;width:42px}
.ds-grid .lead-table td:nth-child(3){min-width:200px;white-space:nowrap}
.ds-grid-help{font-size:12px;margin:5px 0}
.ds-spec-items .lead-total{margin:6px 0}
.ds-spec-items>.sales-actions{margin:8px 0}
.ds-grid td{font-variant-numeric:tabular-nums}
.ds-grid tr[aria-selected=true],.ds-picker tr[aria-selected=true],.ds-catalog-grid tr[aria-selected=true]{background:var(--primary-soft,#e5eef5)}
.ds-grid td input{width:100%;min-width:80px}
.ds-grid td:focus-within{outline:2px solid var(--primary,#246da0);outline-offset:-2px}
.ds-picker-table{height:360px}
.ds-picker-table .lead-table{min-width:550px}
.ds-picker-table .lead-table td:first-child{min-width:120px}
.ds-picker-params{display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px}
.ds-category th{font-weight:700}
.ds-directory-bottom{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.ds-directory label{display:flex;flex-direction:column;gap:6px;font-size:13px}
.ds-directory input,.ds-directory select,.ds-directory textarea,.ds-dialog input,.ds-dialog select,.ds-dialog textarea{font:inherit;color:var(--text);background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:8px;max-width:100%;box-sizing:border-box}
.ds-directory textarea{width:100%}
.ds-directory .ds-settings{display:grid;grid-template-columns:1fr;gap:6px;margin:12px 0}
.ds-directory .ds-settings>label:not(.ds-check){display:grid!important;grid-template-columns:minmax(260px,420px) minmax(140px,520px);align-items:center;gap:8px;text-align:left;justify-content:start}
.ds-directory .ds-settings input,.ds-directory .ds-settings select{padding:5px 7px}
.ds-catalog-grid{max-height:420px}
.ds-catalog-grid .lead-table,.ds-picker-table .lead-table{table-layout:fixed;min-width:1000px;width:100%}
.ds-catalog-grid .lead-table th,.ds-catalog-grid .lead-table td,.ds-picker-table .lead-table td{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;padding:6px}
.ds-catalog-grid .lead-table th:nth-child(3){width:30%}
.ds-picker-table .lead-table{min-width:550px}
.ds-picker-table .lead-table th:nth-child(1){width:120px}
.ds-picker-table .lead-table th:nth-child(3){width:90px}
.ds-catalog-grid .lead-table td:first-child{min-width:100px}
.ds-directory-bottom .lead-table{min-width:300px}
.ds-catalog-actions .ds-spacer{flex:1}
.ds-catalog-actions .ds-cable-rate{display:flex!important;flex-direction:row!important;align-items:center}
.ds-cable-rate input{width:85px}
.ds-dialog{color:var(--text);background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:20px;max-width:calc(100vw - 32px);width:760px;max-height:90vh;box-sizing:border-box}
.ds-dialog::backdrop{background:#0005}
.ds-dialog form{display:flex;flex-direction:column;gap:14px;max-height:calc(90vh - 50px)}
.ds-modal-body{overflow:auto;display:grid;grid-template-columns:1fr;gap:12px;min-height:0}
.ds-modal-body label{display:flex;flex-direction:column;gap:6px}
.ds-form-rows label{display:grid!important;grid-template-columns:minmax(150px,40%) minmax(0,1fr);align-items:start;gap:8px;text-align:left;justify-content:stretch}
.ds-item-dialog{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ds-item-dialog .ds-all{grid-column:1/-1}
.ds-item-dialog .lead-total{margin:4px 0}
.ds-price-dialog [data-price-dialog-preview]{white-space:pre-line}
.ds-price-dialog label{display:grid!important;grid-template-columns:160px 1fr;align-items:center;text-align:left;justify-content:stretch}
.ds-dialog h3{margin:0}
.ds-dialog .sales-actions{flex-shrink:0}
.ds-document-actions{margin:16px 0}
.ds-tabs button:focus-visible,.ds-catalog-grid tr:focus-visible{outline:2px solid var(--primary,#246da0);outline-offset:-2px}
@media(max-width:1100px){.ds-split{grid-template-columns:1fr}.ds-requisites{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.ds-requisites,.ds-directory-bottom,.ds-directory .ds-settings{grid-template-columns:1fr}.ds-requisites .ds-span2,.ds-requisites .ds-wide{grid-column:1}.ds-picker-params{grid-template-columns:1fr}.ds-dialog{padding:14px}.ds-requisites>label,.ds-config form>label,.ds-config-row,.ds-directory .ds-settings>label:not(.ds-check),.ds-form-rows label,.ds-price-dialog label{grid-template-columns:1fr!important}.ds-requisites label.ds-all small{grid-column:1}.ds-item-dialog{grid-template-columns:1fr}.ds-config [name=sensors]{width:65px}.ds-split{grid-template-columns:minmax(0,1fr)}}
/* Lead documents use the existing portal palette and controls. */
.sales-flow-dialog{width:min(900px,94vw);max-height:90vh;overflow:auto;border:1px solid var(--border,#d1d5db);border-radius:12px;background:var(--bg,#fff);color:var(--text,#1f2937);padding:24px}
.sales-flow-dialog::backdrop{background:rgba(0,0,0,.4)}
.sales-flow-dialog label{display:flex;flex-direction:column;gap:6px;margin-block:8px}
.sales-flow-dialog input,.sales-flow-dialog select{min-width:0;max-width:100%;padding:8px}
[data-client-results]{display:flex;flex-direction:column;gap:4px;max-height:240px;overflow:auto}
[data-client-results] button{text-align:left;white-space:normal}
.sales-flow-dialog pre{max-width:100%;font:inherit}
.sales-flow-dialog [hidden]{display:none!important}
.sales-flow-dialog fieldset{min-width:0;border:1px solid var(--border,#d1d5db);border-radius:6px;padding:12px;margin:12px 0}
.sales-flow-dialog fieldset:has(>[data-kind]),.sales-flow-dialog fieldset:has(>label>[data-kind]){display:flex;flex-wrap:wrap;gap:12px 24px}
.sales-flow-dialog label:has(>[data-kind]){flex-direction:row;align-items:center;margin:0;gap:8px}
.sales-flow-dialog input[type=checkbox]{width:auto;flex:none;margin:0}
.sales-flow-dialog fieldset:has(>[data-signer]){display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sales-flow-dialog fieldset:has(>[data-signer])>p{grid-column:1/-1;margin:0}
.sales-flow-dialog [data-signer]{margin:0}
.sales-flow-dialog input,.sales-flow-dialog select,.sales-flow-dialog textarea{border:1px solid var(--border,#d1d5db);border-radius:6px;font:inherit;background:var(--card,#fff);color:inherit}
#clientTemplatesV12{grid-column:1/-1;min-width:0}
#clientTemplatesV12>div{padding:12px 0;border-bottom:1px solid var(--border,#d1d5db);display:flex;flex-wrap:wrap;align-items:center;gap:8px}
#clientTemplatesV12>div>label{flex-basis:100%;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
#clientTemplatesV12 input{max-width:100%;min-width:0}
#userBankAccessV12{border:1px solid var(--border,#d1d5db);border-radius:6px;margin:16px 0;padding:12px}
@media(max-width:640px){.sales-flow-dialog{padding:14px;width:94vw}.sales-flow-dialog fieldset:has(>[data-signer]){grid-template-columns:1fr}}
