/* Light action surfaces: colored outlines and subtle gradients, never solid fills. */
:root{
  --action-surface:var(--club-subtle-gradient);
  --action-selected-surface:var(--club-selected-gradient);
}
:root body .button.primary,
:root body .recovery-primary,
#login-screen .login-card .button.primary{
  border:1px solid var(--club-control-border,#5394d4);
  background-color:#fff;
  background-image:var(--action-surface);
  color:var(--club-text,#326da5);
  box-shadow:0 1px 3px rgb(23 32 51 / 3%);
  font-weight:750;
}
:root body .button.primary:active,
:root body .recovery-primary:active,
#login-screen .login-card .button.primary:active{
  background-image:var(--action-selected-surface);
  box-shadow:none;
}

/* Selections have a stronger frame and tint than the available choices. */
:root body :is(.compact-choice-chip.active,.compact-choice-chip[aria-pressed="true"],.p19-choice.active,.p17-advice-phase.active,.settings-tab.active,.detail-tab.active,.p17-advice-category.active,.settings-preview-item.active,.td-moods button.selected,.training-week-day.is-enabled,.training-week-day.is-selected){
  border-color:var(--club-control-border,#5394d4);
  background-color:#fff;
  background-image:var(--action-selected-surface);
  color:var(--club-text,#326da5);
  box-shadow:none;
}
:root body :is(.member-choice-chip.is-selected span,.member-choice-chip-button.is-selected span,.tournament-editor-category-chip input:checked+span,.tournament-editor-style-chip input:checked+span,.tournament-editor-person-chip input:checked+span,.training-choice-grid input:checked+span,.td-mood-fields input:checked+span){
  border-color:var(--club-control-border,#5394d4);
  background-color:#fff;
  background-image:var(--action-selected-surface);
  color:var(--club-text,#326da5);
  box-shadow:none;
}
.filter-chip.active,.filter-chip.active span{background-image:var(--action-selected-surface)!important}
.modern-picker .modern-day.is-selected{
  border-color:var(--club-control-border,#5394d4);
  background-color:#fff;
  background-image:var(--action-selected-surface);
  color:var(--club-text,#326da5);
  box-shadow:none;
}
.modern-picker .modern-option.is-selected,.modern-picker .modern-month.is-selected{
  background-color:#fff;background-image:var(--action-selected-surface);color:var(--ink,#172033);
}

/* Participation keeps its green / red / blue meaning in both views. */
.staff-response:not(.is-selected),.availability-choice:not(.is-selected){border-color:var(--control-edge,#d2d7df);background:#fff;box-shadow:none}

.staff-response--green,.availability-choice--green{--choice-accent:#15803d;--choice-text:#166534;--choice-tint:#eaf9ef;--choice-selected:#b8edca}
.staff-response--red,.availability-choice--red{--choice-accent:#b42336;--choice-text:#9f2030;--choice-tint:#fff0f2;--choice-selected:#ffc8d1}
.staff-response--blue{--choice-accent:#1d6fa5;--choice-text:#185783;--choice-tint:#edf5ff;--choice-selected:#bcdff7}
.staff-response--green,.staff-response--red,.staff-response--blue{
  background:#fff;color:var(--choice-text,var(--choice-accent));border-radius:999px;
}
.staff-response.is-selected,.availability-choice.is-selected{
  border-color:var(--choice-accent);
  background-color:#fff;
  background-image:linear-gradient(135deg,var(--choice-tint) 0%,var(--choice-selected,var(--choice-tint)) 100%);
  color:var(--choice-text,var(--choice-accent));
  box-shadow:none;
  font-weight:800;
}
/* Legacy amber availability uses the same outline without changing its meaning. */
.availability-choice--amber{--choice-accent:#895b09;--choice-text:#714a08;--choice-tint:#fff8e8;--choice-selected:#f6dfa6}

@media(hover:hover) and (pointer:fine){
  :root body .button.primary:not(:disabled):hover,
  :root body .recovery-primary:not(:disabled):hover,
  #login-screen .login-card .button.primary:not(:disabled):hover{
    border-color:var(--club-text,#326da5);
    background-image:var(--action-selected-surface);
    color:var(--club-text,#326da5);
    box-shadow:0 3px 9px rgb(23 32 51 / 6%);
  }
  .staff-response:not(:disabled):not(.is-selected):hover,.availability-choice:not(:disabled):not(.is-selected):hover{
    border-color:var(--choice-accent);background-color:#fff;background-image:linear-gradient(135deg,#fff,var(--choice-tint));color:var(--choice-text,var(--choice-accent));
  }
}
@media(prefers-reduced-motion:no-preference){
  :root body .button.primary,:root body .recovery-primary,#login-screen .login-card .button.primary,.staff-response,.availability-choice{
    background-size:160% 160%;background-position:0 0;
    transition:background-position .25s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease,opacity .16s ease,translate .16s ease,transform .16s ease;
  }
  @media(hover:hover) and (pointer:fine){
    :root body .button.primary:not(:disabled):hover,:root body .recovery-primary:not(:disabled):hover,#login-screen .login-card .button.primary:not(:disabled):hover,.staff-response:not(:disabled):hover,.availability-choice:not(:disabled):hover{background-position:100% 100%}
  }
}

/* A single clean outline for the compact coach answer, without stacked rings. */
#view-attendance .trainer-availability-actions .availability-choice{
  border-radius:.65rem;
  min-height:2.1rem;
  padding:.35rem .7rem;
  box-shadow:none;
}
#view-attendance .trainer-availability-actions .availability-choice.is-selected{
  border-color:var(--choice-accent);
  background-image:linear-gradient(135deg,var(--choice-tint),var(--choice-selected));
  box-shadow:none;
  font-weight:850;
}
#view-attendance .trainer-availability-actions .availability-choice.is-selected::before{
  content:'✓';
  display:inline-block;
  margin-right:.25rem;
  font-weight:900;
}
#view-attendance .trainer-availability-actions small{grid-column:1/-1}

@media(max-width:760px){#view-attendance .trainer-availability-actions .availability-choice{min-height:2.75rem}}

.availability-choice--green,.availability-choice--red,.availability-choice--amber{color:var(--choice-text,var(--choice-accent))}
html[data-club-nav-icons="black"] :is(.availability-choice,.staff-response).staff-response--green,
html[data-club-nav-icons="black"] .availability-choice--green{border-color:#69b982;color:#17633a}
html[data-club-nav-icons="black"] :is(.availability-choice,.staff-response).staff-response--red,
html[data-club-nav-icons="black"] .availability-choice--red{border-color:#d97883;color:#a52435}
html[data-club-nav-icons="black"] .availability-choice--green.is-selected,
html[data-club-nav-icons="black"] .staff-response--green.is-selected{border:1.5px solid #25834b;background:linear-gradient(120deg,#dff2e5 0%,#fff 100%);color:#145a32;box-shadow:inset 0 0 0 1px #25834b;font-weight:850}
html[data-club-nav-icons="black"] .availability-choice--red.is-selected,
html[data-club-nav-icons="black"] .staff-response--red.is-selected{border:1.5px solid #c43f51;background:linear-gradient(120deg,#fde7e9 0%,#fff 100%);color:#922233;box-shadow:inset 0 0 0 1px #c43f51;font-weight:850}
html[data-club-nav-icons="black"] .availability-status-chip--green{border:1px solid #69b982;background:#e5f5ea;color:#17633a}
html[data-club-nav-icons="black"] .availability-status-chip--red{border:1px solid #d97883;background:#fdebed;color:#a52435}
html[data-club-nav-icons="black"] #view-attendance .availability-summary-row[data-trainer-status="ano"]{
  border-color:#91c9a1;
  background:linear-gradient(110deg,#d6efde 0%,#fff 100%);
  box-shadow:none;
}
html[data-club-nav-icons="black"] #view-attendance .availability-summary-row[data-trainer-status="ne"]{
  border-color:#e0959e;
  background:linear-gradient(110deg,#f9dce0 0%,#fff 100%);
  box-shadow:none;
}
html[data-club-nav-icons="black"] .availability-status-chip--green{
  background:linear-gradient(120deg,#e3f5e8 0%,#ccebd5 100%);
}
html[data-club-nav-icons="black"] .availability-status-chip--red{
  background:linear-gradient(120deg,#ffe9eb 0%,#f4cdd2 100%);
}
/* Chips sit on top of colored surfaces: keep their centers flat and use the
   outline to identify them. Semantic green/red feedback remains easy to scan. */
html[data-club-nav-icons="black"] :is(.badge,.pill,.chip,.filter-chip,.compact-choice-chip,.training-today-badge){
  background-image:none!important;
}
html[data-club-nav-icons="black"] :is(.badge.blue,.pill.blue,.badge.violet,.pill.violet,.filter-chip.active,.compact-choice-chip.active,.training-today-badge){
  border-color:var(--club-control-border)!important;
  background:#fff!important;
  background-image:none!important;
  color:var(--club-text)!important;
  box-shadow:none!important;
}
html[data-club-nav-icons="black"] :is(.member-choice-chip.is-selected span,.member-choice-chip-button.is-selected span,.member-choice-chip input:checked+span,.member-choice-chip-button[aria-pressed="true"] span,.training-choice-grid input:checked+span){
  border-color:var(--club-control-border)!important;
  background:#fff!important;
  background-image:none!important;
  color:var(--club-text)!important;
  box-shadow:inset 0 0 0 1px var(--club-control-border)!important;
}
html[data-club-nav-icons="black"] .availability-status-chip--green{
  border-color:#69b982;
  background:#e3f5e8;
  background-image:none;
  color:#17633a;
}
html[data-club-nav-icons="black"] .availability-status-chip--red{
  border-color:#d97883;
  background:#ffe9eb;
  background-image:none;
  color:#a52435;
}
html[data-club-nav-icons="black"] #view-members .member-card-diary-state.is-enabled{
  border:1px solid #25834b;
  background:#d6efdd;
  background-image:none;
  color:#145a32;
  box-shadow:inset 0 0 0 1px #25834b;
  font-weight:850;
}
html[data-club-nav-icons="black"] #view-members .member-card-diary-state.is-disabled{
  border:1px solid #c43f51;
  background:#f9dfe2;
  background-image:none;
  color:#922233;
  box-shadow:inset 0 0 0 1px #c43f51;
  font-weight:850;
}
/* Shared club-colored choices across member forms, calendars and pickers. */
:root body :is(.member-editor-tabs,.member-editor-overview){background:var(--club-subtle-gradient);border-color:var(--club-border)}
:root body .member-editor-kicker{color:var(--club-text)}
:root body .member-editor-tab{border:1px solid transparent;border-radius:.7rem;color:var(--muted);background:transparent}
:root body .member-editor-tab.is-active{border-color:var(--club-control-border);background:var(--club-selected-gradient);color:var(--club-text);box-shadow:none;font-weight:800}
:root body :is(.member-editor-status,.member-photo-preview,.member-calculated-value){border-color:var(--club-border);background:var(--club-subtle-gradient);color:var(--club-text)}
:root body :is(.member-choice-chip.is-selected span,.member-choice-chip-button.is-selected span,.member-choice-chip input:checked+span,.member-choice-chip-button[aria-pressed="true"] span,.p19-choice.active,.training-choice-grid input:checked+span){border-color:var(--club-control-border);background:var(--club-selected-gradient);color:var(--club-text);box-shadow:inset 0 0 0 1px var(--club-control-border)}
:root body :is(input[type="checkbox"],input[type="radio"],input[type="range"]){accent-color:var(--club-control-border)}
:root body :is(input,select,textarea):not(:disabled):not([readonly]):not([aria-invalid="true"]):not(:user-invalid):focus-visible{border-color:var(--club-control-border);outline:2px solid var(--club-control-border);outline-offset:2px}
:root body :is(.member-choice-chip,.training-choice-grid label,.tournament-editor-category-chip,.tournament-editor-style-chip,.tournament-editor-person-chip):has(input:focus-visible)>span{outline:2px solid var(--club-control-border);outline-offset:3px}
:root body input[type="file"]::file-selector-button{border:1px solid var(--club-border);border-radius:.6rem;background:var(--club-subtle-gradient);color:var(--club-text);font:inherit;font-weight:700;padding:.45rem .65rem;cursor:pointer}
:root body :is(.calendar-day.selected-day,.calendar-day.is-selected,.calendar-cell.selected-day,.calendar-layout-switch .active,.calendar-layout-switch [aria-pressed="true"],.week-day.active,.training-mobile-day[aria-pressed="true"],.td-day.active){border-color:var(--club-control-border);background:var(--club-selected-gradient);color:var(--club-text);box-shadow:inset 0 0 0 1px var(--club-control-border)}
:root body :is(.calendar-day.today,.calendar-cell.today):not(.selected-day):not(.is-selected){border-color:var(--club-control-border)}
:root body .modern-picker{border-color:var(--club-border);color:var(--ink);background:#fff}
:root body .modern-picker :is(.modern-picker-search,.modern-year-input){border-color:var(--club-border);background:var(--club-subtle-gradient);color:var(--ink)}
:root body .modern-picker :is(.modern-date-title,.modern-picker-icon,.modern-picker-link){color:var(--club-text);border-color:var(--club-border)}
:root body .modern-picker :is(.modern-day.is-selected,.modern-month.is-selected,.modern-option.is-selected){border-color:var(--club-control-border);background:var(--club-selected-gradient);color:var(--club-text);box-shadow:inset 0 0 0 1px var(--club-control-border)}
:root body .modern-picker :is(.modern-day[aria-current="date"],.modern-option.is-highlighted){border-color:var(--club-control-border);color:var(--club-text)}
:root body .modern-picker .modern-option.is-highlighted:not(.is-selected){background:var(--club-subtle-gradient)}
:root body .modern-picker :is(.modern-date-footer,.modern-month){border-color:var(--club-border)}
@media(hover:hover) and (pointer:fine){
 :root body .member-editor-tab:not(.is-active):hover{border-color:var(--club-border);background:var(--club-subtle-gradient);color:var(--club-text)}
 :root body :is(.member-choice-chip,.member-choice-chip-button):not(:has(input:disabled)):not(:disabled):hover span{border-color:var(--club-control-border);background-image:var(--club-subtle-gradient);color:var(--club-text)}
 :root body :is(.member-choice-chip.is-selected,.member-choice-chip-button.is-selected):hover span{background-image:var(--club-selected-gradient)}
 :root body .modern-picker :is(.modern-date-title,.modern-picker-icon,.modern-picker-link,.modern-month,.modern-day):not(:disabled):not(.is-selected):hover{border-color:var(--club-border);background:var(--club-subtle-gradient);color:var(--club-text)}
 :root body :is(.calendar-day,.week-day,.training-mobile-day):not(:disabled):not(.selected-day):not(.active):not([aria-pressed="true"]):hover{border-color:var(--club-border);background:var(--club-subtle-gradient)}
}

:root body #view-training_diary .td-day.active{border-color:var(--club-control-border);background:var(--club-selected-gradient);color:var(--club-text);box-shadow:inset 0 0 0 1px var(--club-control-border)}
