/* Usability refinements using the existing KTS palette, fonts and surfaces. */
.main{min-width:0}
.nav-item{min-height:44px;font-size:13px}
.primary-btn,.ghost-btn,.gold-btn{min-height:44px;font-size:12px}
.form-grid label,.classifier-grid label,.info-item span,.summary-label{font-size:12px;letter-spacing:.04em}
.form-grid input,.form-grid textarea,.form-grid select,.classifier-grid select,.auth-form input{font-size:16px}
.tab-btn,.filter-btn{font-size:12px;min-height:44px}
.deal-table th{font-size:11px;letter-spacing:.07em}
.deal-table td,.deal-name strong,.info-item strong{font-size:14px}
.deal-name span,.next-action span,.table-sub,.task p,.blind-body p,.full-deal-card p{font-size:13px}
.quality-pill,.publish-pill,.badge,.direction-badge,.blind-meta,.full-meta{font-size:11px}
.muted,.toast,.real-file-row small,.request-row small{font-size:13px}
.request-row strong,.task strong,.event-row strong{font-size:14px}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=button]:focus-visible{outline:2px solid var(--brass);outline-offset:3px}
.search{min-width:200px;z-index:35}
.search input{font-size:16px}
.ux-search-results{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);max-height:60vh;overflow:auto}
.ux-search-results[hidden]{display:none}
.ux-search-option{display:grid;gap:5px;width:100%;padding:14px;text-align:left;border:0;border-bottom:1px solid var(--line);background:var(--paper);color:var(--navy);min-height:56px}
.ux-search-option[aria-selected=true],.ux-search-option:hover{background:var(--ivory)}
.ux-search-option small{font-size:12px;color:var(--greige)}
.ux-search-empty{padding:18px;color:var(--greige);font-size:14px}
.ux-filter-panel{width:100%;background:var(--paper);border:1px solid var(--line);padding:18px}
.ux-filter-panel>summary{cursor:pointer;min-height:44px;padding:10px 0;color:var(--navy);font-size:14px}
.ux-filter-panel[open]>summary{margin-bottom:12px;border-bottom:1px solid var(--line)}
.ux-inline-error:empty{display:none}
.ux-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.ux-filter-grid label,.ux-sort-label{display:grid;gap:6px;font-size:12px;color:var(--greige)}
.ux-filter-grid input,.ux-filter-grid select,.ux-sort-label select{min-height:44px;width:100%;padding:10px;border:1px solid var(--line);background:var(--paper);color:var(--navy);font:14px var(--sans);border-radius:0}
.ux-filter-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px}
.ux-filter-actions .ux-saved-picker{max-width:260px;min-height:44px;background:var(--paper);border:1px solid var(--line);padding:10px;font:13px var(--sans);color:var(--navy)}
.ux-results-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px;flex-wrap:wrap}
.ux-results-head p{font-size:14px;color:var(--greige);margin:0}
.ux-sort-label{display:flex;align-items:center}
.ux-sort-label select{width:auto}
.ux-pagination{display:flex;justify-content:center;align-items:center;gap:18px;margin:24px 0;font-size:14px}
.ux-favorite{background:var(--paper);border:1px solid var(--line);color:var(--brass);padding:8px 12px;min-height:44px;font:13px var(--sans)}
.ux-favorite[aria-pressed=true]{background:var(--ivory);border-color:var(--brass)}
.blind-card,.full-deal-card{position:relative}
.blind-card>.ux-favorite,.full-deal-card>.ux-favorite{position:absolute;right:10px;top:10px;box-shadow:0 2px 8px rgba(14,26,43,.12)}
.ux-detail-actions{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 20px}
.ux-dossier-panel{margin-top:22px;padding:20px;background:var(--paper);border:1px solid var(--line)}
.ux-dossier-panel h3,.ux-focus-panel h2,.ux-form-section h3{font-family:var(--serif);font-weight:500;font-size:26px;margin:0 0 12px}
.ux-dossier-panel p{font-size:14px;color:var(--greige)}
.ux-dossier-row{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding:12px 0;font-size:14px}
.ux-dossier-row span{color:var(--greige)}
.ux-focus-panel{border-left:3px solid var(--brass);background:var(--paper);padding:18px 22px;margin-bottom:22px}
.ux-focus-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ux-focus-link{display:grid;gap:5px;padding:12px;text-align:left;border:1px solid var(--line);background:var(--paper);color:var(--navy);font:14px var(--sans)}
.ux-focus-link small{font-size:12px;color:var(--greige)}
.ux-draft-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:16px 0}
.ux-draft-bar p{margin:0;font-size:13px;color:var(--greige)}
.ux-form-section{border:0;border-top:1px solid var(--line);padding:24px 0 4px;margin:0;min-width:0}
.ux-form-section:first-of-type{border-top:0}
.ux-form-section>.form-grid{margin-top:12px}
.ux-form-section .form-grid label{display:block}
.ux-form-section select{width:100%;margin-top:6px;border:1px solid var(--line);background:var(--paper);padding:11px;color:var(--navy)}
.ux-details summary{cursor:pointer;min-height:48px;padding:12px 0;color:var(--navy);font-size:15px}
.ux-form-actions{position:sticky;bottom:0;background:var(--ivory-light);border-top:1px solid var(--line);padding:16px 0;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:5}
.ux-upload-status{padding:14px 0;font-size:14px;color:var(--navy)}
.ux-upload-status progress{display:block;width:100%;height:10px;margin-top:8px;accent-color:var(--brass)}
.ux-upload-status:empty{display:none}
.ux-inline-error{color:var(--danger);font-size:14px;padding:12px 0}
.ux-file-list{list-style:none;padding:0;margin:8px 0;font-size:13px;color:var(--greige)}
.ux-file-list li{padding:5px 0;overflow-wrap:anywhere}
.ux-field-hint{font-size:12px;color:var(--greige);display:block;margin-top:5px;text-transform:none;letter-spacing:normal}
.ux-defer-files{display:flex;align-items:flex-start;gap:8px;font-size:14px;margin:12px 0;color:var(--navy)}
.ux-defer-files[hidden]{display:none}
.ux-mobile-nav{display:none}
.ux-disclosure-context{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:16px;background:var(--paper);border:1px solid var(--line);margin-bottom:18px;font-size:14px}
.ux-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);border:0}
.ux-filter-grid label,.ux-sort-label,.ux-results-head p,.ux-field-hint,.ux-draft-bar p,.ux-search-option small,.form-grid label,.classifier-grid label{color:var(--navy-soft,var(--navy))}
@media(max-width:1100px){.ux-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{height:auto;min-height:80px;gap:14px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}.top-actions{flex-wrap:wrap;gap:8px}.ux-focus-list{grid-template-columns:1fr}.ux-search-results{max-height:50vh}}
@media(max-width:800px){
  .topbar{padding:12px 18px;position:relative}
  .search{display:block;order:3;flex-basis:100%;max-width:none;min-width:0}
  .top-actions{flex:1;justify-content:flex-end;min-width:0}
  .top-actions .primary-btn{font-size:11px;min-height:44px}
  .content{padding-bottom:100px}
  .ux-mobile-nav{position:fixed;inset:auto 0 0;z-index:38;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:4px 8px calc(4px + env(safe-area-inset-bottom));background:var(--navy);border-top:1px solid var(--brass)}
  .ux-mobile-nav button{display:grid;place-items:center;gap:4px;min-height:60px;background:transparent;border:0;color:var(--ivory);font:12px var(--sans);padding:7px 2px}
  .ux-mobile-nav button span{font-size:18px}
  .ux-mobile-nav button[aria-current=page]{color:var(--brass-light);background:rgba(201,169,110,.1)}
  .ux-form-actions{bottom:72px;flex-wrap:wrap}
  .ux-results-head{align-items:flex-start}
  .ux-dossier-row{flex-direction:column;gap:6px}
  .toast{bottom:90px;right:16px;left:16px}
  .deal-table td:not(:first-child):before{font-size:11px}
  .deal-table td:not(:first-child){padding-left:95px}
}
@media(max-width:450px){
  .ux-filter-grid{grid-template-columns:1fr}
  .ux-filter-panel{padding:14px}
  .ux-filter-actions .ux-saved-picker{max-width:100%;width:100%}
  .ux-form-section>.form-grid{grid-template-columns:1fr}
  .ux-form-actions>.primary-btn{width:100%}
  .ux-detail-actions>button{flex:1 1 150px}
  .user-email{max-width:125px;overflow:hidden;text-overflow:ellipsis}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
