.vendor-pricing-workspace{--vendor-warning:#8a5b12;--vendor-warning-bg:#fff8e7;grid-template-columns:minmax(0,1fr);min-width:0;max-width:none}.vendor-pricing-workspace>*,.vendor-review-panel{min-width:0}.vendor-job-panel .panel-header,.vendor-review-panel .panel-header{align-items:flex-start}.vendor-job-panel .panel-header>div,.vendor-review-panel .panel-header>div{gap:3px;display:grid}.vendor-job-panel .panel-header p,.vendor-review-panel .panel-header p{color:var(--muted);margin:0;font-size:.8125rem}.vendor-job-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.vendor-choice-field{gap:6px;min-width:0;display:grid}.vendor-choice-field>label{margin:0}.vendor-choice-field>small{color:var(--muted);font-size:.6875rem;line-height:1.4}.vendor-upload{align-items:flex-end;gap:10px;margin-top:14px;display:flex}.vendor-file-picker{flex:420px}.vendor-file-picker input{background:var(--soft);padding:8px}.vendor-file-picker>span{color:var(--muted);margin-top:4px;font-size:.71875rem;display:block}.vendor-map-list{gap:14px;display:grid}.vendor-map-card{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:9px;padding:16px}.vendor-map-card>header{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding-bottom:12px;display:grid}.vendor-map-card>header>div{min-width:0}.vendor-map-card>header strong,.vendor-map-card>header span{display:block}.vendor-map-card>header strong{color:var(--dark);text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;overflow:hidden}.vendor-map-card>header span{color:var(--muted);margin-top:2px;font-size:.71875rem}.vendor-file-icon{border:1px solid var(--line);background:var(--soft);width:34px;height:34px;color:var(--walnut);border-radius:7px;place-items:center;display:grid}.vendor-map-card .icon-button{place-items:center;width:34px;height:34px;padding:0;display:grid}.vendor-name-field{max-width:420px;margin-top:12px}.vendor-map-grid{grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;margin-top:12px;display:grid}.vendor-map-grid label{min-width:0}.vendor-map-grid select{width:100%;min-width:0}.vendor-file-warning{background:var(--vendor-warning-bg);color:var(--vendor-warning);border:1px solid #ead39f;border-radius:7px;align-items:flex-start;gap:8px;margin-top:12px;padding:9px 10px;font-size:.75rem;line-height:1.45;display:flex}.vendor-file-warning svg{flex:none;margin-top:1px}.vendor-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.vendor-summary-grid article{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:0;padding:13px 14px}.vendor-summary-grid span,.vendor-summary-grid strong,.vendor-summary-grid p{display:block}.vendor-summary-grid span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.625rem;font-weight:800}.vendor-summary-grid strong{color:var(--dark);font-family:var(--font-mono);margin-top:5px;font-size:1.125rem}.vendor-summary-grid p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:.71875rem;overflow:hidden}.vendor-pricing-table-wrap{border:1px solid var(--line);border-radius:8px;width:100%;max-width:100%;margin-top:14px;overflow-x:auto}.vendor-pricing-table{min-width:1480px}.vendor-pricing-table .vendor-jc-total strong{color:var(--dark);font-size:.8125rem}.vendor-pricing-table th:first-child,.vendor-pricing-table td:first-child{text-align:center;width:42px}.vendor-pricing-table th:nth-child(2){min-width:170px}.vendor-pricing-table th:nth-child(3){min-width:260px}.vendor-pricing-table th:nth-child(4){min-width:92px}.vendor-pricing-table th:nth-child(n+5){min-width:104px}.vendor-pricing-table td:first-child input{min-width:16px}.vendor-pricing-table td:nth-child(3) input{width:100%;min-width:230px}.vendor-pricing-table td:nth-child(4) input{min-width:74px}.vendor-pricing-table td:nth-child(n+5):nth-child(-n+10) input{width:92px}.vendor-review-header{flex-wrap:wrap}.vendor-review-header>div{flex:420px}.vendor-master-markup{border:1px solid var(--line);background:var(--soft);border-radius:7px;grid-template-columns:minmax(0,1fr) 92px;align-items:center;gap:4px 10px;min-width:280px;margin-left:auto;padding:10px 12px;display:grid}.vendor-master-markup>span{color:var(--dark);font-size:.75rem;font-weight:800}.vendor-master-markup input{width:92px}.vendor-master-markup small{color:var(--muted);grid-column:1/-1;font-size:.65625rem;font-weight:500;line-height:1.4}.vendor-quote-notes{color:#3f6138;background:#f5faf2;border:1px solid #c9d8c2;border-radius:7px;align-items:flex-start;gap:9px;margin-top:14px;padding:10px 12px;display:flex}.vendor-quote-notes>svg{flex:none;margin-top:1px}.vendor-quote-notes strong,.vendor-quote-notes span{display:block}.vendor-quote-notes strong{font-size:.75rem}.vendor-quote-notes span{margin-top:2px;font-size:.71875rem}.vendor-separate-charges{border:1px solid var(--line);background:var(--soft);border-radius:8px;margin-top:14px;padding:13px}.vendor-separate-charges>header{align-items:flex-start;gap:9px;margin-bottom:10px;display:flex}.vendor-separate-charges>header svg{color:var(--walnut);flex:none;margin-top:1px}.vendor-separate-charges h3,.vendor-separate-charges p{margin:0}.vendor-separate-charges h3{color:var(--dark);font-size:.875rem}.vendor-separate-charges p{color:var(--muted);margin-top:2px;font-size:.71875rem;line-height:1.45}.vendor-adjustment-table{min-width:860px}.vendor-adjustment-table th:first-child{min-width:160px}.vendor-adjustment-table th:nth-child(2){min-width:240px}.vendor-adjustment-table input{width:112px}.vendor-pricing-table tr.row-warning:not(.selected-row){background:#fffcf4}.vendor-row-warning{color:var(--vendor-warning);align-items:flex-start;gap:4px;margin-top:5px;font-size:.6875rem;line-height:1.35;display:flex}.vendor-row-warning svg{flex:none;margin-top:1px}.vendor-review-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:14px;display:flex}.vendor-review-actions>span{color:var(--muted);font-size:.75rem}.vendor-empty-state{min-height:132px;color:var(--muted);align-items:center;gap:14px;display:flex}.vendor-empty-state>svg{color:var(--walnut);flex:none}.vendor-empty-state h2{color:var(--dark);margin:0;font-size:1rem}.vendor-empty-state p{max-width:72ch;margin:5px 0 0;line-height:1.55}@media (max-width:1100px){.vendor-map-grid{grid-template-columns:repeat(3,minmax(140px,1fr))}.vendor-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.vendor-job-grid,.vendor-map-grid,.vendor-summary-grid{grid-template-columns:minmax(0,1fr)}.vendor-upload{flex-direction:column;align-items:stretch}.vendor-file-picker{flex-basis:auto}.vendor-upload button,.vendor-review-actions button{justify-content:center;width:100%}.vendor-review-actions{flex-direction:column;align-items:stretch}.vendor-master-markup{width:100%;min-width:0;margin-left:0}.vendor-summary-grid p{white-space:normal}}
.communications-view{gap:16px;display:grid}.communications-toolbar{margin-bottom:0}.communications-summary{border:1px solid var(--line);background:var(--card);justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;display:flex}.communications-summary>div{color:var(--walnut);align-items:center;gap:10px;display:flex}.communications-summary>div span{display:grid}.communications-summary strong{color:var(--ink);font:800 1.25rem var(--font-display)}.communications-summary small{color:var(--ink-muted);font:700 .6875rem var(--font-mono);letter-spacing:.04em;text-transform:uppercase}.communications-summary p{max-width:700px;color:var(--ink-muted);margin:0;font-size:.8125rem;line-height:1.5}.communications-error{margin:0}.communications-empty{border:1px solid var(--line);background:var(--card);min-height:260px}.communications-list{gap:10px;display:grid}.communication-card{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow-sm);overflow:hidden}.communication-card>header{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:14px 16px;display:grid}.communication-direction{width:34px;height:34px;color:var(--walnut);border:1px solid var(--line);background:var(--soft);place-items:center;display:grid}.communication-card-title{gap:3px;min-width:0;display:grid}.communication-card-title strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.9375rem;overflow:hidden}.communication-card-title span{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.communication-status{border:1px solid var(--line);color:var(--ink-muted);background:var(--soft);font:800 .625rem var(--font-mono);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;padding:4px 8px}.communication-status.status-delivered,.communication-status.status-opened{color:#245f31;background:#edf7ef;border-color:#bad9c0}.communication-status.status-delayed{color:#6b5215;background:#fbf4df;border-color:#e2cf94}.communication-status.status-bounced,.communication-status.status-complained,.communication-status.status-suppressed,.communication-status.status-failed{color:#743131;background:#fbefef;border-color:#e0bcbc}.communication-card>header>time{color:var(--ink-muted);font:600 .6875rem var(--font-mono);white-space:nowrap}.communication-links{border-top:1px solid var(--line);background:var(--soft);color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:8px 16px;padding:9px 16px;font-size:.75rem;display:flex}.communication-links button,.communication-links a{color:var(--walnut);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-weight:800;text-decoration:none;display:inline-flex}.communication-links button:hover,.communication-links a:hover{color:var(--ink);text-decoration:underline}.communication-card>details{border-top:1px solid var(--line)}.communication-card>details>summary{color:var(--ink);cursor:pointer;padding:11px 16px;font-size:.75rem;font-weight:800}.communication-detail-grid{border-top:1px solid var(--line);grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);display:grid}.communication-detail-grid>section{min-width:0;padding:16px}.communication-detail-grid>section+section{border-left:1px solid var(--line)}.communication-detail-grid h3{color:var(--ink);letter-spacing:.06em;text-transform:uppercase;margin:0 0 10px;font-size:.75rem}.communication-detail-grid pre{max-height:320px;color:var(--ink);font:400 .8125rem/1.65 var(--font-body);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;overflow:auto}.communication-file{border:1px solid var(--line);background:var(--soft);align-items:center;gap:8px;margin:14px 0 0;padding:10px;display:flex}.communication-file span{min-width:0;display:grid}.communication-file strong{text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.communication-file small{color:var(--ink-muted);font-size:.6875rem}.communication-events{gap:0;margin:0;padding:0;list-style:none;display:grid}.communication-events li{grid-template-columns:12px 1fr;gap:8px;min-height:38px;display:grid}.communication-events li>span{border:2px solid var(--card);background:var(--walnut);width:8px;height:8px;box-shadow:0 0 0 1px var(--walnut);border-radius:50%;margin-top:4px;position:relative}.communication-events li:not(:last-child)>span:after{background:var(--line);content:"";width:1px;height:30px;position:absolute;top:8px;left:2px}.communication-events li div{gap:2px;display:grid}.communication-events strong{color:var(--ink);font-size:.75rem}.communication-events time{color:var(--ink-muted);font:600 .6875rem var(--font-mono)}.communication-failure{color:var(--danger);margin:8px 0 0;font-size:.75rem}.communications-pagination{justify-content:space-between;align-items:center;gap:12px;display:flex}.communications-pagination>span{color:var(--ink-muted);font:700 .75rem var(--font-mono)}.communication-dialog-backdrop{z-index:1000;background:#1720269e;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.communication-dialog{border:1px solid var(--line);background:var(--card);width:min(680px,100%);max-height:calc(100vh - 40px);box-shadow:var(--shadow-lg);overflow:auto}.communication-dialog>header{border-bottom:1px solid var(--line);background:var(--soft);grid-template-columns:auto 1fr auto;align-items:start;gap:12px;padding:18px 20px;display:grid}.communication-dialog-icon{width:38px;height:38px;color:var(--walnut);border:1px solid var(--line);background:var(--card);place-items:center;display:grid}.communication-dialog h2{color:var(--ink);font:800 1.25rem var(--font-display);margin:2px 0 3px}.communication-dialog header span{color:var(--ink-muted);font-size:.75rem}.communication-dialog form{gap:14px;padding:20px;display:grid}.communication-dialog .crm-field small{color:var(--ink-muted);margin-top:5px;font-size:.6875rem}.communication-sender{border:1px solid var(--line);background:var(--soft);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 10px;padding:11px 12px;display:grid}.communication-sender>svg{color:var(--walnut);grid-row:1/span 2}.communication-sender span{min-width:0;display:grid}.communication-sender small{color:var(--ink-muted);font:700 .625rem var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.communication-sender strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;overflow:hidden}.communication-sender p{color:var(--ink-muted);grid-column:2;margin:0;font-size:.6875rem;line-height:1.45}.communication-attachment{border:1px solid var(--line);background:var(--soft);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.communication-attachment>svg{color:var(--walnut)}.communication-attachment span{min-width:0;display:grid}.communication-attachment strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;overflow:hidden}.communication-attachment small{color:var(--ink-muted);font-size:.6875rem}.communication-attachment em{color:var(--walnut);border:1px solid var(--line);font:800 .625rem var(--font-mono);padding:3px 6px;font-style:normal}.communication-dialog footer{justify-content:space-between;align-items:flex-end;gap:16px;padding-top:4px;display:flex}.communication-dialog footer p{max-width:370px;color:var(--ink-muted);margin:0;font-size:.6875rem;line-height:1.5}.communication-dialog footer div{gap:8px;display:flex}@media (max-width:760px){.communications-summary{flex-direction:column;align-items:flex-start}.communication-card>header{grid-template-columns:auto minmax(0,1fr) auto}.communication-card>header>time{grid-column:2/4}.communication-detail-grid{grid-template-columns:1fr}.communication-detail-grid>section+section{border-top:1px solid var(--line);border-left:0}.communication-dialog-backdrop{align-items:end;padding:0}.communication-dialog{width:100%;max-height:94vh}.communication-dialog footer{flex-direction:column;align-items:stretch}.communication-dialog footer p{max-width:none}.communication-dialog footer div{justify-content:flex-end}}
