/* UNKWN PASS291 — stable foundation extraction
   Order is intentionally preserved: PASS272 accessibility -> PASS274 typography -> PASS282 design tokens.
   No business logic or state lives here. */

/* extracted from #pass272-accessibility-quality; PASS291 preserves original cascade order */
/* Keyboard focus and text selection remain independent of pointer styling. */
:where(button,a,input,textarea,select,summary,[tabindex]):focus-visible{outline:2px solid #f2c961!important;outline-offset:3px!important;scroll-margin-block:6rem}
.pass272-field-label,.pass272-custom-field>span{display:block;margin:0 0 .4rem;color:#bdb3a2;font-size:.75rem;line-height:1.45;letter-spacing:.04em}
.pass272-custom-field{display:block;min-width:0}
.pass272-custom-field input{box-sizing:border-box;width:100%;min-width:0;font-size:1rem}
.pass272-field-error{color:#ff9292;font-size:.8125rem;line-height:1.5;margin:.4rem 0}
.pass272-field-error:empty{display:none}
.pass272-search-status{color:#bdb3a2;font-size:.8125rem;line-height:1.5;margin:.5rem 0}
.pass272-food-source{color:var(--gold);font-size:.75rem;line-height:1.45;margin-top:.25rem;overflow-wrap:anywhere}
#food-overlay button,.fuel-sheet button,.fuel-meal-group button,.hour-slot button{min-width:44px;min-height:44px}
.fuel-meal-remove{width:44px;height:44px;flex-basis:44px}
.fuel-meal-item-name{overflow-wrap:anywhere}
.fuel-meal-total,.fuel-meal-item-macros{white-space:normal;overflow-wrap:anywhere;line-height:1.45}
.fuel-context-bar{grid-template-columns:repeat(2,minmax(0,1fr))}
.fuel-context-btn{min-width:0}
.fuel-context-btn small{font-size:.6875rem;color:#bdb3a2;line-height:1.4}
.fuel-context-btn strong{white-space:normal;overflow:visible;overflow-wrap:anywhere;font-size:.875rem}
.fuel-sheet-backdrop{box-sizing:border-box;overflow-y:auto}
.fuel-sheet{box-sizing:border-box;max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);overflow-y:auto;overscroll-behavior:contain;scroll-padding-block:1rem}
.fuel-sheet-title{font-size:1.0625rem;line-height:1.4}
.fuel-sheet-sub{color:#bdb3a2;font-size:.8125rem;line-height:1.5}
.fuel-label-choice{font-size:.75rem;overflow-wrap:anywhere;padding:.65rem}
.fuel-label-choice[aria-pressed="true"]{text-decoration:underline;text-underline-offset:.25em;border-width:2px}
.fuel-time-input{font-size:1.625rem}
.fuel-time-quick{grid-template-columns:repeat(auto-fit,minmax(3.2rem,1fr))}
.fuel-time-quick button{font-size:.75rem}
.fuel-sheet-cancel{width:100%;margin-top:.5rem;border:1px solid #615747;border-radius:13px;background:#14120e;color:#e7ddcb;font:inherit;font-size:.8125rem}
.fuel-plate-summary{flex-wrap:wrap}
.fuel-plate-summary>div{min-width:0}
.fuel-plate-actions{grid-template-columns:minmax(44px,auto) minmax(0,1fr)}
.fuel-plate-actions button{white-space:normal;overflow-wrap:anywhere;padding:.7rem}
.fuel-plate-count{font-size:.75rem}
.fuel-plate-macros{font-size:.75rem;color:#bdb3a2;overflow-wrap:anywhere}
#screen-onboarding .option-btn[aria-pressed="true"]{text-decoration:underline;text-underline-offset:.25em}
#screen-onboarding .option-btn{white-space:normal;overflow-wrap:anywhere}
#screen-onboarding .counter-btn{min-width:44px;min-height:44px}
@media(max-width:360px){.fuel-context-btn strong{font-size:.875rem}.fuel-time-input{font-size:1.5rem}}
@media(prefers-reduced-motion:reduce){.unkwn-auth-progress::after{animation:none!important}#food-overlay *,#fuel-meal-setup *{scroll-behavior:auto!important;transition:none!important}}
@media(prefers-contrast:more){.fuel-context-btn,.fuel-time-panel,.fuel-label-choice,.fuel-meal-pill{border-color:#bdb3a2}.fuel-context-btn small,.fuel-sheet-sub,.fuel-meal-item-macros,.fuel-meal-total{color:#ded5c5}}
@media(forced-colors:active){:where(button,input,select,textarea):focus-visible{outline:2px solid Highlight!important}.fuel-label-choice[aria-pressed="true"],#screen-onboarding .option-btn[aria-pressed="true"]{border:2px solid Highlight!important}.fuel-sheet,.fuel-context-btn{border:1px solid CanvasText}}


/* extracted from #pass274-typography-system; PASS291 preserves original cascade order */
:root{
  --font-display:'Marcellus', Georgia, 'Times New Roman', serif;
  --font-athlete:'Barlow Condensed','Arial Narrow',system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-ui:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  --font-body:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  --font-numeric:'Barlow Condensed','Arial Narrow','Inter',system-ui,sans-serif;
}
/* Everyday reading stays modern and effortless. */
html,body{font-family:var(--font-body)!important;}
p,li,dd,dt,blockquote,.muted,.sub,.subtitle,.description,.body-copy,.coach-message,.coach-response,
input,textarea,select,option,[contenteditable="true"]{font-family:var(--font-body)!important;}
/* Ceremonial / identity moments retain the classical forged voice. */
h1,h2,.unkwn-auth-wait-wordmark,.shield-command-title,.session-forged-sheet h2,
.uwf-confirm-title,.uwf-forged-toast .big,.fuel-sheet-title,.fuel-lens-header h2,.forge-kitchen-header h2,
.fuel-label-capture h3,.forge-kitchen-command h3,.forge-recipe-empty h3,.forge-recipe-detail h3,
.evolution-proof-237>h2{font-family:var(--font-display)!important;font-weight:400;}
/* Performance UI gets a tighter athletic voice instead of classical text everywhere. */
h3,.btn,button,.nav-label,.bottom-nav,.tab,.chip,.badge,label,summary,
.uwf-title,body.unkwn-workout-mode .wx-head h2,.uwg-set-number,.uwg-big-input,
.uwg-rest-brand span,.uwg-rest-kicker,.uwg-ring-center .timer-val,.uwg-exercise-count span,
.shield-command-kicker,.shield-command-start,.shield-command-snapshot strong,
.coach-call-headline,.fuel-verdict-236 h3,.evolution-proof-card>strong,.session-forged-proof strong,
.session-forged-primary,.fuel-visible-heading h3,.coach-card h3,.evolution-card h3,.fuel-card h3,
.first-week-path-243 h3,.first-week-steps strong,.fuel-intel-head h3,.fuel-intel-launch strong,
.fuel-result-head h3,.forge-recipe-card h3,.forge-recipe-macros b,.week-workout-preview .wwp-title,
.fuel-meal-item-name,.fuel-context-btn strong,.fuel-plate-count,.fuel-label-choice{font-family:var(--font-athlete)!important;}
/* Numeric data should scan fast during training. */
.timer-val,.fuel-time-input,input[type="number"],.metric-value,.stat-value,.value,.score,
.uwg-big-input,.uwg-set-number,.uwg-exercise-count span,.evolution-proof-card>strong,.session-forged-proof strong{
  font-family:var(--font-numeric)!important;font-variant-numeric:tabular-nums;
}
/* Classical face needs less artificial tracking; athletic labels can carry the forged spacing. */
h1,h2,.shield-command-title,.session-forged-sheet h2{letter-spacing:.02em!important;}
button,.btn,.nav-label,.tab,.chip,.badge,.uwg-kicker,.shield-command-kicker{letter-spacing:.075em;}
/* Preserve mobile readability / accessibility. */
input,textarea,select{font-size:max(16px,1em);}


/* extracted from #pass282-design-system-tokens; PASS291 preserves original cascade order */
:root{
  /* Core surfaces */
  --u-bg-base:#050505;
  --u-surface-1:#111111;
  --u-surface-2:#171717;
  --u-surface-3:#202020;
  --u-surface-input:#0d0d0d;

  /* Brand + content */
  --u-gold:#c9a85c;
  --u-gold-bright:#e0c070;
  --u-gold-deep:#a67c3d;
  --u-steel:#8b9098;
  --u-text:#f2f0eb;
  --u-text-muted:#8a8c92;
  --u-success:#3d9b6a;
  --u-danger:#c45c5c;

  /* Borders */
  --u-border-subtle:rgba(255,255,255,.08);
  --u-border-strong:rgba(255,255,255,.12);
  --u-border-gold:rgba(201,168,92,.28);
  --u-border-gold-strong:rgba(201,168,92,.48);

  /* Spacing — 4px foundation */
  --u-space-1:4px;
  --u-space-2:8px;
  --u-space-3:12px;
  --u-space-4:16px;
  --u-space-5:20px;
  --u-space-6:24px;
  --u-space-7:32px;
  --u-space-8:40px;
  --u-space-9:48px;
  --u-card-pad:18px;

  /* Radius hierarchy */
  --u-radius-xs:8px;
  --u-radius-sm:10px;
  --u-radius-md:14px;
  --u-radius-lg:18px;
  --u-radius-xl:22px;
  --u-radius-pill:999px;

  /* Elevation — ordinary surfaces stay quiet; gold is earned */
  --u-shadow-surface:0 10px 32px rgba(0,0,0,.28);
  --u-shadow-raised:0 18px 45px rgba(0,0,0,.34);
  --u-shadow-overlay:0 24px 70px rgba(0,0,0,.56);
  --u-shadow-gold-focus:0 8px 24px rgba(201,168,92,.12);
  --u-shadow-gold-active:0 6px 24px rgba(201,168,92,.28);
  --u-glow-selected:0 0 18px rgba(201,168,92,.24);

  /* Interaction */
  --u-focus-ring:0 0 0 3px rgba(224,192,112,.24);
  --u-touch-target:44px;

  /* Compatibility aliases — existing systems inherit one source of truth. */
  --bg:var(--u-bg-base);
  --bg-card:var(--u-surface-1);
  --bg-elevated:var(--u-surface-2);
  --bg-raised:var(--u-surface-3);
  --gold:var(--u-gold);
  --gold-bright:var(--u-gold-bright);
  --forge:var(--u-gold-deep);
  --steel:var(--u-steel);
  --text:var(--u-text);
  --text-muted:var(--u-text-muted);
  --success:var(--u-success);
  --danger:var(--u-danger);
  --border-soft:var(--u-border-subtle);
  --border-gold:var(--u-border-gold);
  --shadow-card:var(--u-shadow-surface);
  --radius:var(--u-radius-md);
  --unkwn-radius:var(--u-radius-lg);
  --u-touch-min:var(--u-touch-target);
}

/* Shared surfaces: one quiet material language. */
.card{
  border-radius:var(--u-radius-md);
  padding:var(--u-card-pad);
  border-color:var(--u-border-subtle);
  box-shadow:var(--u-shadow-surface),0 1px 0 rgba(255,255,255,.03) inset;
}

/* Shared controls: same geometry and interaction language across tabs. */
.btn,button,input,select,textarea{min-height:var(--u-touch-target);}
.btn{border-radius:var(--u-radius-md);}
.btn-primary{
  border-radius:var(--u-radius-md);
  box-shadow:var(--u-shadow-gold-focus);
}
.btn-primary:hover,.btn-primary:active{box-shadow:var(--u-shadow-gold-active);}
.btn-secondary{border-color:var(--u-border-strong);}
input:not([type="checkbox"]):not([type="radio"]),select,textarea{
  border-radius:var(--u-radius-sm);
}

/* Focus is consistent, visible, and does not rely on color alone. */
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:2px solid var(--u-gold-bright)!important;
  outline-offset:2px;
  box-shadow:var(--u-focus-ring);
}

/* Pills/chips have one canonical silhouette. */
:where(.chip,.badge,.adaptive-status-chip,.bp-strategy-phase){border-radius:var(--u-radius-pill);}

/* Approved semantic glow: selected/active states only. */
.bottom-nav .nav-item.active,.bottom-nav .nav-item[aria-current="page"]{
  filter:drop-shadow(var(--u-glow-selected));
}

/* Overlays/dialogs share elevation without flattening feature-specific art. */
:where([role="dialog"],.modal-content,.sheet,.fuel-sheet,.uwf-confirm-sheet){
  --shadow-card:var(--u-shadow-overlay);
}

@media(prefers-reduced-motion:reduce){
  .card,.btn,.btn-primary,.btn-secondary{transition:none!important;}
}
@media(forced-colors:active){
  :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
    outline:2px solid Highlight!important;
    box-shadow:none!important;
  }
}
