.company-layout {display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,2fr);gap:20px;align-items:start}
.company-layout>div,.company-layout>section {min-width:0;background:white;border:1px solid var(--border,#d5e0e2);border-radius:8px;padding:18px}
.company-search,.company-dialog label {display:grid;gap:7px;font-weight:600}
.company-search input,.company-dialog input,.company-dialog select {width:100%;min-width:0;padding:10px;border:1px solid #9bafb2;border-radius:5px;background:white;color:#12363c}
.company-row {width:100%;display:grid;gap:6px;text-align:left;padding:14px 10px;border:0;border-bottom:1px solid #d5e0e2;background:white;color:#12363c;overflow-wrap:anywhere}
.company-row:hover,.company-row[aria-pressed=true] {background:#edf5f5}
.company-row small,.company-empty {color:#536b70}
#companyList {margin-top:14px;max-height:65vh;overflow:auto}
#companyDetail {overflow-wrap:anywhere}
#companyDetail .section-head {gap:12px;flex-wrap:wrap}
.company-documents {display:grid;gap:12px;margin-top:20px}
.company-document {display:grid;gap:7px;padding:14px;border:1px solid #d5e0e2;border-radius:6px}
.company-document a {color:#075f69;text-decoration:underline;font-weight:600}
.company-status {justify-self:start;background:#fff1cf;color:#6d4800;padding:4px 9px;border-radius:4px;font-size:13px}
.company-dialog {width:min(680px,calc(100vw - 28px));max-height:90dvh;overflow:auto;border:1px solid #9bafb2;border-radius:10px;padding:24px;color:#12363c}
.company-dialog::backdrop {background:rgba(0,20,25,.5)}
.company-dialog form {display:grid;gap:16px}
.company-dialog h2 {margin:0}
.company-dialog fieldset {min-width:0;display:grid;grid-template-columns:1fr 1fr;gap:12px;border:1px solid #d5e0e2;border-radius:6px;padding:14px;margin:12px 0}
.company-dialog legend {max-width:100%;overflow-wrap:anywhere;font-weight:600}
.company-dialog [role=alert] {color:#a1261c;margin:0}
.company-dialog [role=status] {grid-column:1/-1;overflow-wrap:anywhere}
.company-dialog-actions {display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}
.company-dialog button:disabled {opacity:.65;cursor:default}
.company-layout :focus-visible,.company-dialog :focus-visible {outline:3px solid #087d8a;outline-offset:3px}
@media(max-width:800px){.company-layout{grid-template-columns:1fr}#companyList{max-height:260px}.company-dialog{padding:18px}.company-dialog fieldset{grid-template-columns:1fr}}
.company-document-actions {display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.company-document-actions button {min-height:38px}
.company-document-actions button:disabled {opacity:.6;cursor:wait}
.company-status[data-status=ready_for_review] {background:#e1f3ec;color:#165e46}
.company-status[data-status=error] {background:#fce8e4;color:#922719}
.company-status[data-status=processing] {background:#e5f1fa;color:#205b7e}
.company-totals {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:12px 0}
.company-totals dt {font-size:13px;color:#536b70}
.company-totals dd {margin:4px 0 0;font-weight:700;font-variant-numeric:tabular-nums}
.company-processing-issues {padding-left:20px;color:#794710;line-height:1.5}
.company-processing-result details {margin:12px 0}
.company-processing-result summary {cursor:pointer;padding:8px 0;font-weight:600}
.company-table-scroll {max-width:100%;overflow:auto;margin-top:10px}
.company-table-scroll table {border-collapse:collapse;min-width:700px;width:100%;font-size:13px}
.company-table-scroll th,.company-table-scroll td {text-align:left;padding:9px;border-bottom:1px solid #d5e0e2;vertical-align:top}
.company-table-scroll small {display:block;color:#536b70;margin-top:5px}
#companyProcessingProgress {color:#205b7e;min-height:1.5em}
@media(max-width:480px){.company-totals{grid-template-columns:1fr}.company-document-actions{align-items:stretch}.company-document-actions button{flex:1 1 auto}}
.company-document,.company-processing-result,.company-processing-result details {min-width:0}

.company-turnover {margin-top:22px;border-top:1px solid #d5e0e2;padding-top:16px}
.company-turnover-scroll {max-height:70vh;border:1px solid #d5e0e2;border-radius:6px}
.company-turnover-scroll table {border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-variant-numeric:tabular-nums}
.company-turnover-scroll th,.company-turnover-scroll td {min-width:110px;text-align:right;white-space:nowrap}
.company-turnover-scroll th:first-child {position:sticky;left:0;z-index:1;background:white;min-width:180px;max-width:240px;white-space:normal;text-align:left;border-right:1px solid #d5e0e2}
.company-turnover-scroll thead th {position:sticky;top:0;background:#edf5f5;z-index:2;white-space:normal;max-width:160px}
.company-turnover-scroll thead th:first-child {z-index:3;background:#edf5f5}
.company-turnover-scroll .company-turnover-total th,.company-turnover-total td {background:#edf5f5;font-weight:700}
.company-turnover-scroll caption {text-align:left;padding:10px;color:#536b70}
.company-negative {color:#922719;font-weight:700}
@media(max-width:600px){.company-turnover-scroll th:first-child{min-width:130px;max-width:150px}.company-layout>section{padding:12px}}

.company-sort-button {display:flex;align-items:flex-start;justify-content:flex-end;gap:6px;width:100%;min-height:40px;padding:4px 0;border:0;background:transparent;color:inherit;font:inherit;font-weight:inherit;text-align:inherit;cursor:pointer}
.company-sort-arrow {flex:none;color:#075f69;font-size:16px;line-height:1.2}
.company-sort-button:hover {color:#075f69;text-decoration:underline}
.company-sort-button:focus-visible {outline:3px solid #087d8a;outline-offset:2px;border-radius:3px}
.company-turnover-scroll th:first-child .company-sort-button {justify-content:space-between}
