/* V2 component system. Geometry describes purpose; color describes state. */
:root{--ds-ink:#303b50;--ds-muted:#526078;--ds-line:#e0e5ef;--ds-surface:#fff;--ds-soft:#f5f7fc;--ds-blue-bg:#eaf0ff;--ds-blue-ink:#455f99;--ds-lilac-bg:#f0eafa;--ds-lilac-ink:#745887;--ds-peach-bg:#fff0e4;--ds-peach-ink:#845c37;--ds-rose-bg:#faeaf2;--ds-rose-ink:#86516e;--ds-primary:#4f65ad;--ds-primary-hover:#3f5396;--ds-card-radius:12px;--ds-control-radius:8px;--ds-card-pad:24px;--ds-title:28px;--ds-section:20px;--ds-card-title:16px;--ds-body:14px;--ds-caption:12px}
/* Editorial headings; metric values keep their separate numerical scale. */
#content h1{font-size:var(--ds-title);line-height:1.3;font-weight:700;letter-spacing:-.8px}
#content h2{font-size:var(--ds-section);line-height:1.4;font-weight:600;letter-spacing:-.4px}
#content h3,#content h4{font-size:var(--ds-card-title);line-height:1.5;font-weight:600;letter-spacing:-.2px}
#content :is(.maven-panel-head h2,.maven-goal h2,.maven-share h2,.sj-card-head h3,.lab-content h3,.sj-records h3){font-size:var(--ds-card-title);line-height:1.5}
#content :is(.home-advisor-direct h2){font-size:16px;line-height:1.7}
#content :is(.lab-story,.direct-bubble p,.sj-instructions p,.sj-records p,.panel>p){font-size:var(--ds-body);line-height:1.7}
/* Base cards and nested panels share border/radius; nested information uses a tinted fill. */
#content :is(.maven-panel,.panel,.sj-card,.sj-activity,.sj-records>a,.traffic-section,.direct-print,.lab-trial,.personal-race,.coin-entry,.maven-goal,.maven-share){border:1px solid var(--ds-line);border-radius:var(--ds-card-radius);box-shadow:none}
#content :is(.maven-panel,.panel,.sj-card,.sj-records>a,.personal-race,.coin-entry,.maven-goal,.maven-share){padding:var(--ds-card-pad)}
#content .traffic-section-body>.panel{border:0;border-radius:0;box-shadow:none}
#content :is(.lab-metric,.sj-commitment,.traffic-chart-detail,.paid-summary,.traffic-range-result){border:1px solid var(--ds-line);border-radius:var(--ds-control-radius);padding:20px;box-shadow:none}
#content :is(.lab-section){border:1px solid var(--ds-line);border-radius:var(--ds-card-radius);background:var(--ds-soft);padding:var(--ds-card-pad)}
/* Tags are metadata, not buttons: same height, inset, type and subdued color. */
#content :is(.lab-tag,.lab-person>span:last-child,.paid-status,.pill,.maven-ai-badge,.live-dot,.weekly-days>span){display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:28px;max-width:100%;padding:4px 9px;border:1px solid #d8e2f6;border-radius:6px;background:var(--ds-blue-bg);color:var(--ds-blue-ink);font-size:var(--ds-caption);font-weight:500;line-height:1.5;letter-spacing:0;text-transform:none;box-sizing:border-box;box-shadow:none;white-space:normal}
#content .lab-person>span:last-child{background:var(--ds-lilac-bg);color:var(--ds-lilac-ink);border-color:#e2d8ef}
#content .paid-status.pending{background:var(--ds-peach-bg);color:var(--ds-peach-ink);border-color:#efddcd}
#content :is(.maven-ai-badge,.live-dot){background:var(--ds-lilac-bg);color:var(--ds-lilac-ink);border-color:#e2d8ef}
/* Supporting explanations use an inset panel, never a stretched metadata tag. */
#content .lab-lever{display:flex;align-items:flex-start;gap:8px;width:100%;padding:12px;margin-top:16px;border:1px solid var(--ds-line);border-radius:8px;background:#ffffffb3;color:var(--ds-muted);font-size:var(--ds-caption);font-weight:400;line-height:1.6;box-sizing:border-box}
#content .lab-lever .icon{width:16px;height:16px;margin-top:2px;flex-shrink:0;color:var(--ds-blue-ink)}




/* All full buttons share geometry. Primary commits; secondary opens an optional action. */
#content :is(.btn,.maven-primary,.maven-zoom-button,.sj-form-actions .btn){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:11px 16px;border:1px solid var(--ds-primary);border-radius:var(--ds-control-radius);background:var(--ds-primary);color:#fff;font-size:13px;font-weight:600;line-height:1.4;text-align:center;box-shadow:none;text-decoration:none;box-sizing:border-box}
#content :is(.btn,.maven-primary,.maven-zoom-button):hover{background:var(--ds-primary-hover);border-color:var(--ds-primary-hover);color:#fff}
#content :is(.btn.light){background:var(--ds-blue-bg);color:var(--ds-blue-ink);border-color:#d8e2f6}
#content :is(.btn.light):hover{background:#dce6fc;color:#354e87;border-color:#c5d4f5}
#content #sj-rhythm-form button[type=submit],#content #sj-rhythm-form button:not([type]){background:var(--ds-primary);color:#fff;border-color:var(--ds-primary)}
#content .tournament-cta{background:var(--ds-primary)!important;color:#fff!important;border-color:var(--ds-primary)!important}
#content :is(.btn,.maven-primary,.maven-zoom-button):disabled{background:#edf0f5;color:#778193;border-color:var(--ds-line);opacity:1;cursor:not-allowed}
#content :is(.btn,.maven-primary,.maven-zoom-button) .icon{width:16px;height:16px;color:inherit;flex-shrink:0}
#content .text-link{color:var(--ds-blue-ink);font-size:13px;line-height:1.5;font-weight:600;background:none;box-shadow:none}
#content .paid-icon{width:34px;height:34px;padding:8px;background:var(--ds-blue-bg);color:var(--ds-blue-ink);border:1px solid #d8e2f6;border-radius:8px;box-shadow:none}
#content .paid-icon.remove{background:var(--ds-rose-bg);color:var(--ds-rose-ink);border-color:#efd6e3}
#content .paid-cost{border-radius:8px;font-size:14px;font-weight:600;padding:10px 12px;line-height:1.4}
#content .paid-cost small{font-size:12px;font-weight:500;line-height:1.5}
@media(max-width:580px){:root{--ds-title:24px;--ds-section:18px;--ds-card-pad:18px}#content .lab-lever{padding:10px}}
#content .lab-lever>span{min-width:0;overflow-wrap:anywhere;text-align:left}
@media(max-width:1100px){#content .lab-trial{grid-template-columns:35px minmax(0,1fr);gap:16px}#content .lab-metric{grid-column:2;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:6px 18px;align-items:center}#content .lab-metric>.lab-result-label{grid-column:1}#content .lab-metric>strong{grid-column:1;margin:0}#content .lab-metric>small{grid-column:1;margin:0}#content .lab-metric>.lab-lever{grid-column:2;grid-row:1/4;margin:0}}
@media(max-width:580px){#content .lab-metric{display:flex;flex-direction:column;align-items:flex-start}#content .lab-metric>.lab-lever{margin-top:12px}}
#content{font-size:14px;line-height:1.7}#content p{font-size:14px;line-height:1.7}#content :is(.eyebrow,.home-kicker,.maven-live li small,.maven-learning-note small){font-size:12px;line-height:1.5}
/* Numerical hierarchy: same role = same size, weight and line-height. */
:root{--ds-number-primary:32px;--ds-number-card:28px;--ds-number-secondary:24px;--ds-number-weight:600}
#content :is(.public-summary .traffic-big,.public-summary .traffic-growth-value){display:block;font-size:var(--ds-number-primary);font-weight:var(--ds-number-weight);line-height:1.25;letter-spacing:-.8px;font-variant-numeric:tabular-nums;color:#46546d;margin:14px 0 8px}
#content .public-summary .public-growth{justify-content:flex-start}
#content .traffic-value-unit{font-size:12px;font-weight:400;line-height:1.5;color:var(--ds-muted)}
#content .public-growth>strong:not(.traffic-growth-value){font-size:20px;line-height:1.4;font-weight:600}
#content :is(.maven-kpi>strong,.stat-value,.paid-kpis strong,.maven-growth-total>strong,.lab-metric>strong){font-size:var(--ds-number-card);font-weight:var(--ds-number-weight);line-height:1.25;letter-spacing:-.7px;font-variant-numeric:tabular-nums}
#content :is(.maven-growth-bottom b,.race-markers strong,.podium-step>strong,.traffic-cost-scenarios strong){font-size:var(--ds-number-secondary);font-weight:var(--ds-number-weight);line-height:1.3;letter-spacing:-.4px;font-variant-numeric:tabular-nums}
#content :is(.paid-kpis>div){display:flex;flex-direction:column;gap:10px}
#content .paid-kpis>div>span{font-size:13px;line-height:1.5;font-weight:500;min-height:40px;margin:0}
#content .paid-kpis strong{margin:0}
#content .maven-kpi>p{font-size:14px;font-weight:500;line-height:1.5;min-height:42px}
#content .lab-metric>.lab-result-label{font-size:12px;font-weight:500;line-height:1.5;letter-spacing:.4px}
#content .rank-row>b{font-size:15px;font-weight:600;line-height:1.4}
#content .paid-table td :is(b,.paid-result,.paid-cost){font-size:14px;font-weight:600;line-height:1.5}
@media(max-width:580px){:root{--ds-number-primary:28px;--ds-number-card:26px;--ds-number-secondary:22px}}
#content .public-summary{grid-template-columns:repeat(2,minmax(0,1fr))}#content .public-summary>div:first-child,#content .public-summary>.public-growth{padding:22px;align-self:stretch}#content .public-summary>div>.eyebrow{display:block;font-size:12px;font-weight:600;line-height:1.5;letter-spacing:1px;margin:0}
@media(max-width:580px){#content .public-summary{grid-template-columns:1fr}}
/* Separate the three study pillars without changing their internal spacing. */
#content .study-journey>.sj-pillar-section+.sj-pillar-section{margin-top:40px}
@media(max-width:580px){#content .study-journey>.sj-pillar-section+.sj-pillar-section{margin-top:32px}}
/* Emphasis hierarchy: strong actions and labels; calm explanatory copy. */
#content :is(h1,h2,h3,h4,h5,h6){font-weight:700}
#content :is(.btn,.maven-primary,.maven-zoom-button,.text-link,.sj-form-actions .btn){font-weight:700}
#content :is(.maven-panel-head>a,.maven-share>button,.maven-goal>a,.maven-shortcuts>a,.paid-post-link,.sj-activity>a,.sj-records>a>b,.coin-step>strong,.coin-status [data-challenge-rules],.prize-rules){font-weight:700}
#content :is(.eyebrow,.home-kicker,.stat-top,.maven-kpi>p,.paid-kpis>div>span,.sj-rhythm label,.sj-rhythm legend,.sj-upcoming strong,.maven-live li strong,.journey-live-list h3,.direct-header strong,.lab-person strong,.rank-row strong,.traffic-account strong){font-weight:600}
#content :is(.lab-tag,.lab-person>span:last-child,.paid-status,.pill,.maven-ai-badge,.live-dot,.weekly-days>span,.paid-cost small){font-weight:600}
#content :is(.sj-commitment strong,.public-profile-facts b,.maven-growth-bottom b,.paid-table th,.sj-pillars strong,.sj-instructions summary){font-weight:700}
#content .home-advisor-lines>a{font-weight:500}
#content .home-advisor-lines>a b{font-weight:700}
#content :is(.maven-growth-total>span,.maven-chart-x span,.maven-chart-y span){font-weight:500}
.maven-sidebar nav a{font-weight:600}.maven-sidebar nav a.active{font-weight:700}.maven-workspace strong{font-weight:600}.breadcrumb b{font-weight:600}
.icon{stroke-width:1.8}
#content :is(.btn,.text-link,.maven-primary,.maven-zoom-button,.maven-shortcuts>a,.sj-upcoming a,.sj-records>a,.home-advisor-lines>a) .icon,.maven-sidebar nav .icon{stroke-width:2}
#content :is(.maven-panel-head>a,.text-link,.paid-post-link,.sj-activity>a):hover{text-decoration:underline;text-underline-offset:3px}
/* Testimonial highlights use a warm yellow marker. */
#content .direct-bubble mark{background:#fff0a3;color:#51431c;box-decoration-break:clone;-webkit-box-decoration-break:clone}
