/* Overview-only refinements. Other workspaces keep their current layout. */
.overview-page { min-width: 0; width: 100%; }
.overview-page .metrics { margin-bottom: 28px; }
.overview-page .metrics .metric { min-width: 0; max-width: 100%; padding: 24px; }
.overview-page .metrics .metric>strong, .overview-page .metrics .metric>strong.amount {
 display: block; width: 100%; max-width: 100%; min-width: 0; margin: 20px 0 14px;
 overflow: hidden; text-overflow: ellipsis; white-space: nowrap; overflow-wrap: normal;
 font-size: clamp(26px,2.3vw,32px); line-height: 1.25; font-variant-numeric: tabular-nums;
}
.overview-page .metrics .metric>p { overflow-wrap: anywhere; line-height: 1.75; }
.overview-page .dashboard-actions { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px 24px; margin: 0 0 24px; }
.overview-page .dashboard-actions>div { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; }
.overview-page .overview-grid { grid-template-columns: minmax(0,1.65fr) minmax(300px,1fr); align-items: start; gap: 24px; margin-bottom: 40px; }
.overview-page .overview-grid>.panel { min-width: 0; }
.overview-page .agenda .panel-heading { padding: 0 0 20px; min-width: 0; gap: 16px; }
.overview-page .panel-heading>.text-button { flex-shrink: 0; white-space: nowrap; }
.overview-page .followup-list { display: grid; gap: 16px; }
.overview-page .followup-list>.task-row {
 display: grid; grid-template-columns: 52px minmax(0,1fr) auto; align-items: center;
 column-gap: 20px; row-gap: 16px; padding: 28px 24px; min-width: 0; border: 0; line-height: 1.75;
}
.overview-page .task-row .date-box { min-width: 0; width: 52px; padding: 8px 4px; text-align: center; font-variant-numeric: tabular-nums; }
.overview-page .task-info { min-width: 0; }
.overview-page .task-info>.text-button { display: block; width: 100%; min-width: 0; max-width: 100%; padding: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-align: left; line-height: 1.65; }
.overview-page .task-info>.text-button b { font-size: 14px; }
.overview-page .task-info>.text-button .muted-text { font-size: 12px; }
.overview-page .task-info>p { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; overflow-wrap: anywhere; margin: 6px 0; font-size: 13px; line-height: 1.75; }
.overview-page .task-info>small { display: block; min-width: 0; font-size: 11px; line-height: 1.8; overflow-wrap: anywhere; }
.overview-page .task-end { display: flex; flex-direction: column; align-items: flex-end; justify-self: end; width: auto; min-width: 112px; margin-left: 4px; gap: 10px; text-align: right; }
.overview-page .task-end .button { min-width: 112px; white-space: nowrap; }
.overview-page .task-end .badge { margin: 0; }
.overview-page .agenda .panel-foot { padding: 16px 0 0; font-size: 11px; line-height: 1.7; }
.overview-page .brand-panel { display: flex; flex-direction: column; gap: 12px; background: transparent; border: 0; box-shadow: none; }
.overview-page .brand-panel .panel-heading { padding: 0 0 8px; }
.overview-page .brand-panel .brand-row { display: grid; grid-template-columns: minmax(0,1fr) 72px 16px; align-items: center; gap: 16px; width: 100%; min-width: 0; padding: 20px; border: 1px solid #e1e7ef; border-radius: 12px; background: #f8fafc; }
.overview-page .brand-panel .brand-row:hover { background: #f0f4f9; border-color: #ced9e8; }
.overview-page .brand-identity { min-width: 0; }
.overview-page .brand-word { display: block; min-width: 0; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 17px; font-weight: 600; line-height: 1.5; }
.overview-page .brand-alias { display: block; font-size: 10px; color: #8490a0; margin-top: 4px; letter-spacing: .5px; }
.overview-page .brand-opportunities { display: flex; align-items: baseline; gap: 6px; margin-top: 12px; font-size: 11px; color: #7d899a; }
.overview-page .brand-opportunities>b, .overview-page .brand-results>b { min-width: 0; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 20px; line-height: 1.3; font-variant-numeric: tabular-nums; }
.overview-page .brand-results { display: grid; gap: 6px; margin-left: 0; text-align: right; min-width: 0; font-size: 11px; color: #7d899a; }
.overview-page .brand-panel>.quiet-note { padding: 4px 0 0; font-size: 12px; line-height: 1.8; }
.overview-page>.panel { margin-bottom: 40px; }
.overview-page .table-scroll { max-width: 100%; min-width: 0; overflow-x: hidden; padding: 0 0 12px; }
.overview-page .overview-preview-table { table-layout: fixed; width: 100%; min-width: 0; }
.overview-page .overview-preview-table th, .overview-page .overview-preview-table td { text-align: left; }
.overview-page .overview-preview-table th.overview-progress-column, .overview-page .overview-preview-table td.overview-progress-column { min-width: 0; width: 25%; }
.overview-page .overview-progress-column .shop-progress { display: flex; gap: 6px; flex-wrap: wrap; white-space: normal; min-width: 0; }
.overview-page .overview-progress-column .shop-chip { flex: 0 0 auto; min-width: 0; padding: 4px 8px; }
.overview-page .overview-preview-table .number, .overview-page .overview-preview-table .overview-number-column { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.overview-page .overview-preview-table .customer-link { display: flex; min-width: 0; width: 100%; text-align: left; }
.overview-page .overview-preview-table .customer-link>.avatar { flex-shrink: 0; }
.overview-page .overview-preview-table .customer-link>span:last-child { flex: 1; min-width: 0; }
.overview-page .overview-preview-table .customer-link b, .overview-page .overview-preview-table .customer-link small { display: block; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
/* Keep the four tasks reachable; shorten header whitespace, not task content. */
@media(min-width:1100px) and (max-height:850px) {
 .main-shell:has(.overview-page) .topbar { min-height: 56px; padding-top: 12px; padding-bottom: 12px; }
 .main-shell:has(.overview-page) main { display: grid; grid-template-columns: minmax(0,1fr) auto; column-gap: 24px; padding-top: 20px; }
 .main-shell:has(.overview-page) main>.mode-banner, .main-shell:has(.overview-page) main>.inline-warning, .main-shell:has(.overview-page) main>.sync-warning, .main-shell:has(.overview-page) #page-content, .main-shell:has(.overview-page) main>.page-footer { grid-column: 1/-1; min-width: 0; }
 .main-shell:has(.overview-page) .mode-banner { margin-bottom: 12px; padding: 8px 12px; }
 .main-shell:has(.overview-page) .page-heading { grid-column: 1; margin: 12px 0 20px; min-width: 0; gap: 16px; }
 .main-shell:has(.overview-page) .page-heading h1 { margin: 4px 0 6px; }
 .main-shell:has(.overview-page) .page-heading p { font-size: 13px; }
 .main-shell:has(.overview-page) .toolbar { grid-column: 2; align-self: center; flex-direction: column; align-items: flex-end; gap: 8px; margin: 12px 0 20px; }
 .main-shell:has(.overview-page) .toolbar .search { max-width: 100%; }
 .overview-page .overview-note { margin: 0 0 12px; }
 .overview-page .metrics .metric { padding: 20px; }
 .overview-page .metrics .metric>strong, .overview-page .metrics .metric>strong.amount { font-size: 28px; margin: 16px 0 12px; }
 .overview-page .dashboard-actions { margin-bottom: 20px; }
}
@media(max-width:1099px) {
 .overview-page .overview-grid { grid-template-columns: minmax(0,1fr); gap: 32px; }
 .overview-page .brand-panel { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); align-items: start; }
 .overview-page .brand-panel .panel-heading, .overview-page .brand-panel>.quiet-note { grid-column: 1/-1; }
 .overview-page .brand-panel .brand-row { grid-template-columns: minmax(0,1fr) 16px; gap: 12px; padding: 16px; }
 .overview-page .brand-results { grid-column: 1; grid-row: 2; display: flex; justify-content: space-between; align-items: baseline; }
 .overview-page .brand-row>svg { grid-column: 2; grid-row: 1; }
 .overview-page .metrics .metric { padding: 20px; }
}
@media(max-width:640px) {
 .overview-page .metrics, .overview-page .overview-grid { gap: 16px; }
 .overview-page .metrics .metric { padding: 20px 16px; }
 .overview-page .metrics .metric>strong, .overview-page .metrics .metric>strong.amount { font-size: 26px; margin: 16px 0 12px; }
 .overview-page .followup-list>.task-row { grid-template-columns: 48px minmax(0,1fr); gap: 16px; padding: 24px 20px; }
 .overview-page .task-row .date-box { width: 48px; }
 .overview-page .task-end { grid-column: 2; width: 100%; min-width: 0; margin-left: 0; flex-direction: row; align-items: center; justify-content: space-between; gap: 16px; }
 .overview-page .task-end .button { min-height: 44px; }
 .overview-page .brand-panel { grid-template-columns: minmax(0,1fr); }
 .overview-page .brand-panel .brand-row { grid-template-columns: minmax(0,1fr) 72px 16px; padding: 20px; }
 .overview-page .brand-results { display: grid; grid-column: 2; grid-row: 1; }
 .overview-page .brand-row>svg { grid-column: 3; }
 .overview-page .dashboard-actions { align-items: flex-start; }
 .overview-page .dashboard-actions>div { gap: 12px 16px; }
}
