/* GymDigital 2026 visual refresh: presentation only. No layout or feature rules live here. */
:root{
  --brand:#152d35;
  --brand-hover:#1d3b45;
  --brand-soft:#d4ecdd;
  --brand-soft-strong:#bddfca;
  --brand-paper:#f7f6f2;
  --brand-surface:#ffffff;
  --brand-line:#d7dfdb;
  --brand-muted:#65737a;
  --ink:#152d35;
  --lime:#d4ecdd;
  --lime-strong:#6d998a;
  --paper:#f7f6f2;
  --muted:#65737a;
  --line:#d7dfdb;
  --white:#fff;
  --radius:18px;
  --shadow:0 16px 42px rgba(21,45,53,.09);
}

/* Product typography: sturdy, technical UI type; the softer wordmark stays distinct. */
html,body,
.print-sheet,
.body-chart-y-label,.body-chart-x-label,
.admin-tag-code-link span{
  font-family:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
}

/* Small interface copy needs more substance on compact mobile cards. */
small,
.home-goals-copy em,
.member-connection-card p,
.home-trainer-card p{
  font-weight:500;
}

html[data-theme="light"],html[data-theme="light"] body{background:var(--brand-paper);color:var(--brand)}

/* Official GymDigital artwork: black on light surfaces, white on dark surfaces. */
.brand,.brand:not(.brand-invert){
  width:170px;
  height:34px;
  min-width:170px;
  flex:0 0 170px;
  background:center/contain no-repeat url('/assets/brand/logo-light.svg?v=17')!important;
}
.brand>.brand-mark,.brand>.mark,.brand>strong{display:none!important}
.brand-invert,.brand.invert,
html[data-theme="dark"] .brand:not(.brand-invert){
  background-image:url('/assets/brand/logo-dark.svg?v=17')!important;
}
html[data-theme="dark"] body.area-print .brand:not(.brand-invert){
  background-image:url('/assets/brand/logo-light.svg?v=17')!important;
}

