.app-shell { display:flex; min-height:100vh; }
.sidebar { width:268px; flex:0 0 268px; background:#fff; border-right:1px solid var(--line); padding:28px 18px 18px; display:flex; flex-direction:column; }
.admin-only { display:none !important; }
.admin-mode #client-workspace,.admin-mode #client-nav,.admin-mode #client-user-chip { display:none; }
.admin-mode #admin-workspace { display:block !important; }
.admin-mode #admin-nav,.admin-mode #admin-user-chip { display:flex !important; }
.admin-mode #admin-nav { display:grid !important; }
.admin-mode #support-card { display:none; }
.admin-mode .admin-workspace-card { cursor:default; background:#f7f5ff; border-color:#ded8f5; }
.admin-mode .admin-workspace-card { margin-top:10px; }
.admin-avatar { background:#f1eefa !important; color:var(--purple) !important; }
.brand { display:flex; align-items:center; gap:11px; padding:0 13px 34px; color:var(--ink); }
.brand-mark { width:34px; height:34px; border-radius:10px; display:grid; place-items:center; color:#fff; background:var(--teal); font:800 22px var(--font-display); }
.brand strong { display:block; font:800 19px var(--font-display); letter-spacing:-.04em; }.brand small,.workspace-button small,.user-chip small { display:block; color:var(--muted); font-size:10px; letter-spacing:.12em; margin-top:2px; }
.workspace-switcher { padding:0 6px 22px; }.eyebrow { color:#8a99a2; font-size:10px; font-weight:700; letter-spacing:.13em; margin:0 0 8px; }.accent { color:var(--teal); }
.workspace-button { display:flex; align-items:center; gap:10px; border:1px solid var(--line); background:#fff; border-radius:10px; padding:10px; width:100%; text-align:left; color:var(--ink); }.workspace-button strong { font-size:12px; }.workspace-button small { font-size:10px; letter-spacing:0; }.workspace-avatar,.user-avatar { display:grid; place-items:center; flex:0 0 auto; border-radius:9px; background:#e7f3f1; color:var(--teal-dark); font-weight:700; }.workspace-avatar { width:32px; height:32px; font-size:11px; }.chevron { margin-left:auto; color:var(--muted); font-size:18px; }
.nav-list { display:grid; gap:5px; }.nav-item { display:flex; align-items:center; gap:12px; color:#63737d; border-radius:8px; padding:11px 12px; font-size:13px; }.nav-item:hover,.nav-item.active { background:var(--teal-soft); color:var(--teal-dark); font-weight:600; }.nav-count { margin-left:auto; background:#d8eee9; color:var(--teal-dark); padding:2px 7px; border-radius:12px; font-size:10px; }
.sidebar-footer { margin-top:auto; }.support-card { display:flex; align-items:center; gap:10px; background:#f8fafb; border:1px solid var(--line); padding:12px; border-radius:10px; margin-bottom:17px; }.support-icon { background:var(--teal-soft); color:var(--teal-dark); border-radius:50%; width:25px; height:25px; display:grid; place-items:center; font-weight:700; }.support-card strong,.support-card small { display:block; }.support-card strong { font-size:12px; }.support-card small { color:var(--muted); font-size:10px; margin-top:3px; }.user-chip { border-top:1px solid var(--line); padding:18px 6px 0; display:flex; align-items:center; gap:9px; }.user-avatar { width:30px; height:30px; background:#f1eefa; color:var(--purple); font-size:10px; }.user-chip strong { font-size:12px; display:block; }.user-chip small { font-size:10px; letter-spacing:0; }.user-chip button { margin-left:auto; border:0; background:transparent; color:var(--muted); }.app-version { color:#9aa7ad; font-size:9px; letter-spacing:.08em; margin:14px 6px 0; }
.main-content { flex:1; min-width:0; }.topbar { height:72px; border-bottom:1px solid var(--line); background:#fff; display:flex; justify-content:space-between; align-items:center; padding:0 54px; }.breadcrumb { display:flex; gap:10px; color:#97a4aa; font-size:12px; }.breadcrumb strong { color:var(--ink); }.topbar-actions { display:flex; align-items:center; gap:17px; }.icon-button { position:relative; border:0; background:transparent; color:#73838d; font-size:19px; }.notification-dot { position:absolute; top:0; right:0; width:5px; height:5px; border-radius:50%; background:#ef8d52; }.text-link { display:inline-flex; gap:8px; align-items:center; color:var(--teal-dark); font-size:12px; font-weight:700; }.page { max-width:1160px; margin:0 auto; padding:46px 54px 72px; }.hidden { display:none; }.hero-row,.page-header,.section-heading,.panel-heading,.form-actions { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; }.hero-row h1,.page-header h1 { margin:5px 0 8px; font:800 31px var(--font-display); letter-spacing:-.05em; }.lede { color:var(--muted); max-width:620px; line-height:1.65; margin:0; }.status-pill,.completion-badge,.scope-tag { align-self:flex-start; white-space:nowrap; display:inline-flex; align-items:center; gap:7px; border-radius:20px; background:var(--teal-soft); color:var(--teal-dark); padding:8px 12px; font-size:11px; font-weight:700; }.status-dot { width:7px; height:7px; border-radius:50%; background:#3db391; }.completion-badge { margin-top:7px; background:#f0f5f4; }.completion-badge.amber,.scope-tag { background:var(--amber-soft); color:var(--amber); }.scope-tag.large { margin-top:7px; padding:10px 14px; }
.notice-banner { margin:35px 0 39px; border:1px solid #cce7e2; background:linear-gradient(90deg,#eefaf8,#f8fcfb); border-radius:11px; padding:18px 20px; display:flex; align-items:center; gap:14px; }.notice-icon { width:31px; height:31px; display:grid; place-items:center; background:#d5efeb; color:var(--teal-dark); border-radius:8px; font-size:17px; }.notice-banner div { flex:1; }.notice-banner strong { font-size:13px; }.notice-banner p { color:#668078; font-size:12px; margin:4px 0 0; }.section-heading { align-items:end; margin-bottom:15px; }.section-heading h2 { margin:0; font:700 18px var(--font-display); letter-spacing:-.03em; }.section-heading.compact { margin-top:39px; }.muted { color:var(--muted); font-size:11px; }.progress-card { background:var(--surface); border:1px solid var(--line); box-shadow:var(--shadow); padding:22px 25px; border-radius:11px; display:flex; align-items:center; gap:50px; }.progress-summary { width:33%; }.progress-number { font:800 29px var(--font-display); display:inline-block; margin-right:8px; }.progress-track { height:7px; background:#e7eeed; border-radius:10px; overflow:hidden; margin:17px 0 8px; }.progress-track span { display:block; background:var(--teal); height:100%; border-radius:10px; }.progress-items { flex:1; display:grid; grid-template-columns:1fr 1fr; gap:19px 26px; }.mini-item { display:flex; gap:10px; align-items:center; }.mini-item > span { width:22px; height:22px; border:1px solid #cad5d8; color:#93a2a8; border-radius:50%; display:grid; place-items:center; font-size:10px; }.mini-item.done > span { background:var(--teal-soft); border-color:#bce0da; color:var(--teal-dark); }.mini-item strong,.mini-item small { display:block; }.mini-item strong { font-size:11px; }.mini-item small { color:var(--muted); font-size:10px; margin-top:3px; }.two-column { display:grid; grid-template-columns:1.3fr 1fr; gap:17px; margin-top:18px; }.panel { background:#fff; border:1px solid var(--line); border-radius:11px; padding:21px 23px; }.panel-heading { align-items:center; }.panel-heading h3 { margin:0; font:700 15px var(--font-display); }.panel-heading a { color:var(--teal-dark); font-size:11px; font-weight:700; }.task-list { margin-top:15px; }.task-row { width:100%; border:0; border-top:1px solid var(--line); background:#fff; display:flex; align-items:center; gap:13px; text-align:left; padding:15px 0; color:var(--ink); }.task-row:first-child { border-top:0; }.task-row > span:nth-child(2) { flex:1; }.task-number { color:#96a3a8; font:700 11px var(--font-display); }.task-row strong,.task-row small { display:block; }.task-row strong { font-size:11px; }.task-row small { color:var(--muted); font-size:10px; margin-top:4px; }.task-arrow { color:var(--teal); font-size:18px; }.scope-panel p { color:var(--muted); font-size:12px; line-height:1.65; margin:20px 0 23px; }.activity-list { background:#fff; border:1px solid var(--line); border-radius:11px; }.activity-row { display:flex; align-items:center; gap:13px; border-bottom:1px solid var(--line); padding:15px 20px; }.activity-row:last-child { border:0; }.activity-icon { width:26px; height:26px; border-radius:8px; display:grid; place-items:center; font-size:14px; }.activity-icon.teal { color:var(--teal-dark); background:var(--teal-soft); }.activity-icon.purple { color:var(--purple); background:#f0edfc; }.activity-row strong,.activity-row small { display:block; }.activity-row strong { font-size:11px; }.activity-row small { color:var(--muted); font-size:10px; margin-top:3px; }
.form-layout { display:grid; grid-template-columns:1fr 280px; gap:21px; margin-top:34px; }.form-card,.help-card,.steps-card,.empty-card,.meeting-card { background:#fff; border:1px solid var(--line); border-radius:11px; box-shadow:var(--shadow); }.form-card { padding:30px; }.step-label { color:var(--teal); font-size:10px; font-weight:700; letter-spacing:.12em; }.form-card h2 { margin:8px 0 6px; font:700 20px var(--font-display); }.form-card-header p { color:var(--muted); font-size:12px; margin:0 0 31px; }.form-card label { display:block; color:#4e616b; font-size:12px; font-weight:600; margin:19px 0; }.required { color:var(--teal); font-size:10px; font-weight:500; float:right; }.form-card textarea,.form-card input { display:block; width:100%; border:1px solid #d4dfe1; border-radius:7px; padding:12px; margin-top:9px; color:var(--ink); font:12px var(--font-sans); outline:none; }.form-card textarea { min-height:118px; resize:vertical; }.form-card textarea:focus,.form-card input:focus { border-color:var(--teal); box-shadow:0 0 0 3px rgba(14,143,131,.1); }.form-actions { align-items:center; border-top:1px solid var(--line); margin-top:28px; padding-top:20px; }.help-card,.steps-card { padding:21px; }.help-card { background:#eff9f7; border-color:#d7ece8; }.help-bubble { width:28px; height:28px; display:grid; place-items:center; color:var(--teal-dark); background:#d6efeb; border-radius:8px; }.help-card h3 { font:700 14px var(--font-display); margin:15px 0 8px; }.help-card p { color:#607a76; font-size:11px; line-height:1.6; }.help-card a { display:flex; gap:7px; color:var(--teal-dark); font-size:11px; font-weight:700; margin-top:17px; }.steps-card { margin-top:16px; }.step { display:flex; gap:12px; align-items:center; color:#86969e; padding:11px 0; border-top:1px solid var(--line); font-size:11px; }.step b { color:#a6b1b6; font-size:10px; }.step.active { color:var(--teal-dark); font-weight:700; }.step.active b { color:var(--teal); }
.access-list { margin-top:35px; background:#fff; border:1px solid var(--line); border-radius:11px; overflow:hidden; }.access-row { display:flex; align-items:center; gap:15px; padding:20px 22px; border-bottom:1px solid var(--line); }.access-row:last-child { border-bottom:0; }.access-symbol { width:27px; height:27px; border-radius:50%; border:1px solid #ccd8d9; color:#8b999e; display:grid; place-items:center; font-size:11px; }.access-row.confirmed .access-symbol { background:var(--teal-soft); border-color:#c4e3df; color:var(--teal-dark); }.access-row > div { flex:1; }.access-row strong,.access-row small { display:block; }.access-row strong { font-size:12px; }.access-row small { color:var(--muted); font-size:10px; margin-top:4px; }.access-status { background:var(--teal-soft); color:var(--teal-dark); border-radius:15px; padding:6px 9px; font-size:10px; font-weight:700; }.scope-callout { display:flex; gap:12px; margin-top:18px; color:#7f6b4d; background:var(--amber-soft); border:1px solid #f2dfbf; border-radius:9px; padding:16px 18px; font-size:11px; line-height:1.5; }.scope-callout strong { color:var(--amber); white-space:nowrap; }.empty-card { margin-top:35px; padding:65px 25px; text-align:center; }.empty-icon { width:43px; height:43px; display:grid; place-items:center; margin:0 auto 16px; border-radius:12px; background:#eef4f4; color:#85a09f; font-size:22px; }.empty-card h2 { font:700 17px var(--font-display); margin:0 0 8px; }.empty-card p { color:var(--muted); max-width:430px; margin:0 auto 22px; font-size:12px; line-height:1.65; }.project-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:34px; }.project-grid h3 { font:700 15px var(--font-display); margin:4px 0 19px; }.scope-list { list-style:none; margin:0; padding:0; display:grid; gap:14px; }.scope-list li { display:flex; gap:10px; align-items:flex-start; font-size:12px; }.scope-list li span { color:var(--teal); font-weight:700; }.scope-list.muted-list li span,.scope-list.muted-list li { color:#8b989d; }.timeline { background:#fff; border:1px solid var(--line); border-radius:11px; padding:22px; margin-top:18px; }.timeline-row { display:flex; align-items:center; margin-top:22px; }.timeline-point { width:27px; height:27px; flex:0 0 27px; display:grid; place-items:center; border-radius:50%; border:1px solid #ccd8d9; color:#8b999e; font-size:11px; }.timeline-point.done { background:var(--teal-soft); color:var(--teal-dark); border-color:#c4e3df; }.timeline-row > div:nth-of-type(2n) { margin-left:9px; }.timeline-row strong,.timeline-row small { display:block; }.timeline-row strong { font-size:10px; }.timeline-row small { color:var(--muted); font-size:9px; margin-top:3px; white-space:nowrap; }.timeline-line { height:1px; background:#dce4e5; flex:1; margin:0 18px; }.meeting-card { margin-top:35px; padding:25px; display:flex; align-items:center; gap:20px; }.calendar-block { width:62px; text-align:center; border:1px solid #d5e8e5; border-radius:9px; overflow:hidden; }.calendar-block span { display:block; background:var(--teal); color:#fff; font-size:10px; font-weight:700; padding:4px; }.calendar-block strong { display:block; font:800 23px var(--font-display); padding-top:8px; }.calendar-block small { display:block; color:var(--muted); padding:0 0 8px; font-size:9px; }.meeting-card > div:nth-child(2) { flex:1; }.meeting-card h2 { margin:4px 0 8px; font:700 16px var(--font-display); }.meeting-card p,.meeting-attendees { color:var(--muted); font-size:11px; }.meeting-attendees { display:inline-block; margin-top:6px; }.admin-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:34px; }.metric-card { background:#fff; border:1px solid var(--line); border-radius:10px; padding:19px; }.metric-card strong,.metric-card small { display:block; }.metric-card strong { font:800 25px var(--font-display); margin:8px 0 4px; }.metric-card small { color:var(--muted); font-size:10px; }.admin-table { margin-top:18px; }.admin-row { display:flex; align-items:center; gap:12px; margin-top:17px; border-top:1px solid var(--line); padding-top:17px; }.admin-row > div { flex:1; }.admin-row strong,.admin-row small { display:block; }.admin-row strong { font-size:12px; }.admin-row small { color:var(--muted); margin-top:3px; font-size:10px; }.status-label { color:var(--amber); background:var(--amber-soft); border-radius:15px; padding:5px 8px; font-size:10px; font-weight:700; }
.minutes-list,.briefing-list { margin-top:35px; display:grid; gap:16px; }.minute-card { display:flex; gap:18px; background:#fff; border:1px solid var(--line); border-radius:11px; padding:22px; box-shadow:var(--shadow); }.minute-date { width:58px; height:67px; flex:0 0 auto; text-align:center; border:1px solid #d5e8e5; border-radius:9px; overflow:hidden; }.minute-date span { display:block; padding:4px; background:var(--teal); color:#fff; font-size:9px; font-weight:700; }.minute-date strong { display:block; padding-top:8px; font:800 22px var(--font-display); }.minute-content { flex:1; }.minute-meta { display:flex; align-items:center; justify-content:space-between; }.minute-content h2 { margin:6px 0 7px; font:700 16px var(--font-display); }.minute-content p,.briefing-card p { color:var(--muted); font-size:12px; line-height:1.6; margin:0; }.minute-footer { display:flex; align-items:center; justify-content:space-between; border-top:1px solid var(--line); margin-top:17px; padding-top:13px; color:var(--muted); font-size:10px; }.compact-empty { margin-top:0; padding:33px 20px; }.briefing-card { background:#fff; border:1px solid var(--line); border-radius:11px; padding:24px; box-shadow:var(--shadow); }.briefing-card.featured { border-color:#cce7e2; background:linear-gradient(120deg,#f2fbf9,#fff); }.briefing-label { color:var(--teal); font-size:10px; font-weight:700; letter-spacing:.11em; display:flex; align-items:center; gap:7px; }.briefing-card h2 { margin:10px 0 8px; font:700 17px var(--font-display); }.briefing-byline { display:flex; align-items:center; gap:8px; margin-top:19px; }.briefing-byline .user-avatar { width:27px; height:27px; }.briefing-byline strong,.briefing-byline small { display:block; }.briefing-byline strong { font-size:11px; }.briefing-byline small { color:var(--muted); font-size:10px; margin-top:2px; }.tracker-summary { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; margin-top:34px; }.tracker-summary > div { background:#fff; border:1px solid var(--line); border-radius:10px; padding:18px; }.tracker-summary strong { display:block; margin-top:8px; font:700 13px var(--font-display); }.kanban { display:grid; grid-template-columns:repeat(4,1fr); gap:13px; margin-top:18px; align-items:start; }.kanban-column { min-height:245px; padding:13px; border-radius:10px; background:#f0f4f4; border:1px solid #e2e9e9; }.kanban-heading { display:flex; align-items:center; justify-content:space-between; color:#7b8a90; font-size:10px; font-weight:700; letter-spacing:.1em; margin:3px 2px 12px; }.kanban-heading b { display:grid; place-items:center; width:20px; height:20px; border-radius:50%; background:#e1e9e8; color:#718084; font-size:10px; }.kanban-card { background:#fff; border:1px solid #e2e8e8; border-radius:8px; padding:14px; margin-top:9px; box-shadow:0 3px 9px rgba(30,55,61,.04); }.kanban-card.active-card { border-color:#c7bbf2; box-shadow:0 3px 12px rgba(113,91,212,.1); }.kanban-card.complete-card { opacity:.75; }.card-tag { display:inline-block; border-radius:12px; padding:4px 7px; font-size:9px; font-weight:700; }.teal-tag { color:var(--teal-dark); background:var(--teal-soft); }.purple-tag { color:var(--purple); background:#f0edfc; }.amber-tag { color:var(--amber); background:var(--amber-soft); }.gray-tag { color:#6f7d83; background:#edf1f1; }.kanban-card h3 { margin:10px 0 7px; font-size:12px; line-height:1.35; }.kanban-card p,.kanban-card small { display:block; color:var(--muted); font-size:10px; margin:0; }.kanban-card small { margin-top:10px; color:#8c9a9e; }
.invite-summary { margin-top:18px; }.invite-summary h3 { margin:4px 0 8px; font:700 15px var(--font-display); }.settings-list { margin-top:34px; padding:0 22px; }.setting-row { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:18px 0; border-bottom:1px solid var(--line); }.setting-row:last-child { border-bottom:0; }.setting-row strong,.setting-row small { display:block; }.setting-row strong { font-size:12px; }.setting-row small { color:var(--muted); font-size:10px; margin-top:4px; }.muted-status { color:#71818d; background:#edf1f1; }
.content-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:21px; margin-top:34px; }.content-layout .form-card { margin:0; }.form-split { display:grid; grid-template-columns:1fr 1fr; gap:14px; }.field-hint { float:right; color:var(--muted); font-size:10px; font-weight:500; }.short-textarea { min-height:72px !important; }.button-group { display:flex; gap:9px; align-items:center; }.content-side { display:grid; gap:16px; align-content:start; }.content-side .steps-card h3 { margin:5px 0 8px; font:700 14px var(--font-display); }.content-side .steps-card p:not(.eyebrow) { margin:0; color:var(--muted); font-size:11px; line-height:1.6; }.content-summary { padding:19px; }.minute-summary { border-top:1px solid var(--line); padding:14px 0; }.minute-summary:first-child { border-top:0; padding-top:4px; }.minute-summary strong,.minute-summary small { display:block; }.minute-summary strong { font-size:11px; }.minute-summary small { color:var(--muted); font-size:10px; margin-top:4px; }.minute-summary .status-label { display:inline-block; margin-top:8px; }
.source-panel { margin:0; padding:23px; }.source-detail { border-top:1px solid var(--line); display:grid; gap:5px; padding:18px 0; }.source-detail-label { color:var(--teal); font-size:9px; font-weight:700; letter-spacing:.11em; }.source-detail strong { font:700 13px var(--font-display); }.source-detail small { color:var(--muted); font-size:11px; line-height:1.55; }.source-panel .scope-callout { margin:4px 0 0; }.source-detail-grouped .source-detail-source { color:var(--muted); font-size:12px; line-height:1.55; margin:0; }.source-detail-grouped .source-detail-label-secondary { margin-top:12px; }.source-detail-plain { background:var(--teal-soft); border-left:3px solid var(--teal); border-radius:0 6px 6px 0; color:var(--ink); font:600 13px/1.55 var(--font-sans); margin:0; padding:9px 12px; }
.time-metrics { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:34px; }.time-metric-card { border-top:3px solid #bddfd9; }.time-metric-card:nth-child(2) { border-top-color:#bec8e7; }.time-metric-card:nth-child(3) { border-top-color:#e1c994; }.time-billing-panel { align-items:center; background:linear-gradient(115deg,#f6fbfa,#fff 58%); border:1px solid #cfe5e1; border-radius:11px; box-shadow:var(--shadow); display:grid; gap:18px; grid-template-columns:minmax(240px,1.7fr) repeat(3,minmax(120px,.6fr)); margin-top:18px; padding:23px; }.time-billing-heading h2 { margin:3px 0 7px; font:700 17px var(--font-display); }.time-billing-heading > p:not(.eyebrow) { color:var(--muted); font-size:11px; line-height:1.6; margin:0; max-width:460px; }.pilot-fee,.pilot-fee-detail { border-left:1px solid #dce9e7; padding-left:18px; }.pilot-fee span,.pilot-fee-detail span { color:#819097; display:block; font-size:9px; font-weight:700; letter-spacing:.1em; }.pilot-fee strong,.pilot-fee-detail strong { display:block; font:800 21px var(--font-display); margin:7px 0 3px; }.pilot-fee strong { color:var(--teal-dark); }.pilot-fee-detail strong { font-size:17px; }.pilot-fee small,.pilot-fee-detail small { color:var(--muted); display:block; font-size:10px; line-height:1.45; }.future-rate strong { color:var(--purple); }.time-dashboard-grid { display:grid; gap:18px; grid-template-columns:1.35fr .85fr; margin-top:18px; }.time-months-panel,.time-source-panel,.time-activity-panel { margin:0; }.time-month-list { display:grid; gap:15px; margin-top:20px; }.time-month-row { align-items:center; display:grid; gap:14px; grid-template-columns:112px 1fr; }.time-month-row strong,.time-month-row small { display:block; }.time-month-row strong { font-size:11px; }.time-month-row small { color:var(--muted); font-size:10px; margin-top:3px; }.time-bar { background:#e9efee; border-radius:999px; display:block; height:7px; overflow:hidden; }.time-bar i { background:linear-gradient(90deg,var(--teal),#58b99e); border-radius:inherit; display:block; height:100%; }.time-empty-copy { color:var(--muted); font-size:11px; line-height:1.55; margin:22px 0 3px; }.time-activity-panel { margin-top:18px; }.time-activity-weeks { display:grid; gap:5px; grid-template-columns:repeat(7,17px); margin:20px 0 9px; }.time-day { background:#edf1f1; border-radius:4px; display:block; height:17px; width:17px; }.time-day.level-1 { background:#a6dfd1; }.time-day.level-2 { background:#54b999; }.time-day.level-3 { background:var(--teal-dark); }.time-activity-caption { color:var(--muted); font-size:10px; line-height:1.55; margin:0; }
/* Time page composition — visual primitives live in design-system.css. */
.time-template-header { align-items:flex-start; display:flex; justify-content:space-between; gap:24px; }.time-template-header h1 { color:var(--data-ink); font:800 24px var(--font-display); letter-spacing:-.045em; margin:0 0 2px; }.time-template-header p { color:var(--color-muted); font-size:11px; margin:0; }.time-template-header code { border-radius:4px; color:var(--data-ink); background:#f2efe9; padding:1px 4px; font:700 10px var(--font-sans); }.time-template-header small { color:#9a9890; display:block; font-size:9px; margin-top:4px; }.time-sync-status { align-items:center; color:var(--data-ink); display:inline-flex; font-size:10px; font-weight:700; gap:6px; white-space:nowrap; }.time-sync-status.unavailable { color:var(--color-warning); }.time-calendar-alert { margin-top:15px; }.time-template-rollups,.time-billing-rollups { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-top:16px; }.time-template-rollup strong,.time-template-rollup b,.time-template-rollup small { display:block; }.time-template-rollup strong { color:var(--data-ink); font:800 25px/1 var(--font-display); letter-spacing:-.045em; margin-bottom:4px; }.time-template-rollup b { color:#344659; font-size:10px; }.time-template-rollup small { color:var(--color-muted); font-size:9px; margin-top:2px; }.time-template-card { margin-top:10px; }.ds-data-card.time-by-brand,.ds-data-card.time-pace-card,.ds-data-card.time-month-card,.ds-data-card.time-activity-card,.ds-data-card.time-recent-entries { padding:16px 17px; }.time-template-card-heading { align-items:flex-start; display:flex; justify-content:space-between; gap:16px; }.time-template-card-heading p { color:#687882; font-size:10px; font-weight:800; letter-spacing:.08em; margin:0; text-transform:uppercase; }.time-template-card-heading span { color:var(--data-ink); display:block; font:800 17px var(--font-display); letter-spacing:-.035em; margin-top:2px; }.time-template-card-heading > small { color:#9a9890; font-size:9px; text-align:right; }.time-brand-row { align-items:center; display:grid; gap:12px; grid-template-columns:120px minmax(70px,1fr) 48px; margin-top:15px; }.time-brand-row strong,.time-brand-row small { display:block; }.time-brand-row strong { color:#354759; font-size:10px; }.time-brand-row small { color:var(--color-muted); font-size:9px; margin-top:2px; }.time-brand-row > span { color:var(--color-muted); font-size:10px; font-weight:700; text-align:right; }.time-brand-bar > i { background:var(--data-success); }.time-template-note { color:#918e86; font-size:9px; margin:8px 0 0; }.time-pace-card { border-top:3px solid var(--data-ink); }.time-pace-card .time-template-card-heading span:not(.time-pace-pill) { font-size:16px; }.time-pace-pill { align-self:flex-start; }.time-pace-rail { margin:13px 0 7px; }.time-pace-rail > i { background:var(--data-ink); }.time-pace-card > p { color:#8e8a82; font-size:9px; line-height:1.45; margin:0; }.time-month-list { display:grid; gap:10px; margin-top:13px; }.time-month-row { align-items:center; display:grid; gap:12px; grid-template-columns:130px minmax(80px,1fr) 46px; }.time-month-row > div strong,.time-month-row > div small { display:block; }.time-month-row > div strong { color:#354759; font-size:10px; }.time-month-row > div small { color:var(--color-muted); font-size:9px; margin-top:1px; }.time-month-row > b { color:var(--color-muted); font-size:10px; text-align:right; }.time-month-row .time-bar { height:7px; margin:0; }.time-month-row .time-bar > i { background:var(--data-success); }.time-empty-copy { color:var(--color-muted); font-size:10px; margin:12px 0 0; }.time-billing-section { margin-top:25px; }.time-billing-title { align-items:center; border-left:3px solid var(--data-alert); display:flex; justify-content:space-between; margin-bottom:9px; padding-left:9px; }.time-billing-title h2 { color:var(--data-ink); font:800 15px var(--font-display); letter-spacing:-.03em; margin:0; }.time-billing-title small { color:#a19e96; font-size:9px; }.time-billing-rollups { margin-top:0; }.time-billing-guardrail { align-items:center; display:grid; gap:8px 20px; grid-template-columns:1fr auto; margin-top:10px; padding:13px 16px; }.time-billing-guardrail p { color:#7b8991; font-size:9px; font-weight:800; letter-spacing:.08em; margin:0 0 2px; text-transform:uppercase; }.time-billing-guardrail strong { color:var(--data-ink); font:800 14px var(--font-display); }.time-billing-guardrail > span { color:#8a5a15; background:#fff0d7; border-radius:999px; font-size:8px; font-weight:800; letter-spacing:.07em; padding:4px 7px; }.time-billing-guardrail > small { color:#827e75; font-size:9px; grid-column:1 / -1; }.time-ledger { margin-top:10px; }.time-ledger-heading,.time-ledger-row { align-items:center; display:grid; gap:12px; grid-template-columns:minmax(180px,1fr) 100px 80px 70px; padding:10px 13px; }.time-ledger-heading { font-size:9px; }.time-ledger-heading span { text-align:right; }.time-ledger-row { color:#60717b; font-size:10px; }.time-ledger-row strong { color:#344659; }.time-ledger-row > b { color:var(--data-ink); text-align:right; }.time-ledger-paid { color:#17694f; background:#e1f5eb; border-radius:999px; font-size:9px; font-weight:800; justify-self:end; padding:4px 7px; }.time-ledger-paid.pending { color:#955816; background:#fff2dc; }.time-activity-card { margin-top:10px; }.time-legend-dot { display:inline-block; width:8px; height:8px; border-radius:2px; background:var(--data-heat-2); vertical-align:-1px; }.time-activity { margin-top:13px; overflow:hidden; }.time-heatmap-scroll { overflow-x:auto; padding-bottom:3px; }.time-heatmap { display:flex; gap:6px; min-width:max-content; }.time-heatmap-day-labels { color:#99968e; display:grid; font-size:8px; grid-template-rows:repeat(7,15px); height:120px; line-height:15px; padding-top:16px; width:20px; }.time-heatmap-content { min-width:max-content; }.time-heatmap-months { color:#99968e; display:flex; font-size:8px; height:16px; }.time-heatmap-months > span { width:19px; white-space:nowrap; }.time-heatmap-weeks { display:flex; gap:4px; }.time-heatmap-week { display:grid; gap:2px; grid-template-rows:repeat(7,15px); }.time-heatmap-week .time-day { width:15px; height:15px; border-radius:3px; }.time-activity-caption { color:#99968e; font-size:9px; margin:10px 0 0; }.time-recent-entries { margin-top:10px; }.time-entry-row { align-items:center; border-top:1px solid var(--data-card-line); display:flex; gap:10px; margin-top:12px; padding-top:12px; }.time-entry-row > div { flex:1; }.time-entry-row strong,.time-entry-row small { display:block; }.time-entry-row strong { color:#344659; font-size:10px; }.time-entry-row small { color:var(--color-muted); font-size:9px; margin-top:2px; }.time-entry-status { color:#17694f; background:#e1f5eb; border-radius:999px; font-size:9px; font-weight:800; padding:4px 7px; }.calendar-time-placeholder { color:var(--color-muted); border-top:1px solid var(--data-card-line); font-size:10px; line-height:1.5; margin-top:13px; padding-top:13px; }.calendar-time-placeholder strong { color:#536670; }.calendar-time-placeholder p { margin:3px 0 0; }
.time-calendar-connection { align-items:center; display:flex; justify-content:space-between; gap:20px; margin-top:10px; padding:13px 16px; }.time-calendar-connection p,.time-calendar-connection strong,.time-calendar-connection small { display:block; }.time-calendar-connection p { color:var(--teal); font-size:9px; font-weight:800; letter-spacing:.08em; margin:0 0 2px; }.time-calendar-connection strong { color:var(--ink); font:700 12px var(--font-display); }.time-calendar-connection small { color:var(--muted); font-size:10px; margin-top:3px; }.time-calendar-connection .small-button { flex:0 0 auto; }

/* InSync Time composition: page layout only; visual decisions resolve from the shared data contract. */
.time-template-header code { color:var(--teal-dark); background:var(--teal-soft); }.time-template-header small,.time-template-card-heading > small,.time-billing-title small,.time-template-note,.time-pace-card > p,.time-billing-guardrail > small,.time-heatmap-day-labels,.time-heatmap-months,.time-activity-caption { color:var(--muted); }.time-template-rollup b,.time-brand-row strong,.time-month-row > div strong,.time-ledger-row strong,.time-entry-row strong,.calendar-time-placeholder strong { color:var(--ink); }.time-template-card-heading p { color:var(--purple); }.time-pace-card { border-top-color:var(--purple); }.time-pace-rail > i { background:var(--purple); }.time-brand-bar > i,.time-month-row .time-bar > i { background:var(--teal); }.time-billing-guardrail > span { color:var(--amber); background:var(--amber-soft); }.time-ledger-row { color:var(--muted); }.time-ledger-paid,.time-entry-status { color:var(--teal-dark); background:var(--teal-soft); }.time-ledger-paid.pending { color:var(--amber); background:var(--amber-soft); }

/* Time uses neutral InSync cards. Teal is reserved for data fills and small status detail. */
.ds-metric-card,.time-pace-card { border-top-width:1px; border-top-color:var(--line); }.time-template-card-heading p { color:var(--teal); }.time-pace-rail > i { background:var(--teal); }.time-billing-title { border-left:0; padding-left:0; }
.time-ledger-row > div strong,.time-ledger-row > div small { display:block; }.time-ledger-row > div small,.time-payment-date { color:var(--muted); font-size:9px; }.time-payment-date { text-align:right; }.time-ledger-row .small-button { justify-self:end; white-space:nowrap; }
.time-ledger-heading { display:flex; justify-content:space-between; }.time-ledger-heading span { grid-column:auto; text-align:right; }.time-ledger-row { grid-template-columns:minmax(0,1fr) 74px auto; }.time-payment-amount { text-align:right; }.time-payment-actions { align-items:center; display:flex; gap:8px; justify-content:flex-end; min-width:172px; }.time-payment-actions .small-button { margin:0; }.time-payment-actions .time-payment-date { white-space:nowrap; }

.questionnaire-section { border-top:1px solid var(--line); margin-top:27px; padding-top:22px; }.questionnaire-section .eyebrow { color:var(--teal); font-size:9px; font-weight:700; letter-spacing:.11em; margin:0 0 4px; }
.field-note { color:var(--muted); display:block; font-size:10px; font-weight:400; line-height:1.5; margin-top:7px; }.wizard-actions { gap:12px; }.wizard-actions .muted { flex:1; }.access-recipient-note { align-items:center; background:#f4faf9; border:1px solid #d6ebe8; border-radius:9px; display:flex; gap:10px; margin-top:24px; padding:13px 16px; }.access-recipient-note strong { color:var(--teal-dark); font-size:9px; letter-spacing:.1em; }.access-recipient-note > span { color:var(--ink); font-size:11px; font-weight:700; }.access-recipient-note small { color:var(--muted); font-size:10px; margin-left:auto; text-align:right; }
.published-label { color:var(--teal-dark); background:var(--teal-soft); }.minute-details { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:18px; padding-top:16px; border-top:1px solid var(--line); }.minute-details strong { font-size:11px; }.minute-details ul { color:var(--muted); margin:8px 0 0; padding-left:17px; font-size:10px; line-height:1.6; }.minute-details li + li { margin-top:4px; }
.kanban-empty { color:var(--muted); margin:12px 2px; font-size:10px; line-height:1.5; }
.access-row.requested .access-symbol { background:var(--amber-soft); border-color:#f2dfbf; color:var(--amber); }.access-row.requested .small-button { color:var(--amber); border-color:#ecd5ad; background:#fffaf1; }.access-guide-intro { margin-top:23px; border:1px solid #cce7e2; background:linear-gradient(100deg,#effaf8,#f9fcfc); border-radius:11px; padding:17px 19px; }.access-guide-intro > div { display:flex; align-items:center; gap:9px; color:var(--teal-dark); font-size:10px; letter-spacing:.1em; }.guide-icon { width:23px; height:23px; display:grid; place-items:center; background:#d6efeb; border-radius:7px; font-size:14px; letter-spacing:0; }.access-guide-intro p { max-width:730px; color:#617876; font-size:11px; line-height:1.55; margin:9px 0 0; }.access-guide { margin-top:10px; }.access-guide summary { color:var(--teal-dark); cursor:pointer; font-size:10px; font-weight:700; list-style:none; width:max-content; }.access-guide summary::-webkit-details-marker { display:none; }.access-guide summary::after { content:'+'; display:inline-block; margin-left:6px; font-size:13px; font-weight:500; vertical-align:-1px; }.access-guide[open] summary::after { content:'−'; }.access-guide p { color:var(--muted); font-size:10px; line-height:1.52; margin:8px 0 0; max-width:680px; }.access-guide p b { color:#52636b; }.access-guide-links { display:flex; flex-wrap:wrap; gap:12px; }.access-guide-links a { color:var(--teal-dark); font-size:10px; font-weight:700; text-decoration:underline; text-underline-offset:3px; }
.access-row.granted .access-symbol { background:#f0edfc; border-color:#ded8f5; color:var(--purple); }.access-row.granted .small-button { color:var(--purple); border-color:#ded8f5; background:#faf9ff; }
.access-row.not-applicable .access-symbol { background:#f0f5f4; border-color:#d7e1e0; color:#7f8f95; }.access-row.not-applicable .small-button { color:#7f8f95; border-color:#d7e1e0; background:#f8faf9; }
.access-row.partial .access-symbol { background:var(--amber-soft); border-color:#f2dfbf; color:var(--amber); }.access-row.partial .small-button { color:var(--amber); border-color:#ecd5ad; background:#fffaf1; }
.toast { position:fixed; left:50%; bottom:25px; transform:translate(-50%,20px); opacity:0; pointer-events:none; background:#17353b; color:#fff; padding:11px 17px; border-radius:7px; font-size:12px; transition:.2s ease; }.toast.show { opacity:1; transform:translate(-50%,0); }
.auth-page { align-items:center; background:linear-gradient(135deg,#f5faf9,#f7f8fc 58%,#fff 100%); display:flex; justify-content:center; min-height:100vh; padding:28px; }.auth-card { background:#fff; border:1px solid var(--line); border-radius:15px; box-shadow:0 18px 50px rgba(27,50,56,.1); max-width:450px; padding:42px; width:100%; }.auth-brand { display:inline-flex; margin-bottom:37px; }.auth-card > .eyebrow { margin:0 0 9px; }.auth-card h1 { color:var(--ink); font:800 31px/1.08 var(--font-display); letter-spacing:-.045em; margin:0; }.auth-card > p:not(.eyebrow):not(.auth-note) { color:var(--muted); font-size:13px; line-height:1.65; margin:15px 0 25px; }.auth-sign-in { display:flex; justify-content:center; text-decoration:none; width:100%; }.auth-note { border-top:1px solid var(--line); color:var(--muted); font-size:10px; line-height:1.55; margin:25px 0 0; padding-top:17px; }
@media (max-width:900px) { .sidebar { width:220px; flex-basis:220px; }.topbar { padding:0 28px; }.page { padding:35px 28px 60px; }.progress-card { gap:25px; }.timeline-row { align-items:flex-start; }.timeline-line { margin:14px 8px 0; }.timeline-row > div:nth-of-type(2n) { margin-left:5px; }.time-billing-panel { grid-template-columns:1fr 1fr; }.time-billing-heading { grid-column:1 / -1; }.time-dashboard-grid { grid-template-columns:1fr; } }
@media (max-width:700px) { .app-shell { display:block; }.sidebar { width:100%; padding:15px 15px 0; border-right:0; border-bottom:1px solid var(--line); }.brand { padding:0 4px 15px; }.workspace-switcher,.sidebar-footer { display:none; }.nav-list { display:flex; overflow:auto; padding-bottom:10px; }.nav-item { white-space:nowrap; padding:9px 10px; }.nav-count { display:none; }.topbar { height:56px; padding:0 18px; }.topbar-actions .outline-button { display:none; }.page { padding:30px 18px 50px; }.hero-row,.page-header { display:block; }.hero-row h1,.page-header h1 { font-size:27px; }.status-pill,.completion-badge,.scope-tag { margin-top:18px; }.notice-banner { display:block; }.notice-banner div { margin:11px 0 14px; }.progress-card,.two-column,.form-layout,.project-grid,.content-layout { display:block; }.progress-summary { width:100%; margin-bottom:25px; }.progress-items { gap:15px; }.panel,.scope-panel { margin-top:17px; }.form-side,.content-side { margin-top:18px; }.form-split,.minute-details { grid-template-columns:1fr; gap:0; }.access-row { padding:16px; }.access-row .small-button { display:none; }.timeline-row { display:grid; grid-template-columns:27px 1fr; gap:8px 10px; }.timeline-line { display:none; }.timeline-row > div:nth-of-type(2n) { margin:0; }.meeting-card { align-items:flex-start; flex-wrap:wrap; }.meeting-card .small-button { margin-left:82px; }.admin-grid,.tracker-summary,.time-metrics { grid-template-columns:1fr 1fr; }.kanban { grid-template-columns:1fr 1fr; }.admin-row .text-button { display:none; }.button-group { margin-top:12px; }.time-billing-panel { grid-template-columns:1fr; }.time-billing-heading { grid-column:auto; }.pilot-fee,.pilot-fee-detail { border-left:0; border-top:1px solid #dce9e7; padding:14px 0 0; }.time-month-row { grid-template-columns:96px 1fr; } }
@media (max-width:700px) { .time-template-header { display:block; }.time-template-header .button-group { align-items:center; display:flex; justify-content:space-between; }.time-template-rollups,.time-billing-rollups { grid-template-columns:1fr; }.time-brand-row { grid-template-columns:100px minmax(60px,1fr) 42px; }.time-month-row { grid-template-columns:96px minmax(60px,1fr) 38px; }.time-billing-guardrail { grid-template-columns:1fr; }.time-billing-guardrail > small { grid-column:auto; }.time-ledger-heading,.time-ledger-row { grid-template-columns:minmax(120px,1fr) 62px 52px; }.time-ledger-heading span,.time-ledger-row > span:not(.time-ledger-paid) { display:none; }.time-ledger-paid { grid-column:3; }.time-template-card-heading { gap:8px; }.time-template-card-heading > small { max-width:100px; }.time-heatmap-scroll { margin-right:-2px; } }
@media (max-width:700px) { .time-calendar-connection { align-items:flex-start; display:block; }.time-calendar-connection .small-button { margin-top:12px; } }

.clickup-channel-card { align-items:center; display:flex; gap:16px; margin-top:18px; }
.analytics-quick-view { margin-top:18px; }
.analytics-quick-view > p { color:var(--muted); font-size:11px; line-height:1.55; margin:12px 0 14px; max-width:760px; }
.analytics-quick-link { align-items:center; border-top:1px solid var(--line); color:var(--ink); display:flex; gap:11px; padding-top:13px; text-decoration:none; }
.analytics-quick-link:hover { color:var(--teal-dark); }
.analytics-quick-link > span:nth-child(2) { flex:1; min-width:0; }
.analytics-quick-link strong,.analytics-quick-link small { display:block; }
.analytics-quick-link strong { font-size:11px; }
.analytics-quick-link small { color:var(--muted); font-size:10px; margin-top:3px; }
.analytics-quick-icon { align-items:center; background:var(--teal-soft); border:1px solid #cce7e2; border-radius:8px; color:var(--teal-dark); display:grid; flex:0 0 28px; font-size:14px; height:28px; justify-content:center; }
.form-layout.hidden { display:none; }
.scope-callout { align-items:flex-start; }
.scope-callout > span { flex:1; min-width:0; }
.nav-item.coming-soon { color:#98a4aa; cursor:default; }
.nav-item.coming-soon:hover { background:#f7f9fa; color:#8d9aa0; }
.nav-item.coming-soon > .nav-coming-soon { background:#f1f4f4; border:1px solid #dce3e4; border-radius:999px; color:#8d9aa0; font-size:8px; font-weight:700; letter-spacing:.01em; margin-left:auto; padding:3px 6px; white-space:nowrap; }
.nav-item.coming-soon > .info-tooltip { margin-left:0; }
.coming-soon-pill { background:#f1f4f4; color:#7e8e95; }
.files-coming-soon { border-style:dashed; }
.files-coming-soon .empty-icon { background:#f1f4f4; color:#93a1a6; }
.clickup-channel-icon { align-items:center; background:#f0edfc; border:1px solid #ded8f5; border-radius:9px; color:var(--purple); display:grid; flex:0 0 34px; font-size:17px; height:34px; place-items:center; }
.clickup-channel-content { flex:1; min-width:0; }
.clickup-channel-content .panel-heading { align-items:center; }
.clickup-channel-content .panel-heading h3 { margin:0; }
.clickup-channel-content > p { color:var(--muted); font-size:11px; line-height:1.55; margin:11px 0 10px; max-width:760px; }
.onboarding-complete-card { align-items:flex-start; display:flex; gap:20px; margin-bottom:18px; }
.onboarding-complete-icon { align-items:center; background:#e5f5f2; border:1px solid #bfe5dd; border-radius:50%; color:var(--teal); display:grid; flex:0 0 42px; font-size:22px; font-weight:700; height:42px; place-items:center; }
.onboarding-complete-card h2 { margin:4px 0 8px; }
.onboarding-complete-card p:not(.eyebrow) { color:var(--muted); line-height:1.65; margin:0; max-width:680px; }
.onboarding-complete-actions { display:flex; flex-wrap:wrap; gap:10px; margin:18px 0 13px; }
.onboarding-complete-actions a { text-decoration:none; }
.onboarding-complete-card > div:last-child > small { color:var(--muted); display:block; font-size:11px; line-height:1.5; }
@media (max-width:700px) { .onboarding-complete-card { display:block; }.onboarding-complete-icon { margin-bottom:16px; } }

/* Client systems review */
.deliverable-page-header { align-items:flex-start; }
.deliverable-draft { background:var(--amber-soft); color:var(--amber); }
.deliverable-draft .status-dot { background:var(--amber); }
.deliverable-intro { margin-top:26px; }
.deliverable-short-version { color:var(--muted); font-size:14px; line-height:1.75; margin:0; max-width:850px; }
.deliverable-primary { background:linear-gradient(105deg,#eaf7f5,#f6fbfa); border-left:4px solid var(--teal); border-radius:0 12px 12px 0; margin:24px 0; padding:23px 26px; }
.deliverable-primary span { color:var(--teal-dark); display:block; font-size:9px; font-weight:800; letter-spacing:.13em; margin-bottom:8px; }
.deliverable-primary strong { color:var(--ink); display:block; font:700 20px/1.45 var(--font-display); letter-spacing:-.015em; max-width:920px; }
.deliverable-visual { margin:22px 0 0; }
.deliverable-visual a { background:#fff; border:1px solid var(--line); border-radius:12px; display:block; overflow:hidden; }
.deliverable-visual img { display:block; height:auto; max-width:100%; width:100%; }
.deliverable-visual figcaption { color:var(--muted); font-size:10px; line-height:1.5; margin-top:8px; }
.deliverable-visual-featured + .deliverable-visual-featured { margin-top:16px; }
.deliverable-section-heading { margin:54px 0 20px; max-width:820px; }
.deliverable-section-heading h2 { color:var(--ink); font:700 24px/1.2 var(--font-display); letter-spacing:-.025em; margin:5px 0 9px; }
.deliverable-section-heading > p:not(.eyebrow) { color:var(--muted); font-size:12px; line-height:1.65; margin:0; }
.deliverable-actions { display:grid; gap:11px; }
.deliverable-action { background:#fff; border:1px solid var(--line); border-radius:12px; overflow:hidden; }
.deliverable-action[open] { border-color:#bedfd9; box-shadow:0 9px 28px rgba(27,50,56,.055); }
.deliverable-action > summary { align-items:center; cursor:pointer; display:grid; gap:15px; grid-template-columns:38px minmax(0,1fr) 20px; list-style:none; padding:18px 20px; }
.deliverable-action > summary::-webkit-details-marker,.deliverable-evidence-item > summary::-webkit-details-marker { display:none; }
.deliverable-action-number { align-items:center; background:var(--teal-soft); border-radius:50%; color:var(--teal-dark); display:flex; font-size:12px; font-weight:800; height:34px; justify-content:center; width:34px; }
.deliverable-action-heading { display:block; min-width:0; }
.deliverable-action-heading strong,.deliverable-action-heading small { display:block; }
.deliverable-action-heading strong { color:var(--ink); font:700 15px/1.35 var(--font-display); margin-top:5px; }
.deliverable-action-heading small { color:var(--muted); font-size:10px; line-height:1.4; margin-top:4px; }
.deliverable-action-kicker { align-items:center; color:var(--muted); display:flex; font-size:9px; font-weight:700; gap:8px; letter-spacing:.06em; text-transform:uppercase; }
.deliverable-priority { border-radius:999px; display:inline-block; font-size:8px; font-weight:800; letter-spacing:.08em; padding:3px 7px; }
.deliverable-priority.priority-p0 { background:#fff0ed; color:#a34535; }
.deliverable-priority.priority-p1 { background:var(--teal-soft); color:var(--teal-dark); }
.deliverable-action-toggle { height:18px; position:relative; width:18px; }
.deliverable-action-toggle::before,.deliverable-action-toggle::after { background:var(--muted); content:''; left:4px; position:absolute; top:8px; transition:transform .2s ease; width:11px; height:1px; }
.deliverable-action-toggle::after { transform:rotate(90deg); }
.deliverable-action[open] .deliverable-action-toggle::after { transform:rotate(0); }
.deliverable-action-body { border-top:1px solid var(--line); padding:22px 24px 25px 73px; }
.deliverable-action-meta { background:#f7faf9; border-radius:9px; display:grid; gap:16px; grid-template-columns:1.35fr 1fr; margin-bottom:21px; padding:13px 15px; }
.deliverable-action-meta span { color:var(--ink); font-size:10px; line-height:1.45; }
.deliverable-action-meta small { color:var(--muted); display:block; font-size:8px; font-weight:800; letter-spacing:.1em; margin-bottom:3px; text-transform:uppercase; }
.deliverable-action-copy { display:grid; gap:20px 25px; grid-template-columns:1fr 1fr; }
.deliverable-action-copy section { min-width:0; }
.deliverable-action-copy h3 { color:var(--ink); font-size:11px; margin:0 0 6px; }
.deliverable-action-copy p { color:var(--muted); font-size:11px; line-height:1.65; margin:0; }
.deliverable-action-copy .deliverable-caveat { border-left:3px solid #ebd3a5; padding-left:13px; }
.deliverable-action-copy .deliverable-caveat h3 { color:#8d6226; }
.deliverable-action-body > .deliverable-visual { margin-top:24px; }
.deliverable-evidence-links { border-top:1px solid var(--line); margin-top:22px; padding-top:17px; }
.deliverable-evidence-links > strong { color:var(--ink); display:block; font-size:10px; margin-bottom:9px; }
.deliverable-evidence-links > div { display:flex; flex-wrap:wrap; gap:8px; }
.deliverable-evidence-link { align-items:center; background:#f7faf9; border:1px solid #dbe8e6; border-radius:7px; color:var(--teal-dark); cursor:pointer; display:inline-flex; font:600 9px/1.35 var(--font-body); gap:7px; padding:7px 9px; text-align:left; }
.deliverable-evidence-link:hover { background:var(--teal-soft); }
.deliverable-evidence-link span { background:#d7eeea; border-radius:4px; font-size:8px; font-weight:800; padding:2px 4px; }
.deliverable-roadmap { margin-top:12px; }
.deliverable-evidence-library > div:last-child { border-bottom:1px solid var(--line); }
.deliverable-evidence-item { border-top:1px solid var(--line); }
.deliverable-evidence-item > summary { align-items:center; cursor:pointer; display:grid; gap:11px; grid-template-columns:62px minmax(0,1fr) 16px; list-style:none; padding:14px 3px; }
.deliverable-evidence-item > summary span { color:var(--teal-dark); font-size:9px; font-weight:800; letter-spacing:.06em; }
.deliverable-evidence-item > summary strong { color:var(--ink); font-size:11px; }
.deliverable-evidence-item > summary i::after { color:var(--muted); content:'+'; font-size:15px; font-style:normal; }
.deliverable-evidence-item[open] > summary i::after { content:'−'; }
.deliverable-evidence-item > div { padding:0 30px 16px 73px; }
.deliverable-evidence-item p { color:var(--muted); font-size:10px; line-height:1.6; margin:0; }
.deliverable-evidence-item p + p { margin-top:7px; }
.deliverable-evidence-item p strong { color:var(--ink); }
.deliverable-download-panel { align-items:center; background:#17353b; border-radius:13px; color:#fff; display:flex; gap:25px; justify-content:space-between; margin-top:47px; padding:26px 29px; }
.deliverable-download-panel .eyebrow { color:#83d6ca; margin:0 0 5px; }
.deliverable-download-panel h2 { color:#fff; font:700 21px/1.25 var(--font-display); margin:0 0 6px; }
.deliverable-download-panel p:not(.eyebrow) { color:#c3d2d4; font-size:11px; line-height:1.55; margin:0; max-width:600px; }
.deliverable-download { flex:0 0 auto; text-decoration:none; white-space:nowrap; }
@media (max-width:700px) {
  .deliverable-primary { padding:19px; }
  .deliverable-primary strong { font-size:17px; }
  .deliverable-section-heading { margin-top:40px; }
  .deliverable-action > summary { gap:10px; grid-template-columns:32px minmax(0,1fr) 18px; padding:15px 13px; }
  .deliverable-action-number { height:30px; width:30px; }
  .deliverable-action-body { padding:18px 15px; }
  .deliverable-action-meta,.deliverable-action-copy { grid-template-columns:1fr; }
  .deliverable-evidence-item > div { padding-left:3px; }
  .deliverable-download-panel { align-items:flex-start; display:block; padding:22px; }
  .deliverable-download { display:inline-flex; margin-top:18px; white-space:normal; }
}

/* Systems review knowledge site */
.report-breadcrumb { align-items:center; color:var(--muted); display:flex; flex-wrap:wrap; font-size:13px; gap:8px; margin-bottom:24px; }
.report-breadcrumb a { color:var(--teal-dark); font-weight:700; text-decoration:none; }
.report-breadcrumb strong { color:var(--ink); font-weight:700; }
.report-site-layout { align-items:start; display:grid; gap:38px; grid-template-columns:210px minmax(0,1fr); }
.report-site-nav { position:sticky; top:24px; }
.report-nav-title { border-bottom:1px solid var(--line); margin-bottom:18px; padding-bottom:16px; }
.report-nav-title span,.report-nav-group > span { color:var(--muted); display:block; font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.report-nav-title strong { color:var(--ink); display:block; font:700 16px/1.35 var(--font-display); margin-top:7px; }
.report-nav-group { margin-top:20px; }
.report-nav-group > span { font-size:11px; margin:0 10px 7px; }
.report-nav-link { border-left:3px solid transparent; color:#607178; display:block; font-size:14px; line-height:1.35; padding:8px 10px; text-decoration:none; }
.report-nav-link:hover { background:#f3f8f7; color:var(--teal-dark); }
.report-nav-link.active { background:var(--teal-soft); border-left-color:var(--teal); color:var(--teal-dark); font-weight:800; }
.report-site-content { min-width:0; }
.report-home-header,.report-detail-header { align-items:flex-start; display:flex; gap:32px; justify-content:space-between; }
.report-home-header h1,.report-detail-header h1 { color:var(--ink); font:800 38px/1.08 var(--font-display); letter-spacing:-.045em; margin:7px 0 14px; }
.report-home-header > div > p:last-child,.report-detail-header > div > p:last-child { color:var(--muted); font-size:17px; line-height:1.65; margin:0; max-width:760px; }
.report-status { background:var(--amber-soft); border-radius:999px; color:var(--amber); flex:0 0 auto; font-size:13px; font-weight:800; margin-top:8px; padding:8px 12px; }
.report-start { background:#17353b; border-radius:14px; color:#fff; margin-top:28px; padding:28px 30px; }
.report-start > span,.report-home-actions span,.report-section-heading-simple span,.report-recommendation-grid span,.report-dependency span { color:#79d1c4; display:block; font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.report-start h2 { color:#fff; font:700 23px/1.45 var(--font-display); letter-spacing:-.02em; margin:8px 0 23px; max-width:850px; }
.report-journey { align-items:stretch; display:flex; gap:7px; overflow-x:auto; padding-bottom:4px; }
.report-journey > span { align-items:center; background:rgba(255,255,255,.09); border-radius:8px; display:flex; flex:0 0 112px; font-size:13px; font-weight:700; gap:7px; min-height:52px; padding:8px 10px; }
.report-journey > span b { align-items:center; background:#fff; border-radius:50%; color:#17353b; display:flex; flex:0 0 22px; font-size:11px; height:22px; justify-content:center; }
.report-journey > i { align-self:center; color:#79d1c4; font-style:normal; }
.report-home-section,.report-page-section { margin-top:48px; }
.report-section-heading-simple { align-items:end; display:flex; gap:30px; justify-content:space-between; margin-bottom:20px; }
.report-section-heading-simple span { color:var(--teal-dark); }
.report-section-heading-simple h2 { color:var(--ink); font:800 27px/1.15 var(--font-display); letter-spacing:-.03em; margin:6px 0 0; }
.report-section-heading-simple > p { color:var(--muted); font-size:15px; line-height:1.55; margin:0; max-width:440px; }
.report-section-grid { display:grid; gap:14px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.report-section-card { background:#fff; border:1px solid var(--line); border-radius:12px; color:inherit; display:flex; flex-direction:column; min-height:210px; padding:20px; text-decoration:none; transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease; }
.report-section-card:hover { border-color:#9ccfc6; box-shadow:0 10px 28px rgba(27,50,56,.08); transform:translateY(-2px); }
.report-card-top { align-items:center; display:flex; justify-content:space-between; }
.report-card-top > b { color:var(--muted); font-size:13px; }
.report-score { border-radius:999px; font-size:12px; font-style:normal; font-weight:800; padding:5px 8px; }
.report-score.low,.report-detail-score.low { background:#fff0ed; color:#a34535; }
.report-score.developing,.report-detail-score.developing { background:var(--amber-soft); color:#8d6226; }
.report-score.workable,.report-detail-score.workable { background:var(--teal-soft); color:var(--teal-dark); }
.report-section-card > strong { color:var(--ink); font:800 20px/1.3 var(--font-display); margin-top:19px; }
.report-section-card > p { color:var(--muted); font-size:15px; line-height:1.55; margin:8px 0 20px; }
.report-card-cta { color:var(--teal-dark); font-size:14px; font-weight:800; margin-top:auto; }
.report-card-cta b { margin-left:4px; }
.report-home-actions { align-items:center; background:#eef7f5; border-left:4px solid var(--teal); display:flex; gap:30px; justify-content:space-between; margin-top:36px; padding:24px 26px; }
.report-home-actions span { color:var(--teal-dark); }
.report-home-actions h2 { color:var(--ink); font:800 22px/1.25 var(--font-display); margin:6px 0; }
.report-home-actions p { color:var(--muted); font-size:15px; line-height:1.5; margin:0; max-width:620px; }
.report-primary-link { background:var(--teal); border-radius:8px; color:#fff; flex:0 0 auto; font-size:14px; font-weight:800; padding:13px 16px; text-decoration:none; }
.review-deliverable-stats { background:linear-gradient(135deg,#17353b 0%,#24545a 100%); border:1px solid #2d6468; border-radius:16px; box-shadow:0 14px 30px rgba(23,53,59,.13); display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); margin:22px 0 30px; overflow:hidden; }
.review-deliverable-stat { min-width:0; padding:20px 18px 19px; position:relative; }
.review-deliverable-stat + .review-deliverable-stat { border-left:1px solid rgba(255,255,255,.13); }
.review-deliverable-stat strong,.review-deliverable-stat span,.review-deliverable-stat small { display:block; }
.review-deliverable-stat strong { color:#fff; font:800 30px/1 var(--font-display); letter-spacing:-.045em; }
.review-deliverable-stat span { color:#fff; font-size:12px; font-weight:800; margin-top:8px; }
.review-deliverable-stat small { color:#a9d6d0; font-size:10px; line-height:1.4; margin-top:5px; }
.report-detail-header { border-bottom:1px solid var(--line); padding-bottom:28px; }
.report-detail-score { border-radius:12px; flex:0 0 126px; padding:15px 16px; text-align:center; }
.report-detail-score > span,.report-detail-score > em { display:block; font-size:12px; font-style:normal; font-weight:800; }
.report-detail-score > strong { display:block; font:800 40px/1 var(--font-display); margin:7px 0 5px; }
.report-detail-score > strong small { font-size:17px; }
.report-plain-summary { display:grid; gap:18px; grid-template-columns:1fr 1fr; margin-top:28px; }
.report-plain-summary article { background:#fff; border:1px solid var(--line); border-radius:12px; display:flex; gap:14px; padding:21px; }
.report-summary-icon { align-items:center; border-radius:50%; display:flex; flex:0 0 30px; font-size:14px; font-weight:900; height:30px; justify-content:center; }
.report-summary-icon.good { background:var(--teal-soft); color:var(--teal-dark); }
.report-summary-icon.gap { background:#fff0ed; color:#a34535; }
.report-plain-summary h2 { color:var(--ink); font:800 19px/1.3 var(--font-display); margin:3px 0 11px; }
.report-plain-summary ul,.report-roadmap-list ul { color:var(--muted); font-size:15px; line-height:1.65; margin:0; padding-left:19px; }
.report-plain-summary li + li,.report-roadmap-list li + li { margin-top:7px; }
.report-inline-visual { margin:28px 0 0; }
.report-inline-visual a { background:#fff; border:1px solid var(--line); border-radius:12px; display:block; overflow:hidden; }
.report-inline-visual img { display:block; height:auto; width:100%; }
.report-inline-visual figcaption { color:var(--muted); font-size:13px; line-height:1.5; margin-top:8px; }
.report-recommendations { display:grid; gap:16px; }
.report-recommendation { background:#fff; border:1px solid var(--line); border-radius:12px; padding:22px; }
.report-recommendation-head { align-items:flex-start; display:flex; gap:13px; }
.report-action-number { align-items:center; background:var(--teal-soft); border-radius:50%; color:var(--teal-dark); display:flex; flex:0 0 34px; font-size:13px; font-weight:900; height:34px; justify-content:center; }
.report-priority { color:var(--teal-dark); display:block; font-size:12px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.report-priority.priority-p0 { color:#a34535; }
.report-recommendation-head h3 { color:var(--ink); font:800 20px/1.3 var(--font-display); margin:5px 0; }
.report-recommendation-head p { color:var(--muted); font-size:13px; margin:0; }
.report-recommendation-grid { border-top:1px solid var(--line); display:grid; gap:22px; grid-template-columns:repeat(3,1fr); margin-top:19px; padding-top:19px; }
.report-recommendation-grid span { color:var(--teal-dark); }
.report-recommendation-grid p { color:#52636b; font-size:15px; line-height:1.6; margin:7px 0 0; }
.report-evidence-list { display:grid; gap:10px; }
.report-evidence-link { align-items:center; background:#fff; border:1px solid var(--line); border-radius:10px; color:inherit; display:grid; gap:4px 14px; grid-template-columns:70px minmax(0,1fr) 24px; padding:15px 17px; text-decoration:none; }
.report-evidence-link::after { color:var(--teal-dark); content:'→'; font-size:18px; grid-column:3; grid-row:1 / span 2; }
.report-evidence-link:hover { border-color:#9ccfc6; }
.report-evidence-link > span { color:var(--teal-dark); font-size:13px; font-weight:900; grid-row:1 / span 2; }
.report-evidence-link > strong { color:var(--ink); font-size:15px; }
.report-evidence-link > small { color:var(--muted); font-size:13px; line-height:1.45; }
.report-plan-header { display:block; }
.report-roadmap-list { margin-top:30px; }
.report-roadmap-list article { border-top:1px solid var(--line); display:grid; gap:20px; grid-template-columns:48px minmax(0,1fr); padding:25px 0; }
.report-roadmap-list article > span { color:#bed4d1; font:800 26px/1 var(--font-display); }
.report-roadmap-list article > div > p { color:var(--teal-dark); font-size:13px; font-weight:800; letter-spacing:.08em; margin:0; text-transform:uppercase; }
.report-roadmap-list h2 { color:var(--ink); font:800 22px/1.3 var(--font-display); margin:5px 0 11px; }
.report-dependency { background:#eef7f5; border-left:4px solid var(--teal); margin-top:14px; padding:20px 22px; }
.report-dependency span { color:var(--teal-dark); }
.report-dependency p { color:var(--ink); font-size:16px; font-weight:700; line-height:1.55; margin:7px 0 0; }
.report-evidence-library { display:grid; gap:14px; margin-top:30px; }
.report-evidence-library > article { background:#fff; border:1px solid var(--line); border-radius:12px; padding:20px; }
.report-evidence-library > article.selected { border-color:var(--teal); box-shadow:0 0 0 3px rgba(23,143,127,.1); }
.report-evidence-library header { align-items:center; display:flex; gap:14px; }
.report-evidence-library header span { background:var(--teal-soft); border-radius:6px; color:var(--teal-dark); font-size:12px; font-weight:900; padding:5px 7px; }
.report-evidence-library h2 { color:var(--ink); font:800 19px/1.3 var(--font-display); margin:0; }
.report-evidence-library > article > div { border-top:1px solid var(--line); display:grid; gap:26px; grid-template-columns:1fr 1fr; margin-top:15px; padding-top:15px; }
.report-evidence-library h3 { color:var(--ink); font-size:14px; margin:0 0 6px; }
.report-evidence-library p { color:var(--muted); font-size:15px; line-height:1.6; margin:0; }
.report-preview-note { color:var(--muted); font-size:12px; margin:34px 0 0 248px; text-align:center; }

@media (max-width:1000px) {
  .report-site-layout { display:block; }
  .report-site-nav { background:var(--page); display:flex; gap:4px; margin:0 -4px 26px; overflow-x:auto; padding:4px; position:static; }
  .report-nav-title,.report-nav-group > span { display:none; }
  .report-nav-group { display:contents; }
  .report-nav-link { border:0; border-radius:7px; flex:0 0 auto; padding:9px 11px; white-space:nowrap; }
  .report-nav-link.active { border:0; }
  .report-preview-note { margin-left:0; }
}

@media (max-width:700px) {
  .report-home-header,.report-detail-header,.report-section-heading-simple,.report-home-actions { display:block; }
  .review-deliverable-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .review-deliverable-stat:nth-child(3),.review-deliverable-stat:nth-child(4) { border-top:1px solid rgba(255,255,255,.13); }
  .review-deliverable-stat:last-child { border-left:0; border-top:1px solid rgba(255,255,255,.13); grid-column:1 / -1; }
  .report-home-header h1,.report-detail-header h1 { font-size:31px; }
  .report-home-header > div > p:last-child,.report-detail-header > div > p:last-child { font-size:16px; }
  .report-status,.report-detail-score { display:inline-block; margin-top:18px; }
  .report-start { padding:23px 19px; }
  .report-start h2 { font-size:20px; }
  .report-home-section,.report-page-section { margin-top:38px; }
  .report-section-heading-simple > p { font-size:14px; margin-top:10px; }
  .report-section-grid,.report-plain-summary { grid-template-columns:1fr; }
  .report-section-card { min-height:0; }
  .report-home-actions .report-primary-link { display:inline-block; margin-top:18px; }
  .report-detail-score { text-align:left; }
  .report-detail-score > span,.report-detail-score > strong,.report-detail-score > em { display:inline; }
  .report-detail-score > strong { font-size:26px; margin:0 7px; }
  .report-recommendation-grid,.report-evidence-library > article > div { grid-template-columns:1fr; }
  .report-evidence-link { grid-template-columns:56px minmax(0,1fr) 18px; padding:14px 12px; }
  .report-evidence-link > small { display:none; }
}

/* Deliverable knowledge pages use the portal's existing components. */
.review-breadcrumb { align-items:center; color:var(--muted); display:flex; flex-wrap:wrap; font-size:12px; gap:8px; margin-bottom:24px; }
.review-breadcrumb a { color:var(--teal-dark); font-weight:700; }
.review-breadcrumb strong { color:var(--ink); }
.review-primary { margin-bottom:28px; }
.implementation-status { align-items:center; background:#eef1f2; border-radius:999px; color:#4b5a61; display:inline-flex; flex:0 0 auto; font-size:11px; font-weight:700; gap:6px; padding:6px 9px; white-space:nowrap; }
.implementation-status i { background:currentColor; border-radius:50%; height:7px; width:7px; }
.implementation-status.in-progress { background:#fff2d8; color:#8a5d0e; }
.implementation-status.complete { background:var(--teal-soft); color:var(--teal-dark); }
.implementation-status.compact { font-size:10px; padding:5px 8px; }
.review-header-badges { align-items:flex-end; display:flex; flex-direction:column; gap:8px; }
.review-home-layout { align-items:start; margin-top:0; }
.review-home-layout > main { display:grid; gap:16px; }
.review-directory { margin:0; }
.review-directory .panel-heading h3 { max-width:560px; }
.review-directory .task-row { text-decoration:none; }
.review-directory .task-row .implementation-status { margin-left:auto; }
.review-score-label { flex:0 0 38px; white-space:nowrap; }
.review-directory .task-row > span:nth-child(2) { min-width:0; }
.review-directory .task-row small { line-height:1.5; max-width:620px; }
.review-home-layout .content-side > .panel { margin:0; }
.review-home-layout .content-side > .panel + .panel { margin-top:16px; }
.review-home-layout .content-side .panel > h3 { font:700 15px/1.4 var(--font-display); margin:8px 0 10px; }
.review-home-layout .content-side .panel > p:not(.eyebrow) { color:var(--muted); font-size:12px; line-height:1.65; margin:0; }
.review-evidence-shortcuts { border-top:1px solid var(--line); margin-top:14px; padding-top:16px; }
.review-evidence-shortcuts .eyebrow { margin-bottom:9px; }
.evidence-shortcut-grid { display:grid; gap:8px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.evidence-shortcut { align-items:center; background:#f7faf9; border:1px solid #dbe8e6; border-radius:8px; color:var(--teal-dark); display:flex; gap:7px; justify-content:space-between; min-height:54px; padding:9px 10px; text-decoration:none; transition:background .15s ease,border-color .15s ease; }
.evidence-shortcut:hover { background:var(--teal-soft); border-color:#b9ded8; }
.evidence-shortcut > span:first-child { min-width:0; }
.evidence-shortcut strong,.evidence-shortcut small { display:block; }
.evidence-shortcut strong { color:var(--ink); font-size:10px; line-height:1.25; }
.evidence-shortcut small { color:var(--muted); font-size:8px; line-height:1.35; margin-top:3px; }
.evidence-shortcut > span:last-child { color:var(--teal); flex:0 0 auto; font-size:15px; }
.review-page-layout { align-items:start; margin-top:34px; }
.review-article { margin:0; }
.review-article > section:first-child .section-heading { margin-top:0; }
.review-finding-grid { margin-top:18px; }
.review-finding-grid > div { min-width:0; }
.review-finding-grid h3 { font:700 14px var(--font-display); margin:0 0 14px; }
.review-article-section { border-top:1px solid var(--line); margin-top:32px; padding-top:29px; }
.review-action { border-top:1px solid var(--line); padding:24px 0; }
.review-action:first-of-type { border-top:0; padding-top:5px; }
.review-action header { align-items:center; display:flex; flex-wrap:wrap; gap:9px; }
.review-action h3 { flex:1 1 320px; font:700 16px/1.35 var(--font-display); margin:0; }
.review-action-controls { align-items:center; display:flex; flex:0 0 auto; gap:7px; margin-left:auto; }
.implementation-action-button { background:#fff; border:1px solid #bfd8d4; border-radius:7px; color:var(--teal-dark); cursor:pointer; font:700 10px var(--font-sans); padding:6px 9px; white-space:nowrap; }
.implementation-action-button:hover { background:var(--teal-soft); }
.implementation-action-button:focus-visible { box-shadow:0 0 0 3px rgba(14,143,131,.14); outline:0; }
.review-action > p { color:var(--muted); font-size:12px; line-height:1.7; margin:13px 0 0; }
.review-action > p strong { color:var(--ink); }
.review-action dl { background:#f8faf9; display:grid; gap:14px; grid-template-columns:1fr 1fr; margin:17px 0 0; padding:13px 15px; }
.review-action dl > div { min-width:0; }
.review-action dt { color:var(--muted); font-size:9px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.review-action dd { font-size:11px; line-height:1.5; margin:4px 0 0; }
.review-action footer { align-items:center; display:flex; flex-wrap:wrap; gap:10px; margin-top:15px; }
.review-action footer > span { color:var(--muted); font-size:10px; font-weight:700; text-transform:uppercase; }
.review-action footer a { color:var(--teal-dark); font-size:11px; font-weight:700; text-decoration:underline; text-underline-offset:3px; }
.review-action-steps { background:#f8faf9; border-radius:8px; color:var(--ink); counter-reset:review-step; font-size:12px; line-height:1.6; list-style:none; margin:11px 0 0; padding:13px 15px 13px 15px; }
.review-action-steps li { counter-increment:review-step; padding:5px 0 5px 26px; position:relative; }
.review-action-steps li:not(:last-child) { border-bottom:1px dashed var(--line); }
.review-action-steps li::before { color:var(--teal-dark); content:counter(review-step); font-family:var(--font-display); font-size:10px; font-weight:700; left:0; position:absolute; top:7px; }
/* Shared "detail copy" hierarchy: the labeled Finding/Recommendation/Complete-when/
   Important-limit paragraphs render identically wherever an action's full narrative
   appears (the roadmap's cards and the task table's expanded rows), so a label always
   means the same size/weight/color regardless of which container it's read in. */
.review-action > p strong,
.task-table tr.task-detail-row p strong { color:var(--teal-dark); font-size:9px; font-weight:800; letter-spacing:.06em; margin-right:4px; text-transform:uppercase; }
.task-table tr.task-detail-row .task-detail-caveat strong { color:#8d6226; }
.review-action-focus { align-items:center; display:flex; flex-wrap:wrap; gap:8px; margin:11px 0 0; }
.review-action-focus > span { color:var(--muted); font-size:9px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; white-space:nowrap; }
.review-action-focus > div { display:flex; flex-wrap:wrap; gap:8px; }
.review-evidence-focus-link { background:var(--teal-soft); border-radius:6px; color:var(--teal-dark); font-size:11px; font-weight:700; padding:5px 10px; text-decoration:none; }
.review-evidence-focus-link:hover { text-decoration:underline; }
.review-related-work { background:#f8faf9; border-left:3px solid #bfd8d4; border-radius:0 8px 8px 0; margin-top:20px; padding:14px 16px; }
.review-related-work > span { color:var(--muted); font-size:9px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.review-related-work > p { color:var(--muted); font-size:12px; line-height:1.6; margin:5px 0 9px; }
.review-related-work > a { color:var(--teal-dark); font-size:11px; font-weight:700; text-decoration:none; }
.review-related-work > a:hover { text-decoration:underline; }
.review-fix-first { background:#fff0f0; color:var(--color-danger); }
.task-table-wrap { border:1px solid var(--line); border-radius:10px; margin-top:16px; overflow:auto; }
.task-table { border-collapse:collapse; min-width:900px; table-layout:fixed; width:100%; }
.task-table th { background:#f3f7f7; color:#5d7278; font-size:9px; letter-spacing:.06em; padding:10px 12px; text-align:left; text-transform:uppercase; white-space:nowrap; }
.task-table td { border-top:1px solid #e4ebeb; box-shadow:inset 3px 0 0 transparent; color:#40555d; font-size:11px; line-height:1.5; padding:10px 12px; vertical-align:top; }
.task-table td:first-child { padding-left:9px; }
.task-table tr.task-row-priority td { background:#f8fbfa; }
.task-table tr.task-row-expanded td { background:#f3f8f7; }
.task-table tr:has(.implementation-status.in-progress) td:first-child { box-shadow:inset 3px 0 0 #e3a53d; }
.task-table tr:has(.implementation-status.complete) td:first-child { box-shadow:inset 3px 0 0 var(--teal-dark); }
.task-table tr.task-group-header td { background:#eef4f3; border-top:1px solid var(--line); color:var(--teal-dark); font:800 10px var(--font-display); letter-spacing:.08em; padding:8px 12px; text-transform:uppercase; }
.task-table tr.task-group-header td span { color:#6b8a85; font-weight:600; }
.task-table tr.task-detail-row.hidden { display:none; }
.task-table tr.task-detail-row td { background:#fbfcfc; border-top:0; padding:4px 12px 18px 34px; }
.task-table tr.task-detail-row p { color:var(--muted); font-size:12px; line-height:1.65; margin:8px 0 0; }
.task-table tr.task-detail-row .task-detail-caveat { border-left:3px solid #ebd3a5; padding-left:10px; }
.task-detail-steps { background:#f8faf9; border-radius:8px; color:var(--ink); counter-reset:task-step; font-size:12px; line-height:1.6; list-style:none; margin:10px 0 0; padding:11px 13px; }
.task-detail-steps li { counter-increment:task-step; padding:4px 0 4px 22px; position:relative; }
.task-detail-steps li:not(:last-child) { border-bottom:1px dashed var(--line); }
.task-detail-steps li::before { color:var(--teal-dark); content:counter(task-step); font-family:var(--font-display); font-size:10px; font-weight:700; left:0; position:absolute; top:6px; }
.task-detail-ask { margin-top:10px; }
.task-empty-state { color:var(--muted); font-size:11px; padding:20px 12px; text-align:center; }
.task-expand-toggle { background:none; border:0; cursor:pointer; display:flex; height:20px; width:20px; }
.task-expand-toggle i { border-bottom:1.5px solid #7c9490; border-right:1.5px solid #7c9490; content:''; display:block; height:6px; margin:2px auto; transform:rotate(45deg); transition:transform .15s ease; width:6px; }
.task-expand-toggle[aria-expanded="true"] i { transform:rotate(-135deg); margin-top:5px; }
.task-summary { align-items:center; display:flex; flex-wrap:wrap; gap:14px; margin-top:14px; }
.task-summary-bar { background:#e9eeed; border-radius:999px; flex:0 0 130px; height:7px; overflow:hidden; }
.task-summary-bar span { background:var(--teal-dark); display:block; height:100%; }
.task-summary-counts { display:flex; flex-wrap:wrap; gap:12px; }
.task-summary-count { align-items:center; color:var(--muted); display:inline-flex; font-size:10px; font-weight:700; gap:5px; }
.task-summary-count i { border-radius:999px; display:inline-block; height:7px; width:7px; }
.task-summary-count.status-not-started i { background:#c3ccd0; }
.task-summary-count.status-in-progress i { background:#e3a53d; }
.task-summary-count.status-complete i { background:var(--teal-dark); }
.task-filter-bar { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
.task-filter-search { border:1px solid var(--line); border-radius:7px; flex:1 1 220px; font-size:11px; padding:8px 10px; }
.task-filter-select { background:#fff; border:1px solid var(--line); border-radius:7px; color:var(--ink); font-size:11px; padding:8px 10px; }
.task-priority-tag { background:var(--teal-soft); border-radius:999px; color:var(--teal-dark); display:inline-block; font-size:8px; font-weight:800; letter-spacing:.05em; margin-left:7px; padding:2px 7px; text-transform:uppercase; vertical-align:middle; }
.task-shared-note { color:#6b7a8c; display:block; font-size:10px; font-weight:600; margin-top:3px; }
.task-shared-note b { color:#4f5d7a; font-size:8px; font-weight:800; letter-spacing:.05em; margin-right:4px; text-transform:uppercase; }
.task-table tr.task-detail-row .task-detail-shared { background:#f5f7fa; border-left:3px solid #c8d0de; border-radius:0 6px 6px 0; padding:8px 10px; }
.task-detail-shared a { color:var(--teal-dark); font-weight:700; text-decoration:none; }
.task-detail-shared a:hover { text-decoration:underline; }
.task-status-cell-inner { align-items:center; display:flex; flex-wrap:wrap; gap:7px; }
.task-status-cycle { background:#fff; border:1px solid #bfd8d4; border-radius:6px; color:var(--teal-dark); cursor:pointer; font:700 10px var(--font-sans); padding:5px 8px; white-space:nowrap; }
.task-status-cycle:hover { background:var(--teal-soft); }
.task-evidence-cell-inner { display:flex; flex-wrap:wrap; gap:5px; }
.task-evidence-chip { background:var(--teal-soft); border-radius:5px; color:var(--teal-dark); font-size:10px; font-weight:700; padding:3px 7px; text-decoration:none; }
.task-evidence-chip:hover { text-decoration:underline; }
.task-evidence-chip-plain { background:#eef1f4; color:#5c6b72; }
.clickup-push-button { background:#fff; border:1px solid #bfd8d4; border-radius:6px; color:var(--teal-dark); cursor:pointer; font:700 10px var(--font-sans); padding:5px 8px; white-space:nowrap; }
.clickup-push-button:hover { background:var(--teal-soft); }
.modal-backdrop { align-items:center; background:rgba(23,42,57,.45); display:flex; inset:0; justify-content:center; padding:20px; position:fixed; z-index:80; }
.modal-dialog { background:#fff; border-radius:var(--radius-lg); box-shadow:var(--shadow-card); max-width:420px; padding:26px; width:100%; }
.modal-dialog h2 { font:700 18px var(--font-display); margin:0 0 10px; }
.modal-dialog p { color:var(--muted); font-size:12px; line-height:1.6; margin:0 0 16px; }
.modal-dialog p a { color:var(--teal-dark); font-weight:600; }
.modal-dialog label { color:#4e616b; display:block; font-size:12px; font-weight:600; }
.modal-dialog input, .modal-dialog select { border:1px solid #d4dfe1; border-radius:7px; color:var(--ink); display:block; font:12px var(--font-sans); margin-top:9px; outline:none; padding:12px; width:100%; }
.modal-dialog input:focus, .modal-dialog select:focus { border-color:var(--teal); box-shadow:0 0 0 3px rgba(14,143,131,.1); }
.modal-dialog label + label { margin-top:16px; }
.modal-actions { display:flex; gap:10px; justify-content:flex-end; margin-top:20px; }
.modal-actions .secondary-button { background:none; border:1px solid var(--line); border-radius:7px; color:var(--muted); cursor:pointer; font:700 12px var(--font-sans); padding:9px 16px; }
.modal-actions .secondary-button:hover { background:var(--canvas); }
.modal-actions .primary-button:disabled { cursor:wait; opacity:.6; }
.modal-success { align-items:flex-start; color:var(--ink); display:flex; gap:10px; }
.modal-success-icon { background:var(--teal-soft); border-radius:50%; color:var(--teal-dark); flex:none; font-weight:700; height:20px; line-height:20px; text-align:center; width:20px; }
.modal-warning { background:var(--amber-soft); border-radius:7px; color:#8a5a10; display:flex; font-size:12px; gap:8px; line-height:1.6; padding:11px 13px; }
.clickup-push-history { margin-bottom:12px; }
.clickup-push-history ul { margin:6px 0 0; padding-left:16px; }
.clickup-push-history a { color:inherit; font-weight:700; }
.clickup-status-line { align-items:center; color:var(--teal-dark); display:flex; font-size:11px; font-weight:700; gap:7px; margin:10px 0 0; }
.clickup-status-dot { background:var(--teal); border-radius:50%; height:7px; width:7px; }
.review-side { position:sticky; top:92px; }
.review-side > .panel { margin:0; padding:19px; }
.review-side > .panel + .panel { margin-top:16px; }
.review-side-footer { margin-top:32px; }
.review-side-footer .review-side { position:static; }
.review-side-footer .content-side.review-side { display:flex; flex-wrap:wrap; gap:16px; }
.review-side-footer .content-side.review-side > .panel { flex:1 1 280px; }
.review-side-footer .content-side.review-side > .panel + .panel { margin-top:0; }
.review-nav { margin-top:12px; }
.review-nav > div + div { border-top:1px solid var(--line); margin-top:13px; padding-top:13px; }
.review-nav > div > span { color:var(--muted); display:block; font-size:9px; font-weight:700; letter-spacing:.1em; margin:0 7px 6px; text-transform:uppercase; }
.review-nav a { border-radius:7px; color:#52636b; display:block; font-size:11px; padding:7px; }
.review-nav a:hover,.review-nav a.active { background:var(--teal-soft); color:var(--teal-dark); font-weight:700; }
.review-nav-utility a + a { margin-top:4px; }
.review-evidence-list .activity-row,.review-evidence-directory .activity-row { color:inherit; text-decoration:none; }
.review-evidence-list .activity-row > span:nth-child(2),.review-evidence-directory .activity-row > span:nth-child(2) { flex:1; min-width:0; }
.review-evidence-list .activity-icon,.review-evidence-directory .activity-icon { font-size:8px; font-weight:800; }
.review-evidence-directory { margin:0; }
.review-evidence-intro { line-height:1.6; margin:-4px 0 16px; }
.review-evidence-groups { display:grid; gap:12px; }
.review-evidence-group { background:#fff; border:1px solid var(--line); border-radius:9px; overflow:hidden; }
.review-evidence-group > summary { align-items:center; cursor:pointer; display:flex; font-size:12px; font-weight:700; justify-content:space-between; list-style:none; padding:14px 16px; }
.review-evidence-group > summary::-webkit-details-marker { display:none; }
.review-evidence-group > summary::before { color:var(--teal); content:'+'; font-size:16px; margin-right:10px; }
.review-evidence-group[open] > summary::before { content:'−'; }
.review-evidence-group > summary > span { flex:1; }
.review-evidence-group > summary > strong { background:var(--teal-soft); border-radius:999px; color:var(--teal-dark); font-size:10px; padding:3px 8px; }
.review-evidence-group .activity-list { border:0; border-radius:0; border-top:1px solid var(--line); }
.review-phase-list .source-detail:first-child { border-top:0; padding-top:0; }
.review-phase-heading { align-items:flex-start; display:flex; flex-wrap:wrap; gap:12px; justify-content:space-between; }
.review-phase-heading > div { min-width:0; }
.review-phase-heading .ask-entry-actions { flex:none; }
.review-phase-list .scope-list { margin-top:14px; }
.review-evidence-detail { margin:0; }
.review-evidence-detail .source-detail:first-of-type { border-top:0; }
.review-evidence-detail .source-detail strong { font-size:14px; line-height:1.65; }
.review-evidence-meta { display:grid; gap:14px; grid-template-columns:repeat(3,minmax(0,1fr)); margin:0; }
.review-evidence-meta-top { background:#f3f8f7; border-radius:8px; grid-template-columns:1fr 1fr; margin-bottom:4px; padding:15px 17px; }
.review-evidence-meta div { min-width:0; }
.review-evidence-meta dt { color:var(--muted); font-size:9px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.review-evidence-meta dd { color:var(--ink); font-size:11px; font-weight:700; line-height:1.5; margin:5px 0 0; }
.review-basis-links { display:flex; flex-wrap:wrap; gap:8px; }
.review-basis-link,.review-basis-reference { background:var(--teal-soft); border-radius:6px; color:var(--teal-dark); display:inline-flex; font-size:10px; font-weight:700; padding:7px 9px; }
.review-basis-link { text-decoration:none; }
.review-basis-link:hover { text-decoration:underline; }
.review-evidence-limit { background:#fff8f3; border:1px solid #f1dfd2; border-radius:8px; margin-top:18px; padding:16px; }
.review-related-links { display:flex; flex-wrap:wrap; gap:13px; }
.review-evidence-detail > .muted { line-height:1.6; margin:18px 0 0; }
.evidence-pack { border-top:1px solid var(--line); margin:24px 0 4px; padding-top:24px; }
.evidence-pack > header { align-items:flex-start; display:flex; gap:20px; justify-content:space-between; }
.evidence-pack h2,.evidence-pack h3 { color:var(--ink); font-family:var(--font-display); letter-spacing:-.035em; }
.evidence-pack h2 { font-size:19px; margin:4px 0 7px; }
.evidence-pack h3 { font-size:15px; margin:0 0 7px; }
.evidence-pack header > div > p:not(.eyebrow),.evidence-pack-exhibit > div > p:not(.eyebrow) { color:var(--muted); font-size:12px; line-height:1.6; margin:0; }
.evidence-pack-download { align-items:center; background:var(--teal-dark); border-radius:7px; color:#fff; display:inline-flex; flex:0 0 auto; font-size:11px; font-weight:700; gap:8px; padding:10px 12px; text-decoration:none; }
.evidence-pack-download:hover { background:#096f67; }
.evidence-pack-download span { font-size:15px; line-height:1; }
.evidence-pack-capture { color:#6b7c82; display:flex; flex-wrap:wrap; font-size:10px; gap:7px; margin:15px 0; }
.evidence-pack-capture span { background:#f3f6f6; border:1px solid #e1e9e8; border-radius:999px; padding:5px 8px; }
.evidence-pack-metrics { display:grid; gap:9px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.evidence-pack-metrics > div { background:#f3f8f7; border:1px solid #dbece8; border-radius:8px; min-width:0; padding:12px; }
.evidence-pack-metrics strong,.evidence-pack-metrics span { display:block; }
.evidence-pack-metrics strong { color:var(--teal-dark); font:800 22px/1 var(--font-display); letter-spacing:-.04em; }
.evidence-pack-metrics span { color:#60747a; font-size:9px; line-height:1.4; margin-top:5px; }
.evidence-pack-method { background:#fbfcfc; border:1px solid var(--line); border-radius:8px; margin-top:16px; padding:14px; }
.evidence-pack-method > .eyebrow { margin-bottom:10px; }
.evidence-pack-method dl { display:grid; gap:10px 14px; grid-template-columns:1fr 1fr; margin:0; }
.evidence-pack-method dl > div { min-width:0; }
.evidence-pack-method dt { color:#829198; font-size:9px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.evidence-pack-method dd { color:#40555d; font-size:10px; line-height:1.5; margin:3px 0 0; }
.evidence-pack-exhibit { border-top:1px solid var(--line); padding:22px 0; scroll-margin-top:90px; }
.evidence-pack-exhibit > div:first-child { margin-bottom:13px; }
.evidence-pack-exhibit-focused { background:var(--teal-soft); border-radius:10px; margin:0 -16px; padding:22px 16px; }
.evidence-pack-exhibit-flag { background:var(--teal-dark); border-radius:999px; color:#fff; display:inline-block; font-size:9px; font-weight:700; letter-spacing:.06em; margin-bottom:10px; padding:5px 10px; text-transform:uppercase; }
.evidence-pack-table-wrap { border:1px solid var(--line); border-radius:8px; overflow:auto; }
.evidence-pack table { border-collapse:collapse; min-width:650px; width:100%; }
.evidence-pack th { background:#f3f7f7; color:#5d7278; font-size:9px; letter-spacing:.06em; padding:9px 10px; text-align:left; text-transform:uppercase; }
.evidence-pack td { border-top:1px solid #e4ebeb; color:#40555d; font-size:11px; line-height:1.5; padding:10px; vertical-align:top; }
.evidence-pack td:first-child { color:var(--teal-dark); font-weight:700; white-space:nowrap; }
.evidence-pack-exhibit-compact table { min-width:0; table-layout:fixed; }
.evidence-pack-exhibit-compact td,.evidence-pack-exhibit-compact th { overflow-wrap:anywhere; width:50%; }
.evidence-pack-exhibit-compact td:first-child { white-space:normal; }
.evidence-pack-exhibit-compact .evidence-pack-download { margin-top:12px; }
.evidence-pack-source { color:#76868c; font-size:10px; line-height:1.55; margin:10px 0 0; }
.evidence-pack-source strong { color:#5f747a; font-family:var(--font-sans); font-size:10px; }
.evidence-pack-notes { background:#fff8f3; border:1px solid #f1dfd2; border-radius:8px; margin-top:2px; padding:14px 16px; }
.evidence-pack-notes > .eyebrow { color:#9b6b2a; margin-bottom:8px; }
.evidence-pack-notes ul { color:#715f4b; display:grid; font-size:10px; gap:7px; line-height:1.55; margin:0; padding-left:17px; }

@media (max-width:900px) {
  .review-side { position:static; }
}

@media (max-width:700px) {
  .review-header-badges { align-items:flex-start; margin-top:16px; }
  .review-directory .task-row { align-items:flex-start; flex-wrap:wrap; }
  .review-directory .task-row .implementation-status { margin-left:51px; }
  .review-action-controls { flex-basis:100%; margin-left:0; }
  .review-home-layout > main { gap:14px; }
  .evidence-shortcut-grid { grid-template-columns:1fr; }
  .review-page-layout { margin-top:24px; }
  .review-finding-grid { display:block; }
  .review-finding-grid > div + div { border-top:1px solid var(--line); margin-top:22px; padding-top:22px; }
  .review-action dl { grid-template-columns:1fr; }
  .review-evidence-meta,.review-evidence-meta-top { grid-template-columns:1fr; }
  .evidence-pack > header { display:block; }
  .evidence-pack-download { margin-top:12px; }
  .evidence-pack-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .evidence-pack-method dl { grid-template-columns:1fr; }
}

/* Strategy and next moves */
.strategy-copy h2 { font-size:22px; margin:28px 0 10px; }
.strategy-copy h2:first-of-type { margin-top:8px; }
.strategy-copy h3 { font-size:16px; margin:22px 0 8px; }
.strategy-copy p, .strategy-copy li { color:#40555d; font-size:14px; line-height:1.65; }
.strategy-copy ul, .strategy-copy ol { margin:6px 0 12px; padding-left:22px; }
.strategy-copy li > ul, .strategy-copy li > ol { margin:4px 0 6px; }
.strategy-copy li > p { margin:6px 0; }
.strategy-copy code { background:#f3f7f7; border-radius:4px; font-size:12px; padding:1px 5px; }
.strategy-record-link { color:var(--teal-dark); font-weight:700; }
.strategy-table-wrap { border:1px solid var(--line); border-radius:10px; margin:12px 0 16px; overflow:auto; }
.strategy-table { border-collapse:collapse; min-width:560px; width:100%; }
.strategy-table th { background:#f3f7f7; color:#5d7278; font-size:10px; letter-spacing:.05em; padding:9px 12px; text-align:left; text-transform:uppercase; }
.strategy-table td { border-top:1px solid #e4ebeb; color:#40555d; font-size:13px; line-height:1.5; padding:9px 12px; vertical-align:top; }
.strategy-part { border:1px solid var(--line); border-radius:10px; margin-top:12px; }
.strategy-part > summary { align-items:center; cursor:pointer; display:flex; gap:12px; list-style:none; padding:14px 16px; }
.strategy-part > summary::-webkit-details-marker { display:none; }
.strategy-part > summary i::before { content:'+'; color:var(--teal-dark); font-style:normal; font-weight:800; }
.strategy-part[open] > summary i::before { content:'–'; }
.strategy-part > summary strong { flex:1; font-size:15px; }
.strategy-part-id { background:#eef4f3; border-radius:6px; color:var(--teal-dark); font:800 11px var(--font-display); padding:4px 7px; }
.strategy-part > .strategy-copy { border-top:1px solid var(--line); padding:4px 18px 18px; }
.strategy-evidence { display:flex; flex-wrap:wrap; gap:6px 12px; margin:14px 0 4px; }
.strategy-evidence span { color:#5d7278; font-size:10px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; width:100%; }
.strategy-evidence a { color:var(--teal-dark); font-size:12px; font-weight:600; }
@media (max-width: 640px) {
  .strategy-copy p, .strategy-copy li { font-size:13px; }
  .strategy-part > .strategy-copy { padding:4px 12px 14px; }
}
.glossary-table th[scope="row"] { color:#253a41; font-size:13px; font-weight:700; text-transform:none; letter-spacing:0; background:none; white-space:normal; width:32%; }

/* Review tab bar: the report's main navigation, under the breadcrumb on every report page */
.review-tabs { align-items:center; border-bottom:1px solid var(--line); display:flex; gap:4px; margin:10px 0 22px; overflow-x:auto; padding-bottom:0; scrollbar-width:none; }
.review-tabs::-webkit-scrollbar { display:none; }
.review-tab { border-bottom:3px solid transparent; color:#40555d; flex:0 0 auto; font-size:14px; font-weight:700; margin-bottom:-1px; padding:10px 14px 11px; text-decoration:none; white-space:nowrap; }
.review-tab:hover { color:var(--teal-dark); }
.review-tab.active { border-bottom-color:var(--teal-dark); color:var(--teal-dark); }
.review-tab-sections { position:static; }
.review-tab-sections > summary { cursor:pointer; display:flex; gap:6px; list-style:none; align-items:center; }
.review-tab-sections > summary::-webkit-details-marker { display:none; }
.review-tab-sections > summary i::before { content:'▾'; font-style:normal; font-size:11px; }
.review-tab-sections[open] > summary i::before { content:'▴'; }
.review-tab-menu { background:#fff; border:1px solid var(--line); border-radius:10px; box-shadow:0 10px 30px rgba(20,40,45,.14); display:grid; gap:2px; margin-top:8px; min-width:240px; padding:8px; position:absolute; z-index:30; }
.review-tab-menu a { border-radius:6px; color:#40555d; font-size:13px; font-weight:600; padding:8px 10px; text-decoration:none; }
.review-tab-menu a:hover, .review-tab-menu a.active { background:#eef4f3; color:var(--teal-dark); }
@media (max-width: 640px) {
  .review-tab { font-size:13px; padding:9px 10px 10px; }
  .review-tab-menu { left:16px; right:16px; min-width:0; }
}


/* Use this review in Claude */
.connect-claude h2 { font-size:17px; margin:22px 0 8px; }
.connect-claude h2:first-child { margin-top:0; }
.connect-claude ol, .connect-claude ul { color:#40555d; line-height:1.6; padding-left:20px; }
.connect-copy { align-items:center; background:#f3f7f7; border:1px solid var(--line); border-radius:10px; display:flex; gap:10px; margin:8px 0 12px; padding:10px 12px; }
.connect-copy code { color:#1f3a42; flex:1; font-size:13px; overflow-wrap:anywhere; white-space:pre-wrap; }
.connect-copy button { flex:none; }
.connect-prompt strong { display:block; font-size:13px; margin-top:10px; }
@media (max-width: 640px) { .connect-copy { align-items:stretch; flex-direction:column; } }
