:root{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:#17211c;background:#f5f7f6;line-height:1.5;
  --space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;
  --radius-sm:.45rem;--radius-md:.75rem;--radius-lg:1rem;
  --surface:#ffffff;--surface-subtle:#eef3f0;--surface-strong:#14352a;
  --border:#cfd8d3;--text-muted:#516158;--focus:#d86f12;
  --status-active:#145c3f;--status-warning:#8a5a00;--status-error:#9f2f25;--status-neutral:#53645a;
  --breakpoint-phone:390px;--breakpoint-tablet:768px;--breakpoint-desktop:1280px;
}
*{box-sizing:border-box}
html{min-width:320px}
body{margin:0;min-height:100vh}
button,input,select,textarea{font:inherit}
button,input,select,textarea{min-height:2.75rem;border:1px solid #829389;border-radius:var(--radius-sm);padding:.6rem .7rem}
button{background:var(--surface-strong);color:#fff;border-color:var(--surface-strong);font-weight:700;cursor:pointer}
button:hover:not(:disabled){filter:brightness(1.12)}
button.secondary{background:#fff;color:#173d30;border-color:#8ca197}
button:disabled{cursor:not-allowed;opacity:.6}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.skip-link{position:absolute;left:.5rem;top:-4rem;background:#fff;color:#000;padding:.75rem;z-index:100}
.skip-link:focus{top:.5rem}
.topbar{display:flex;justify-content:space-between;gap:var(--space-4);align-items:center;padding:var(--space-4) var(--space-5);background:var(--surface-strong);color:white}
.brand{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}
.brand strong{font-size:1.15rem}
.dev-badge{display:inline-flex;padding:.2rem .5rem;border:2px solid #d9ef83;border-radius:999px;color:#e8f7a9;font-size:.75rem;font-weight:800;letter-spacing:.04em}
.actor-control{display:flex;gap:.5rem;align-items:center;margin:0}
.actor-control select{min-width:18rem}
.warning{margin:0;padding:.65rem var(--space-5);background:#fff3c9;border-bottom:1px solid #d3a640}
.app-shell{display:grid;grid-template-columns:15.5rem minmax(0,1fr);min-height:calc(100vh - 10rem)}
.sidebar{background:#e8efeb;border-right:1px solid var(--border)}
#primary-nav{position:sticky;top:0;padding:var(--space-4);display:flex;flex-direction:column;gap:.4rem}
#primary-nav button{text-align:left;background:transparent;color:#17382d;border-color:transparent}
#primary-nav button:hover:not(:disabled){background:#d9e5de}
#primary-nav button[aria-current="page"]{background:#fff;border-color:#aabbb2;box-shadow:0 1px 3px #00000012}
#primary-nav button span{display:block;font-size:.72rem;color:var(--text-muted);font-weight:600}
#primary-nav .future-destination{border:1px dashed #9aa9a1;background:transparent}
main{padding:var(--space-5);min-width:0;max-width:96rem;width:100%;margin:0 auto}
.page-header,.athlete-context-header,.card-heading{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4)}
.page-header h1,.athlete-context-header h1{margin:.1rem 0 0;font-size:clamp(1.6rem,2vw,2.2rem)}
.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;color:var(--text-muted);font-weight:800;margin:0}
.status-badge,.revision-badge{display:inline-flex;align-items:center;padding:.3rem .65rem;border-radius:999px;border:1px solid currentColor;font-size:.8rem;font-weight:800;white-space:nowrap}
.status-badge.active{color:var(--status-active);background:#e7f5ee}.status-badge.restricted{color:#6e4b00;background:#fff5d7}.status-badge.neutral{color:var(--status-neutral);background:#eef2ef}
.home-grid,.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:var(--space-4)}
.action-card,.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);box-shadow:0 2px 8px #0d2b2012}
.card{margin-bottom:var(--space-4)}
.action-card h2,.card h2{margin-top:0}
.action-card p{color:var(--text-muted)}
label{display:grid;gap:.35rem;margin:.65rem 0;font-weight:650}
textarea{width:100%;resize:vertical}
.status{font-weight:650}
.error,.conflict-banner{border-left:4px solid var(--status-error);background:#fff0ee;padding:.75rem}
.conflict-banner{display:grid;gap:.15rem;margin-top:var(--space-3)}
.scope-note{color:var(--text-muted)}
.field-group{border:0;border-top:1px solid #d7e0db;padding:var(--space-4) 0;margin:0}
.field-group legend{font-weight:800;font-size:1.05rem;padding:0}
.field-key{display:inline-block;margin:.25rem 0 .4rem;color:#5d6d64;background:#eef3f0;padding:.15rem .35rem;border-radius:.3rem}
.value-control{display:grid;gap:.5rem}
.repeatable-group{display:grid;gap:.75rem}
.repeat-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem}
.actions{display:flex;flex-wrap:wrap;gap:.7rem}
output{display:block;overflow-wrap:anywhere;margin-top:.5rem}
.entity-list,.timeline{list-style:none;padding:0;margin:var(--space-3) 0 0;display:grid;gap:.5rem}
.entity-list li,.timeline li{display:flex;justify-content:space-between;gap:var(--space-3);align-items:center;border:1px solid #d9e1dd;border-radius:var(--radius-sm);padding:.7rem;background:#fbfcfb}
.entity-copy{display:grid;min-width:0}.entity-copy small{color:var(--text-muted);overflow-wrap:anywhere}
.timeline li{border-left:4px solid #81968b}
.empty-state{border:1px dashed #aab7b0;border-radius:var(--radius-sm);padding:var(--space-4);background:#fafcfb}
.empty-state p{margin-bottom:0;color:var(--text-muted)}
.athlete-context-header{padding:var(--space-4);background:#eef5f1;border:1px solid var(--border);border-radius:var(--radius-md)}
.workspace-tabs{display:flex;gap:.5rem;overflow:auto;margin:0 0 var(--space-4)}
.workspace-tabs button{white-space:nowrap}
.revision-badge{color:#40564a;background:#eef3f0}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
footer{padding:var(--space-4);text-align:center;background:var(--surface-strong);color:white;font-size:.85rem}

@media(max-width:767px){
  .topbar{align-items:flex-start;flex-direction:column;padding:var(--space-3)}
  .actor-control{width:100%;display:grid}
  .actor-control select{min-width:0;width:100%}
  .warning{padding:.6rem var(--space-3)}
  .app-shell{grid-template-columns:1fr}
  .sidebar{border-right:0;border-bottom:1px solid var(--border);min-width:0;max-width:100vw}
  #primary-nav{position:sticky;top:0;z-index:5;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(7.25rem,1fr);overflow-x:auto;max-width:100vw;min-width:0;padding:.5rem;background:#e8efeb}
  #primary-nav button{min-width:0;text-align:center;padding:.55rem}
  #primary-nav .future-destination{display:none}
  main{padding:.75rem}
  .page-header,.athlete-context-header,.card-heading{align-items:flex-start;flex-direction:column}
  .cards,.home-grid{grid-template-columns:1fr}
  input,select,textarea,button{width:100%;min-height:3rem}
  .actions{display:grid}
  .mobile-action-bar{position:sticky;bottom:0;background:#fff;padding:.7rem 0;border-top:1px solid var(--border);z-index:3}
  .repeat-row{grid-template-columns:1fr}
  .entity-list li,.timeline li{align-items:stretch;flex-direction:column}
  .workspace-tabs button{width:auto}
  .dev-badge{font-size:.7rem}
}
@media(min-width:768px) and (max-width:1100px){
  .app-shell{grid-template-columns:13rem minmax(0,1fr)}
  main{padding:var(--space-4)}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
@media(max-width:720px){.app-shell{grid-template-columns:1fr}}

#view-training pre{max-width:100%;overflow:auto;background:var(--surface-muted,#f4f6f8);padding:var(--space-3,1rem);border-radius:var(--radius,8px)}
#view-training form{display:grid;gap:.75rem}#view-training .actions{display:flex;gap:.75rem;flex-wrap:wrap}
@media(max-width:600px){#view-training .cards{grid-template-columns:1fr}#view-training button{min-height:44px}#view-training .actions button{width:100%}}

/* Athlete_SELF Minor Android Integrated UI V1 — presentation layer only */
body.minor-athlete-mode{
  --minor-graphite:#171717;
  --minor-graphite-2:#242424;
  --minor-orange:#f36b21;
  --minor-orange-strong:#d94f00;
  --minor-blue:#1785c1;
  --minor-blue-soft:#e8f5fc;
  --minor-page:#f6f5f1;
  --minor-surface:#fff;
  --minor-line:#deded7;
  --minor-ink:#1a1a18;
  --minor-muted:#6f706b;
  --minor-success:#267653;
  --minor-warning:#8d6200;
  background:var(--minor-page);
}
body.minor-athlete-mode .sidebar{display:none}
body.minor-athlete-mode .app-shell{grid-template-columns:minmax(0,1fr)}
body.minor-athlete-mode main{max-width:none;padding:0;background:var(--minor-page)}
body.minor-athlete-mode footer{display:none}
body.minor-athlete-mode .topbar{
  min-height:52px;
  padding:.4rem .75rem;
  background:#fff;
  color:var(--minor-ink);
  border-bottom:1px solid #deded7;
}
body.minor-athlete-mode .topbar .brand strong{font-size:.9rem}
body.minor-athlete-mode .topbar .dev-badge{font-size:.62rem}
body.minor-athlete-mode .actor-control{font-size:.7rem}
body.minor-athlete-mode .actor-control select{min-height:44px}
body.minor-athlete-mode .warning{margin:0;padding:.35rem .75rem;font-size:.72rem;border-radius:0}
.minor-athlete-view{min-height:calc(100vh - 5rem);background:var(--minor-page);color:var(--minor-ink)}
.minor-shell{max-width:65rem;margin:0 auto;padding:0 1rem 7rem;font-size:1rem}
.minor-child-header{
  margin:0 -1rem;
  min-height:72px;
  background:var(--minor-graphite);
  color:#fff;
  border-bottom:4px solid var(--minor-orange);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding:.65rem 1rem;
}
.minor-brand-lockup{display:flex;align-items:center;gap:.7rem;min-width:0}
.minor-brand-lockup img{
  width:56px;height:38px;object-fit:cover;object-position:center;border-radius:.45rem;flex:none;
}
.minor-brand-lockup>div{display:grid;min-width:0}
.minor-brand-kicker{margin:0;font-size:.58rem;font-weight:900;letter-spacing:.09em;color:#f36b21}
.minor-brand-lockup strong{font-size:.95rem;white-space:nowrap}
.minor-team-badge{
  display:inline-flex;align-items:center;min-height:32px;padding:.3rem .7rem;
  border-radius:999px;background:#222;color:#d9f0fc;border:1px solid #444;font-size:.72rem;font-weight:900;
}
.minor-profile-fixture{
  display:flex;justify-content:space-between;align-items:center;gap:1rem;
  padding:.75rem 0 .35rem;
}
.minor-profile-fixture>div{display:grid}
.minor-dev-label{font-size:.58rem;letter-spacing:.08em;color:#8a5a00;font-weight:900}
.minor-profile-fixture strong{font-size:.76rem}
.minor-dev-profile{margin:0;max-width:12rem}
.minor-dev-profile select{
  width:100%;min-height:44px;margin:0;background:#fff;border:1px solid #cfcfc8;
  border-radius:999px;padding:.45rem 2rem .45rem .8rem;color:#30302e;font-weight:800;
}
.minor-hero{
  display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;
  padding:1rem 0 1.15rem;
}
.minor-hero h1{font-size:clamp(1.95rem,7vw,2.4rem);line-height:1.05;margin:.15rem 0 .35rem;letter-spacing:-.025em}
.minor-hero p{margin:0}
.minor-kicker,.minor-card-label{
  text-transform:uppercase;letter-spacing:.1em;font-size:.65rem;font-weight:900;color:#76776f;margin:0 0 .35rem;
}
.minor-today-pill{
  background:var(--minor-blue-soft);color:#0b6796;font-weight:900;font-size:.75rem;
  border-radius:999px;padding:.45rem .75rem;white-space:nowrap;
}
.minor-panel{display:grid;gap:.75rem}
.minor-card{
  background:#fff;border:1px solid var(--minor-line);border-radius:1.5rem;
  padding:1.1rem;box-shadow:0 8px 30px rgba(23,23,23,.06);
}
.minor-card h2,.minor-card h3{margin:.15rem 0 .5rem;line-height:1.16}
.minor-card h2{font-size:1.2rem}
.minor-card h3{font-size:1.08rem}
.minor-primary-card{
  border-top:6px solid var(--minor-blue);
  background:linear-gradient(145deg,#fff 0,#f8fcfe 100%);
  padding:1.15rem;
}
.minor-card-topline{display:grid;grid-template-columns:auto 1fr auto;gap:.75rem;align-items:center}
.minor-sport-icon,.minor-list-sport,.minor-activity-icon{
  display:grid;place-items:center;font-weight:900;flex:none;
}
.minor-sport-icon{width:52px;height:52px;border-radius:1rem;font-size:1.7rem;background:var(--minor-blue-soft);color:#0b6796}
.minor-sport-icon.run,.minor-list-sport.run,.minor-activity-icon.run{background:#eef7e9;color:#507d37}
.minor-sport-icon.bike,.minor-list-sport.bike,.minor-activity-icon.bike{background:#fff0e7;color:#aa4c16}
.minor-sport-icon.multi,.minor-list-sport.multi,.minor-activity-icon.multi{background:#fff3dd;color:#8a5d00}
.minor-sport-icon.other,.minor-list-sport.other,.minor-activity-icon.other{background:#f1f1ed;color:#555}
.minor-time-chip{
  align-self:start;background:var(--minor-graphite);color:#fff;border-radius:999px;
  padding:.45rem .6rem;font-size:.78rem;font-weight:900;
}
.minor-primary-meta{font-weight:800;margin:.9rem 0 .2rem}
.minor-muted{color:var(--minor-muted);line-height:1.4}
.minor-primary-card button,.minor-primary-action{
  margin-top:.85rem;width:100%;min-height:52px;border:0;border-radius:.9rem;
  background:var(--minor-orange);color:#171717;font-size:1rem;font-weight:900;padding:.75rem 1rem;
  box-shadow:0 4px 0 rgba(165,65,5,.18);
}
.minor-primary-card button:active,.minor-primary-action:active{transform:translateY(1px);box-shadow:0 2px 0 rgba(165,65,5,.18)}
.minor-secondary-action{
  min-height:48px;border:1px solid #c8c8c1;background:#fff;color:#20201e;border-radius:.9rem;
  padding:.65rem 1rem;font-weight:900;
}
.minor-consistency-card{border-left:4px solid var(--minor-blue)}
.minor-progress-visual{display:flex;align-items:center;margin-bottom:.8rem}
.minor-progress-visual>span:not(.minor-progress-node){height:4px;flex:1;background:#d8d8d2}
.minor-progress-node{width:18px;height:18px;border-radius:50%;background:#d8d8d2;border:4px solid #f7f7f3}
.minor-progress-node.done{background:var(--minor-graphite)}
.minor-progress-node.current{background:var(--minor-orange)}
.minor-metric-pair{display:flex;gap:.6rem;margin:.7rem 0}
.minor-metric-pair>span{flex:1;display:grid;background:#f5f5f1;border-radius:.9rem;padding:.7rem}
.minor-metric-pair strong{font-size:1.25rem}
.minor-metric-pair small{font-size:.68rem;color:var(--minor-muted)}
.minor-section-heading{padding:.25rem 0}
.minor-section-heading h2{margin:.1rem 0;font-size:1.5rem}
.minor-week-strip{
  display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.3rem;
}
.minor-week-day{
  min-height:70px;border:1px solid var(--minor-line);background:#fff;border-radius:.85rem;
  display:grid;place-items:center;align-content:center;gap:.05rem;padding:.25rem .1rem;
}
.minor-week-day span{font-size:.68rem;font-weight:900}
.minor-week-day strong{font-size:1rem}
.minor-week-day small{font-size:.56rem;color:var(--minor-muted);text-align:center}
.minor-week-day.today{background:var(--minor-graphite);color:#fff;border-color:var(--minor-graphite);box-shadow:inset 0 -4px 0 var(--minor-orange)}
.minor-week-day.today small{color:#ffb182}
.minor-week-day.recorded:not(.today){border-left:4px solid var(--minor-success)}
.minor-week-day.planned:not(.today){border-bottom:4px solid var(--minor-blue)}
.minor-week-layout{display:grid;gap:.75rem}
.minor-list{display:grid;gap:.65rem}
.minor-list-item{
  background:#fff;border:1px solid var(--minor-line);border-radius:1.1rem;padding:.85rem;
}
.minor-session-card,.minor-activity-card{
  display:grid;grid-template-columns:auto 1fr;gap:.75rem;align-items:center;
}
.minor-session-card.recorded{border-left:5px solid var(--minor-success)}
.minor-session-card.planned{border-left:5px solid var(--minor-blue)}
.minor-list-sport,.minor-activity-icon{width:46px;height:46px;border-radius:.9rem;font-size:1.35rem;background:var(--minor-blue-soft);color:#0b6796}
.minor-list-item time{font-size:.72rem;color:var(--minor-muted);font-weight:800;text-transform:capitalize}
.minor-list-item h3{margin:.1rem 0;font-size:1rem}
.minor-list-item p{margin:0;color:var(--minor-muted);font-size:.82rem}
.minor-activity-card{grid-template-columns:auto 1fr auto}
.minor-source-badge{
  align-self:start;font-size:.65rem;font-weight:900;padding:.35rem .5rem;border-radius:999px;
  background:#f3f3ef;color:#5b5c57;white-space:nowrap;
}
.minor-empty-state{
  background:#fff;border:1px dashed #cfcfc6;border-radius:1rem;padding:1rem;color:var(--minor-muted)
}
.minor-progress{background:#fff;border:1px solid var(--minor-line);border-radius:1rem;padding:.9rem;margin-bottom:.65rem}
.minor-progress p{margin:.55rem 0 0;color:var(--minor-muted);font-size:.85rem}
.minor-progress-dots{display:grid;grid-template-columns:repeat(7,1fr);gap:.45rem}
.minor-progress-dots span{height:.65rem;border-radius:999px;background:#dce1dd}
.minor-progress-dots span.done{background:var(--minor-graphite)}
.minor-progress-dots span.current{background:var(--minor-orange)}
.minor-week-legend{display:flex;gap:1rem;flex-wrap:wrap;margin-top:.8rem;font-size:.72rem}
.minor-week-legend span{display:flex;align-items:center;gap:.35rem}
.minor-week-legend i{width:10px;height:10px;border-radius:50%;display:inline-block}
.minor-week-legend i.recorded{background:var(--minor-success)}
.minor-week-legend i.planned{background:var(--minor-blue)}
.minor-goal-empty p{color:var(--minor-muted)}
.minor-goal-empty small{display:block;color:#77776f;margin-top:.7rem}
.minor-goal-icon{width:58px;height:58px;border-radius:1.15rem;background:#fff0e7;color:#b24b10;display:grid;place-items:center;font-size:1.8rem;margin-bottom:.7rem}
.minor-goal-path{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:.35rem;margin:1rem 0 .5rem}
.minor-goal-path span{width:38px;height:38px;border-radius:50%;background:#eee;display:grid;place-items:center;font-weight:900;border:4px solid #fff;box-shadow:0 0 0 1px #d8d8d0}
.minor-goal-path span.done{background:var(--minor-graphite);color:#fff}
.minor-goal-path i{height:4px;background:#ddd}
.minor-goal-path i.done{background:var(--minor-graphite)}
.minor-feedback-sheet{
  position:fixed;z-index:60;left:50%;bottom:0;transform:translateX(-50%);
  width:min(100%,46rem);max-height:90vh;overflow:auto;background:#fff;border-radius:1.75rem 1.75rem 0 0;
  padding:.85rem 1rem calc(1rem + env(safe-area-inset-bottom));
  box-shadow:0 -18px 60px rgba(0,0,0,.24);
}
.minor-feedback-sheet::before{
  content:"";position:fixed;inset:-100vh -100vw;background:rgba(0,0,0,.35);z-index:-1;
}
.minor-sheet-handle{width:52px;height:5px;border-radius:999px;background:#d1d1cb;margin:0 auto 1rem}
.minor-sheet-close{
  position:absolute;right:1rem;top:1rem;width:48px;height:48px;border-radius:50%;border:0;background:#f2f2ee;font-size:1.6rem;
}
.minor-feedback-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.45rem;margin-top:1rem}
.minor-feedback-options button{
  min-height:86px;background:#fff;color:#222;border:1px solid var(--minor-line);border-radius:1rem;
  display:grid;place-items:center;align-content:center;gap:.3rem;text-align:center;padding:.5rem .25rem;
}
.minor-feedback-options button.selected{border-color:var(--minor-orange);background:#fff5ee;box-shadow:inset 0 0 0 2px var(--minor-orange)}
.minor-feedback-options button span{font-size:1.6rem}
.minor-feedback-options button strong{font-size:.68rem;line-height:1.1}
.minor-feedback-result{display:block;min-height:1.4rem;margin-top:.65rem;color:#565752;font-size:.8rem}
.minor-feedback-boundary{display:block;margin-top:.55rem;color:#77776f;line-height:1.35}
.minor-bottom-nav{
  position:fixed;z-index:30;left:50%;transform:translateX(-50%);bottom:0;width:min(100%,46rem);
  display:grid;grid-template-columns:repeat(4,1fr);background:rgba(255,255,255,.98);
  border-top:1px solid #d7d7d0;box-shadow:0 -6px 24px rgba(0,0,0,.08);
  padding:.35rem max(.35rem,env(safe-area-inset-right)) calc(.35rem + env(safe-area-inset-bottom)) max(.35rem,env(safe-area-inset-left));
}
.minor-bottom-nav button{
  min-height:56px;border:0;background:transparent;border-radius:1rem;color:#686963;
  display:grid;place-items:center;align-content:center;gap:.12rem;padding:.2rem;
}
.minor-bottom-nav button span{font-size:1.35rem;line-height:1}
.minor-bottom-nav button strong{font-size:.7rem}
.minor-bottom-nav button[aria-current="page"]{background:#fff0e7;color:#8f3e0d}
.minor-shell[data-minor-profile="CHILD_SIMPLE"] .minor-profile-guided-plus,
.minor-shell[data-minor-profile="CHILD_SIMPLE"] .minor-profile-advanced{display:none!important}
.minor-shell[data-minor-profile="YOUTH_GUIDED"] .minor-profile-advanced{display:none!important}

@media(max-width:430px){
  body.minor-athlete-mode html,body.minor-athlete-mode{overflow-x:clip}
  .minor-shell{padding:0 .75rem 6.75rem}
  .minor-child-header{margin:0 -.75rem;padding:.6rem .75rem;min-height:68px}
  .minor-brand-lockup img{width:48px;height:34px}
  .minor-brand-kicker{font-size:.5rem}
  .minor-brand-lockup strong{font-size:.86rem}
  .minor-team-badge{display:none}
  .minor-profile-fixture{display:grid;gap:.35rem}
  .minor-dev-profile{max-width:none;width:100%}
  .minor-hero{padding:.85rem 0 1rem}
  .minor-hero h1{font-size:1.85rem}
  .minor-card{padding:1rem}
  .minor-card-topline{grid-template-columns:auto 1fr}
  .minor-time-chip{grid-column:2;justify-self:start}
  .minor-week-strip{gap:.2rem}
  .minor-week-day{min-height:68px;border-radius:.75rem;padding:.2rem .05rem}
  .minor-week-day small{font-size:.52rem}
  .minor-activity-card{grid-template-columns:auto 1fr}
  .minor-source-badge{grid-column:2;justify-self:start}
  .minor-feedback-options{grid-template-columns:repeat(2,1fr)}
  .minor-feedback-options button:last-child{grid-column:1/-1}
}
@media(min-width:768px){
  .minor-shell{padding-inline:1.5rem}
  .minor-child-header{margin-inline:-1.5rem;padding-inline:1.5rem}
  .minor-today-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .minor-primary-card{grid-row:span 2}
  .minor-week-layout{grid-template-columns:minmax(0,1.4fr) minmax(17rem,.8fr);align-items:start}
  .minor-activity-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:1000px){
  .minor-bottom-nav{bottom:1rem;border:1px solid #d7d7d0;border-radius:1.35rem;padding:.35rem}
  .minor-shell{padding-bottom:7.5rem}
}
@media(orientation:landscape) and (min-width:700px) and (max-height:900px){
  .minor-today-grid{grid-template-columns:minmax(0,1.45fr) repeat(2,minmax(0,.8fr))}
  .minor-primary-card{grid-row:span 2}
  .minor-week-layout{grid-template-columns:minmax(0,1.6fr) minmax(17rem,.8fr)}
}
@media(prefers-reduced-motion:reduce){
  .minor-athlete-view *, .minor-athlete-view *::before, .minor-athlete-view *::after{
    scroll-behavior:auto!important;transition:none!important;animation:none!important
  }
}
.identity-athlete-mode .actor-control,.identity-athlete-mode #actor-warning{display:none}
.minor-self-log-cta{grid-column:1/-1;min-height:72px;border:0;border-radius:1.15rem;background:#1f2522;color:#fff;display:flex;align-items:center;gap:.85rem;padding:1rem 1.1rem;text-align:left;box-shadow:0 4px 14px rgba(0,0,0,.14)}
.minor-self-log-cta strong{display:block;font-size:1.05rem}.minor-self-log-cta small{display:block;color:#d9ddd9;margin-top:.18rem}
.minor-self-log-plus{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#f36b21;font-size:1.5rem;font-weight:900}
.minor-self-log-saved{grid-column:1/-1;border-left:5px solid #2f7d54}
.minor-self-log-sheet{z-index:45}
.minor-self-log-step{display:grid;gap:.8rem}
.minor-self-log-sports{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}
.minor-self-log-sports button{min-height:72px;border:1px solid var(--minor-line);border-radius:1rem;background:#fff;color:#222;display:grid;gap:.25rem;place-items:center;padding:.75rem}
.minor-self-log-sports button strong{font-size:.88rem}
.minor-self-log-field{display:grid;gap:.35rem;font-weight:800}
.minor-self-log-field input,.minor-self-log-field select{min-height:50px;border:1px solid #bbb;border-radius:.85rem;padding:.7rem .8rem;background:#fff;font-size:1rem}
#identity-athlete-login-card{border:2px solid #27332e}
#identity-athlete-login-form{display:grid;gap:.75rem}
#identity-athlete-login-form label{display:grid;gap:.3rem}
#identity-athlete-login-form input{min-height:46px}
@media(max-width:480px){.minor-self-log-sports{grid-template-columns:1fr 1fr}.minor-self-log-cta{min-height:76px}}
.minor-header-actions{display:flex;align-items:center;gap:.55rem}.minor-logout{min-height:44px;border:1px solid #bbb;background:#fff;color:#222;border-radius:.75rem;padding:.5rem .75rem;font-weight:800}
.minor-offline-status{grid-column:1/-1;border-left:5px solid #d9892b;background:#fff8ee}
.minor-offline-status[hidden]{display:none}
.minor-self-log-saved .minor-self-log-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.75rem}
.minor-self-log-saved[data-sync-state="QUEUED"]{border-left-color:#d9892b}
.minor-self-log-saved[data-sync-state="SYNCING"]{border-left-color:#3c76a6}
.minor-self-log-saved[data-sync-state="RETRYABLE_ERROR"],
.minor-self-log-saved[data-sync-state="REQUIRES_USER_ACTION"],
.minor-self-log-saved[data-sync-state="CONFLICT"],
.minor-self-log-saved[data-sync-state="EXPIRED"]{border-left-color:#a35131}
/* Multi-Role Context Selector & Navigation UI V1 */
.multi-role-context-controls{display:flex;align-items:end;gap:.55rem;margin-left:auto}
.multi-role-context-controls label{display:grid;gap:.2rem;font-size:.72rem;font-weight:800;color:inherit}
.multi-role-context-controls select{min-width:min(28rem,48vw);min-height:44px}
.multi-role-context-controls button{min-height:44px}
body.multi-role-context-mode .actor-control{display:none}
body.multi-role-context-mode #actor-warning{display:none}
body.multi-role-context-mode #identity-athlete-login-card{display:none}
.multi-role-context-view .page-header{gap:1rem}
.multi-role-scope-grid{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:.45rem .85rem;margin-top:1rem}
.multi-role-scope-grid dt{font-weight:800;color:var(--muted,#536158)}
.multi-role-scope-grid dd{margin:0;word-break:break-word}
body.multi-role-context-mode #primary-nav button{display:block}
body.multi-role-context-mode #primary-nav:empty::after{content:"Nu există suprafețe proiectate pentru contextul curent.";display:block;padding:.75rem;color:#5f6963;font-size:.85rem}
@media(max-width:767px){
  .multi-role-context-controls{width:100%;display:grid;grid-template-columns:1fr 1fr;align-items:stretch}
  .multi-role-context-controls label{grid-column:1/-1}
  .multi-role-context-controls select{min-width:0;width:100%}
  .multi-role-context-controls button{width:100%}
  .multi-role-scope-grid{grid-template-columns:1fr;gap:.15rem}
  .multi-role-scope-grid dd{margin-bottom:.55rem}
}

/* Sports Graph UI V1 — authorized Forecast history only */
.sports-graph-card{margin-top:1rem;padding:1rem;border:1px solid #b9ccc1;border-radius:1rem;background:#fff;max-width:920px}
.sports-graph-card svg{display:block;width:100%;height:auto;max-height:420px;margin:1rem 0;background:#f8fbf9;border-radius:.6rem}
.graph-axis{stroke:#526358;stroke-width:1.5}
.graph-axis-label,.graph-tick{fill:#263c31;font-size:13px}
.graph-range{fill:#8dd2b1;opacity:.42}
.graph-range-line{stroke:#32875e;stroke-width:2}
.graph-forecast-line{fill:none;stroke:#135d3d;stroke-width:3}
.graph-forecast-point{fill:#135d3d;stroke:#fff;stroke-width:2}
.sports-graph-points{padding-left:1.5rem;line-height:1.65}
#graph-member-picker{display:grid;gap:.35rem;max-width:25rem;margin:1rem 0;font-weight:700}
#graph-member-picker select{min-height:44px}

.training-graph-card{max-width:100%;overflow-x:auto}.training-graph-card svg{display:block;width:100%;min-width:660px;max-height:360px}.training-graph-planned{fill:#3379b5}.training-graph-executed{fill:#288561}.training-graph-points{line-height:1.6}#training-graph-picker{display:flex;flex-wrap:wrap;gap:1rem;margin:1rem 0}#training-graph-picker label{display:grid;gap:.25rem}

.rda-review-view{max-width:65rem}.rda-current-item,.rda-review-card,.rda-history{padding:1rem;margin:1rem 0;border:1px solid #b8c9bd;border-radius:.5rem}.rda-review-card h5,.rda-explanation h4{margin-bottom:.4rem}.rda-decision-controls{border-top:1px solid #b8c9bd;padding-top:1rem}.rda-decision-controls button{margin:.3rem}.rda-decision-editor form{display:grid;gap:.65rem;max-width:35rem}.rda-decision-editor label{display:grid;gap:.25rem}.rda-decision-editor textarea{min-height:3rem}.rda-review-notice{font-weight:600}#rda-review-picker{display:flex;flex-wrap:wrap;gap:1rem;margin:1rem 0}#rda-review-picker label{display:grid;gap:.25rem}

/* Guardian consent DEVELOPMENT presentation. Controls are unavailable until authoritative API integration. */
.guardian-consent-center,.minor-privacy-notice{max-width:52rem;margin:1rem auto;padding:1rem;border:1px solid #a8b9ad;border-radius:1rem;background:#fff;color:#17372b}
.guardian-consent-center p,.minor-privacy-notice p{line-height:1.55}
.guardian-consent-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:.8rem}
.guardian-consent-card{padding:1rem;border:1px solid #b7c6bc;border-radius:.7rem}
.guardian-consent-card h4{margin:.1rem 0 .6rem}
.guardian-consent-card p:last-child,.guardian-consent-status{font-weight:600}
.minor-privacy-notice{margin:1rem;max-width:48rem}
@media(max-width:600px){.guardian-consent-center,.minor-privacy-notice{margin:.6rem 0;padding:.85rem}.guardian-consent-list{grid-template-columns:1fr}}

/* Phase 1 accepted v1.2 adult runtime identity */
:root{
 color:var(--runtime-graphite);background:var(--runtime-paper);
 --surface:var(--runtime-white);--surface-subtle:var(--runtime-ride-blue-soft);
 --surface-strong:var(--runtime-graphite);--border:#deded7;--text-muted:#575a56;
 --focus:var(--runtime-focus);--status-active:var(--runtime-success);
 --status-warning:var(--runtime-warning);--status-error:var(--runtime-error);
 --radius-sm:var(--runtime-radius-small);--radius-md:var(--runtime-radius-medium);
 --radius-lg:var(--runtime-radius-large);
}
.topbar,footer{background:var(--runtime-graphite);color:white}
.sidebar,#primary-nav{background:var(--runtime-graphite-alt)}
#primary-nav button{color:white}
#primary-nav button span{color:#c8c9c5}
#primary-nav button:hover:not(:disabled),#primary-nav button[aria-current="page"]{
 background:#363635;color:white;border-color:var(--runtime-orange);box-shadow:inset 4px 0 var(--runtime-orange)}
.action-card,.card,.athlete-context-header{border-radius:var(--runtime-radius-large);box-shadow:var(--runtime-elevation);background:var(--runtime-white)}
.athlete-context-header{border-top:5px solid var(--runtime-orange)}
.app-shell main button:not(.secondary):not([class*="neutral"]):not([class*="danger"]){background:var(--runtime-orange);border-color:var(--runtime-orange);color:var(--runtime-graphite)}
button:disabled{opacity:.6}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid var(--runtime-focus);outline-offset:3px}
.status-badge.active{color:var(--runtime-success);background:#e7f5ee}
.status-badge.restricted{color:var(--runtime-warning);background:#fff5d7}
.error,.conflict-banner{border-color:var(--runtime-error)}
@media(max-width:767px){#primary-nav{background:var(--runtime-graphite-alt)}}

.minor-brand-lockup strong{color:#fff}

/* Consolidated Phase A canonical lockup */
.minor-brand-kicker,.minor-brand-lockup strong{color:#f36b21}
.minor-brand-lockup img{object-fit:contain}
