.workspace-nav{display:flex;gap:8px;overflow-x:auto;max-width:100%;padding:20px 2px 8px;margin-bottom:4px}.workspace-nav button{white-space:nowrap;background:transparent;border:1px solid transparent;color:var(--muted);flex:none}.workspace-nav button[aria-current=page]{background:var(--forest);color:white;border-color:var(--forest)}.workspace-nav button:hover:not(:disabled):not([aria-current]){background:var(--sage)}.portal-pane{min-width:0}.portal-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:28px 0 20px}.portal-heading h1{font-size:38px;margin-bottom:8px}.portal-heading p{margin-bottom:0}.portal-toolbar{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin:20px 0}.portal-toolbar label{margin:0;min-width:145px;flex:1}.portal-toolbar .search-field{flex:3;min-width:220px}.result-count{font-size:14px;color:var(--muted);margin:14px 0}.table-scroll{overflow:auto;max-width:100%;border:1px solid var(--line);border-radius:12px;background:white;margin-bottom:22px}.table-scroll:focus-visible{outline:3px solid #d38a45;outline-offset:3px}.data-table{width:100%;min-width:780px;border-collapse:collapse;text-align:left;font-size:14px;line-height:1.5}.data-table caption{text-align:left}.data-table th{background:#edf1e8;font-weight:700;white-space:nowrap;padding:13px 15px;color:var(--forest)}.data-table td{padding:15px;border-top:1px solid var(--line);vertical-align:top;white-space:pre-wrap;overflow-wrap:anywhere}.data-table td strong{display:block}.table-note{display:block;color:var(--muted);font-size:13px;margin-top:4px}.data-table .date-cell,.data-table .amount-cell{white-space:nowrap}.data-table .topic-cell{min-width:170px;max-width:340px}.data-table button{font-size:13px;padding:10px 13px;min-height:44px;white-space:normal}.table-link{border:0;background:transparent;color:var(--forest);text-decoration:underline;text-underline-offset:3px;text-align:left;font-weight:700;padding:2px 0!important}.table-actions{min-width:190px}.table-actions button{display:block;margin-bottom:8px}.meeting-detail-row>td{padding-top:0;border-top:0}.meeting-detail-row details{margin:0}.meeting-detail-row summary{font-size:13px;padding:8px 0}.detail-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:14px;margin:12px 0;background:var(--cream)}.detail-table th{width:195px;white-space:normal;background:transparent;padding:12px 15px;vertical-align:top}.detail-table td{white-space:pre-wrap;overflow-wrap:anywhere;padding:12px 15px}.detail-table tr:first-child td{border-top:0}.history-card h2{margin-top:0}.history-card{margin:28px 0}.history-explanation{background:var(--sage);padding:16px 18px;border-radius:12px;line-height:1.6;color:var(--muted);margin-bottom:24px}.portal-status{margin:12px 0}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#weekly-heading:focus,#customers-heading:focus,#meetings-heading:focus,#history-heading:focus,#customer-name:focus{outline:none}#workspace{min-width:0}.workspace-nav+ .notice{margin-top:12px}@media(max-width:580px){.workspace-nav{gap:4px;padding-top:16px}.workspace-nav button{font-size:14px;padding:10px 13px}.portal-heading{align-items:flex-start;flex-wrap:wrap;margin-top:20px}.portal-heading h1{font-size:32px}.portal-heading>button{margin-left:auto}.portal-toolbar{gap:12px}.portal-toolbar label{min-width:120px}.portal-toolbar .search-field{min-width:100%;flex-basis:100%}.portal-toolbar button{width:100%}.data-table{min-width:720px}.history-explanation{font-size:14px}.detail-table th{width:165px}}

.portal-heading>div{min-width:0}.portal-heading h1,.portal-heading h2,.portal-heading p{overflow-wrap:anywhere}

.table-hint{display:none;font-size:13px;color:var(--muted);margin:0 0 10px}@media(max-width:900px){.table-hint{display:block}}@media(max-width:580px){.workspace-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.workspace-nav button{width:100%;text-align:center;white-space:normal}}

/* Two contact columns fit on a phone; only the wider meeting tables need scrolling. */
#customer-contacts-table .data-table{min-width:0;table-layout:fixed}
#customer-contacts-table .data-table th:first-child{width:55%;white-space:normal}
#customer-contacts-table .data-table th:last-child{width:45%;white-space:normal}
#customer-contacts-table .table-hint{display:none}

/* The headline and film share the sign-in card's top and bottom edges. */
.promo-layout {
  grid-template-columns: minmax(0, 1fr) minmax(320px, 400px);
  grid-template-rows: max-content max-content;
  grid-template-areas: "headline signin" "video signin";
  align-items: start;
  min-height: 0;
  gap: 0 48px;
  padding: 20px 0 36px;
}
.promo-intro, .homepage-promo { display: contents; }
.promo-headline {
  grid-area: headline;
  position: relative;
  min-width: 0;
  padding-right: calc(72px * 2.99160175 + 36px);
}
.promo-headline h1 {
  font-size: clamp(32px, 3.75vw, 48px);
  margin-bottom: 16px;
}
.promo-headline h2 { font-size: 22px; margin-bottom: 12px; }
.app-store-badge {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  border-radius: 4px;
  text-decoration: none;
}
.app-store-badge img { display: block; width: auto; height: 72px; }
.promo-layout .login-card {
  grid-area: signin;
  align-self: stretch;
  margin: 0;
}
.homepage-promo video {
  grid-area: video;
  align-self: end;
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  background: var(--sage);
  border: 1px solid var(--line);
  border-radius: 16px;
  box-shadow: 0 14px 28px #17403612;
}
.homepage-promo video:focus-visible { outline: 3px solid #d38a45; outline-offset: 3px; }
.workspace-footer { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr); gap: 20px 40px; }
.footer-identity { min-width: 0; text-align: left; }
.footer-meta { min-width: 0; text-align: right; }
.footer-meta .apple-attribution { margin: 0 0 4px; font-size: 12px; }
@media (max-width: 1100px) {
  .promo-layout {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: none;
    grid-template-areas: none;
    max-width: 660px;
    margin-inline: auto;
    gap: 20px;
    padding: 18px 0 30px;
  }
  .promo-intro, .homepage-promo { display: block; min-width: 0; margin: 0; }
  .promo-headline {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px 20px;
    padding: 0;
  }
  .promo-headline h1 { margin: 0; }
  .promo-headline h2 { grid-column: 1 / -1; }
  .app-store-badge { position: static; transform: none; justify-self: end; }
  .promo-layout .login-card { grid-area: auto; align-self: start; }
}
@media (max-width: 700px) {
  .workspace-footer { grid-template-columns: minmax(0, 1fr); gap: 18px; }
}
@media (max-width: 580px) {
  .promo-headline { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .promo-headline h2 { font-size: 20px; }
  .app-store-badge img { height: 60px; }
  .homepage-promo video { border-radius: 12px; }
}
/* Dense tabular lists across the signed-in workspace. */
.portal-toolbar{gap:8px;margin:12px 0}.result-count,.portal-status{margin:8px 0}.table-scroll{border-radius:8px;margin-bottom:12px}.data-table{font-size:13px;line-height:1.35}.data-table th{padding:7px 9px}.data-table td{padding:7px 9px}.data-table button{min-height:30px;padding:5px 9px;font-size:12px;line-height:1.3}.table-note{font-size:12px;margin-top:2px}.table-actions button{display:inline-block;margin:0 4px 3px 0}.detail-table{font-size:13px;margin:6px 0}.detail-table th,.detail-table td{padding:6px 9px}.meeting-detail-row>td{padding-top:0;padding-bottom:5px}.meeting-detail-row summary{padding:3px 0;font-size:12px}.table-hint{font-size:12px;margin-bottom:5px}.compact-table-scroll{margin-top:8px}.compact-table td p{margin:2px 0;font-size:13px;line-height:1.35}.compact-table .meeting-copy strong{font-size:13px;margin-bottom:2px}.compact-table .meeting-row-actions{gap:4px;flex-direction:row;flex-wrap:wrap}.compact-table .meeting-row-actions button{flex:none}.compact-table tr.meeting-row{display:table-row;padding:0}.weekly-meetings-table{min-width:660px}.issue-list{padding:10px 12px}.issue-list .compact-table-scroll{border:0;margin-bottom:0;background:transparent}.issue-table{min-width:0;background:transparent}.issue-table thead{display:none}.issue-table td{padding:5px 0}.issue-table tr:first-child td{border-top:0}.history-card{margin:18px 0}.history-explanation{padding:10px 12px;margin-bottom:14px}.data-table td:last-child>.secondary+.secondary{margin-top:3px}
