:root{--control-radius:5px;--control-height:44px}
body input:not([type=radio]):not([type=checkbox]):not([type=hidden]),body select,body textarea{border-radius:var(--control-radius);font-size:14px;border-color:color-mix(in srgb,#A8BBD0 65%,white)}
body input:not([type=radio]):not([type=checkbox]):not([type=hidden]),body select{min-height:var(--control-height)}
body label,body label small,body .form-hint,body .panel-heading p{font-size:12px;line-height:1.5}
body .table-wrap tbody td,body .table-wrap .company-cell strong{font-size:14px}
body .table-wrap thead th,body .table-wrap .badge,body .table-wrap .company-cell small,body .entity-state,body .customer-status{font-size:12px;letter-spacing:0}
body .table-wrap .row-action{font-size:12px;min-height:40px;border-radius:5px}
body .company-pagination,body .log-pagination,body .pagination{font-size:12px;gap:12px;flex-wrap:wrap}
body .company-pagination select,body .log-pagination select,body .pagination select{min-height:40px;font-size:13px;border-radius:5px}
body .company-pagination nav button,body .log-pagination button,body .pagination button{min-height:40px;min-width:40px;border-radius:5px;font-size:12px}
.log-panel{container-type:inline-size}
body .log-filters{grid-template-columns:repeat(2,minmax(0,1fr))}
body .log-filters #log-search{grid-column:1/-1}
body .log-filters .text-button{justify-self:start;grid-column:1/-1}
@container(min-width:850px){body .log-filters{grid-template-columns:repeat(4,minmax(0,1fr))}}
.field-error{display:block;color:#D83344;font-size:12px;font-weight:600;line-height:1.5}
body [aria-invalid=true]{border-color:#D83344!important;box-shadow:0 0 0 2px color-mix(in srgb,#D83344 16%,transparent)}
.required-note{display:block;font-size:12px;color:#526981;margin:16px 0}
.required-mark{color:#D83344;font-weight:700;margin-left:4px}
dialog .dialog-heading h2{font-family:Roboto,Inter,sans-serif}
dialog .dialog-heading .eyebrow,dialog .company-step-marker small{font-size:12px;letter-spacing:.02em}
body .company-step-marker>span,body .company-step-indicator{font-size:13px}
body .company-step-marker[aria-current=step]>b{outline:2px solid #A8BBD0;outline-offset:3px}
.table-detail summary{cursor:pointer;color:#0C3663;font-size:12px;font-weight:700;padding:6px 0}
.table-detail p{margin:6px 0;white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:760px){
 body .log-pagination>div,body .company-pagination nav{margin-left:0}
 body .pagination label{margin-left:0}
}
@media(prefers-reduced-motion:reduce){dialog .dialog-heading .close-dialog:hover{transform:none}}
/* Keep every table within its panel, including long names and unbroken text. */
#view,.panel,.table-wrap{min-width:0;max-width:100%}
body .table-wrap table{width:100%;min-width:0;max-width:100%;table-layout:fixed}
body .table-wrap th,body .table-wrap td{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;word-break:normal;padding:12px 10px}
body .table-wrap th:first-child,body .table-wrap td:first-child{padding-left:12px}
body .table-wrap .company-cell{min-width:0;max-width:100%;flex-wrap:nowrap;gap:6px}
body .table-wrap .company-cell>div,body .table-wrap .company-cell>span:last-child{min-width:0;max-width:100%}
body .table-wrap .company-cell strong,body .table-wrap .company-cell small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body .table-wrap .owner,body .table-wrap .priority,body .table-wrap .table-actions{max-width:100%;flex-wrap:nowrap}
body .table-wrap .badge,body .table-wrap .entity-state,body .table-wrap .customer-status,body .table-wrap button{min-width:0;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body .table-wrap .customer-directory-table td:nth-child(5){max-width:none;overflow:hidden;text-overflow:ellipsis}
.table-columns{padding:10px 14px;border-bottom:1px solid #dce4ec;background:#f7f9fb;color:#102B48}
.table-columns>summary{cursor:pointer;font-size:12px;font-weight:700;width:fit-content;padding:5px 0}
.table-columns fieldset{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;min-width:0;margin:10px 0 0;padding:10px;border:1px solid #cbd7e3;border-radius:5px}
.table-columns legend{font-size:12px;padding:0 5px}
.table-columns label{display:flex;align-items:center;gap:7px;cursor:pointer;font-size:12px}
.table-columns input[type=checkbox]{width:17px;height:17px;margin:0;accent-color:#0C3663}
.table-columns small{flex-basis:100%;font-size:11px;color:#526981}
.table-columns button{font-size:12px;padding:7px 10px}
body .table-wrap .company-cell>div,body .table-wrap .company-cell>span:last-child{flex:1;overflow:hidden}
body .table-wrap .company-cell strong,body .table-wrap .company-cell small{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis}
body .table-wrap .company-symbol,body .table-wrap .avatar,body .table-wrap .priority i{flex-shrink:0}
body .table-wrap .entity-state,body .table-wrap .customer-status,body .table-wrap .badge{display:inline-block;vertical-align:middle;overflow:hidden;text-overflow:ellipsis}
body .table-wrap .owner{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body .table-wrap .owner .avatar{display:none}
body .table-wrap td,body .table-wrap th{vertical-align:middle}
@media(max-width:760px){body .table-wrap td,body .table-wrap th{padding:10px 5px;font-size:11px}body .table-wrap .company-symbol{display:none}body .table-wrap .row-action{padding:6px 4px;font-size:11px}}

.todo-done[type=checkbox]{width:22px;height:22px;margin:4px;accent-color:#245787;cursor:pointer}
.assignment-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
body .table-wrap .assignment-table{min-width:760px}
.assignment-title{display:flex;align-items:center;gap:10px;min-width:0;cursor:pointer}
.assignment-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.assignment-company{display:flex;align-items:center;gap:4px;margin:5px 0 0 32px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.assignment-company .icon{width:13px;height:13px;flex:0 0 auto}
.assignment-table td:nth-child(2) small{color:var(--muted)}
.assignment-table td:last-child{white-space:normal}
.assignment-table .row-action{white-space:nowrap}
.todo-completed .assignment-title span{text-decoration:line-through;color:#102B48}
.table-wrap tbody tr.completed-row,.table-wrap tbody tr.completed-row:hover,.company-history-list .history-item.completed-row{background:#dbf5d0}
.todo-completion-report{margin-top:24px}
#todo-history{margin-top:20px;border-top:1px solid var(--line);padding-top:16px}
#todo-history li{margin:10px 0;line-height:1.6}
#todo-view-dialog{width:min(620px,calc(100vw - 32px));padding:0 32px}
#todo-view-body{padding:24px 0 2px}
#todo-view-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:16px 22px;margin:0}
#todo-view-fields div{min-width:0}
#todo-view-fields dt{font-size:9px;letter-spacing:1.2px;text-transform:uppercase;color:#526981;font-weight:600}
#todo-view-fields dd{margin:5px 0 0;font-size:13px;overflow-wrap:anywhere}
.todo-view-description{margin-top:22px;border-top:1px solid var(--line);padding-top:16px}
.todo-view-description h3{margin:0 0 10px;font-size:9px;letter-spacing:1.4px;text-transform:uppercase;color:#245787}
.todo-view-description p{margin:0;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere}
#company-code-help.code-warning{display:block;padding:9px 11px;border:1px solid color-mix(in srgb,#D83344 40%,white);border-radius:6px;background:color-mix(in srgb,#D83344 7%,white);color:#D83344;font-size:11px;font-weight:650;line-height:1.55}
#company-code-error{margin-top:6px}
#company-code-preview.is-invalid{border-color:#D83344;box-shadow:0 0 0 3px color-mix(in srgb,#D83344 15%,transparent)}
@media(max-width:620px){#todo-view-dialog{width:calc(100vw - 16px);padding:0 18px}}
