.admin-page { max-width:1280px; padding-top:42px; }
.account-heading-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:12px; }
.admin-heading { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:28px; }
.admin-breadcrumb { color:var(--muted); font-size:13px; margin-bottom:12px; }
.admin-page h1 { font-size:38px; line-height:1.15; letter-spacing:-.035em; font-weight:600; }
.admin-toolbar { display:flex; flex-wrap:wrap; justify-content:space-between; gap:16px; align-items:center; margin-bottom:16px; }
.admin-toolbar[hidden] { display:none; }
.admin-toolbar > div,.admin-tools { display:flex; flex-wrap:wrap; gap:8px; }
body #app .admin-toolbar .btn[aria-pressed="true"] { --button-fill:var(--accent-hover); --button-ink:var(--primary-ink); color:var(--primary-ink); background:var(--accent); border-color:var(--accent); }
body #app .admin-toolbar .btn[aria-pressed="true"] > .button-edge { display:none; }
.admin-updated { color:var(--muted); font-size:12px; line-height:1.6; margin-bottom:24px; overflow-wrap:anywhere; }
.admin-updated:empty { display:none; }
.admin-scope { color:var(--muted); font-size:13px; line-height:1.65; max-width:90ch; margin-bottom:24px; }
.admin-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin:0 0 24px; }
.admin-metric { min-width:0; }
.admin-metrics > .admin-metric { background:var(--card-bg); border:1px solid var(--card-edge); border-radius:var(--card-radius); padding:24px; }
.admin-metric dt { color:var(--muted); font-size:13px; line-height:1.5; }
.admin-metric dd { margin:14px 0 8px; font-size:36px; line-height:1.15; font-weight:600; font-variant-numeric:tabular-nums; letter-spacing:-.03em; }
.admin-metric p { color:var(--muted); font-size:12px; line-height:1.5; }
.admin-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-bottom:24px; }
.admin-panel,.admin-access { min-width:0; padding:28px; border:1px solid var(--card-edge); border-radius:var(--card-radius); background:var(--card-bg); }
.admin-panel h2,.admin-access h2 { margin:0 0 22px; font-size:21px; line-height:1.3; font-weight:550; letter-spacing:-.025em; }
.admin-wide { grid-column:1/-1; }
.admin-empty,.admin-note,.admin-access p { color:var(--muted); font-size:13px; line-height:1.7; }
.admin-note { margin-top:16px; }
.admin-access .btn { margin-top:24px; }
.admin-interest { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin:0; }
.admin-interest .admin-metric dd { font-size:30px; }
.admin-table-wrap { overflow-x:auto; border-radius:4px; }
.admin-table-wrap:focus-visible { outline:2px solid var(--accent-ink); outline-offset:4px; }
.admin-table { width:100%; border-collapse:collapse; text-align:left; font-size:13px; line-height:1.6; }
.admin-table th,.admin-table td { padding:14px 12px; border-bottom:1px solid var(--card-edge); overflow-wrap:anywhere; }
.admin-table tr > :first-child { padding-left:0; }
.admin-table tr > :last-child { padding-right:0; }
.admin-table thead th { color:var(--muted); font-weight:400; }
.admin-table tbody th { font-weight:500; }
.admin-table td { color:var(--muted); font-variant-numeric:tabular-nums; }
.admin-table tr:last-child > * { border-bottom:0; }
.admin-chart { display:block; width:100%; height:170px; }
.admin-chart-legend,.admin-chart-dates { display:flex; justify-content:space-between; color:var(--muted); font-size:11px; margin-bottom:16px; }
.admin-chart-legend { justify-content:flex-start; gap:24px; }
.admin-chart-legend span:first-child { color:var(--accent-ink); }
.admin-chart-dates { margin:12px 0 0; }
.admin-chart-data { margin-top:22px; }
.admin-chart-data summary { cursor:pointer; font-size:13px; min-height:44px; padding-block:12px; }
.admin-breakdown { margin:0; padding:0; list-style:none; display:grid; gap:20px; }
.admin-breakdown li > div:first-child { display:flex; justify-content:space-between; gap:20px; font-size:13px; overflow-wrap:anywhere; }
.admin-breakdown strong { font-weight:500; font-variant-numeric:tabular-nums; }
.admin-meter { margin-top:10px; height:4px; border-radius:3px; background:var(--card-edge); overflow:hidden; }
.admin-meter i { display:block; height:100%; background:var(--accent); }
.admin-services { display:grid; grid-template-columns:1fr 1fr; gap:20px 36px; margin:0; }
.admin-services > div { display:flex; justify-content:space-between; align-items:baseline; gap:20px; padding-bottom:14px; border-bottom:1px solid var(--card-edge); font-size:13px; }
.admin-services dt { color:var(--muted); }
.admin-services dd { margin:0; text-align:right; }
.admin-skeleton { height:140px; border:1px solid var(--card-edge); border-radius:var(--card-radius); background:var(--card-bg); margin-bottom:20px; }
.admin-demo-notice { margin-bottom:24px; padding:22px 24px; border:1px solid var(--accent); border-radius:var(--card-radius); background:var(--card-bg); }
.admin-demo-notice strong { font-size:17px; color:var(--accent-ink); }
.admin-demo-notice p { margin-top:10px; max-width:80ch; color:var(--muted); font-size:13px; line-height:1.7; }
.business-panel .business-intro { margin:0 0 24px; max-width:80ch; }
.business-intro .text-link,.business-sources a { color:var(--accent-ink); text-decoration:underline; text-underline-offset:3px; }
.business-intro .text-link { min-height:44px; padding-block:10px; text-align:left; }
.business-metric { border-bottom:1px solid var(--card-edge); }
.business-metric:first-child { border-top:1px solid var(--card-edge); }
.business-metric summary { display:grid; grid-template-columns:80px minmax(0,1fr) max-content 16px; gap:16px; align-items:center; list-style:none; cursor:pointer; padding:20px 0; min-height:64px; font-size:14px; line-height:1.55; }
.business-metric summary::-webkit-details-marker { display:none; }
.business-metric summary:focus-visible,.demo-inputs summary:focus-visible,.metric-quiz summary:focus-visible { outline:2px solid var(--accent-ink); outline-offset:4px; }
.business-code { color:var(--accent-ink); font-size:12px; overflow-wrap:anywhere; }
.business-metric summary strong { font-size:20px; font-weight:550; font-variant-numeric:tabular-nums; white-space:nowrap; }
.business-metric summary svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.5; }
.business-metric[open] summary svg { transform:rotate(90deg); }
.business-explanation { max-width:76ch; padding:0 0 26px 96px; font-size:14px; line-height:1.75; color:var(--muted); }
.business-explanation p+p { margin-top:14px; }
.business-explanation .business-formula { color:var(--text); }
.business-explanation .business-calculation { color:var(--accent-ink); font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.business-sources { max-width:90ch; }
.demo-funnel { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin:0; padding:0; list-style:none; }
.demo-funnel li { min-width:0; display:grid; align-content:start; gap:8px; }
.demo-funnel strong { font-size:34px; line-height:1.2; font-weight:550; font-variant-numeric:tabular-nums; }
.demo-funnel span { font-size:14px; line-height:1.5; }
.demo-funnel small { color:var(--muted); font-size:12px; line-height:1.5; font-variant-numeric:tabular-nums; }
.demo-inputs,.metric-quiz { margin-top:20px; border-top:1px solid var(--card-edge); }
.demo-inputs summary,.metric-quiz summary { min-height:48px; padding:14px 0; cursor:pointer; font-size:14px; line-height:1.6; }
.demo-inputs p { max-width:78ch; color:var(--muted); font-size:13px; line-height:1.75; }
.metric-quiz form { max-width:76ch; padding:22px 0; border-bottom:1px solid var(--card-edge); }
.metric-quiz form:last-child { border-bottom:0; padding-bottom:0; }
.metric-quiz label { display:block; font-size:14px; line-height:1.65; margin-bottom:12px; }
.metric-quiz form>div { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.metric-quiz input { width:100px; min-height:48px; padding:10px 12px; border:1px solid var(--card-edge); border-radius:10px; background:var(--bg); color:var(--text); font:inherit; font-variant-numeric:tabular-nums; }
.metric-quiz input:focus-visible { outline:2px solid var(--accent-ink); outline-offset:3px; }
.metric-quiz [role=status]:not(:empty) { color:var(--accent-ink); margin-top:14px; font-size:13px; line-height:1.7; }
@media(max-width:1100px) { .admin-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:836px) {
  .admin-page { padding-top:28px; }.admin-page h1 { font-size:30px; }.admin-heading { align-items:flex-start; }.admin-heading>.btn { flex-shrink:0; }
  .admin-toolbar { flex-wrap:wrap; }.admin-grid { grid-template-columns:1fr; gap:16px; }.admin-panel,.admin-access { padding:22px 20px; }
  .admin-metrics { gap:12px; }.admin-metrics>.admin-metric { padding:20px 16px; }.admin-metric dd { font-size:30px; }
  .admin-interest { grid-template-columns:1fr 1fr; gap:24px 16px; }.admin-services { grid-template-columns:1fr; }
  .demo-funnel { grid-template-columns:1fr 1fr; gap:24px 16px; }
  .business-metric summary { grid-template-columns:minmax(0,1fr) max-content 16px; gap:5px 12px; }
  .business-code { grid-column:1; grid-row:1; }
  .business-metric summary>span:nth-child(2) { grid-column:1; grid-row:2; font-size:13px; color:var(--muted); }
  .business-metric summary strong { grid-column:2; grid-row:1/3; font-size:18px; }
  .business-metric summary svg { grid-column:3; grid-row:1/3; }
  .business-explanation { padding-left:0; font-size:13px; }
}
@media(max-width:360px) { .admin-heading { flex-wrap:wrap; }.admin-toolbar .btn { padding-inline:12px; }.admin-table { font-size:12px; } }
