/* V168 — compact canonical controls. Intentionally restrained: page layout stays in control. */
:root{
  --ui-green:#8fd4aa;
  --ui-green-hover:#79c899;
  --ui-green-pressed:#68b98a;
  --ui-green-soft:#f4fbf7;
  --ui-green-soft-hover:#eaf7ef;
  --ui-green-border:#9ed2b2;
  --ui-danger:#cf4545;
  --ui-danger-hover:#b83a3a;
  --ui-disabled-bg:#edf2ef;
  --ui-disabled-border:#dce6e0;
  --ui-disabled-text:#94a19a;
  --ui-focus:rgba(24,163,91,.18);
}
html body button,
html body input[type="button"],
html body input[type="submit"]{
  min-height:34px;
  padding:7px 13px;
  border-radius:10px!important;
  border:1px solid var(--ui-green-border)!important;
  font-family:'Montserrat','Arial',sans-serif!important;
  font-size:11px!important;
  font-weight:650!important;
  line-height:1.15!important;
  cursor:pointer!important;
  transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease,transform .05s ease!important;
  box-shadow:none!important;
  background:linear-gradient(135deg,#91d4aa,#eef8f2)!important;
  color:#10261a!important;
}
html body button:hover:not(:disabled),html body input[type="submit"]:hover:not(:disabled){background:linear-gradient(135deg,#7fcca0,#e5f5eb)!important;border-color:#79c899!important}

/* Neutral/navigation actions stay light instead of becoming dark green. */
html body button.outline-btn,
html body button.white-btn,
html body button.secondary-btn,
html body button.nav-btn,
html body button.small-btn,
html body button.filter-btn,
html body button.tab-btn,
html body button.speed-choice,
html body button.skip-report-btn,
html body button.report-open-btn,
html body button.expand-btn,
html body button.add-sub-btn,
html body button.portrait-edit-btn,
html body button.portrait-reroll,
html body button.manager-v3-photo-edit,
html body button.stadium-history-arrow,
html body button.details-button,
html body button.more-link,
html body button.quick-cancel-btn{
  background:#fff!important;
  border-color:var(--ui-green-border)!important;
  color:#17633b!important;
}
html body button.outline-btn:hover:not(:disabled),
html body button.white-btn:hover:not(:disabled),
html body button.secondary-btn:hover:not(:disabled),
html body button.nav-btn:hover:not(:disabled),
html body button.small-btn:hover:not(:disabled),
html body button.filter-btn:hover:not(:disabled),
html body button.tab-btn:hover:not(:disabled),
html body button.speed-choice:hover:not(:disabled),
html body button.details-button:hover:not(:disabled),
html body button.more-link:hover:not(:disabled){background:var(--ui-green-soft-hover)!important;color:#115832!important}
html body button.tab-btn.active,html body button.filter-btn.active,html body button.nav-btn.active,html body button.small-btn.active,html body button.speed-choice.active{background:var(--ui-green-soft)!important;border-color:#8fcaa7!important;color:#0e6c3a!important}
html body button.danger-btn{background:var(--ui-danger)!important;border-color:var(--ui-danger)!important;color:#fff!important}
html body button.danger-btn:hover:not(:disabled){background:var(--ui-danger-hover)!important;border-color:var(--ui-danger-hover)!important}
html body button.close-btn,html body button.quick-details-close,html body button.portrait-studio-close{background:#fff!important;border-color:#d8e3dc!important;color:#425249!important;box-shadow:none!important}
html body button:disabled,html body button[disabled],html body input[type="button"]:disabled,html body input[type="submit"]:disabled{background:var(--ui-disabled-bg)!important;border-color:var(--ui-disabled-border)!important;color:var(--ui-disabled-text)!important;box-shadow:none!important;cursor:not-allowed!important;opacity:1!important;transform:none!important}
html body button:focus-visible,html body input[type="button"]:focus-visible,html body input[type="submit"]:focus-visible{outline:3px solid var(--ui-focus)!important;outline-offset:2px!important}
html body button:active:not(:disabled){transform:translateY(1px)!important}

/* Small icon controls must never be stretched by the global system. */
html body .attrs-area .up-btn{width:18px!important;min-width:18px!important;height:22px!important;min-height:22px!important;padding:0!important;border-radius:6px!important;font-size:8px!important;line-height:1!important}
html body .lineup-table button:not(.green-btn):not(.primary):not(.action-btn),
html body .squad-table button:not(.green-btn):not(.primary):not(.action-btn){min-height:28px;padding:4px 8px}

/* Full-width primary CTAs remain clear, but not oversized. */
html body button.green-btn,html body button.primary,html body button.action-btn,html body button.apply-btn,html body button.sign-btn,html body button.join-btn,html body button#sendLineupBtn,html body button#quickLineupBtn,html body button#submitLineupBtn,html body button.champ-v96-lineup-button{background:linear-gradient(135deg,#91d4aa,#eef8f2)!important;border-color:#88cba2!important;color:#10261a!important;box-shadow:none!important}

@media(max-width:520px){html body button,html body input[type="button"],html body input[type="submit"]{min-height:34px!important}}

/* V169 hard override: legacy dark-green CTA gradients are not allowed to leak through. */
html body button.champ-v96-lineup-button,
html body #currentTourSync button.champ-v96-lineup-button,
html body button[class*="lineup"],
html body button[class*="Lineup"]{
  background:linear-gradient(135deg,#91d4aa,#eef8f2)!important;
  border:1px solid #88cba2!important;
  color:#10261a!important;
  box-shadow:none!important;
}
html body button.champ-v96-lineup-button:hover:not(:disabled),
html body #currentTourSync button.champ-v96-lineup-button:hover:not(:disabled){
  background:linear-gradient(135deg,#7fcca0,#e5f5eb)!important;
  border-color:#79c899!important;
}
/* Compact row controls: preserve the original tiny triangle feel. */
html body .squad-table .move-btn{
  width:14px!important;min-width:14px!important;height:18px!important;min-height:18px!important;
  padding:0!important;border-radius:5px!important;font-size:7px!important;line-height:1!important;
  background:#eef8f2!important;border-color:#b8dcc6!important;color:#17633b!important;
}
html body .squad-table .move-btn:hover:not(:disabled){background:#def1e6!important}
/* V169 specific overrides for legacy page selectors with higher specificity. */
html body #quickNextCard .green-btn,
html body #quickNextCard button.green-btn,
html body #currentTourSync .champ-v96-lineup-button,
html body .attrs-area .up-btn.active{
  background:linear-gradient(135deg,#91d4aa,#eef8f2)!important;
  border-color:#88cba2!important;
  color:#10261a!important;
  box-shadow:none!important;
}
html body .attrs-area .up-btn.active{
  width:18px!important;min-width:18px!important;height:22px!important;min-height:22px!important;
  padding:0!important;border-radius:6px!important;font-size:8px!important;line-height:1!important;
}
html body .attrs-area .up-btn.active:hover{
  background:linear-gradient(135deg,#7fcca0,#e5f5eb)!important;
  transform:none!important;
}
/* V170: training arrows are intentionally tiny and light. */
html body .attrs-area .up-btn,
html body .attrs-area .up-btn.active{
  width:16px!important;min-width:16px!important;height:18px!important;min-height:18px!important;
  padding:0!important;border-radius:5px!important;font-size:7px!important;line-height:16px!important;
  background:linear-gradient(135deg,#a8ddbb,#eff9f3)!important;border-color:#9bd0ad!important;color:#174e2d!important;box-shadow:none!important;
}