.eyebrow{color:var(--brand);letter-spacing:.15em}
.button,.scan-button,.training-scan-cta{background:var(--brand);color:#fff;box-shadow:none}
.button:hover,.scan-button:hover,.training-scan-cta:hover{background:var(--brand-hover);filter:none}
.button-ghost{border:1px solid var(--brand-line);background:#eef3f0;color:var(--brand)}
.button-dark{background:var(--brand);color:#fff}
.button-dark:hover{background:var(--brand-hover)}

.topbar{background:#fff;border-color:var(--brand-line);box-shadow:none}
.topbar nav a,.link-button{color:#53636a}
.topbar nav a:hover{color:var(--brand)}
.panel,.stat-grid article,.equipment-card,.history-row,.studio-chip,.plan-card,.badge-card,.reward-card,.message-card{
  border-color:var(--brand-line);
  background:var(--brand-surface);
  box-shadow:0 5px 18px rgba(21,45,53,.045);
}
.next-step,.notice,.active-session,.plan-context,.tracking-card,.member-connection-card.is-connected,.conversation-notification{
  border-color:#bdd7c7;
  background:var(--brand-soft);
  color:var(--brand);
  box-shadow:none;
}
.next-step .eyebrow,.next-step h2,.next-step p{color:var(--brand)}
.status.active,.badge-points,.reward-redemption-status.status-redeemed{background:var(--brand-soft);color:var(--brand)}
.bottom-nav .active,.studio-chip span{color:var(--brand)}
.bottom-nav .active{background:var(--brand-soft)}
.member-plan-card>strong,
.home-stat-linked>a,
.home-shortcuts b,
.member-stat-action,
.home-active-actions :is(a,button),
.home-coach-compact>a,
.home-goals-arrow{
  color:var(--brand);
}
.home-stat-linked>a,.home-coach-compact>a{background:#edf3f0}
input:focus,textarea:focus,select:focus{border-color:#6d998a;box-shadow:0 0 0 3px rgba(109,153,138,.18)}
input[type="radio"],input[type="checkbox"]{accent-color:var(--brand)}
.setting-toggle-control input:checked+.setting-toggle-track,.visibility-switch>input:checked+.switch-track{background:var(--brand)}
.setting-toggle-control input:checked+.setting-toggle-track:after,.visibility-switch>input:checked+.switch-track i{background:#fff}
.theme-picker-option.is-selected{background:var(--brand-soft);color:var(--brand)}
.theme-picker-menu{grid-template-columns:repeat(2,1fr)}
.account-menu-utility .account-theme-options{grid-template-columns:repeat(2,40px)}

/* Public demo entry uses the same calm light identity as the operator product. */
.demo-entry-page{background:var(--brand-paper);color:var(--brand)}
.demo-entry-head .pill{background:var(--brand-soft);color:var(--brand)}
.demo-intro dl,.demo-role-card{border-color:var(--brand-line);background:#fff;box-shadow:0 8px 26px rgba(21,45,53,.055)}
.demo-intro dl div{border-color:var(--brand-line)}
html[data-theme="light"] .demo-role-card.demo-role-primary{
  border-color:#bad8c6;
  background:var(--brand-soft);
  color:var(--brand);
  box-shadow:none;
}
html[data-theme="light"] .demo-role-primary .demo-role-number{background:var(--brand);color:#fff}
html[data-theme="light"] .demo-role-primary .button-dark{background:var(--brand);color:#fff}
.demo-entry-note{background:var(--brand);color:#fff;box-shadow:none}
.demo-entry-note span{color:#d6e3de}
.demo-bar{border:0;background:transparent;box-shadow:none}
.demo-bar>summary{border-color:rgba(212,236,221,.3);background:rgba(21,45,53,.96);color:#fff;box-shadow:0 8px 22px rgba(21,45,53,.18)}
.demo-bar strong{border-color:rgba(212,236,221,.34);background:rgba(212,236,221,.12);color:var(--brand-soft)}
.demo-bar a{color:var(--brand-soft);text-decoration-color:rgba(212,236,221,.5)}
html[data-theme="light"] .demo-bar>summary{
  border-color:var(--brand-line);
  background:rgba(255,255,255,.97);
  color:var(--brand);
  box-shadow:0 8px 22px rgba(21,45,53,.12);
}
html[data-theme="light"] .demo-bar>summary>span{background:#6d998a;box-shadow:0 0 0 3px rgba(109,153,138,.14)}
html[data-theme="light"] .demo-bar>summary>strong{color:var(--brand)}
html[data-theme="light"] .demo-bar>summary>svg{stroke:var(--brand)}
html[data-theme="light"] .demo-bar-menu{
  border-color:var(--brand-line);
  background:rgba(255,255,255,.98);
  color:var(--brand);
  box-shadow:0 16px 38px rgba(21,45,53,.14);
}
html[data-theme="light"] .demo-bar-menu>small{color:var(--brand-muted)}
html[data-theme="light"] .demo-bar-menu button{
  background:#edf3f0;
  color:var(--brand);
}
html[data-theme="light"] .demo-bar-menu button:hover,
html[data-theme="light"] .demo-bar-menu button:focus-visible{background:var(--brand-soft);color:var(--brand)}
html[data-theme="light"] .demo-bar-menu .demo-exit{background:transparent;color:var(--brand-muted)}
html[data-theme="light"] .demo-bar-menu .demo-exit:hover,
html[data-theme="light"] .demo-bar-menu .demo-exit:focus-visible{background:#f2f4f2;color:var(--brand)}

/* Functional scan marks remain visible, but use the restrained brand palette. */
.brand-mark,.scan-button .brand-mark,.scan-app-icon,html[data-theme="light"] .scan-button .brand-mark{
  background-image:url('/assets/brand/signet-light.svg?v=17');
}
.scan-frame{border-color:var(--brand-soft-strong)}
.member-training-actions .scan-button[data-scan-open]::before{display:none}
.member-training-actions .scan-button[data-scan-open]>.home-scan-frame-icon{
  display:block;
  width:28px;
  height:28px;
  flex:0 0 28px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.home-active-continue[data-scan-open]::before{display:none}
.home-active-continue[data-scan-open]>.home-scan-frame-icon{
  display:block;
  width:24px;
  height:24px;
  flex:0 0 24px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}
/* Draw the functional scan symbol in CSS so iOS cannot turn a failed SVG mask
   into a solid white tile. */
[data-scan-open]::before{
  background:
    linear-gradient(currentColor,currentColor) left top/8px 2px no-repeat,
    linear-gradient(currentColor,currentColor) left top/2px 8px no-repeat,
    linear-gradient(currentColor,currentColor) right top/8px 2px no-repeat,
    linear-gradient(currentColor,currentColor) right top/2px 8px no-repeat,
    linear-gradient(currentColor,currentColor) left bottom/8px 2px no-repeat,
    linear-gradient(currentColor,currentColor) left bottom/2px 8px no-repeat,
    linear-gradient(currentColor,currentColor) right bottom/8px 2px no-repeat,
    linear-gradient(currentColor,currentColor) right bottom/2px 8px no-repeat,
    linear-gradient(currentColor,currentColor) center/12px 2px no-repeat;
  -webkit-mask:none;
  mask:none;
}

/* Goals use the calm Sage/Teal palette instead of the former lime accent. */
html[data-theme="light"] :is(.home-goals-card,.home-goal-tile){
  border-color:#bad8c6;
  background:linear-gradient(135deg,#eef7f1,#fff);
  box-shadow:0 8px 24px rgba(21,45,53,.055);
}
html[data-theme="light"] :is(.home-goals-card,.home-goal-tile):hover{border-color:#8fb4a7}
html[data-theme="light"] .home-goals-start-icon{
  background:var(--brand-soft);
  color:var(--brand);
}
html[data-theme="light"] :is(.home-goals-arrow,.home-goal-tile-head b){
  background:#e4f1e9;
  color:var(--brand);
}
html[data-theme="light"] :is(.home-goals-copy small,.home-goal-tile-head small,.home-goals-dialog-head .eyebrow,.home-goals-settings-link){color:#52796d}
html[data-theme="light"] .home-goal-ring circle{stroke:#d8e6df}
html[data-theme="light"] .home-goal-ring .home-goal-ring-value{stroke:#6d998a}

/* Dashboard trends and navigation arrows no longer use the old lime accent. */
html[data-theme="light"] .home-weight-trend .home-weight-curve{stroke:#52796d}
html[data-theme="light"] .home-weight-trend circle{fill:#8fb4a7}
html[data-theme="light"] :is(.home-coach-toggle,.home-achievement-card>b){
  background:#edf3f0;
  color:var(--brand);
}
html[data-theme="light"] .home-coach-details[open] .home-coach-toggle{
  background:var(--brand-soft);
  color:var(--brand);
}
html[data-theme="light"] .demo-scanner-intro{
  border-color:#bad8c6;
  background:#eef7f1;
}
html[data-theme="light"] .demo-scanner-intro>span{
  background:var(--brand-soft);
  color:var(--brand);
}
html[data-theme="light"] .demo-scanner-intro small{color:var(--brand-muted)}

/* Equipment view and running-workout strip follow the refreshed palette. */
.active-training-strip{
  border-bottom-color:rgba(212,236,221,.2);
  background:var(--brand);
}
.active-training-strip .live-dot{
  background:#8fb4a7;
  box-shadow:0 0 0 4px rgba(212,236,221,.13);
}
.active-training-strip-time,
.active-training-strip-action-icon{color:var(--brand-soft)}
.active-training-strip :is(a,button):hover{color:var(--brand-soft)}
html[data-theme="light"] .equipment-primary-guide .equipment-detail-row>summary:after,
html[data-theme="light"] .coach-accordion-summary>b{
  background:#edf3f0;
  color:var(--brand);
}
html[data-theme="light"] .equipment-primary-guide .equipment-detail-row[open]>summary:after{
  background:linear-gradient(var(--brand),var(--brand)) center/13px 3px no-repeat,var(--brand-soft);
  color:var(--brand);
}
html[data-theme="light"] .coach-accordion[open]>.coach-accordion-summary>b{
  background:var(--brand-soft);
  color:var(--brand);
}
html[data-theme="light"] .coach-accordion-meta{
  background:#e4f1e9;
  color:var(--brand);
}
html[data-theme="light"] .coach-label{color:#52796d}
html[data-theme="light"] .coach-why summary{
  color:var(--brand);
  text-decoration-color:#8fb4a7;
}
html[data-theme="dark"] .coach-why summary{
  color:var(--brand-soft);
  text-decoration-color:#6d998a;
}
.coach-accordion-summary>b{position:relative}
.coach-accordion[open]>.coach-accordion-summary>b:after{
  position:absolute;
  top:50%;
  left:50%;
  width:13px;
  height:2px;
  border-radius:999px;
  background:currentColor;
  content:"";
  transform:translate(-50%,-50%);
}

/* Optional member dark mode: neutral surfaces, no neon or coloured glow. */
html[data-theme="dark"]{
  --ink:#f1f4f2;
  --paper:#101516;
  --muted:#a2abad;
  --line:#30383a;
  --white:#171d1f;
  --lime:#d4ecdd;
  --shadow:0 14px 36px rgba(0,0,0,.28);
}
html[data-theme="dark"],html[data-theme="dark"] body{background:#101516;color:#eef2ef}
html[data-theme="dark"] .topbar{background:#121819;border-color:#2d3638}
html[data-theme="dark"] :is(.panel,.stat-grid article,.equipment-card,.empty,.history-list,.history-row,.studio-chip,.instruction-card,.member-plan-card,.progress-grid article,.join-card,.plan-card,.operator-review,.message-card,.auth-panel,.auth-card){
  border-color:#30383a;
  background:#171d1f;
  color:#eef2ef;
  box-shadow:none;
}
html[data-theme="dark"] :is(.next-step,.notice,.active-session,.plan-context,.tracking-card,.member-connection-card.is-connected,.conversation-notification){
  border-color:#35413e;
  background:#1b2423;
  color:#eef2ef;
  box-shadow:none;
}
html[data-theme="dark"] :is(.next-step,.notice,.active-session,.plan-context,.tracking-card) :is(h1,h2,h3,strong){color:#f3f5f3}
html[data-theme="dark"] :is(.button,.scan-button,.training-scan-cta){background:var(--brand-soft);color:#152d35}
html[data-theme="dark"] :is(.button,.scan-button,.training-scan-cta):hover{background:#e1f2e7}
html[data-theme="dark"] .button-ghost{border-color:#364043;background:#222a2c;color:#eef2ef}
html[data-theme="dark"] .brand{color:#f2f5f2}
html[data-theme="dark"] .bottom-nav .active{background:#222d2b;color:#d4ecdd}
html[data-theme="dark"] :is(.member-plan-card>strong,.home-stat-linked>a,.home-shortcuts b,.member-stat-action,.home-active-actions a,.home-active-actions button,.home-coach-compact>a,.home-goals-arrow){color:var(--brand-soft)}
html[data-theme="dark"] :is(.home-stat-linked>a,.home-coach-compact>a){background:#252d31}

/* Gamification in dark mode stays restrained: colour identifies badge families,
   while surfaces, labels and points remain neutral Sage/Teal. */
html[data-theme="dark"] .achievement-summary{
  border:1px solid #30383a;
  background:#171d1f;
  color:#eef2ef;
  box-shadow:none;
}
html[data-theme="dark"] .achievement-summary>div:first-child{
  border-color:#52796d;
  background:#1d2828;
}
html[data-theme="dark"] .achievement-summary>div:first-child small{color:#b7cbc3}
html[data-theme="dark"] .achievement-summary .eyebrow{color:#8fb4a7}
html[data-theme="dark"] .achievement-summary p:last-child{color:#a2abad}
html[data-theme="dark"] .badge-card{--badge-accent:#6d998a}
html[data-theme="dark"] .badge-card.badge-tone-blue{--badge-accent:#72a7b8}
html[data-theme="dark"] .badge-card.badge-tone-violet{--badge-accent:#9080a8}
html[data-theme="dark"] .badge-card.badge-tone-orange{--badge-accent:#ba8664}
html[data-theme="dark"] .badge-card.badge-tone-gold{--badge-accent:#bea45a}
html[data-theme="dark"] .badge-card.badge-tone-aqua{--badge-accent:#66a69a}
html[data-theme="dark"] .badge-card.badge-tone-pink{--badge-accent:#aa788b}
html[data-theme="dark"] .badge-card.badge-tone-legend{--badge-accent:#a99567}
html[data-theme="dark"] .badge-card>div>small{color:#8fa29c}
html[data-theme="dark"] .badge-points{
  border:1px solid #354441;
  background:#222b2d;
  color:#c8ddd5;
}
html[data-theme="dark"] .badge-card-meta time{color:#a2abad}
html[data-theme="dark"] .gamification-section-nav a:hover,
html[data-theme="dark"] .studio-feature-nav a.is-active{
  background:#d4ecdd;
  color:#152d35;
}

/* The public demo chooser is deliberately light-only, even when a stale member
   preference or cached script leaves data-theme="dark" on the document. */
html[data-theme="dark"] body.area-auth .demo-entry-page{
  background:var(--brand-paper);
  color:var(--brand);
}
html[data-theme="dark"] body.area-auth .demo-entry-page .brand{color:var(--brand)}
html[data-theme="dark"] body.area-auth .demo-entry-page .pill{background:var(--brand-soft);color:var(--brand)}
html[data-theme="dark"] body.area-auth .demo-entry-page .demo-intro dl,
html[data-theme="dark"] body.area-auth .demo-entry-page .demo-role-card{
  border-color:var(--brand-line);
  background:#fff;
  color:var(--brand);
  box-shadow:0 8px 26px rgba(21,45,53,.055);
}
html[data-theme="dark"] body.area-auth .demo-entry-page .demo-intro dl div{border-color:var(--brand-line)}
html[data-theme="dark"] body.area-auth .demo-entry-page :is(.demo-intro>div>p:last-child,.demo-intro dd,.demo-role-card>p:not(.eyebrow)){color:var(--brand-muted)}
html[data-theme="dark"] body.area-auth .demo-entry-page .demo-role-card.demo-role-primary{
  border-color:#bad8c6;
  background:var(--brand-soft);
  color:var(--brand);
  box-shadow:none;
}
html[data-theme="dark"] body.area-auth .demo-entry-page .demo-role-primary .demo-role-number{background:var(--brand);color:#fff}
html[data-theme="dark"] body.area-auth .demo-entry-page .demo-role-primary .button-dark{background:var(--brand);color:#fff}
html[data-theme="dark"] body.area-auth .demo-entry-page .demo-entry-note{background:var(--brand);color:#fff}
html[data-theme="dark"] body.area-auth .demo-entry-page .demo-entry-note span{color:#d6e3de}

@media(max-width:350px){.account-menu-utility .account-theme-options{grid-template-columns:repeat(2,36px)}}

@media(max-width:760px){
  .demo-entry-head{padding-right:0}
  .demo-entry-head>.pill{transform:translateY(-8px)}
}
/* Training history: keep the edit action legible on both member themes. */
html[data-theme="light"] .training-entry-edit {
  border-color: #bad8c6;
  background: #edf3f0;
  color: var(--brand);
}

html[data-theme="light"] .training-entry-edit:hover,
html[data-theme="light"] .training-entry-edit:focus-visible {
  border-color: #8fb4a7;
  background: var(--brand-soft);
  color: var(--brand);
}

html[data-theme="dark"] .training-entry-edit {
  border-color: #42534f;
  background: #222b2d;
  color: var(--brand-soft);
}

html[data-theme="dark"] .training-entry-edit:hover,
html[data-theme="dark"] .training-entry-edit:focus-visible {
  border-color: #6d998a;
  background: #293836;
  color: #fff;
}

.training-entry-dialog:focus {
  outline: 0;
}

/* Weekly training target: replace the remaining lime selection state. */
html[data-theme="light"] .training-target-picker input:checked + span {
  border-color: #6d998a;
  background: #e9f3ed;
  box-shadow: inset 0 0 0 1px #6d998a;
  color: var(--brand);
}

html[data-theme="dark"] .training-target-picker input:checked + span {
  border-color: #6d998a;
  background: #24332f;
  box-shadow: inset 0 0 0 1px #6d998a;
  color: #fff;
}

/* Goal sliders: Deep Teal progress with a Sage handle instead of legacy green. */
html[data-theme="light"] .goal-slider-range {
  border-color: #aebcb7 !important;
  background: linear-gradient(90deg, var(--brand) 0 var(--goal-slider-progress), #d7dfdb var(--goal-slider-progress) 100%) !important;
}

html[data-theme="light"] .goal-slider-range::-webkit-slider-thumb {
  border-color: var(--brand) !important;
  background: var(--brand-soft) !important;
  box-shadow: 0 0 0 2px #fff, 0 4px 12px rgba(21,45,53,.22) !important;
}

html[data-theme="light"] .goal-slider-range::-moz-range-progress {
  background: var(--brand) !important;
}

html[data-theme="light"] .goal-slider-range::-moz-range-track {
  background: #d7dfdb !important;
}

html[data-theme="light"] .goal-slider-range::-moz-range-thumb {
  border-color: var(--brand) !important;
  background: var(--brand-soft) !important;
  box-shadow: 0 0 0 2px #fff, 0 4px 12px rgba(21,45,53,.22) !important;
}

html[data-theme="dark"] .goal-slider-range {
  border-color: #42534f !important;
  background: linear-gradient(90deg, var(--brand-soft) 0 var(--goal-slider-progress), #354441 var(--goal-slider-progress) 100%) !important;
}

html[data-theme="dark"] .goal-slider-range::-webkit-slider-thumb,
html[data-theme="dark"] .goal-slider-range::-moz-range-thumb {
  border-color: #101619 !important;
  background: var(--brand-soft) !important;
}

/* Progress charts: remove the remaining legacy lime curve. */
html[data-theme="light"] .body-chart-line {
  stroke: var(--brand);
}

html[data-theme="light"] .body-chart-point {
  fill: var(--brand-soft);
  stroke: var(--brand);
}

html[data-theme="dark"] .body-chart-line {
  stroke: var(--brand-soft);
}

html[data-theme="dark"] .body-chart-point {
  fill: var(--brand-soft);
  stroke: #101619;
}

/* GymDigital Guide: calm, person-free recommendations. */
.home-guide-dashboard .home-guide-compact{
  min-height:0;
  grid-template-columns:minmax(0,1fr) 46px;
  gap:18px;
  padding:20px 22px;
}
.home-guide-dashboard .home-guide-compact>div{align-self:center;padding:0}
.home-guide-dashboard .home-guide-compact small{display:block;margin-bottom:5px;font-size:11px;font-weight:800;letter-spacing:.09em}
.home-guide-dashboard .home-guide-compact h2{margin:0 0 7px}
.home-guide-dashboard .home-guide-compact p{margin:0}
.guide-recommendation-link{
  display:flex;
  width:max-content;
  max-width:calc(100% - 32px);
  align-items:center;
  gap:7px;
  margin:14px 16px 0;
  padding:4px 0;
  border:0;
  background:transparent;
  color:#52796d;
  font:inherit;
  font-size:13px;
  font-weight:750;
  text-align:left;
  cursor:pointer;
}
.guide-recommendation-link>span{font-size:16px}
.guide-recommendation-link>b{font-size:16px;font-weight:600;transition:transform .18s ease}
.guide-recommendation-link:hover b,.guide-recommendation-link:focus-visible b{transform:translateX(3px)}
.guide-recommendation-link:focus-visible{outline:2px solid #52796d;outline-offset:4px;border-radius:3px}
.guide-recommendation-dialog{width:min(560px,calc(100% - 24px));padding:0 24px 24px}
.guide-recommendation-head{padding:8px 30px 18px 0;border-bottom:1px solid var(--line)}
.guide-recommendation-head .eyebrow{margin:0 0 7px;color:#52796d}
.guide-recommendation-head h2{margin:0 0 8px;font-size:29px;line-height:1.12}
.guide-recommendation-head>p:last-child{margin:0;color:var(--muted);font-weight:750}
.guide-recommendation-reason{margin:18px 0;padding:16px;border:1px solid var(--line);border-radius:15px;background:#f7f9f7}
.guide-recommendation-reason strong{display:block;margin-bottom:6px}
.guide-recommendation-reason p{margin:0;color:var(--muted);line-height:1.5}
.guide-recommendation-apply{width:100%}
html[data-theme="dark"] .guide-recommendation-link{color:#bad8c6}
html[data-theme="dark"] .guide-recommendation-head .eyebrow{color:#bad8c6}
html[data-theme="dark"] .guide-recommendation-reason{border-color:#303a3f;background:#1b2327}
@media(max-width:700px){
  .home-guide-dashboard .home-guide-compact{min-height:0;grid-template-columns:minmax(0,1fr) 42px;gap:13px;padding:18px 16px 17px 18px}
  .home-guide-dashboard .home-guide-compact h2{font-size:24px}
  .guide-recommendation-dialog{width:100%;max-width:none;margin:auto 0 0;padding:0 18px calc(22px + env(safe-area-inset-bottom));border-radius:26px 26px 0 0}
  .guide-recommendation-head h2{font-size:26px}
}
@media(max-width:430px){
  .home-guide-dashboard .home-guide-compact{grid-template-columns:minmax(0,1fr) 40px;padding:16px 12px 15px 16px}
  .home-guide-dashboard .home-guide-compact h2{font-size:22px}
}

/* Completed daily goals: quiet Sage status surface, never yellow-lime. */
html[data-theme="light"] .daily-goal-row.is-done {
  border-color: #bad8c6;
  background: #f0f6f2;
}

html[data-theme="light"] .daily-goal-row.is-done > b {
  border-color: var(--brand-soft-strong);
  background: var(--brand-soft);
  color: var(--brand);
}

html[data-theme="dark"] .daily-goal-row.is-done {
  border-color: #42534f;
  background: #1c2826;
}

html[data-theme="dark"] .daily-goal-row.is-done > b {
  border-color: #42534f;
  background: #293b36;
  color: var(--brand-soft);
}

/* Leaderboard: highlight the current member with Sage instead of lime. */
html[data-theme="light"] .leaderboard-row.is-you {
  background: #edf3f0;
  box-shadow: inset 3px 0 var(--brand-soft-strong);
}

html[data-theme="dark"] .leaderboard-row.is-you {
  background: #1c2826;
  box-shadow: inset 3px 0 #42534f;
}

/* Ranking points guide follows the selected light theme instead of forcing dark. */
html[data-theme="light"] .member-points-guide {
  border-color: var(--brand-line);
  background: var(--brand-surface);
  color: var(--brand);
  box-shadow: 0 5px 18px rgba(21,45,53,.045);
}

html[data-theme="light"] .member-points-guide-head .eyebrow,
html[data-theme="light"] .member-points-reward-entry small {
  color: #52796d;
}

html[data-theme="light"] .member-points-guide-head > div > p:last-child,
html[data-theme="light"] .member-points-rules p,
html[data-theme="light"] .member-points-daily-cap,
html[data-theme="light"] .member-points-reward-entry span,
html[data-theme="light"] .member-points-fairness {
  color: var(--brand-muted);
}

html[data-theme="light"] .member-points-rules article {
  border-color: var(--brand-line);
  background: #f4f7f5;
}

html[data-theme="light"] .member-points-rules article > strong {
  background: var(--brand-soft);
  color: var(--brand);
}

html[data-theme="light"] .member-points-daily-cap strong,
html[data-theme="light"] .member-points-fairness strong {
  color: var(--brand);
}

html[data-theme="light"] .member-points-reward-entry {
  background: #edf3f0;
}

html[data-theme="light"] .member-points-fairness {
  border-top-color: var(--brand-line);
}

/* Reward balance uses the light product surface when Light Mode is active. */
html[data-theme="light"] .reward-wallet {
  border: 1px solid var(--brand-line);
  background: var(--brand-surface);
  color: var(--brand);
  box-shadow: 0 5px 18px rgba(21,45,53,.045);
}

html[data-theme="light"] .reward-wallet small {
  color: #52796d;
}

html[data-theme="light"] .reward-wallet strong {
  color: var(--brand);
}

html[data-theme="light"] .reward-wallet span,
html[data-theme="light"] .reward-wallet p {
  color: var(--brand-muted);
}

/* Inbox conversation type: Sage/Teal instead of yellow-lime. */
html[data-theme="light"] .inbox-kind.evaluation {
  background: #e9f3ed;
  color: var(--brand);
}

html[data-theme="dark"] .inbox-kind.evaluation {
  background: #24332f;
  color: var(--brand-soft);
}
