/* Returning managers: business evidence first, setup tools last. */
.page-partner.is-managing .result-workspace { padding-top:36px; gap:24px; }
.manager-service { display:flex; flex-wrap:wrap; align-items:center; gap:12px 20px; margin:18px 0 24px; }
#service-status { display:inline-flex; align-items:center; gap:9px; color:var(--partner-green); font-size:14px; font-weight:650; }
#service-status::before { content:""; width:7px; height:7px; border-radius:50%; background:currentColor; }
#service-status[data-ready="false"] { color:var(--danger); }
#dashboard-updated { color:var(--muted); font-size:12px; }
.manager-sections { display:flex; flex-wrap:wrap; gap:26px; padding:16px 0; border-block:1px solid var(--line); }
.manager-sections a { color:var(--ink); text-decoration:none; font-size:14px; padding:4px 0; }
.manager-sections a:hover { text-decoration:underline; text-underline-offset:6px; }
.report-date-bar { display:flex; align-items:end; flex-wrap:wrap; gap:16px; padding-top:20px; }
.report-date-bar p { color:var(--muted); font-size:12px; margin:0 0 10px; }
.report-date-bar .date-control { width:190px; }
.report-date-bar .secondary-button { min-height:44px; font-size:13px; }
.page-partner.is-managing .manage-stack { gap:28px; }
.business-overview { background:#e5eadc; border-radius:6px; padding:32px; scroll-margin-top:24px; }
.business-heading,.panel-title,.sales-heading { display:flex; align-items:start; justify-content:space-between; gap:24px; }
.business-heading h3,.panel-title h3,.sales-heading h3 { margin:10px 0 0; font-size:clamp(23px,2.7vw,32px); letter-spacing:-.045em; line-height:1.4; }
.data-source { font-size:12px; color:var(--muted); white-space:nowrap; }
.business-summary { display:grid; grid-template-columns:1.25fr 1fr; gap:48px; margin-top:32px; padding-bottom:32px; }
.metric-label { display:block; color:var(--muted); font-size:14px; }
#revenue-growth { display:block; font-size:clamp(44px,5.4vw,70px); letter-spacing:-.065em; font-family:var(--mono); font-weight:650; color:var(--partner-green); line-height:1.3; margin:12px 0; overflow-wrap:anywhere; }
#revenue-growth[data-direction="down"] { color:#965143; }
#growth-summary { font-size:16px; line-height:1.7; margin:0 0 8px; max-width:34em; }
#comparison-dates { font-size:12px; color:var(--muted); line-height:1.6; }
.evidence-note { border-left:1px solid #b7c3ad; padding-left:28px; align-self:center; }
.evidence-note > span { color:var(--muted); font-size:12px; }.evidence-note h4 { margin:10px 0; font-size:21px; line-height:1.4; }
.evidence-note p { font-size:14px; color:var(--muted); line-height:1.9; margin:0 0 14px; }
.evidence-note a,.action-panel a { color:var(--partner-green); font-size:14px; text-underline-offset:4px; font-weight:650; }
.business-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid #bbc6b1; padding-top:24px; gap:24px; }
.business-metrics article { min-width:0; }.business-metrics span { font-size:13px; color:var(--muted); display:block; }
.business-metrics strong { display:block; margin:10px 0 6px; font:650 clamp(25px,2.8vw,35px)/1.3 var(--mono); overflow-wrap:anywhere; letter-spacing:-.04em; }.business-metrics small { display:block; color:var(--muted); font-size:12px; line-height:1.6; }
.operating-analysis { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(0,1fr); gap:32px; }
.trend-panel { padding:24px 0; min-width:0; }.panel-title h3 { font-size:23px; }.panel-title { align-items:center; }.chart-legend { display:flex; align-items:center; gap:6px; font-size:11px; white-space:nowrap; color:var(--muted); }.chart-legend i { width:8px; height:8px; background:#d3ddc8; }.chart-legend i:last-of-type { margin-left:6px; background:#3f694a; }
.activity-chart { display:grid; grid-template-columns:repeat(14,minmax(0,1fr)); gap:8px; margin-top:26px; min-height:150px; align-items:end; }
.day-bar { display:flex; min-width:0; flex-direction:column; align-items:center; gap:8px; padding:0; border:0; background:none; color:var(--muted); cursor:pointer; }
.day-bar:hover .bar-track { outline:2px solid #83a175; outline-offset:2px; }.day-bar small { font:10px var(--mono); }.day-bar > b { font:11px var(--mono); color:var(--ink); }.bar-track { height:90px; width:100%; max-width:26px; display:flex; align-items:end; background:#ecede5; border-radius:3px 3px 0 0; overflow:hidden; }.bar-issued { width:100%; background:#d3ddc8; display:flex; align-items:end; min-height:1px; }.bar-used { width:100%; background:#3f694a; }
.chart-note { margin:16px 0 0; color:var(--muted); font-size:12px; line-height:1.8; }
.action-panel { padding:26px; background:#eeeade; border-radius:6px; }.action-panel h3 { font-size:23px; margin:16px 0; line-height:1.4; letter-spacing:-.03em; }.action-panel p { font-size:14px; color:var(--muted); line-height:1.9; }.action-boundary { border-top:1px solid var(--line); margin-top:24px; padding-top:14px; font-size:12px; line-height:1.8; color:var(--muted); }
.sales-panel { border:1px solid var(--line); border-radius:8px; padding:32px; background:#fbf9f2; scroll-margin-top:24px; }.sales-heading p { max-width:48em; font-size:14px; color:var(--muted); line-height:1.8; margin-bottom:0; }.sales-date { font:14px var(--mono); white-space:nowrap; border-bottom:1px solid var(--ink); padding-bottom:6px; }.sales-layout { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(0,1fr); gap:36px; margin-top:28px; }.sales-help { margin:-6px 0 0; color:var(--muted); font-size:12px; line-height:1.8; }.sales-save { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }.sales-save span { font-size:12px; color:var(--muted); }.sales-reading { border-left:1px solid var(--line); padding-left:28px; }.sales-reading dl { margin:20px 0; }.sales-reading dl div { display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px; border-bottom:1px solid var(--line); padding:15px 0; }.sales-reading dt { font-size:13px; color:var(--muted); }.sales-reading dd { margin:0; font:650 21px var(--mono); }.sales-reading p { font-size:12px; line-height:1.9; color:var(--muted); }
.page-partner.is-managing .ledger-panel { order:4; border:0; padding:24px 0; background:none; border-top:1px solid var(--line); border-radius:0; scroll-margin-top:24px; }.page-partner.is-managing .qr-card { order:5; grid-template-columns:130px minmax(0,1fr); background:#e9ecdf; }.page-partner.is-managing .edit-panel { order:6; background:transparent; }.page-partner.is-managing .secret-card { order:-1; }
.ledger-definition { font-size:12px; color:var(--muted); line-height:1.8; margin:-12px 0 0; }.page-partner .ledger-metrics span,.page-partner .ledger-metrics small { font-size:12px; }.page-partner .ledger-table { font-size:13px; }.page-partner .ledger-table th { font-size:12px; }.page-partner .retention-note { font-size:12px; line-height:1.7; }.page-partner .history-list button { grid-template-columns:1fr 1fr 1fr 1fr; font-size:13px; }.history-sales { color:var(--partner-green); }
.manage-stack[aria-busy="true"] { opacity:.55; pointer-events:none; }
.manage-stack.data-unavailable > :is(.business-overview,.operating-analysis,.sales-panel,.ledger-panel) { display:none; }
#dashboard-alert { margin-top:16px; }
@media(max-width:900px) { .business-overview,.sales-panel { padding:24px; }.business-summary { gap:28px; }.operating-analysis { grid-template-columns:1fr; gap:12px; }.action-panel { padding:24px; }.action-boundary { margin-top:16px; }.sales-layout { gap:24px; }.business-metrics { gap:16px; }.activity-chart { gap:10px; } }
@media(max-width:650px) { .business-summary,.sales-layout { grid-template-columns:1fr; gap:24px; }.business-heading,.sales-heading { flex-direction:column; gap:10px; }.business-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); row-gap:24px; }.evidence-note,.sales-reading { border-left:0; border-top:1px solid var(--line); padding:20px 0 0; }.business-overview,.sales-panel { padding:22px 18px; }.business-summary { margin-top:24px; padding-bottom:24px; }.panel-title { align-items:start; flex-direction:column; gap:12px; }.activity-chart { gap:5px; }.day-bar small { font-size:9px; }.manager-sections { gap:14px 22px; }.manager-sections a { font-size:13px; }.report-date-bar { gap:12px; }.report-date-bar p { margin-bottom:0; }.page-partner.is-managing .qr-card { grid-template-columns:100px minmax(0,1fr); padding:20px; gap:16px; }.page-partner.is-managing .qr-card .qr-frame { width:100%; }.page-partner.is-managing .qr-card p { font-size:20px; }.page-partner.is-managing .qr-card .button-row { grid-column:1/-1; }.page-partner .history-list button { grid-template-columns:1fr 1fr; }.manager-service { gap:10px; }.manager-service .text-button { padding-left:0; } }
@media(prefers-reduced-motion:reduce) { .manage-stack { transition:none; } }
.approval-banner { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 24px 26px; border: 1px solid var(--line); border-left: 5px solid #d5a642; border-radius: 14px; background: #fffaf0; }
.approval-banner h3 { margin: 7px 0 5px; font-size: 22px; }
.approval-banner p { margin: 0; color: var(--muted); line-height: 1.75; }
.approval-badge { flex: 0 0 auto; padding: 8px 13px; border-radius: 999px; background: #f3e4b9; color: #755812; font-size: 13px; font-weight: 750; }
.approval-banner[data-status="approved"] { border-left-color: var(--accent); background: #eff6e9; }
.approval-banner[data-status="approved"] .approval-badge { background: #d6efda; color: #235a34; }
.approval-banner[data-status="rejected"] { border-left-color: #c84a39; background: #fff2ee; }
.approval-banner[data-status="rejected"] .approval-badge { background: #f4d3cb; color: #8d3024; }
.claim-code-card { display: grid; grid-template-columns: .85fr 1.15fr; gap: 32px; padding: 28px; border: 1px solid var(--line); border-radius: 16px; background: #f7f4eb; }
.claim-code-card h3 { margin: 8px 0; font-size: 24px; line-height: 1.4; }
.claim-code-card > div > p { color: var(--muted); line-height: 1.8; }
.claim-code-card form { display: grid; gap: 16px; }
.claim-code-toggle { display: flex; align-items: center; gap: 10px; font-weight: 700; }
.claim-code-toggle input { width: 20px; height: 20px; accent-color: var(--accent-dark); }
.claim-code-entry > label { display: block; margin-bottom: 7px; font-size: 13px; color: var(--muted); }
.claim-code-entry > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
.claim-code-entry input { min-width: 0; min-height: 46px; padding: 0 13px; border: 1px solid var(--line); border-radius: 9px; background: #fffdf8; font: 700 17px/1 var(--mono); letter-spacing: .12em; text-transform: uppercase; }
.claim-code-entry input:disabled { opacity: .55; }
.claim-code-actions { display: flex; align-items: center; gap: 14px; }
.claim-code-actions button { width: auto; min-width: 150px; }
.claim-code-actions span { color: var(--muted); font-size: 13px; }
.claim-code-actions span[data-ready="true"] { color: #287341; font-weight: 700; }

@media (max-width: 760px) {
  .approval-banner { align-items: flex-start; padding: 21px 20px; }
  .claim-code-card { grid-template-columns: 1fr; gap: 20px; padding: 22px 18px; }
  .claim-code-entry > div { grid-template-columns: 1fr; }
  .claim-code-actions { align-items: flex-start; flex-direction: column; }
  .claim-code-actions button { width: 100%; }
}
