/* UX phase 2 — help, form validation and narrow-screen usability. */
.kv-ux-empty[hidden]{display:none!important}
.kv-ux-empty{margin:12px 0 15px;padding:20px 18px;border:1px dashed #b9cde4;border-radius:12px;background:#f7faff;color:#233b58;display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.kv-ux-empty h3{margin:0;font-size:16px;line-height:1.4}
.kv-ux-empty p{margin:0;color:#52647a;font-size:13px;line-height:1.6}
.kv-ux-empty button{margin-top:2px;min-height:40px}
.kv-ux-empty-filtered{padding:14px 16px;background:#fcfdff}
.kv-finance-legend{margin:10px 0 14px;padding:0;border:1px solid #e1e8f2;border-radius:10px;background:#fff;color:#253b56;overflow:hidden}
.kv-finance-legend summary{padding:10px 13px;font-weight:650;font-size:13px;cursor:pointer;line-height:1.5}
.kv-finance-legend summary:focus-visible{outline:3px solid #86b7ea;outline-offset:-3px}
.kv-finance-legend-body{padding:0 13px 12px;color:#52647a;font-size:12px;line-height:1.65}
.kv-finance-legend-body p{margin:5px 0}
.kv-ux-invalid{outline:2px solid #c43037!important;outline-offset:1px}
@media(max-width:700px){
 .kv-ux-empty{padding:14px}
 .kv-ux-empty button{width:100%;min-height:44px}
 #tab-bank-center .bank-center-table-wrap,
 #tab-deals .deals-table-wrap,
 #tab-estimates .counterparty-table-wrap,
 #tab-salary .salary-export-grid{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
 #tab-bank-center .bank-center-table-wrap table{min-width:630px}
 #tab-deals .deals-table-wrap table{min-width:630px}
 #tab-estimates .counterparty-table-wrap table{min-width:650px}
 #tab-bank-center button,#tab-estimates button,#tab-salary button,
 #tab-bank-center input,#tab-bank-center select,
 #tab-salary input,#tab-salary select{min-height:40px}
 #tab-bank-center .bank-center-buttons,
 #tab-salary .salary-toolbar-actions{display:flex;flex-wrap:wrap;gap:8px}
 #tab-bank-center .bank-center-buttons button{flex:1 1 180px;min-height:44px}
 #tab-salary .salary-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .kv-finance-legend summary{min-height:44px}
}
@media(max-width:400px){
 #tab-salary .salary-summary{grid-template-columns:1fr 1fr}
 #tab-bank-center .bank-workspace-nav button{min-height:44px}
}
