:root {
  color-scheme: dark;
  --bg: #1a271f;
  --panel: #1d2c24;
  --panel-2: #283d31;
  --line: rgba(255, 255, 255, 0.15);
  --text: #f7f1e4;
  --muted: #c3d0c7;
  --green: #346e58;
  --green-2: #76a982;
  --gold: #d3aa4d;
  --trend-round-line: #d3aa4d;
  --trend-average-line: #dff5d7;
  --danger: #9b4b49;
  --blue-tile: #34596b;
  --red-tile: #834845;
  --brown-tile: #4b436d;
  --auth-background: url("/static/images/homepage-background.jpg?v=20260711");
  --shadow: 0 18px 42px rgba(6, 12, 9, 0.44);
  --tile-shadow: 0 14px 26px rgba(0, 0, 0, 0.23), inset 0 1px 0 rgba(255, 255, 255, 0.24);
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html {
  max-width: 100%;
  overflow-x: hidden;
  scroll-behavior: smooth;
}
body {
  margin: 0;
  max-width: 100%;
  overflow-x: hidden;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background:
    radial-gradient(circle at 18% 10%, rgba(117, 154, 122, 0.14), transparent 18rem),
    radial-gradient(circle at 86% 4%, rgba(172, 133, 104, 0.12), transparent 16rem),
    linear-gradient(160deg, #223027 0%, #1a271f 48%, #332f25 100%);
  color: var(--text);
}

body.admin-trend-lab-route {
  --admin-trend-lab-hero-image: url("/static/images/admin-trend-lab-header-dark.png?v=20260820-admin-lab-header-v3");
  --lab-bg: #071827;
  --lab-panel: rgba(13, 32, 50, 0.92);
  --lab-card: #112842;
  --lab-card-soft: #172f49;
  --lab-border: rgba(126, 169, 211, 0.18);
  --lab-grid: rgba(126, 169, 211, 0.1);
  --lab-text: #f5f7fb;
  --lab-muted: #aebccd;
  --lab-title: #ffffff;
  --lab-green: #6bbd85;
  --lab-red: #f0716b;
  --lab-blue: #64a7ff;
  --lab-gold: #d6aa45;
  --lab-shadow: 0 18px 46px rgba(0, 0, 0, 0.32);
  background:
    radial-gradient(circle at 82% -8%, rgba(82, 145, 214, 0.24), transparent 28rem),
    radial-gradient(circle at 12% 18%, rgba(49, 96, 142, 0.2), transparent 24rem),
    linear-gradient(180deg, #071321 0%, #091828 46%, #070f1a 100%);
}

body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] {
  --admin-trend-lab-hero-image: url("/static/images/admin-trend-lab-header-light.png?v=20260820-admin-lab-header-v3");
  --lab-bg: #f7f3ea;
  --lab-panel: rgba(255, 252, 246, 0.82);
  --lab-card: #fffdfa;
  --lab-card-soft: #f3eadc;
  --lab-border: rgba(178, 131, 37, 0.18);
  --lab-grid: rgba(64, 119, 73, 0.16);
  --lab-text: #141817;
  --lab-muted: #6d665d;
  --lab-title: #111615;
  --lab-green: #6f8d61;
  --lab-red: #dc625d;
  --lab-blue: #7f8fa8;
  --lab-gold: #b28325;
  --lab-shadow: 0 18px 46px rgba(52, 42, 28, 0.12);
  color: #141817;
  background:
    radial-gradient(circle at 82% -8%, rgba(99, 144, 208, 0.2), transparent 28rem),
    radial-gradient(circle at 12% 16%, rgba(221, 201, 162, 0.32), transparent 23rem),
    linear-gradient(180deg, #f7f4ee 0%, #eee9df 48%, #e7e1d5 100%);
}

html.birdio-design-boot body {
  --admin-trend-lab-hero-image: url("/static/images/admin-trend-lab-header-dark.png?v=20260820-admin-lab-header-v3");
  --lab-bg: #071827;
  --lab-panel: rgba(13, 32, 50, 0.92);
  --lab-card: #112842;
  --lab-card-soft: #172f49;
  --lab-border: rgba(126, 169, 211, 0.18);
  --lab-grid: rgba(126, 169, 211, 0.1);
  --lab-text: #f5f7fb;
  --lab-muted: #aebccd;
  --lab-title: #ffffff;
  --lab-green: #6bbd85;
  --lab-red: #f0716b;
  --lab-blue: #64a7ff;
  --lab-gold: #d6aa45;
  --lab-shadow: 0 18px 46px rgba(0, 0, 0, 0.32);
  background:
    radial-gradient(circle at 82% -8%, rgba(82, 145, 214, 0.24), transparent 28rem),
    radial-gradient(circle at 12% 18%, rgba(49, 96, 142, 0.2), transparent 24rem),
    linear-gradient(180deg, #071321 0%, #091828 46%, #070f1a 100%);
}

html.birdio-design-boot[data-admin-trend-lab-theme="light"] body {
  --admin-trend-lab-hero-image: url("/static/images/admin-trend-lab-header-light.png?v=20260820-admin-lab-header-v3");
  --lab-bg: #f7f3ea;
  --lab-panel: rgba(255, 252, 246, 0.82);
  --lab-card: #fffdfa;
  --lab-card-soft: #f3eadc;
  --lab-border: rgba(178, 131, 37, 0.18);
  --lab-grid: rgba(64, 119, 73, 0.16);
  --lab-text: #141817;
  --lab-muted: #6d665d;
  --lab-title: #111615;
  --lab-green: #6f8d61;
  --lab-red: #dc625d;
  --lab-blue: #7f8fa8;
  --lab-gold: #b28325;
  --lab-shadow: 0 18px 46px rgba(52, 42, 28, 0.12);
  color: #141817;
  background:
    radial-gradient(circle at 82% -8%, rgba(99, 144, 208, 0.2), transparent 28rem),
    radial-gradient(circle at 12% 16%, rgba(221, 201, 162, 0.32), transparent 23rem),
    linear-gradient(180deg, #f7f4ee 0%, #eee9df 48%, #e7e1d5 100%);
}

.login-page {
  --auth-background: url("/static/images/admin-trend-lab-header-dark.png?v=20260820-auth-dark");
  min-height: 100vh;
  background:
    radial-gradient(circle at 84% -12%, rgba(82, 145, 214, 0.26), transparent 30rem),
    radial-gradient(circle at 12% 16%, rgba(49, 96, 142, 0.23), transparent 24rem),
    linear-gradient(180deg, rgba(7, 19, 33, 0.72), rgba(7, 15, 26, 0.96)),
    var(--auth-background) center / cover no-repeat,
    #071321;
  background-attachment: fixed, fixed, fixed, fixed, fixed;
}
.login-shell {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: clamp(1.1rem, 4vw, 2.5rem);
}
.login-card {
  width: min(500px, 100%);
  display: grid;
  gap: clamp(1.05rem, 3vw, 1.4rem);
  padding: clamp(1.25rem, 4vw, 2.05rem);
  border: 1px solid rgba(126, 169, 211, 0.28);
  border-radius: 8px;
  background:
    linear-gradient(150deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.025)),
    linear-gradient(180deg, rgba(18, 48, 79, 0.92), rgba(11, 29, 49, 0.96));
  box-shadow: 0 26px 70px rgba(1, 8, 18, 0.6), 0 0 0 1px rgba(255, 255, 255, 0.035) inset;
  backdrop-filter: blur(10px);
}
.login-brand {
  display: block;
  min-width: 0;
}
.login-brand-copy {
  min-width: 0;
  display: grid;
  gap: 0.24rem;
  padding-bottom: 0.18rem;
}
.login-brand-copy strong {
  color: var(--text);
  font-size: clamp(2.15rem, 8vw, 3.25rem);
  line-height: 0.86;
  font-weight: 950;
  letter-spacing: 0;
  text-transform: lowercase;
  text-shadow: 0 3px 10px rgba(0, 0, 0, 0.4);
}
.login-brand-copy span {
  color: var(--gold);
  font-size: clamp(0.84rem, 2.9vw, 1.05rem);
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: 0;
  text-shadow: 0 2px 6px rgba(0, 0, 0, 0.45);
}
.login-card h1,
.login-card p {
  margin: 0;
}
.login-card h1 {
  font-size: clamp(1.45rem, 4.8vw, 1.95rem);
  line-height: 1.05;
}
.login-form {
  display: grid;
  gap: 1rem;
}
.login-card label {
  display: grid;
  gap: 0.45rem;
  color: var(--muted);
  font-weight: 700;
}
.login-card input {
  width: 100%;
  min-width: 0;
}
.login-card button {
  border: 0;
  border-radius: 8px;
  padding: 0.95rem 1rem;
  color: #07110d;
  background: linear-gradient(90deg, var(--gold), var(--green-2));
  font-weight: 850;
  cursor: pointer;
  box-shadow: var(--tile-shadow);
}
.login-error {
  padding: 0.75rem;
  border: 1px solid rgba(212, 107, 107, 0.5);
  border-radius: 8px;
  color: #ffd7d7;
  background: rgba(212, 107, 107, 0.12);
}
.login-success {
  padding: 0.75rem;
  border: 1px solid rgba(147, 211, 131, 0.45);
  border-radius: 8px;
  color: #d9ffd5;
  background: rgba(147, 211, 131, 0.12);
}
.login-register-card {
  margin-top: 0.25rem;
  padding-top: 1rem;
  border-top: 1px solid var(--line);
}
.login-register-card summary {
  cursor: pointer;
  font-weight: 850;
  color: var(--text);
}
.login-register-form {
  display: grid;
  gap: 1rem;
  margin-top: 1rem;
}
.login-honeypot {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.login-legal-note {
  color: var(--muted);
  font-size: 0.9rem;
  line-height: 1.35;
}
.login-legal-note a,
.login-legal-links a,
.login-help-link a,
.legal-top-links a {
  color: var(--gold);
  font-weight: 800;
  text-decoration: none;
}
.login-legal-note a:hover,
.login-legal-note a:focus-visible,
.login-legal-links a:hover,
.login-legal-links a:focus-visible,
.login-help-link a:hover,
.login-help-link a:focus-visible,
.legal-top-links a:hover,
.legal-top-links a:focus-visible {
  text-decoration: underline;
}
.login-help-link {
  margin: 0;
  text-align: center;
  font-size: 0.92rem;
}
.login-legal-links {
  display: flex;
  justify-content: center;
  gap: 0.55rem;
  color: var(--muted);
  font-size: 0.92rem;
  border-top: 1px solid var(--line);
  padding-top: 0.9rem;
}
.settings-legal-links {
  grid-column: 1 / -1;
  width: 100%;
  margin: 1rem auto 0;
  align-items: center;
  text-align: center;
}
.settings-legal-links span {
  color: var(--muted);
}
.legal-shell {
  min-height: 100vh;
  display: grid;
  place-items: start center;
  padding: clamp(1.1rem, 4vw, 3rem);
}
.legal-card {
  width: min(1040px, 100%);
  display: grid;
  gap: clamp(0.9rem, 2vw, 1.25rem);
  padding: clamp(1.25rem, 4vw, 2.2rem);
  border: 1px solid rgba(126, 169, 211, 0.28);
  border-radius: 8px;
  background:
    radial-gradient(circle at 14% 8%, rgba(76, 136, 204, 0.18), transparent 17rem),
    linear-gradient(150deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.025)),
    linear-gradient(180deg, rgba(18, 48, 79, 0.92), rgba(11, 29, 49, 0.96));
  box-shadow: 0 26px 70px rgba(1, 8, 18, 0.6), 0 0 0 1px rgba(255, 255, 255, 0.035) inset;
  backdrop-filter: blur(10px);
}
.legal-page .login-brand-copy strong {
  text-shadow: none;
}
.legal-page .login-brand-copy span {
  text-shadow: none;
}
.legal-card h1,
.legal-card h2,
.legal-card p {
  margin: 0;
}
.legal-card ul {
  margin: 0.15rem 0 0;
  padding-left: 1.1rem;
  color: #d3deeb;
  line-height: 1.55;
}
.legal-card li + li {
  margin-top: 0.35rem;
}
.legal-card h1 {
  font-size: clamp(1.8rem, 5vw, 2.6rem);
  line-height: 1.05;
  color: #f5f7fb;
}
.legal-card h2 {
  color: var(--gold);
  font-size: 1.02rem;
  letter-spacing: 0;
}
.legal-top-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  padding: 0.55rem;
  border: 1px solid rgba(126, 169, 211, 0.22);
  border-radius: 8px;
  background: rgba(12, 35, 58, 0.56);
}
.legal-top-links a {
  padding: 0.42rem 0.72rem;
  border: 1px solid rgba(107, 189, 133, 0.28);
  border-radius: 999px;
  color: #6bbd85;
  background: rgba(107, 189, 133, 0.08);
}
.legal-top-links a:hover,
.legal-top-links a:focus-visible {
  color: var(--gold);
  border-color: rgba(211, 170, 77, 0.46);
  background: rgba(211, 170, 77, 0.1);
  text-decoration: none;
}
.legal-section {
  display: grid;
  gap: 0.45rem;
  padding: 1rem;
  border: 1px solid rgba(126, 169, 211, 0.22);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(19, 50, 80, 0.78), rgba(13, 35, 58, 0.76));
}
.legal-section p {
  color: #d3deeb;
  line-height: 1.55;
}
.legal-section a {
  color: #6bbd85;
  font-weight: 900;
  text-decoration: none;
}
.legal-section a:hover,
.legal-section a:focus-visible {
  color: var(--gold);
  text-decoration: underline;
}
.legal-warning {
  border-color: rgba(211, 170, 77, 0.55);
  background: rgba(211, 170, 77, 0.08);
}

.topbar {
  position: sticky;
  top: 0;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1rem;
  row-gap: 0.55rem;
  min-height: 112px;
  padding: 0.45rem clamp(1rem, 4vw, 3rem);
  background: rgba(5, 13, 10, 0.9);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--line);
  overflow: visible;
}

body.admin-trend-lab-route .topbar {
  min-height: 0;
  padding-top: 0.16rem;
  padding-bottom: 0.16rem;
  row-gap: 0.35rem;
  flex-wrap: nowrap;
  background:
    radial-gradient(circle at 82% 0%, rgba(100, 167, 255, 0.18), transparent 19rem),
    linear-gradient(90deg, rgba(4, 13, 24, 0.98), rgba(8, 22, 38, 0.94));
  border-bottom-color: rgba(126, 169, 211, 0.22);
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.22);
}
html.birdio-design-boot body:not(.admin-trend-lab-route) .topbar {
  min-height: 0;
  padding-top: 0.16rem;
  padding-bottom: 0.16rem;
  row-gap: 0.35rem;
  flex-wrap: nowrap;
  background:
    radial-gradient(circle at 82% 0%, rgba(100, 167, 255, 0.18), transparent 19rem),
    linear-gradient(90deg, rgba(4, 13, 24, 0.98), rgba(8, 22, 38, 0.94));
  border-bottom-color: rgba(126, 169, 211, 0.22);
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.22);
}

body.admin-trend-lab-route .brand {
  order: 1;
  flex: 1 1 auto;
  max-width: 100%;
}
html.birdio-design-boot body:not(.admin-trend-lab-route) .brand {
  order: 1;
  flex: 1 1 auto;
  max-width: 100%;
}

body.admin-trend-lab-route .brand-logo {
  width: clamp(69px, 6.8vw, 94px);
  height: clamp(69px, 6.8vw, 94px);
  margin: -0.12rem 0 -0.12rem -0.08rem;
}
html.birdio-design-boot body:not(.admin-trend-lab-route) .brand-logo {
  width: clamp(69px, 6.8vw, 94px);
  height: clamp(69px, 6.8vw, 94px);
  margin: -0.12rem 0 -0.12rem -0.08rem;
}

body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .topbar {
  background:
    radial-gradient(circle at 82% 0%, rgba(99, 144, 208, 0.14), transparent 17rem),
    linear-gradient(90deg, rgba(255, 253, 248, 0.96), rgba(246, 241, 232, 0.92));
  border-bottom-color: rgba(84, 103, 129, 0.16);
  box-shadow: 0 14px 32px rgba(25, 31, 28, 0.12);
}
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body:not(.admin-trend-lab-route) .topbar {
  background:
    radial-gradient(circle at 82% 0%, rgba(99, 144, 208, 0.14), transparent 17rem),
    linear-gradient(90deg, rgba(255, 253, 248, 0.96), rgba(246, 241, 232, 0.92));
  border-bottom-color: rgba(84, 103, 129, 0.16);
  box-shadow: 0 14px 32px rgba(25, 31, 28, 0.12);
}

.topbar h1 { margin: 0; font-size: clamp(1.2rem, 2.3vw, 2rem); }
html.startup-intro-active,
html.startup-intro-active body {
  height: 100%;
  overflow: hidden;
}
html.startup-intro-active .topbar {
  visibility: hidden;
}
.brand {
  display: inline-flex;
  align-items: flex-end;
  gap: clamp(0.55rem, 1.5vw, 1rem);
  min-width: 0;
  max-width: 100%;
  flex-wrap: nowrap;
  flex: 1 1 36rem;
}
.brand-logo {
  width: clamp(86px, 8.5vw, 118px);
  height: clamp(86px, 8.5vw, 118px);
  object-fit: contain;
  display: block;
  align-self: center;
  flex: 0 0 auto;
  margin: -0.4rem 0 -0.55rem -0.2rem;
  filter: drop-shadow(0 0.55rem 0.85rem rgba(0, 0, 0, 0.36));
}
.brand-name {
  color: var(--text);
  font-size: clamp(2rem, 4.4vw, 3.35rem);
  line-height: 0.9;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: lowercase;
  text-shadow: 0 3px 10px rgba(0, 0, 0, 0.35);
}
.brand-copy {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.45rem 0.85rem;
  min-width: 0;
}
.brand-tagline > span {
  white-space: nowrap;
}
.brand-tagline {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25em;
  flex: 0 1 auto;
  min-width: 0;
  color: var(--gold);
  font-size: clamp(0.95rem, 1.75vw, 1.32rem);
  line-height: 1.12;
  font-weight: 900;
  letter-spacing: 0;
  margin-bottom: 0;
  white-space: normal;
  overflow-wrap: anywhere;
  text-shadow: 0 2px 6px rgba(0, 0, 0, 0.45);
}

body.admin-trend-lab-route .brand-tagline {
  color: var(--gold);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: clamp(1rem, 1.95vw, 1.45rem);
  font-weight: 900;
  line-height: 0.98;
  text-shadow: 0 3px 10px rgba(0, 0, 0, 0.35);
}
html.birdio-design-boot body:not(.admin-trend-lab-route) .brand-tagline {
  color: var(--gold);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: clamp(1rem, 1.95vw, 1.45rem);
  font-weight: 900;
  line-height: 0.98;
  text-shadow: 0 3px 10px rgba(0, 0, 0, 0.35);
}

body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .brand-name {
  color: #121a17;
  text-shadow: none;
}

body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .brand-tagline {
  color: var(--gold);
  text-shadow: none;
}
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body:not(.admin-trend-lab-route) .brand-name {
  color: #121a17;
  text-shadow: none;
}
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body:not(.admin-trend-lab-route) .brand-tagline {
  color: var(--gold);
  text-shadow: none;
}
.global-design-toggle {
  display: none;
  flex: 0 0 auto;
  margin-left: auto;
}
body.admin-trend-lab-route .global-design-toggle {
  display: inline-grid;
  order: 3;
  margin-left: 0.55rem;
}
html.birdio-design-boot body:not(.admin-trend-lab-route) .global-design-toggle {
  display: inline-grid;
  order: 3;
  margin-left: 0.55rem;
}
.admin-environment-badge {
  order: 4;
  display: inline-flex;
  align-items: center;
  gap: 0.42rem;
  flex: 0 0 auto;
  max-width: min(15rem, 42vw);
  min-height: 2.35rem;
  padding: 0.42rem 0.68rem;
  border: 1px solid rgba(211, 170, 77, 0.58);
  border-radius: 999px;
  color: #fff7df;
  background:
    radial-gradient(circle at 18% 18%, rgba(255, 255, 255, 0.16), transparent 55%),
    rgba(9, 22, 18, 0.72);
  box-shadow:
    0 8px 20px rgba(0, 0, 0, 0.24),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}
.admin-environment-badge[hidden] {
  display: none;
}
.admin-environment-badge-dot {
  width: 0.58rem;
  height: 0.58rem;
  border-radius: 50%;
  background: var(--gold);
  box-shadow: 0 0 0 3px rgba(211, 170, 77, 0.16);
}
.admin-environment-badge-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}
.admin-environment-badge-live {
  border-color: rgba(211, 170, 77, 0.72);
}
.admin-environment-badge-live .admin-environment-badge-dot {
  background: #d6aa45;
}
.admin-environment-badge-dev {
  border-color: rgba(96, 165, 250, 0.68);
  color: #e8f3ff;
  background:
    radial-gradient(circle at 18% 18%, rgba(255, 255, 255, 0.17), transparent 55%),
    rgba(11, 33, 56, 0.74);
}
.admin-environment-badge-dev .admin-environment-badge-dot {
  background: #60a5fa;
  box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.17);
}
.admin-environment-badge-unknown {
  border-color: rgba(255, 255, 255, 0.24);
  color: rgba(247, 241, 228, 0.78);
}
.admin-environment-badge-unknown .admin-environment-badge-dot {
  background: rgba(247, 241, 228, 0.58);
  box-shadow: 0 0 0 3px rgba(247, 241, 228, 0.1);
}
.global-design-toggle.birdio-theme-icon-toggle {
  width: 44px;
  height: 44px;
  place-items: center;
  padding: 0;
  border: 1px solid rgba(126, 169, 211, 0.22);
  border-radius: 50%;
  background:
    radial-gradient(circle at 28% 22%, rgba(255, 255, 255, 0.18), transparent 52%),
    rgba(7, 19, 33, 0.62);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.22);
  cursor: pointer;
}
.global-design-toggle.birdio-theme-icon-toggle:hover {
  border-color: rgba(214, 170, 69, 0.52);
  background:
    radial-gradient(circle at 28% 22%, rgba(255, 255, 255, 0.22), transparent 52%),
    rgba(17, 40, 66, 0.78);
  box-shadow:
    0 10px 22px rgba(0, 0, 0, 0.26),
    0 0 0 3px rgba(214, 170, 69, 0.1);
}
.global-design-toggle.birdio-theme-icon-toggle:active {
  transform: translateY(1px);
}
.global-design-toggle.birdio-theme-icon-toggle:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 3px;
}
.birdio-theme-icon-frame {
  display: grid;
  width: 100%;
  height: 100%;
  place-items: center;
  overflow: hidden;
  border-radius: 50%;
}
.birdio-theme-switch-icon {
  grid-area: 1 / 1;
  display: block;
  width: 34px;
  height: 34px;
  object-fit: contain;
  transition: opacity 140ms ease, transform 140ms ease;
  pointer-events: none;
}
.birdio-theme-switch-dark {
  opacity: 0;
  transform: scale(0.84);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .global-design-toggle.birdio-theme-icon-toggle {
  border-color: rgba(28, 44, 38, 0.12);
  background:
    radial-gradient(circle at 28% 22%, rgba(255, 255, 255, 0.92), transparent 58%),
    rgba(255, 253, 248, 0.9);
  box-shadow: 0 8px 18px rgba(26, 36, 31, 0.12);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .birdio-theme-switch-light {
  opacity: 0;
  transform: scale(0.84);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .birdio-theme-switch-dark {
  opacity: 1;
  transform: scale(1);
}
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body:not(.admin-trend-lab-route) .birdio-theme-switch-light {
  opacity: 0;
  transform: scale(0.84);
}
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body:not(.admin-trend-lab-route) .birdio-theme-switch-dark {
  opacity: 1;
  transform: scale(1);
}
body.admin-trend-lab-route .topbar #main-nav {
  order: 2;
  flex: 0 1 auto;
  min-width: 0;
  margin-left: auto;
  justify-content: flex-end;
  overflow: visible;
}
html.birdio-design-boot body:not(.admin-trend-lab-route) .topbar #main-nav {
  order: 2;
  flex: 0 1 auto;
  min-width: 0;
  margin-left: auto;
  justify-content: flex-end;
  overflow: visible;
}
.eyebrow {
  margin: 0 0 0.3rem;
  color: var(--gold);
  text-transform: uppercase;
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  font-weight: 800;
}

nav { display: flex; gap: 0.45rem; overflow-x: auto; max-width: 62vw; }
.topbar #main-nav {
  flex: 0 1 auto;
  flex-wrap: nowrap;
  justify-content: flex-end;
  max-width: 100%;
  min-width: 0;
  overflow-x: visible;
  row-gap: 0.35rem;
  scrollbar-gutter: stable;
}

.main-nav-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.45rem;
  row-gap: 0.35rem;
  max-width: min(62vw, 62rem);
}
nav a {
  color: var(--muted);
  text-decoration: none;
  padding: 0.55rem 0.75rem;
  border: 1px solid transparent;
  border-radius: 7px;
  white-space: nowrap;
  font-size: 0.9rem;
}
nav a:hover {
  border-color: var(--line);
  color: var(--text);
  background: rgba(255,255,255,0.04);
}
nav a.active {
  border-color: rgba(211, 170, 77, 0.45);
  color: var(--text);
  background: rgba(211, 170, 77, 0.12);
}

body.admin-trend-lab-route nav a {
  color: #b8c7d8;
}

body.admin-trend-lab-route nav a:hover {
  border-color: rgba(126, 169, 211, 0.28);
  color: #f5f7fb;
  background: rgba(126, 169, 211, 0.1);
}

body.admin-trend-lab-route nav a.active {
  border-color: rgba(100, 167, 255, 0.44);
  color: #ffffff;
  background: rgba(100, 167, 255, 0.14);
}

body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] nav a {
  color: #53645d;
}

body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] nav a:hover {
  border-color: rgba(78, 111, 156, 0.24);
  color: #121a17;
  background: rgba(78, 111, 156, 0.1);
}

body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] nav a.active {
  border-color: rgba(78, 111, 156, 0.38);
  color: #121a17;
  background: rgba(78, 111, 156, 0.14);
}

.main-nav-menu {
  position: relative;
  display: none;
}

.main-nav-menu > summary {
  list-style: none;
}

.main-nav-menu > summary::-webkit-details-marker {
  display: none;
}

.main-nav-trigger {
  display: inline-flex;
  min-width: 48px;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  padding: 0.45rem 0.78rem;
  border: 1px solid rgba(126, 169, 211, 0.24);
  border-radius: 10px;
  color: #f5f7fb;
  background:
    radial-gradient(circle at 26% 20%, rgba(255, 255, 255, 0.16), transparent 54%),
    rgba(7, 19, 33, 0.62);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.18);
  cursor: pointer;
  user-select: none;
}

.main-nav-trigger:hover,
.main-nav-trigger:focus-visible,
.main-nav-menu[open] .main-nav-trigger {
  border-color: rgba(214, 170, 69, 0.52);
  background:
    radial-gradient(circle at 26% 20%, rgba(255, 255, 255, 0.2), transparent 54%),
    rgba(17, 40, 66, 0.78);
}

.main-nav-trigger:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 3px;
}

.main-nav-trigger-bars {
  position: relative;
  display: block;
  width: 1.18rem;
  height: 2px;
  border-radius: 999px;
  background: currentColor;
  box-shadow: 0 -6px 0 currentColor, 0 6px 0 currentColor;
}

.main-nav-panel {
  position: absolute;
  top: calc(100% + 0.65rem);
  right: 0;
  z-index: 30;
  display: grid;
  width: min(20rem, calc(100vw - 1.25rem));
  max-height: min(76vh, 34rem);
  overflow-y: auto;
  overscroll-behavior: contain;
  gap: 0.28rem;
  padding: 0.55rem;
  border: 1px solid rgba(126, 169, 211, 0.28);
  border-radius: 12px;
  background:
    radial-gradient(circle at 18% 0%, rgba(100, 167, 255, 0.2), transparent 13rem),
    linear-gradient(155deg, rgba(8, 22, 38, 0.98), rgba(5, 14, 26, 0.98));
  box-shadow: 0 20px 44px rgba(0, 0, 0, 0.36);
}

.main-nav-panel a {
  display: flex;
  min-height: 44px;
  align-items: center;
  justify-content: space-between;
  padding: 0.65rem 0.72rem;
  border-color: rgba(126, 169, 211, 0.14);
  border-radius: 8px;
  color: #d6e0ec;
  background: rgba(126, 169, 211, 0.055);
}

.main-nav-panel a:hover,
.main-nav-panel a:focus-visible {
  border-color: rgba(126, 169, 211, 0.32);
  color: #ffffff;
  background: rgba(126, 169, 211, 0.12);
  outline: none;
}

.main-nav-panel a.active {
  border-color: rgba(214, 170, 69, 0.58);
  color: #ffffff;
  background: rgba(214, 170, 69, 0.16);
}

body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .main-nav-trigger {
  border-color: rgba(28, 44, 38, 0.13);
  color: #121a17;
  background:
    radial-gradient(circle at 26% 20%, rgba(255, 255, 255, 0.92), transparent 58%),
    rgba(255, 253, 248, 0.92);
  box-shadow: 0 8px 18px rgba(26, 36, 31, 0.12);
}

body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .main-nav-trigger:hover,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .main-nav-trigger:focus-visible,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .main-nav-menu[open] .main-nav-trigger {
  border-color: rgba(78, 111, 156, 0.34);
  background:
    radial-gradient(circle at 26% 20%, rgba(255, 255, 255, 0.96), transparent 58%),
    rgba(248, 244, 236, 0.98);
}

body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .main-nav-panel {
  border-color: rgba(84, 103, 129, 0.18);
  background:
    radial-gradient(circle at 18% 0%, rgba(99, 144, 208, 0.14), transparent 13rem),
    linear-gradient(155deg, rgba(255, 253, 248, 0.99), rgba(244, 238, 228, 0.99));
  box-shadow: 0 20px 44px rgba(28, 36, 31, 0.17);
}

body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .main-nav-panel a {
  border-color: rgba(84, 103, 129, 0.13);
  color: #53645d;
  background: rgba(78, 111, 156, 0.06);
}

body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .main-nav-panel a:hover,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .main-nav-panel a:focus-visible {
  border-color: rgba(78, 111, 156, 0.26);
  color: #121a17;
  background: rgba(78, 111, 156, 0.11);
}

body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .main-nav-panel a.active {
  border-color: rgba(78, 111, 156, 0.38);
  color: #121a17;
  background: rgba(78, 111, 156, 0.14);
}

.text-link {
  color: var(--green-2);
  text-decoration: none;
  font-weight: 800;
}
.text-link:hover { color: var(--gold); text-decoration: underline; }
.pill-link {
  color: var(--text);
  text-decoration: none;
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 0.45rem 0.75rem;
  background: rgba(255,255,255,0.04);
  white-space: nowrap;
  font: inherit;
  cursor: pointer;
}
.danger-link {
  color: #ffd7d7;
  border-color: rgba(212, 107, 107, 0.5);
  background: rgba(212, 107, 107, 0.12);
}
.danger-link:hover {
  border-color: rgba(212, 107, 107, 0.8);
  background: rgba(212, 107, 107, 0.18);
}

main { padding: 1rem clamp(1rem, 4vw, 3rem) 4rem; }
.hero {
  position: relative;
  min-height: clamp(260px, 42vh, 460px);
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: clamp(1rem, 4vw, 3rem);
  overflow: hidden;
  margin: 1rem 0 2rem;
  padding: clamp(1.6rem, 5vw, 4rem);
  border: 0;
  border-radius: 18px;
  background:
    linear-gradient(90deg, rgba(7, 17, 13, 0.45) 0%, rgba(7, 17, 13, 0.33) 38%, rgba(7, 17, 13, 0.09) 100%),
    linear-gradient(0deg, rgba(7, 17, 13, 0.29), rgba(7, 17, 13, 0.025)),
    var(--hero-image, url("/static/images/homepage-header.png?v=20260721-homepage-header-birdio3")) center / cover no-repeat;
  box-shadow: none;
}
body.admin-trend-lab-route .hero {
  --hero-image: var(--admin-trend-lab-hero-image) !important;
  background:
    linear-gradient(90deg, rgba(4, 12, 22, 0.48) 0%, rgba(4, 12, 22, 0.28) 42%, rgba(4, 12, 22, 0.06) 100%),
    linear-gradient(0deg, rgba(4, 12, 22, 0.28), rgba(4, 12, 22, 0.02)),
    var(--hero-image) center / cover no-repeat;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .hero {
  background:
    linear-gradient(90deg, rgba(247, 244, 238, 0.7) 0%, rgba(247, 244, 238, 0.42) 44%, rgba(247, 244, 238, 0.08) 100%),
    linear-gradient(0deg, rgba(247, 244, 238, 0.2), rgba(247, 244, 238, 0)),
    var(--hero-image) center / cover no-repeat;
}
body.admin-trend-lab-route .hero-player-card,
body.admin-trend-lab-route .live-panel,
body.admin-trend-lab-route .hero-notification-panel,
body.admin-trend-lab-route .app-entry-card {
  border-color: rgba(126, 169, 211, 0.28);
  background:
    radial-gradient(circle at 90% 0%, rgba(100, 167, 255, 0.16), transparent 11rem),
    linear-gradient(160deg, rgba(6, 17, 31, 0.9), rgba(14, 32, 52, 0.78));
}
.hero > div,
.hero > aside,
.hero > section,
.hero-course-logo {
  position: relative;
  z-index: 1;
}
.hero-course-logo {
  position: absolute;
  z-index: 2;
  top: clamp(1rem, 3vw, 2rem);
  right: clamp(1rem, 3vw, 2rem);
  object-fit: contain;
  pointer-events: none;
  user-select: none;
  filter: drop-shadow(0 10px 18px rgba(0,0,0,0.34));
}
.hero-course-logo-warnemuende {
  width: clamp(220px, 25vw, 430px);
  max-height: clamp(72px, 9vw, 125px);
}
.hero-course-logo-apeldoer {
  width: clamp(110px, 13vw, 205px);
  max-height: clamp(110px, 13vw, 205px);
}
.hero h2 {
  max-width: 780px;
  margin: 0;
  font-size: clamp(2rem, 4.6vw, 4.6rem);
  line-height: 1.22;
}
.hero p:not(.eyebrow) { color: var(--muted); max-width: 720px; font-size: 1.05rem; line-height: 1.6; }
.hero-copy {
  min-width: 0;
}
.hero-side-panel {
  width: min(340px, 100%);
  flex: 0 0 min(340px, 34%);
  display: grid;
  margin-left: auto;
  align-self: flex-start;
  gap: 0.85rem;
}
.hero-primary-cluster {
  display: flex;
  align-items: stretch;
  gap: clamp(0.85rem, 2.5vw, 1.75rem);
  min-width: 0;
  max-width: min(760px, 100%);
  flex: 0 1 auto;
}
.hero-loading {
  align-items: center;
}
.live-panel {
  padding: 1rem;
  border: 1px solid rgba(211, 170, 77, 0.32);
  border-radius: 10px;
  background: rgba(7, 17, 13, 0.72);
  box-shadow: var(--shadow);
}
.hero-hcp-panel {
  display: grid;
  gap: 0.75rem;
}
.hero-player-card {
  width: min(360px, 100%);
  flex: 0 1 360px;
  align-self: flex-start;
  padding: 1rem;
  border: 1px solid rgba(211, 170, 77, 0.32);
  border-radius: 10px;
  background: rgba(7, 17, 13, 0.68);
  box-shadow: var(--shadow);
}
.hero-hcp-main {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
}
.hero-birdio-trend {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 0.85rem;
  padding: 0.7rem 0;
  border-top: 1px solid rgba(150, 174, 190, 0.3);
  color: inherit;
  text-decoration: none;
}
.hero-birdio-trend span { font-weight: 800; }
.hero-birdio-trend small { display: block; font-size: 0.75rem; font-weight: 500; margin-top: 0.2rem; }
.hero-birdio-trend strong { font-size: 2rem; line-height: 1; }
.birdio-trend-positive { --birdio-value-color: #80d6ad; }
.birdio-trend-negative { --birdio-value-color: #f3a59e; }
.birdio-trend-neutral, .birdio-trend-pending { --birdio-value-color: var(--text, #e7edf0); }
.hero-birdio-trend strong, .birdio-trend-summary > strong { color: var(--birdio-value-color); }
.birdio-trend-panel { width: 100%; max-width: 1280px; margin-inline: 0 auto; }
.birdio-trend-layout { display: grid; grid-template-columns: minmax(220px, 260px) minmax(0, 1fr); gap: 1.5rem; align-items: center; }
.birdio-trend-summary { padding: 1rem; display: grid; gap: 0.6rem; }
.birdio-trend-summary > span { font-size: 0.85rem; }
.birdio-trend-summary > strong { font-size: clamp(2.6rem, 5vw, 4.5rem); line-height: 1.1; font-variant-numeric: tabular-nums; }
.birdio-trend-summary p, .birdio-trend-plot p { margin: 0; }
.birdio-trend-summary small, .birdio-trend-plot p { font-size: 0.8rem; line-height: 1.5; }
.birdio-trend-compact { grid-template-columns: 1fr; }
.birdio-trend-plot { min-width: 0; padding: 1rem; border: 1px solid rgba(150, 174, 190, 0.2); border-radius: 12px; }
.birdio-trend-legend { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 0.6rem 1rem; font-size: 0.8rem; }
.birdio-trend-legend > span, .birdio-trend-legend label { display: inline-flex; align-items: center; gap: 0.5rem; }
.birdio-trend-legend label { cursor: pointer; min-height: 32px; }
.birdio-trend-legend input { flex: 0 0 16px; min-width: 0; max-width: 16px; width: 16px; height: 16px; padding: 0; margin: 0; accent-color: var(--gold, #d3aa4d); }
.birdio-trend-line-key { width: 24px; height: 3px; background: var(--gold, #d3aa4d); border-radius: 2px; }
.birdio-trend-round-key { width: 8px; height: 8px; border: 1.5px solid currentColor; transform: rotate(45deg); opacity: 0.7; }
.birdio-trend-chart { display: block; width: 100%; height: 340px; overflow: visible; }
.birdio-trend-chart text { fill: currentColor; font: 12px sans-serif; }
.birdio-trend-zone-positive { fill: #64c59a; opacity: 0.07; }
.birdio-trend-zone-negative { fill: #e77777; opacity: 0.07; }
.birdio-trend-grid { stroke: currentColor; opacity: 0.12; }
.birdio-trend-zero { stroke: currentColor; opacity: 0.65; stroke-width: 1.5; }
.birdio-trend-line { fill: none; stroke: var(--gold, #d3aa4d); stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
.birdio-trend-dot { fill: var(--birdio-value-color); stroke: currentColor; stroke-width: 0.7; }
.birdio-trend-round-dot { fill: none; stroke: var(--birdio-value-color); stroke-width: 1.5; opacity: 0.65; }
.birdio-trend-marker { cursor: pointer; outline: none; }
.birdio-trend-hit { fill: transparent; stroke: transparent; }
.birdio-trend-marker:focus .birdio-trend-hit, .birdio-trend-marker.is-selected .birdio-trend-hit { stroke: var(--birdio-value-color); stroke-width: 1; }
.birdio-trend-marker:hover .birdio-trend-round-dot, .birdio-trend-marker.is-selected .birdio-trend-round-dot { opacity: 1; stroke-width: 2; }
.birdio-trend-selection { min-height: 64px; padding: 0.65rem 0; border-top: 1px solid rgba(150, 174, 190, 0.2); display: flex; align-items: center; flex-wrap: wrap; gap: 0.4rem 1rem; font-size: 0.85rem; line-height: 1.5; }
.birdio-trend-selection span { flex: 1 1 260px; }
.birdio-trend-selection a { white-space: nowrap; font-weight: 700; }
.birdio-trend-selection a[hidden] { display: none; }
.birdio-trend-filter-note { opacity: 0.8; }
.birdio-trend-chart-empty { padding: 2rem 1rem; text-align: center; border: 1px dashed rgba(150, 174, 190, 0.4); border-radius: 8px; }
.birdio-trend-explanation { margin-top: 1rem; border-top: 1px solid rgba(150, 174, 190, 0.3); padding-top: 0.8rem; }
.birdio-trend-explanation summary { cursor: pointer; font-weight: 700; }
.birdio-trend-explanation p { max-width: 90ch; line-height: 1.6; }
.birdio-trend-explanation table { width: 100%; }
.birdio-trend-explanation caption { text-align: left; margin-bottom: 0.7rem; }
[data-admin-trend-lab-theme="light"] .birdio-trend-positive { --birdio-value-color: #18663c; }
[data-admin-trend-lab-theme="light"] .birdio-trend-negative { --birdio-value-color: #a22c36; }
@media (max-width: 900px) {
  .birdio-trend-layout { grid-template-columns: minmax(0, 1fr); gap: 0.5rem; }
  .birdio-trend-summary { padding: 0.6rem 0; }
}
@media (max-width: 600px) {
  .birdio-trend-plot { padding: 0.5rem; }
  .birdio-trend-chart { height: 280px; }
}
.hero-hcp-display {
  display: grid;
  gap: 0.12rem;
}
.hero-hcp-display span {
  color: var(--gold);
  text-transform: uppercase;
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  font-weight: 900;
}
.hero-hcp-display strong {
  color: var(--text);
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1;
}
.hero-hcp-display small {
  color: var(--green-2);
  font-size: 1rem;
  font-weight: 900;
}
.hero-profile-image {
  display: grid;
  width: clamp(4.25rem, 8vw, 5.75rem);
  aspect-ratio: 1;
  place-items: center;
  flex: 0 0 auto;
  overflow: hidden;
  border: 2px solid rgba(247, 241, 228, 0.72);
  border-radius: 50%;
  background: rgba(247, 241, 228, 0.14);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.32);
}
.hero-profile-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: var(--profile-image-position, center);
}
.hero-profile-image.empty img {
  width: 68%;
  height: 68%;
  object-fit: contain;
  filter: drop-shadow(0 8px 9px rgba(0, 0, 0, 0.34));
}
.hero-profile-initials {
  display: grid;
  width: 100%;
  height: 100%;
  place-items: center;
  color: var(--cream);
  font-size: clamp(1.35rem, 2.4vw, 2rem);
  font-weight: 950;
  line-height: 1;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.34);
}
.hero-hcp-rounds {
  display: grid;
  gap: 0.18rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--line);
}
.hero-hcp-rounds span {
  color: var(--gold);
  text-transform: uppercase;
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  font-weight: 900;
}
.hero-hcp-rounds strong {
  font-size: 1.75rem;
  line-height: 1;
}
.hero-home-facility-name {
  max-width: 100%;
  color: var(--text);
  font-size: clamp(0.82rem, 1.6vw, 1rem);
  line-height: 1.15;
  overflow-wrap: anywhere;
  hyphens: auto;
}
.hero-hcp-rounds small {
  color: var(--muted);
  font-weight: 750;
}
.live-round {
  display: grid;
  gap: 0.25rem;
  padding-top: 0.65rem;
  border-top: 1px solid var(--line);
}
.live-round:first-of-type {
  border-top: 0;
  padding-top: 0;
}
.live-round strong {
  color: var(--green-2);
}
.live-round span,
.live-round small,
.live-empty {
  color: var(--muted);
}
.live-scorecard-link {
  color: var(--gold);
  font-weight: 900;
  text-decoration: none;
}
.live-scorecard-link:hover {
  text-decoration: underline;
}
.live-empty {
  padding-top: 0.25rem;
}
.hero-notification-panel {
  padding: 0.85rem;
  border: 1px solid rgba(211, 170, 77, 0.32);
  border-radius: 10px;
  background: rgba(7, 17, 13, 0.74);
  box-shadow: var(--shadow);
}
.hero-notification-list {
  display: grid;
  gap: 0.45rem;
}
.hero-notification-item {
  display: grid;
  gap: 0.1rem;
  padding: 0.55rem 0.65rem;
  color: var(--text);
  text-decoration: none;
  border: 1px solid rgba(211, 170, 77, 0.24);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
}
.hero-notification-item:hover {
  border-color: rgba(211, 170, 77, 0.62);
  background: rgba(211, 170, 77, 0.1);
}
.hero-notification-item strong {
  color: var(--gold);
  font-size: 0.92rem;
  line-height: 1.2;
}
.hero-notification-item span {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 750;
}
.hero-notification-item.friends strong {
  color: var(--green-2);
}
.hero-quick-actions {
  display: grid;
  gap: 0.5rem;
  margin-top: 1rem;
  padding-top: 0.85rem;
  border-top: 1px solid var(--line);
}
.hero-quick-action {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  justify-items: start;
  gap: 0.55rem;
  padding: 0.55rem 0.65rem;
  color: var(--text);
  text-align: left;
  text-decoration: none;
  border: 1px solid rgba(211, 170, 77, 0.28);
  border-radius: 8px;
  background: rgba(255,255,255,0.045);
}
.hero-quick-action:hover {
  border-color: rgba(211, 170, 77, 0.62);
  background: rgba(211, 170, 77, 0.1);
}
.hero-quick-action .landing-icon {
  width: 1.8rem;
  height: 1.8rem;
  border-radius: 8px;
}
.hero-quick-action .landing-icon svg {
  width: 1rem;
  height: 1rem;
}
.hero-quick-action span {
  font-size: 0.82rem;
  font-weight: 850;
}
.hero-quick-action-secondary {
  opacity: 0.78;
}
.hero-quick-action-secondary:hover {
  opacity: 1;
}

.app-entry-callout {
  margin: 0;
  display: block;
}
.app-entry-card {
  display: grid;
  gap: 0.35rem;
  padding: 1rem;
  color: var(--text);
  text-decoration: none;
  border: 1px solid rgba(211, 170, 77, 0.42);
  border-radius: 10px;
  background:
    linear-gradient(135deg, rgba(211, 170, 77, 0.18), rgba(132, 211, 127, 0.08)),
    rgba(7, 17, 13, 0.72);
  box-shadow: var(--shadow);
}
.app-entry-card:hover,
.app-entry-card:focus-visible {
  border-color: rgba(211, 170, 77, 0.78);
  background:
    linear-gradient(135deg, rgba(211, 170, 77, 0.25), rgba(132, 211, 127, 0.12)),
    var(--panel);
}
.app-entry-card strong {
  color: var(--gold);
  text-transform: uppercase;
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  font-weight: 900;
}
.app-entry-card span {
  color: var(--text);
  font-size: 1.05rem;
  font-weight: 850;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .hero-player-card,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .live-panel,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .hero-notification-panel,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .app-entry-card {
  border-color: rgba(84, 103, 129, 0.16);
  color: #141817;
  background:
    radial-gradient(circle at 90% 0%, rgba(99, 144, 208, 0.12), transparent 10rem),
    linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(246, 241, 232, 0.78)),
    rgba(255, 255, 255, 0.76);
  box-shadow:
    0 18px 46px rgba(25, 31, 28, 0.14),
    0 0 0 1px rgba(255, 255, 255, 0.54) inset;
  backdrop-filter: blur(8px);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .app-entry-card:hover,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .app-entry-card:focus-visible {
  border-color: rgba(78, 111, 156, 0.34);
  background:
    radial-gradient(circle at 90% 0%, rgba(99, 144, 208, 0.15), transparent 10rem),
    linear-gradient(180deg, rgba(255, 255, 255, 0.95), rgba(246, 241, 232, 0.84)),
    rgba(255, 255, 255, 0.82);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .hero-hcp-display span,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .hero-hcp-rounds span,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .app-entry-card strong,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .hero-notification-item strong {
  color: #b28325;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .hero-hcp-display strong,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .hero-hcp-rounds strong,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .app-entry-card span {
  color: #141817;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .hero-hcp-display small,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .live-round strong,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .hero-notification-item.friends strong {
  color: #4e6f9c;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .hero-hcp-rounds,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .live-round,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .hero-quick-actions {
  border-top-color: rgba(84, 103, 129, 0.14);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .live-round span,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .live-round small,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .live-empty,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .hero-notification-item span {
  color: #5d6672;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.settings-group-list {
  display: grid;
  gap: 1rem;
}
.settings-group {
  display: grid;
  gap: 0.9rem;
  padding: 1rem;
  border: 1px solid rgba(211, 170, 77, 0.22);
  border-radius: 10px;
  background: linear-gradient(180deg, rgba(255,255,255,0.045), rgba(255,255,255,0.018));
  box-shadow: var(--shadow);
}
.settings-group h3 {
  margin: 0;
  color: var(--gold);
  font-size: 1.02rem;
  letter-spacing: 0;
}
.settings-action-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.7rem;
}
.settings-action-card {
  display: grid;
  align-content: center;
  gap: 0.25rem;
  min-height: 0;
  padding: 0.95rem 1rem;
  color: var(--text);
  text-align: left;
  text-decoration: none;
  border: 1px solid rgba(211, 170, 77, 0.28);
  border-radius: 10px;
  background: linear-gradient(135deg, rgba(255,255,255,0.07), rgba(255,255,255,0.025));
  box-shadow: var(--shadow);
  cursor: pointer;
}
button.settings-action-card {
  width: 100%;
  font: inherit;
}
.settings-action-card:hover,
.settings-action-card:focus-visible {
  border-color: rgba(211, 170, 77, 0.62);
  background: linear-gradient(135deg, rgba(211, 170, 77, 0.14), rgba(80, 160, 96, 0.06));
}
.settings-action-card strong {
  color: var(--text);
  font-size: 1.02rem;
}
.settings-action-card span:last-child {
  color: var(--muted);
  line-height: 1.35;
}
.settings-toggle-list {
  grid-column: 1 / -1;
  display: grid;
  gap: 0.7rem;
}
.settings-app-tile-grid {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(12.5rem, 1fr));
  gap: 1rem;
}
.settings-app-tile {
  position: relative;
  display: grid;
  grid-template-rows: minmax(3.2rem, auto) 1fr;
  align-items: center;
  justify-items: center;
  gap: 0.65rem;
  min-height: 15rem;
  padding: 1.15rem 1rem 1rem;
  color: var(--text);
  text-align: center;
  border: 1px solid rgba(174, 217, 185, 0.48);
  border-radius: 10px;
  background:
    radial-gradient(circle at 24% 14%, rgba(255, 255, 255, 0.12), transparent 32%),
    linear-gradient(145deg, rgba(109, 153, 127, 0.98) 0%, rgba(62, 113, 86, 0.98) 48%, rgba(32, 78, 62, 0.98) 100%);
  box-shadow: var(--tile-shadow);
  cursor: pointer;
  font: inherit;
  text-decoration: none;
}
.settings-app-tile:hover,
.settings-app-tile:focus-visible {
  border-color: rgba(211, 170, 77, 0.7);
  background:
    radial-gradient(circle at 24% 14%, rgba(255, 255, 255, 0.16), transparent 34%),
    linear-gradient(145deg, rgba(126, 171, 144, 0.98) 0%, rgba(75, 130, 101, 0.98) 48%, rgba(42, 91, 73, 0.98) 100%);
}
.settings-info-tip {
  position: absolute;
  z-index: 7;
  top: 0.7rem;
  right: 0.7rem;
  display: grid;
  width: 1.35rem;
  height: 1.35rem;
  place-items: center;
  border: 1px solid rgba(247, 241, 228, 0.62);
  border-radius: 50%;
  background: rgba(5, 18, 32, 0.72);
  color: #fffdf8;
  font-size: 0.82rem;
  font-weight: 950;
  line-height: 1;
  box-shadow:
    0 8px 18px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.3);
  cursor: help;
}
.settings-info-tip::after {
  position: absolute;
  right: -0.15rem;
  top: calc(100% + 0.5rem);
  width: min(18rem, 76vw);
  padding: 0.72rem 0.82rem;
  border: 1px solid rgba(211, 170, 77, 0.42);
  border-radius: 8px;
  background: rgba(5, 18, 32, 0.96);
  color: #fffdf8;
  content: attr(data-settings-info);
  font-size: 0.86rem;
  font-weight: 800;
  line-height: 1.28;
  text-align: left;
  text-shadow: none;
  white-space: normal;
  box-shadow: 0 18px 34px rgba(0, 0, 0, 0.28);
  opacity: 0;
  pointer-events: none;
  transform: translateY(-0.25rem);
  transition: opacity 0.16s ease, transform 0.16s ease;
}
.settings-info-tip:hover::after,
.settings-info-tip:focus-visible::after,
.settings-app-tile:focus-visible .settings-info-tip::after {
  opacity: 1;
  transform: translateY(0);
}

@media (max-width: 1560px) {
  .topbar #main-nav {
    flex-basis: auto;
    justify-content: flex-end;
    margin-top: 0;
  }
}

@media (max-width: 1320px) {
  body.admin-trend-lab-route .brand {
    max-width: calc(100% - 7.15rem);
  }

  body.admin-trend-lab-route .global-design-toggle {
    order: 2;
    margin-left: auto;
  }

  .admin-environment-badge {
    order: 3;
    max-width: min(13rem, 34vw);
  }

  body.admin-trend-lab-route .topbar #main-nav {
    order: 4;
    flex: 0 0 auto;
    margin-left: 0;
  }

  .main-nav-links {
    display: none;
  }

  .main-nav-menu {
    display: inline-flex;
  }

  .main-nav-trigger {
    width: 44px;
    min-width: 44px;
    padding: 0;
  }

  .main-nav-panel {
    position: fixed;
    top: calc(0.65rem + clamp(69px, 6.8vw, 94px));
    right: 0.5rem;
    left: 0.5rem;
    width: auto;
    max-height: min(74vh, 32rem);
    padding: 0.5rem;
  }
}

@media (max-width: 1180px) {
  .topbar {
    display: block;
    min-height: 112px;
  }
  body.admin-trend-lab-route .topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
  }
  .brand {
    max-width: 100%;
  }
  body.admin-trend-lab-route .brand {
    flex: 1 1 auto;
    max-width: calc(100% - 7.15rem);
  }
  body.admin-trend-lab-route .global-design-toggle {
    margin-left: 0;
  }
  .admin-environment-badge {
    margin-top: 0.55rem;
  }
  .brand-logo {
    width: clamp(76px, 16vw, 104px);
    height: clamp(76px, 16vw, 104px);
  }
  .brand-name {
    font-size: clamp(1.85rem, 6.9vw, 2.75rem);
  }
  .brand-tagline {
    font-size: clamp(0.82rem, 2.45vw, 1.08rem);
    line-height: 1.15;
    white-space: normal;
    overflow-wrap: anywhere;
  }
  nav {
    max-width: 100%;
    margin-top: 0;
  }
}

@media (max-width: 900px) {
  body.admin-trend-lab-route .topbar {
    gap: 0.45rem;
  }

  body.admin-trend-lab-route .brand {
    max-width: calc(100% - 14rem);
  }

  .main-nav-panel a {
    min-height: 46px;
    font-size: 0.95rem;
  }
}

@media (max-width: 620px) {
  .main-nav-panel {
    top: calc(0.72rem + clamp(69px, 16vw, 94px));
    max-height: min(72vh, 31rem);
  }
}
/* Let the brand take its own row before header controls squeeze its text. */
@media (max-width: 900px) {
  body .topbar,
  body.admin-trend-lab-route .topbar,
  html.birdio-design-boot body:not(.admin-trend-lab-route) .topbar {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    padding-top: 0.6rem;
    padding-bottom: 0.6rem;
  }
  body .topbar .brand,
  body.admin-trend-lab-route .topbar .brand,
  html.birdio-design-boot body:not(.admin-trend-lab-route) .topbar .brand {
    flex: 1 0 100%;
    max-width: 100%;
    align-items: center;
  }
  body .topbar .global-design-toggle,
  body.admin-trend-lab-route .topbar .global-design-toggle,
  html.birdio-design-boot body:not(.admin-trend-lab-route) .topbar .global-design-toggle {
    order: 2;
    margin-left: auto;
  }
  .topbar .admin-environment-badge {
    max-width: none;
    order: 3;
    margin-top: 0;
  }
  body .topbar #main-nav,
  body.admin-trend-lab-route .topbar #main-nav,
  html.birdio-design-boot body:not(.admin-trend-lab-route) .topbar #main-nav {
    order: 4;
    flex: 0 0 auto;
    margin: 0;
  }
  .topbar .main-nav-panel {
    position: absolute;
    top: calc(100% + 0.65rem);
    right: 0;
    left: auto;
    width: min(20rem, calc(100vw - 2rem));
  }
}
.settings-app-tile[aria-pressed="false"] {
  border-color: rgba(247, 241, 228, 0.18);
  background:
    radial-gradient(circle at 24% 14%, rgba(255, 255, 255, 0.05), transparent 34%),
    linear-gradient(145deg, rgba(247, 241, 228, 0.07) 0%, rgba(13, 35, 27, 0.38) 100%);
  box-shadow: none;
}
.settings-app-tile[aria-pressed="false"]:hover,
.settings-app-tile[aria-pressed="false"]:focus-visible {
  border-color: rgba(211, 170, 77, 0.48);
  background:
    radial-gradient(circle at 24% 14%, rgba(255, 255, 255, 0.08), transparent 34%),
    linear-gradient(145deg, rgba(247, 241, 228, 0.1) 0%, rgba(20, 48, 37, 0.48) 100%);
}
.settings-app-tile strong {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 3.2rem;
  color: #fffdf8;
  font-size: 1.08rem;
  font-weight: 950;
  line-height: 1.05;
  text-align: center;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.42);
}
.settings-app-icon {
  display: grid;
  width: min(8rem, 64%);
  aspect-ratio: 1;
  place-items: center;
  align-self: center;
}
.settings-app-icon img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: drop-shadow(0 12px 10px rgba(0, 0, 0, 0.42));
}
.settings-app-tile[aria-pressed="false"] .settings-app-icon img {
  opacity: 0.58;
}
.settings-app-tile.profile-image-settings-tile .settings-app-icon {
  width: min(7rem, 58%);
  overflow: hidden;
  border: 2px solid rgba(247, 241, 228, 0.72);
  border-radius: 50%;
}
.settings-app-tile.profile-image-settings-tile .settings-app-icon img {
  object-fit: cover;
  object-position: var(--profile-image-position, center);
  filter: none;
}
.settings-app-tile.golfbag-settings-tile .settings-app-icon {
  width: min(9.5rem, 78%);
}
.settings-app-select-tile {
  cursor: default;
}
.settings-app-select-tile select {
  width: 100%;
  margin-top: 0.25rem;
  color: var(--text);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 8px;
  background: rgba(3, 20, 14, 0.88);
  padding: 0.55rem 0.65rem;
  font: inherit;
  font-weight: 800;
}
.settings-toggle-row {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 1rem;
  padding: 0.95rem 1rem;
  color: var(--text);
  text-align: left;
  border: 1px solid rgba(211, 170, 77, 0.24);
  border-radius: 10px;
  background: linear-gradient(135deg, rgba(255,255,255,0.07), rgba(255,255,255,0.025));
  box-shadow: var(--shadow);
  cursor: pointer;
  font: inherit;
}
.settings-toggle-row:hover,
.settings-toggle-row:focus-visible {
  border-color: rgba(211, 170, 77, 0.62);
  background: linear-gradient(135deg, rgba(211, 170, 77, 0.14), rgba(80, 160, 96, 0.06));
}
.settings-select-row {
  cursor: default;
}
.settings-select-row select {
  min-width: 8.5rem;
  color: var(--text);
  border: 1px solid rgba(211, 170, 77, 0.3);
  border-radius: 8px;
  background: rgba(3, 20, 14, 0.92);
  padding: 0.65rem 0.75rem;
  font: inherit;
}
.settings-toggle-copy {
  min-width: 0;
  display: grid;
  gap: 0.25rem;
}
.settings-toggle-copy strong {
  font-size: 1.02rem;
}
.settings-toggle-copy span {
  color: var(--muted);
  line-height: 1.35;
}
.settings-switch {
  width: 3.5rem;
  height: 1.9rem;
  padding: 0.18rem;
  border-radius: 999px;
  background: rgba(133, 79, 72, 0.82);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.34);
  transition: background 0.16s ease;
}
.settings-switch span {
  display: block;
  width: 1.54rem;
  height: 1.54rem;
  border-radius: 50%;
  background: #fffaf0;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.3);
  transform: translateX(0);
  transition: transform 0.16s ease;
}
.settings-switch.is-on {
  background: #0c7a5f;
}
.settings-switch.is-on span {
  transform: translateX(1.55rem);
}
.settings-switch-input {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  opacity: 0;
  pointer-events: none;
}
.settings-switch-input:focus-visible + .settings-switch {
  outline: 2px solid rgba(211, 170, 77, 0.85);
  outline-offset: 3px;
}
.settings-switch-input:checked + .settings-switch {
  background: #0c7a5f;
}
.settings-switch-input:checked + .settings-switch span {
  transform: translateX(1.55rem);
}
.settings-modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 100;
  display: grid;
  place-items: center;
  padding: 1rem;
  background: rgba(1, 10, 7, 0.64);
  backdrop-filter: blur(5px);
}
.settings-modal-backdrop[hidden] {
  display: none;
}
.settings-hcp-form {
  width: min(430px, 100%);
  display: grid;
  gap: 1rem;
  padding: 1.25rem;
  border-color: rgba(211, 170, 77, 0.42);
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.48);
}
.settings-hcp-form h3,
.settings-hcp-form p {
  margin: 0;
}
.settings-hcp-form label {
  display: grid;
  gap: 0.35rem;
  color: var(--muted);
  font-weight: 800;
}
.settings-hcp-form input,
.settings-hcp-form select {
  width: 100%;
  min-width: 0;
}
.settings-profile-image-form {
  justify-items: center;
  text-align: center;
}
.settings-profile-image-preview {
  display: grid;
  width: min(9rem, 48vw);
  aspect-ratio: 1;
  place-items: center;
  overflow: hidden;
  border: 2px solid rgba(247, 241, 228, 0.72);
  border-radius: 50%;
  background: rgba(247, 241, 228, 0.12);
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.34);
  cursor: grab;
  touch-action: none;
  user-select: none;
}
.settings-profile-image-preview img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: var(--profile-image-position, center);
  pointer-events: none;
}
.settings-profile-image-preview.empty img {
  width: 68%;
  height: 68%;
  object-fit: contain;
  filter: drop-shadow(0 10px 10px rgba(0, 0, 0, 0.35));
}
.settings-profile-image-form input[type="file"] {
  color: var(--text);
  border: 1px solid rgba(211, 170, 77, 0.28);
  border-radius: 8px;
  padding: 0.65rem;
  background: rgba(3, 20, 14, 0.82);
}
.settings-visibility-form {
  width: min(780px, 100%);
}
.settings-clubs-form {
  width: min(720px, 100%);
}
.settings-clubs-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 0.7rem;
}
.settings-club-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 2.25rem;
  grid-template-areas:
    "name delete"
    "input delete";
  align-items: end;
  gap: 0.55rem 0.7rem;
  padding: 0.85rem;
  border: 1px solid rgba(211, 170, 77, 0.22);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.055);
  color: var(--text) !important;
}
.settings-club-row label {
  grid-area: name;
  display: block !important;
  min-width: 0;
}
.settings-club-row label span {
  display: block;
  min-width: 0;
  font-weight: 900;
  overflow-wrap: anywhere;
  line-height: 1.15;
}
.settings-club-row input {
  grid-area: input;
  width: min(100%, 9rem);
  justify-self: start;
  text-align: right;
}
.settings-club-delete {
  grid-area: delete;
  align-self: end;
  width: 2.15rem;
  height: 2.15rem;
  display: grid;
  place-items: center;
  padding: 0;
  border-color: rgba(199, 92, 86, 0.5);
  color: #ffd4cf;
  font-size: 1.25rem;
  line-height: 1;
  background: rgba(133, 79, 72, 0.34);
}
.settings-club-delete:hover,
.settings-club-delete:focus-visible {
  border-color: rgba(199, 92, 86, 0.9);
  background: rgba(133, 79, 72, 0.52);
}
.settings-new-club-panel {
  display: grid;
  gap: 0.75rem;
  padding: 0.9rem;
  border: 1px solid rgba(80, 160, 96, 0.32);
  border-radius: 10px;
  background: rgba(80, 160, 96, 0.08);
}
.settings-new-club-panel > strong {
  color: var(--gold);
}
.settings-new-club-fields {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(7rem, 0.45fr);
  gap: 0.75rem;
}
.settings-subpage .panel {
  display: grid;
  gap: 1rem;
}
.club-tile-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(10.25rem, 10.25rem));
  justify-content: start;
  gap: 0.85rem;
}
.club-choice-tile,
.club-distance-tile {
  position: relative;
  display: grid !important;
  grid-template-rows: minmax(2.4rem, auto) 6.3rem auto;
  align-items: center;
  justify-items: center;
  width: 10.25rem;
  min-height: 12.8rem;
  padding: 0.9rem 0.85rem;
  border: 1px solid rgba(211, 170, 77, 0.24);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.055);
  color: var(--text) !important;
  text-align: center;
}
.club-choice-tile {
  cursor: pointer;
  border-color: rgba(247, 241, 228, 0.18);
  background:
    radial-gradient(circle at 24% 14%, rgba(255, 255, 255, 0.05), transparent 34%),
    linear-gradient(145deg, rgba(247, 241, 228, 0.07) 0%, rgba(13, 35, 27, 0.38) 100%);
  box-shadow: none;
}
.club-choice-tile:hover,
.club-choice-tile:focus-within,
.club-distance-tile:focus-within {
  border-color: rgba(245, 194, 66, 0.68);
  background: rgba(245, 194, 66, 0.09);
}
.club-choice-tile.is-selected {
  border-color: rgba(174, 217, 185, 0.48);
  background:
    radial-gradient(circle at 24% 14%, rgba(255, 255, 255, 0.12), transparent 32%),
    linear-gradient(145deg, rgba(109, 153, 127, 0.98) 0%, rgba(62, 113, 86, 0.98) 48%, rgba(32, 78, 62, 0.98) 100%);
  box-shadow: var(--tile-shadow);
}
.club-choice-tile.is-selected:hover,
.club-choice-tile.is-selected:focus-within {
  border-color: rgba(211, 170, 77, 0.7);
  background:
    radial-gradient(circle at 24% 14%, rgba(255, 255, 255, 0.16), transparent 34%),
    linear-gradient(145deg, rgba(126, 171, 144, 0.98) 0%, rgba(75, 130, 101, 0.98) 48%, rgba(42, 91, 73, 0.98) 100%);
}
.club-choice-tile input[type="checkbox"] {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}
.club-custom-delete {
  position: absolute;
  z-index: 2;
  top: 0.45rem;
  right: 0.45rem;
  display: inline-grid;
  place-items: center;
  width: 1.65rem;
  height: 1.65rem;
  min-width: 0;
  padding: 0;
  border-radius: 999px;
  border: 1px solid rgba(247, 241, 228, 0.28);
  background: rgba(12, 31, 24, 0.76);
  color: rgba(247, 241, 228, 0.92);
  line-height: 1;
}
.club-custom-delete:hover,
.club-custom-delete:focus-visible {
  border-color: rgba(245, 194, 66, 0.78);
  color: var(--gold);
}
.club-choice-tile strong,
.club-distance-tile strong {
  display: block;
  max-width: 100%;
  min-height: 2.2rem;
  font-weight: 900;
  line-height: 1.12;
  overflow-wrap: anywhere;
}
.club-choice-icon {
  display: grid;
  place-items: center;
  width: 6.05rem;
  height: 6.05rem;
}
.club-choice-icon img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.club-choice-tile:not(.is-selected) .club-choice-icon img {
  opacity: 0.58;
}
.club-distance-tile input {
  box-sizing: border-box;
  width: 6.45rem !important;
  min-width: 0 !important;
  max-width: 100%;
  height: 2.45rem;
  text-align: center;
  justify-self: center;
}
.settings-custom-club-panel {
  display: grid;
  gap: 0.95rem;
  padding: 1rem;
  border: 1px solid rgba(80, 160, 96, 0.32);
  border-radius: 8px;
  background: rgba(80, 160, 96, 0.08);
}
.settings-custom-club-panel > strong {
  color: var(--gold);
}
.custom-club-quick-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.custom-club-quick-grid button {
  width: auto;
  min-width: 4.9rem;
  padding: 0.55rem 0.7rem;
}
.custom-club-fields {
  grid-template-columns: minmax(14rem, 1fr) minmax(8rem, 0.36fr) minmax(7rem, 0.28fr);
  align-items: end;
}
.custom-club-actions {
  align-items: center;
}
.settings-subpage-actions {
  align-items: center;
}
.icon-action-button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
}
.icon-action-button img {
  width: 1.25rem;
  height: 1.25rem;
  object-fit: contain;
}
.settings-visibility-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 1rem;
}
.settings-visibility-grid h4 {
  margin: 0 0 0.55rem;
  color: var(--gold);
}
.onboarding-page {
  display: grid;
  gap: 1rem;
}
.onboarding-panel {
  display: grid;
  gap: 1rem;
  padding: clamp(1rem, 2vw, 1.35rem);
}
.onboarding-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 0.9rem;
}
.onboarding-panel label {
  display: grid;
  gap: 0.4rem;
  color: var(--text);
  font-weight: 900;
}
.onboarding-panel select {
  width: 100%;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 8px;
  padding: 0.72rem 0.78rem;
  background: rgba(4, 33, 24, 0.86);
  color: var(--text);
  font: inherit;
  font-weight: 800;
}
.onboarding-panel .onboarding-toggle {
  max-width: 34rem;
}
.settings-check-list {
  display: grid;
  gap: 0.45rem;
}
.settings-check-row {
  display: flex !important;
  grid-template-columns: unset !important;
  align-items: center;
  gap: 0.55rem !important;
  padding: 0.62rem 0.7rem;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.035);
  color: var(--text) !important;
}
.settings-check-row input {
  width: 1rem;
  min-width: 1rem;
  accent-color: var(--gold);
}
.settings-check-row span {
  display: grid;
  gap: 0.12rem;
  min-width: 0;
}
.settings-check-row strong {
  color: var(--text);
}
.settings-check-row small {
  color: var(--muted);
  line-height: 1.25;
}
.settings-search-hint {
  margin: -0.25rem 0 0.75rem;
  color: var(--muted);
  font-size: 0.85rem;
}
.settings-admin-user-list {
  display: grid;
  gap: 0.55rem;
}
.settings-admin-user-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(150px, 13rem);
  align-items: start;
  gap: 0.75rem !important;
  padding: 0.7rem;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.035);
  color: var(--text) !important;
}
.settings-admin-user-row > span {
  grid-row: 1 / span 2;
}
.settings-admin-user-row select {
  grid-column: 2;
  width: 100%;
}
.settings-admin-user-row strong,
.settings-admin-user-row small {
  display: block;
}
.settings-admin-user-row small {
  margin-top: 0.2rem;
  color: var(--gold);
}
.settings-registration-request-row {
  align-items: center;
}
.settings-registration-request-row .pill-link {
  border: 0;
  cursor: pointer;
}
.settings-admin-user-row .danger-pill,
.danger-button {
  border-color: rgba(212, 107, 107, 0.55);
  color: #ffd7d7;
  background: rgba(126, 47, 52, 0.82);
  cursor: pointer;
}
.settings-admin-user-row .danger-pill {
  grid-column: 2;
  justify-self: end;
  width: auto;
  min-width: 6.5rem;
  padding: 0.4rem 0.7rem;
  text-align: center;
  font-size: 0.82rem;
}
.settings-admin-user-row .danger-pill:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}
.admin-users-panel,
.admin-registrations-panel,
.admin-user-statistics-panel {
  display: grid;
  gap: 1rem;
  padding: clamp(0.85rem, 1.4vw, 1.15rem);
}
.admin-user-statistics-page .admin-users-toolbar {
  grid-template-columns: minmax(0, 1.25fr) minmax(12rem, 0.7fr) minmax(10rem, 0.55fr);
}
.admin-dashboard-page {
  display: grid;
  gap: 1rem;
}
.admin-dashboard-kpi-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(9.5rem, 1fr));
  gap: 0.75rem;
}
.admin-dashboard-kpi {
  display: grid;
  gap: 0.25rem;
  min-width: 0;
  min-height: 6.35rem;
  align-content: center;
  padding: 0.8rem;
  border: 1px solid rgba(103, 190, 151, 0.42);
  border-radius: 8px;
  background: linear-gradient(145deg, rgba(72, 111, 133, 0.68), rgba(34, 86, 64, 0.72));
  box-shadow: var(--shadow-soft);
}
.admin-dashboard-kpi span,
.admin-dashboard-kpi small {
  overflow-wrap: anywhere;
}
.admin-dashboard-kpi span {
  color: var(--text);
  font-weight: 900;
}
.admin-dashboard-kpi strong {
  color: var(--paper);
  font-size: clamp(1.8rem, 3.7vw, 2.6rem);
  line-height: 1;
  text-shadow: var(--text-shadow);
}
.admin-dashboard-kpi small {
  color: var(--muted);
  font-weight: 850;
}
.admin-dashboard-layout {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.admin-dashboard-panel {
  display: grid;
  align-content: start;
  gap: 0.85rem;
  padding: clamp(0.85rem, 1.35vw, 1.1rem);
}
.admin-dashboard-panel-head {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 0.75rem;
}
.admin-dashboard-panel-head h3 {
  margin: 0.1rem 0 0;
  color: var(--paper);
  font-size: 1.08rem;
}
.admin-dashboard-live-list,
.admin-dashboard-compact-list {
  display: grid;
  gap: 0.55rem;
}
.admin-dashboard-user-row,
.admin-dashboard-compact-row {
  display: grid;
  min-width: 0;
  gap: 0.22rem;
  padding: 0.62rem 0.72rem;
  border: 1px solid rgba(211, 170, 77, 0.28);
  border-radius: 8px;
  background: rgba(6, 25, 18, 0.35);
  text-decoration: none;
}
.admin-dashboard-user-row {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}
.admin-dashboard-user-row strong,
.admin-dashboard-compact-row strong {
  color: var(--text);
  overflow-wrap: anywhere;
}
.admin-dashboard-user-row small,
.admin-dashboard-compact-row small {
  color: var(--muted);
  font-weight: 850;
  overflow-wrap: anywhere;
}
.admin-dashboard-user-row > span,
.admin-dashboard-compact-row > span {
  color: var(--gold);
  font-weight: 900;
}
.admin-dashboard-compact-row {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: baseline;
}
.admin-dashboard-compact-row small {
  grid-column: 1 / -1;
}
.admin-dashboard-shortcuts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
}
.admin-ops-page,
.admin-ops-page-grid {
  display: grid;
  gap: 1rem;
}
.admin-ops-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: end;
  gap: 0.55rem;
}
.admin-ops-actions .ghost-link {
  min-height: 2.45rem;
}
.admin-ops-kpi strong {
  font-size: clamp(1.45rem, 2.8vw, 2.15rem);
}
.admin-ops-layout {
  align-items: start;
}
.admin-ops-load-context {
  grid-column: 1 / -1;
}
.admin-ops-load-context-note {
  margin: -0.2rem 0 0;
  color: var(--muted);
  font-weight: 850;
}
.admin-ops-load-context .admin-dashboard-compact-list {
  grid-template-columns: repeat(auto-fit, minmax(9.5rem, 1fr));
}
.admin-ops-app-performance {
  gap: 0.9rem;
}
.admin-ops-backup-panel {
  gap: 0.9rem;
}
.admin-ops-dev-sync-panel {
  gap: 0.9rem;
}
.admin-ops-app-performance .admin-dashboard-panel-head {
  align-items: center;
}
.admin-ops-performance-badge {
  display: inline-grid;
  min-width: 4.2rem;
  min-height: 2rem;
  place-items: center;
  padding: 0.32rem 0.72rem;
  border: 1px solid rgba(247, 241, 228, 0.24);
  border-radius: 999px;
  background: rgba(6, 25, 18, 0.46);
  color: var(--text);
  font-size: 0.78rem;
  font-weight: 950;
  line-height: 1;
  text-align: center;
  text-shadow: var(--text-shadow);
}
.admin-ops-app-performance-ok .admin-ops-performance-badge {
  border-color: rgba(91, 211, 145, 0.52);
  background: rgba(36, 131, 83, 0.28);
  color: #8ff0b8;
}
.admin-ops-app-performance-notice .admin-ops-performance-badge,
.admin-ops-app-performance-warning .admin-ops-performance-badge {
  border-color: rgba(211, 170, 77, 0.62);
  background: rgba(211, 170, 77, 0.18);
  color: var(--gold);
}
.admin-ops-app-performance-critical .admin-ops-performance-badge {
  border-color: rgba(255, 118, 118, 0.58);
  background: rgba(160, 53, 53, 0.28);
  color: #ffb7ad;
}
.admin-ops-backup-panel-ok .admin-ops-performance-badge,
.admin-ops-backup-panel-success .admin-ops-performance-badge {
  border-color: rgba(91, 211, 145, 0.52);
  background: rgba(36, 131, 83, 0.28);
  color: #8ff0b8;
}
.admin-ops-backup-panel-notice .admin-ops-performance-badge,
.admin-ops-backup-panel-warning .admin-ops-performance-badge {
  border-color: rgba(211, 170, 77, 0.62);
  background: rgba(211, 170, 77, 0.18);
  color: var(--gold);
}
.admin-ops-backup-panel-critical .admin-ops-performance-badge,
.admin-ops-backup-panel-failed .admin-ops-performance-badge,
.admin-ops-backup-panel-error .admin-ops-performance-badge {
  border-color: rgba(255, 118, 118, 0.58);
  background: rgba(160, 53, 53, 0.28);
  color: #ffb7ad;
}
.admin-ops-dev-sync-panel-ok .admin-ops-performance-badge,
.admin-ops-dev-sync-panel-success .admin-ops-performance-badge {
  border-color: rgba(91, 211, 145, 0.52);
  background: rgba(36, 131, 83, 0.28);
  color: #8ff0b8;
}
.admin-ops-dev-sync-panel-idle .admin-ops-performance-badge,
.admin-ops-dev-sync-panel-unknown .admin-ops-performance-badge,
.admin-ops-dev-sync-panel-notice .admin-ops-performance-badge,
.admin-ops-dev-sync-panel-running .admin-ops-performance-badge {
  border-color: rgba(211, 170, 77, 0.62);
  background: rgba(211, 170, 77, 0.18);
  color: var(--gold);
}
.admin-ops-dev-sync-panel-critical .admin-ops-performance-badge,
.admin-ops-dev-sync-panel-failed .admin-ops-performance-badge,
.admin-ops-dev-sync-panel-error .admin-ops-performance-badge {
  border-color: rgba(255, 118, 118, 0.58);
  background: rgba(160, 53, 53, 0.28);
  color: #ffb7ad;
}
.admin-ops-performance-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.65rem;
}
.admin-ops-backup-summary {
  grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
}
.admin-ops-dev-sync-summary {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
}
.admin-ops-dev-sync-summary .admin-dashboard-compact-row {
  grid-template-columns: minmax(0, 1fr);
  align-content: start;
  gap: 0.45rem;
}
.admin-ops-dev-sync-summary .admin-dashboard-compact-row > span {
  min-width: 0;
  overflow-wrap: anywhere;
}
[data-admin-ops-dev-sync] {
  min-width: 0;
}
.admin-ops-dev-sync-progress {
  display: grid;
  gap: 0.55rem;
  padding: 1rem;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: rgba(127, 127, 127, 0.08);
}
.admin-ops-dev-sync-progress-head {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 0.5rem;
}
.admin-ops-dev-sync-progress-head > span { color: var(--gold); font-weight: 900; }
.admin-ops-dev-sync-progress p { margin: 0; overflow-wrap: anywhere; }
.admin-ops-dev-sync-progress small { color: var(--muted); }
.admin-ops-dev-sync-progress progress {
  display: block;
  width: 100%;
  height: 0.8rem;
  accent-color: var(--gold);
}
.admin-ops-dev-sync-progress.is-disconnected { border-color: var(--gold); }
.admin-ops-dev-sync-volume {
  display: grid;
  gap: 0.75rem;
  min-width: 0;
  padding: 1rem;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: rgba(127, 127, 127, 0.06);
}
.admin-ops-dev-sync-volume-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.6rem 1rem;
}
.admin-ops-dev-sync-volume h4,
.admin-ops-dev-sync-volume p { margin: 0; }
.admin-ops-dev-sync-volume-head > strong {
  font-size: 1.4rem;
  color: var(--gold);
}
.admin-ops-dev-sync-volume-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr));
  gap: 0.65rem;
  margin: 0;
}
.admin-ops-dev-sync-volume-list > div {
  display: grid;
  align-content: start;
  gap: 0.35rem;
  padding: 0.7rem;
  border-radius: 8px;
  background: rgba(127, 127, 127, 0.1);
}
.admin-ops-dev-sync-volume-list dd { margin: 0; font-weight: 900; }
.admin-ops-dev-sync-volume-note { color: inherit; opacity: 0.8; font-size: 0.85rem; }
.admin-ops-dev-sync-volume-setting { padding-top: 0.7rem; border-top: 1px solid var(--line); }
.admin-ops-dev-sync-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding-top: 0.15rem;
}
.admin-ops-dev-sync-footer small {
  max-width: 42rem;
  color: var(--muted);
  font-weight: 850;
}
.admin-ops-dev-sync-warning {
  display: grid;
  gap: 0.18rem;
  margin: 0.72rem 0 0;
  padding: 0.68rem 0.78rem;
  border: 1px solid rgba(211, 170, 77, 0.52);
  border-radius: 8px;
  color: #fff2cb;
  background: rgba(211, 170, 77, 0.1);
}
.admin-ops-dev-sync-warning strong {
  color: var(--gold);
}
.admin-ops-dev-sync-warning span,
.admin-ops-dev-sync-warning small {
  color: var(--muted);
  line-height: 1.38;
}
.admin-ops-dev-sync-button {
  min-height: 2.55rem;
}
.admin-ops-dev-sync-button:disabled {
  cursor: not-allowed;
  opacity: 0.58;
}
.admin-ops-dev-sync-log {
  display: grid;
  gap: 0.35rem;
  padding: 0.65rem;
  border: 1px solid rgba(211, 170, 77, 0.2);
  border-radius: 8px;
  background: rgba(6, 25, 18, 0.38);
}
.admin-ops-dev-sync-log code {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 800;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.admin-ops-backup-history {
  display: grid;
  gap: 0.55rem;
}
.admin-ops-backup-history h4 {
  margin: 0;
  color: var(--paper);
  font-size: 0.95rem;
}
.admin-ops-backup-history-row.is-ok {
  border-color: rgba(91, 211, 145, 0.35);
}
.admin-ops-backup-history-row.is-error {
  border-color: rgba(255, 118, 118, 0.45);
}
.admin-ops-backup-history-row.is-error > span {
  color: #ffb7ad;
}
.admin-ops-app-performance-details {
  display: grid;
  gap: 0.62rem;
}
.admin-ops-app-performance-details summary {
  width: fit-content;
  color: var(--text);
  font-weight: 950;
  cursor: pointer;
}
.admin-ops-app-performance-list {
  display: grid;
  gap: 0.48rem;
}
.admin-ops-app-performance-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 0.65rem;
  padding: 0.62rem 0.72rem;
  border: 1px solid rgba(211, 170, 77, 0.24);
  border-radius: 8px;
  background: rgba(6, 25, 18, 0.34);
}
.admin-ops-app-performance-row span {
  display: grid;
  min-width: 0;
  gap: 0.12rem;
}
.admin-ops-app-performance-row strong {
  color: var(--text);
  font-weight: 950;
  overflow-wrap: anywhere;
}
.admin-ops-app-performance-row small {
  color: var(--muted);
  font-weight: 850;
  overflow-wrap: anywhere;
}
.admin-ops-app-performance-row b {
  color: var(--gold);
  font-size: 0.98rem;
  line-height: 1;
  white-space: nowrap;
}
.admin-ops-app-performance-row em {
  justify-self: end;
  padding: 0.25rem 0.55rem;
  border: 1px solid rgba(127, 211, 189, 0.22);
  border-radius: 999px;
  background: rgba(7, 38, 43, 0.42);
  color: var(--muted);
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 950;
  white-space: nowrap;
}
@media (min-width: 72rem) {
  .admin-ops-layout {
    grid-template-columns: minmax(18rem, 0.85fr) minmax(18rem, 0.85fr) minmax(28rem, 1.6fr);
    align-items: stretch;
  }
  .admin-ops-storage-panel {
    grid-column: 1;
    grid-row: 1;
  }
  .admin-ops-database-panel {
    grid-column: 2;
    grid-row: 1;
  }
  .admin-ops-load-context {
    grid-column: 3;
    grid-row: 1;
  }
  .admin-ops-load-context .admin-dashboard-compact-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 56rem) {
  .admin-ops-performance-summary {
    grid-template-columns: 1fr;
  }
  .admin-ops-app-performance-row {
    grid-template-columns: minmax(0, 1fr) auto;
  }
  .admin-ops-app-performance-row em {
    grid-column: 1 / -1;
    justify-self: start;
  }
}
@media (min-width: 100rem) {
  .admin-ops-layout {
    grid-template-columns: minmax(19rem, 0.8fr) minmax(19rem, 0.8fr) minmax(38rem, 1.8fr);
  }
}
.admin-ops-panel {
  display: grid;
  gap: 0.9rem;
  padding: clamp(0.85rem, 1.35vw, 1.1rem);
}
.admin-ops-history-toolbar {
  display: flex;
  align-items: center;
  justify-content: end;
  gap: 0.7rem;
  flex-wrap: wrap;
}
.admin-ops-range-control {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.22rem;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: rgba(8, 26, 23, 0.72);
}
.admin-ops-range-control button {
  min-height: 2rem;
  padding: 0.35rem 0.7rem;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: var(--muted);
  font: inherit;
  font-size: 0.82rem;
  font-weight: 900;
  cursor: pointer;
}
.admin-ops-range-control button:hover,
.admin-ops-range-control button:focus-visible {
  color: var(--text);
}
.admin-ops-range-control button.active {
  color: #062119;
  background: linear-gradient(135deg, #d8b45b, #7fd3bd);
  box-shadow: 0 0.35rem 0.85rem rgba(0, 0, 0, 0.22);
}
.admin-ops-history-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
}
.admin-ops-history-card {
  position: relative;
  min-height: 14rem;
  align-content: start;
  gap: 0.55rem;
  padding: 0.85rem 2.65rem 0.85rem 0.85rem;
}
.admin-ops-history-card small {
  color: var(--muted);
  font-weight: 800;
}
.admin-ops-history-title {
  padding-right: 0.35rem;
}
.admin-ops-info-tip {
  position: absolute;
  z-index: 6;
  top: 0.75rem;
  right: 0.75rem;
  display: grid;
  width: 1.35rem;
  height: 1.35rem;
  place-items: center;
  border: 1px solid rgba(247, 241, 228, 0.58);
  border-radius: 50%;
  background: rgba(5, 18, 32, 0.72);
  color: #fffdf8;
  font-size: 0.78rem;
  font-weight: 950;
  line-height: 1;
  box-shadow:
    0 8px 18px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.28);
  cursor: help;
}
.admin-ops-info-tip::after {
  position: absolute;
  right: -0.15rem;
  top: calc(100% + 0.48rem);
  width: min(18rem, 76vw);
  padding: 0.7rem 0.82rem;
  border: 1px solid rgba(211, 170, 77, 0.42);
  border-radius: 8px;
  background: rgba(5, 18, 32, 0.96);
  color: #fffdf8;
  content: attr(data-admin-ops-info);
  font-size: 0.82rem;
  font-weight: 800;
  line-height: 1.28;
  text-align: left;
  text-shadow: none;
  white-space: normal;
  box-shadow: 0 18px 34px rgba(0, 0, 0, 0.28);
  opacity: 0;
  pointer-events: none;
  transform: translateY(-0.22rem);
  transition: opacity 0.16s ease, transform 0.16s ease;
}
.admin-ops-info-tip:hover::after,
.admin-ops-info-tip:focus-visible::after {
  opacity: 1;
  transform: translateY(0);
}
.admin-ops-chart {
  display: grid;
  grid-template-columns: 4.8rem minmax(0, 1fr);
  grid-template-rows: auto auto;
  gap: 0.55rem;
  align-items: stretch;
  width: 100%;
  margin-top: 0.2rem;
}
.admin-ops-axis {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 7.8rem;
  padding: 0.35rem 0 0.4rem;
  color: rgba(247, 241, 228, 0.64);
  font-size: 0.7rem;
  font-weight: 900;
  line-height: 1;
  text-align: right;
}
.admin-ops-axis span {
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
  overflow-wrap: normal;
  white-space: nowrap;
}
.admin-ops-time-axis {
  grid-column: 2;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.35rem;
  margin-top: -0.2rem;
  color: rgba(247, 241, 228, 0.58);
  font-size: 0.68rem;
  font-weight: 900;
  line-height: 1;
}
.admin-ops-time-axis span {
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
  overflow-wrap: normal;
  white-space: nowrap;
}
.admin-ops-time-axis span:nth-child(2) {
  text-align: center;
}
.admin-ops-time-axis span:last-child {
  text-align: right;
}
.admin-ops-sparkline {
  display: block;
  width: 100%;
  height: 7.8rem;
  overflow: hidden;
  border: 1px solid rgba(211, 170, 77, 0.24);
  border-radius: 8px;
  background:
    linear-gradient(rgba(211, 170, 77, 0.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(211, 170, 77, 0.055) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0)),
    rgba(8, 28, 20, 0.22);
  background-size: 100% 20%, 20% 100%, auto, auto;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.055);
  color: rgba(211, 170, 77, 0.9);
}
.admin-ops-sparkline svg {
  display: block;
  width: 100%;
  height: 100%;
}
.admin-ops-sparkline path {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.05;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
  filter: drop-shadow(0 1px 1px rgba(0,0,0,0.28));
}
.admin-ops-history-error {
  border-color: rgba(221, 111, 111, 0.4);
}
.admin-ops-updated {
  color: var(--muted);
  font-weight: 850;
  text-align: right;
}
.admin-dashboard-panel .admin-registration-notice {
  margin-bottom: 0;
  padding: 0.7rem;
  border-color: rgba(211, 170, 77, 0.32);
  background: rgba(6, 25, 18, 0.35);
  box-shadow: none;
}
.admin-golfdb-page {
  display: grid;
  gap: 1rem;
}
.admin-golfdb-source {
  display: grid;
  justify-items: end;
  gap: 0.15rem;
  color: var(--text);
  font-weight: 900;
}
.admin-golfdb-source small {
  color: var(--muted);
  font-weight: 800;
}
.admin-golfdb-message {
  padding: 0.85rem 1rem;
  color: var(--muted);
  font-weight: 800;
}
.admin-golfdb-kpi-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
  gap: 0.75rem;
}
.admin-golfdb-kpi {
  min-height: 8.3rem;
  align-content: start;
}
.admin-golfdb-kpi strong {
  font-size: 2rem;
}
.admin-golfdb-trends {
  min-width: 0;
  padding: 1.25rem 0;
  border-block: 1px solid var(--lab-border, rgba(127,127,127,0.3));
  color: var(--lab-text, var(--text));
}
.admin-golfdb-trend-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 1rem;
}
.admin-golfdb-trend-toolbar > div { margin-right: auto; }
.admin-golfdb-trend-toolbar h3 { margin: 0; font-size: 1.25rem; }
.admin-golfdb-trend-toolbar label {
  display: grid;
  gap: 0.4rem;
  max-width: 100%;
  font-size: 0.85rem;
}
.admin-golfdb-trend-toolbar select { max-width: 100%; min-width: 0; min-height: 44px; }
.admin-golfdb-trend-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 3rem;
  margin-block: 1.25rem;
  color: var(--lab-text, var(--text));
}
.admin-golfdb-trend-summary > div { display: grid; gap: 0.35rem; min-width: 0; }
.admin-golfdb-trend-summary strong { font-size: 1.8rem; color: var(--lab-gold, #d3aa4d); }
.admin-golfdb-trend-summary small { color: var(--lab-muted, var(--muted)); overflow-wrap: anywhere; }
.admin-golfdb-chart-frame { position: relative; height: 320px; min-width: 0; }
.admin-golfdb-chart-frame canvas { max-width: 100%; }
.admin-golfdb-history-coverage { color: var(--lab-muted, var(--muted)); font-size: 0.8rem; line-height: 1.5; }
.admin-golfdb-history-table summary { cursor: pointer; padding: 0.6rem 0; font-weight: 700; }
.admin-golfdb-table-scroll { overflow-x: auto; }
.admin-golfdb-history-table table { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.admin-golfdb-history-table th, .admin-golfdb-history-table td {
  text-align: left; padding: 0.65rem 0.5rem; border-bottom: 1px solid var(--lab-border, rgba(127,127,127,0.3));
}
@media (max-width: 600px) {
  .admin-golfdb-page .admin-golfdb-kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-golfdb-page .admin-golfdb-kpi { min-height: 6rem; padding: 0.7rem; }
  .admin-golfdb-page .admin-golfdb-kpi > span { overflow-wrap: anywhere; }
  .admin-golfdb-trend-toolbar > div { flex-basis: 100%; }
  .admin-golfdb-trend-toolbar label { width: 100%; }
  .admin-golfdb-chart-frame { height: 280px; }
  .admin-golfdb-history-table th, .admin-golfdb-history-table td { font-size: 0.8rem; }
}
.admin-golfdb-layout {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.admin-golfdb-panel {
  display: grid;
  align-content: start;
  gap: 0.85rem;
  min-width: 0;
  padding: clamp(0.85rem, 1.35vw, 1.1rem);
}
.admin-golfdb-funnel {
  display: grid;
  gap: 0.65rem;
}
.admin-golfdb-bar {
  display: grid;
  gap: 0.35rem;
}
.admin-golfdb-bar div {
  display: flex;
  justify-content: space-between;
  gap: 0.8rem;
  color: var(--text);
  font-weight: 900;
}
.admin-golfdb-bar span {
  min-width: 0;
  overflow-wrap: anywhere;
}
.admin-golfdb-bar strong {
  color: var(--paper);
}
.admin-golfdb-bar em {
  display: block;
  height: 0.6rem;
  overflow: hidden;
  border: 1px solid rgba(211, 170, 77, 0.32);
  border-radius: 999px;
  background: rgba(6, 25, 18, 0.42);
}
.admin-golfdb-bar i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, rgba(211, 170, 77, 0.9), rgba(147, 211, 131, 0.9));
}
.admin-golfdb-history-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.65rem;
}
.admin-golfdb-history-card {
  display: grid;
  gap: 0.35rem;
  min-width: 0;
  padding: 0.7rem;
  border: 1px solid rgba(211, 170, 77, 0.25);
  border-radius: 8px;
  background: rgba(6, 25, 18, 0.35);
}
.admin-golfdb-history-card span {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 900;
  overflow-wrap: anywhere;
}
.admin-golfdb-history-card strong {
  color: var(--paper);
  font-size: 1.45rem;
  line-height: 1;
  text-shadow: var(--text-shadow);
}
.admin-golfdb-sparkline {
  display: block;
  width: 100%;
  max-width: 8rem;
  height: 2.35rem;
  overflow: hidden;
  border: 1px solid rgba(211, 170, 77, 0.25);
  border-radius: 7px;
  background:
    linear-gradient(rgba(255,255,255,0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px),
    rgba(6, 25, 18, 0.32);
  background-size: 100% 50%, 33% 100%, auto;
}
.admin-golfdb-kpi .admin-golfdb-sparkline {
  margin-top: 0.25rem;
}
.admin-golfdb-sparkline svg {
  display: block;
  width: 100%;
  height: 100%;
}
.admin-golfdb-sparkline path {
  fill: none;
  stroke: var(--gold);
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: drop-shadow(0 1px 2px rgba(0,0,0,0.35));
}
.admin-golfdb-count {
  display: inline-grid;
  place-items: center;
  min-width: 2rem;
  height: 2rem;
  padding: 0 0.5rem;
  border: 1px solid rgba(211, 170, 77, 0.36);
  border-radius: 999px;
  color: var(--gold);
  font-weight: 950;
  background: rgba(6, 25, 18, 0.34);
}
.admin-stats-kpi-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
  gap: 0.75rem;
  margin-bottom: 1rem;
}
.admin-stats-kpi {
  display: grid;
  gap: 0.25rem;
  min-height: 6rem;
  align-content: center;
  padding: 0.9rem;
  border: 1px solid rgba(103, 190, 151, 0.42);
  border-radius: 8px;
  background: linear-gradient(145deg, rgba(72, 111, 133, 0.72), rgba(42, 103, 75, 0.7));
  box-shadow: var(--shadow-soft);
}
.admin-stats-kpi span {
  color: var(--text);
  font-weight: 900;
}
.admin-stats-kpi strong {
  color: var(--paper);
  font-size: clamp(1.8rem, 4vw, 2.7rem);
  line-height: 1;
  text-shadow: var(--text-shadow);
}
.admin-user-stat-list {
  display: grid;
  gap: 0.8rem;
}
.admin-user-stat-card {
  display: grid;
  grid-template-columns: 3.35rem minmax(13rem, 0.8fr) minmax(0, 1.6fr);
  gap: 0.85rem;
  align-items: center;
  padding: 0.85rem;
  border: 1px solid rgba(255, 255, 255, 0.11);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.04);
}
.admin-user-stat-card[hidden] {
  display: none;
}
.admin-user-stat-main {
  display: grid;
  gap: 0.18rem;
  min-width: 0;
}
.admin-user-stat-main > div {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.45rem;
}
.admin-user-stat-main strong {
  color: var(--text);
  overflow-wrap: anywhere;
}
.admin-user-stat-main small {
  color: var(--gold);
  font-weight: 900;
}
.admin-user-stat-main span {
  color: var(--muted);
  font-size: 0.9rem;
  overflow-wrap: anywhere;
}
.admin-user-stat-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.55rem;
}
.admin-user-stat-metric {
  display: grid;
  gap: 0.15rem;
  min-width: 0;
  padding: 0.55rem;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 8px;
  background: rgba(6, 25, 18, 0.42);
}
.admin-user-stat-metric small {
  color: var(--muted);
  font-weight: 850;
}
.admin-user-stat-metric strong {
  color: var(--text);
  overflow-wrap: anywhere;
}
.admin-users-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(12rem, 0.65fr);
  gap: 0.85rem;
}
.admin-users-toolbar label {
  display: grid;
  gap: 0.35rem;
  color: var(--muted);
  font-weight: 850;
}
.admin-users-toolbar input,
.admin-users-toolbar select {
  width: 100%;
  min-width: 0;
}
.admin-users-list,
.admin-registration-list {
  display: grid;
  gap: 0.7rem;
}
.admin-user-card,
.admin-registration-card {
  display: grid;
  gap: 0.85rem;
  align-items: center;
  padding: 0.85rem;
  border: 1px solid rgba(255, 255, 255, 0.11);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.04);
}
.admin-user-card {
  grid-template-columns: 3.35rem minmax(0, 1fr) minmax(10rem, 13rem) auto;
}
.admin-registration-card {
  grid-template-columns: minmax(0, 1fr) auto;
}
.admin-registration-notice {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.85rem;
  align-items: center;
  margin-bottom: 1rem;
  border-color: rgba(103, 190, 151, 0.38);
  background: rgba(48, 89, 66, 0.46);
}
.admin-registration-notice h3 {
  margin: 0 0 0.35rem;
}
.admin-registration-notice p {
  margin: 0;
  color: var(--text);
}
.admin-registration-notice small,
.admin-registration-notice span {
  color: var(--muted);
}
.admin-registration-notice .pill-link {
  width: auto;
  justify-self: end;
}
.admin-registration-notice .pill-link:disabled {
  opacity: 0.52;
  cursor: not-allowed;
}
.admin-user-card[hidden] {
  display: none;
}
.admin-user-avatar {
  display: grid;
  width: 3.35rem;
  aspect-ratio: 1;
  place-items: center;
  overflow: hidden;
  border: 1px solid rgba(247, 241, 228, 0.62);
  border-radius: 50%;
  background: rgba(247, 241, 228, 0.12);
}
button.admin-user-avatar {
  padding: 0;
  cursor: zoom-in;
}
button.admin-user-avatar:hover,
button.admin-user-avatar:focus-visible {
  border-color: var(--gold);
  box-shadow: 0 0 0 3px rgba(211, 170, 77, 0.18);
}
.admin-user-avatar img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: var(--profile-image-position, center);
}
.admin-user-avatar.empty img {
  width: 62%;
  height: 62%;
  object-fit: contain;
  filter: drop-shadow(0 8px 8px rgba(0, 0, 0, 0.35));
}
.admin-user-main {
  display: grid;
  gap: 0.18rem;
  min-width: 0;
}
.admin-user-main strong,
.admin-registration-card strong {
  color: var(--text);
  font-size: 1rem;
  overflow-wrap: anywhere;
}
.admin-user-main small,
.admin-registration-card small {
  color: var(--gold);
  font-weight: 850;
}
.admin-user-main span,
.admin-registration-card span {
  color: var(--muted);
  font-size: 0.9rem;
  overflow-wrap: anywhere;
}
.admin-user-role {
  display: grid;
  gap: 0.35rem;
  color: var(--muted);
  font-size: 0.85rem;
  font-weight: 850;
}
.admin-user-role select {
  width: 100%;
}
.admin-user-card .danger-pill,
.admin-registration-card .pill-link {
  width: auto;
  justify-self: end;
}
.admin-user-card .danger-pill:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}
.admin-page-actions {
  padding-top: 0.25rem;
}
.admin-profile-preview-dialog {
  position: relative;
  width: min(26rem, 92vw);
  display: grid;
  justify-items: center;
  gap: 0.85rem;
  padding: 1.15rem;
  text-align: center;
  border-color: rgba(211, 170, 77, 0.42);
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.48);
}
.admin-profile-preview-close {
  position: absolute;
  top: 0.55rem;
  right: 0.55rem;
  width: 2rem;
  height: 2rem;
  padding: 0;
  border-radius: 50%;
  line-height: 1;
}
.admin-profile-preview-image {
  display: grid;
  width: min(19rem, 72vw);
  aspect-ratio: 1;
  place-items: center;
  overflow: hidden;
  border: 2px solid rgba(247, 241, 228, 0.72);
  border-radius: 50%;
  background: rgba(247, 241, 228, 0.12);
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.34);
}
.admin-profile-preview-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: var(--profile-image-position, center);
}
.admin-profile-preview-dialog strong {
  color: var(--text);
  overflow-wrap: anywhere;
}
.friends-page {
  display: grid;
  gap: 1.1rem;
}
.friends-settings-panel,
.friends-list-panel,
.friends-search-panel {
  display: grid;
  align-content: start;
  gap: 1rem;
  padding: clamp(1rem, 1.5vw, 1.25rem);
}
.friends-list-panel h3,
.friends-search-panel h3 {
  margin: 0;
  line-height: 1.15;
}
.friends-settings-panel {
  grid-template-columns: 1fr;
  align-items: start;
}
.friends-settings-main {
  display: grid;
  grid-template-columns: minmax(0, 25rem);
  gap: 0.85rem;
}
.friends-settings-panel .friends-toggle-row,
.friends-settings-panel .friends-leaderboard-field {
  width: min(100%, 25rem);
  box-shadow: none;
}
.friends-leaderboard-field {
  cursor: default;
  color: var(--text);
  font-weight: 900;
}
.friends-settings-panel select {
  width: 100%;
}
.friends-layout {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.1rem;
}
.friends-card-list {
  display: grid;
  gap: 0.8rem;
}
.friend-card {
  display: grid;
  grid-template-columns: 3.1rem minmax(0, 1fr) auto;
  gap: 0.75rem;
  align-items: center;
  padding: 0.8rem;
  border: 1px solid rgba(255, 255, 255, 0.11);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.04);
}
.friend-card[hidden] {
  display: none;
}
.friend-avatar {
  appearance: none;
  display: grid;
  width: 3.1rem;
  aspect-ratio: 1;
  place-items: center;
  overflow: hidden;
  border: 1px solid rgba(247, 241, 228, 0.62);
  border-radius: 50%;
  background: rgba(247, 241, 228, 0.12);
  padding: 0;
  cursor: default;
}
button.friend-avatar {
  cursor: pointer;
}
button.friend-avatar:hover,
button.friend-avatar:focus-visible {
  border-color: var(--gold);
  box-shadow: 0 0 0 3px rgba(246, 190, 83, 0.22);
}
.friend-avatar img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: var(--profile-image-position, center);
}
.friend-avatar.empty img {
  width: 62%;
  height: 62%;
  object-fit: contain;
}
.friend-card-main {
  display: grid;
  gap: 0.18rem;
  min-width: 0;
}
.friend-card-main strong {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  flex-wrap: wrap;
  color: var(--text);
  overflow-wrap: anywhere;
}
.friend-admin-badge {
  display: inline-flex;
  align-items: center;
  min-height: 1.35rem;
  padding: 0.12rem 0.45rem;
  border: 1px solid rgba(246, 190, 83, 0.55);
  border-radius: 999px;
  color: var(--gold);
  background: rgba(246, 190, 83, 0.12);
  font-size: 0.72rem;
  font-weight: 950;
  line-height: 1;
  text-transform: uppercase;
}
.friend-card-main small {
  color: var(--muted);
  font-weight: 800;
  overflow-wrap: anywhere;
}
.friend-card-actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.45rem;
  flex-wrap: wrap;
}
.friend-card-actions .pill-link {
  width: auto;
}
.friend-visibility-switch {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  cursor: pointer;
  color: var(--muted);
  font-weight: 850;
}
.friend-visibility-label {
  white-space: nowrap;
}
.friends-search-panel label {
  display: grid;
  gap: 0.35rem;
  color: var(--muted);
  font-weight: 850;
}
.friends-search-panel input {
  width: 100%;
}
.friend-message-panel {
  display: grid;
  gap: 1rem;
  padding: clamp(1rem, 1.5vw, 1.25rem);
}
.friend-message-header {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  padding-bottom: 0.9rem;
  border-bottom: 1px solid var(--line);
}
.friend-message-header h3 {
  margin: 0 0 0.18rem;
  color: var(--text);
}
.friend-message-header small {
  color: var(--muted);
  font-weight: 800;
}
.friend-message-list {
  display: grid;
  gap: 0.75rem;
  min-height: 10rem;
  align-content: start;
}
.friend-message-bubble {
  display: grid;
  gap: 0.35rem;
  max-width: min(42rem, 88%);
  padding: 0.8rem 0.9rem;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.055);
}
.friend-message-bubble.is-mine {
  justify-self: end;
  border-color: rgba(246, 190, 83, 0.38);
  background: rgba(246, 190, 83, 0.12);
}
.friend-message-meta {
  display: flex;
  justify-content: space-between;
  gap: 0.8rem;
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 850;
}
.friend-message-bubble p {
  margin: 0;
  color: var(--text);
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.friend-message-delete {
  justify-self: end;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--muted);
  font-size: 0.82rem;
  cursor: pointer;
}
.friend-message-delete:hover,
.friend-message-delete:focus-visible {
  color: var(--gold);
}
.friend-message-form {
  display: grid;
  gap: 0.75rem;
  padding-top: 0.95rem;
  border-top: 1px solid var(--line);
}
.friend-message-form label {
  display: grid;
  gap: 0.35rem;
  color: var(--muted);
  font-weight: 850;
}
.friend-message-form textarea {
  width: 100%;
  resize: vertical;
  min-height: 6rem;
}
.settings-delete-user-form {
  max-width: 520px;
}
.settings-hcp-actions {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  flex-wrap: wrap;
}
.settings-hcp-actions button {
  border: 1px solid rgba(211, 170, 77, 0.38);
  border-radius: 8px;
  padding: 0.65rem 0.75rem;
  color: var(--text);
  background: rgba(211, 170, 77, 0.1);
  font-weight: 850;
  cursor: pointer;
}
.settings-hcp-actions button:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}
.settings-hcp-actions span {
  width: 100%;
  min-height: 1rem;
  color: var(--gold);
  font-size: 0.82rem;
  font-weight: 800;
}

.section { margin-top: 2rem; scroll-margin-top: 7rem; }
.section-header { display:flex; justify-content:space-between; align-items:end; gap:1rem; margin-bottom:1rem; }
.section h2 { margin: 0; font-size: clamp(1.4rem, 3vw, 2.25rem); }
.section p { color: var(--muted); }
.section p.section-emotion {
  margin-top: 0.35rem;
  color: var(--text);
  font-weight: 900;
}
.page-content-frame {
  min-width: 0;
  padding: clamp(0.85rem, 1.4vw, 1.15rem);
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: 10px;
  background:
    radial-gradient(circle at 18% 10%, rgba(117, 154, 122, 0.10), transparent 18rem),
    linear-gradient(160deg, rgba(31, 46, 37, 0.86) 0%, rgba(24, 38, 31, 0.82) 52%, rgba(36, 35, 28, 0.82) 100%);
  box-shadow: var(--shadow);
}
.page-content-frame > :first-child {
  margin-top: 0;
}

.grid { display:grid; gap:1rem; }
.grid > *,
.cards > *,
.two > *,
.three > * {
  min-width: 0;
}
.cards { grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); }
.two { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
.three { grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); }

.card, .table-wrap, .panel {
  min-width: 0;
  background: linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.025));
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
}
.card {
  min-height: 132px;
  padding: 1rem;
  background:
    var(--tile-gradient, linear-gradient(145deg, rgba(91, 127, 107, 0.98) 0%, rgba(56, 103, 83, 0.98) 48%, rgba(34, 78, 64, 0.98) 100%));
  box-shadow: var(--tile-shadow);
}
.card .label { color: rgba(247, 241, 228, 0.82); font-size: 0.95rem; font-weight: 750; }
.card .value { margin-top: 0.55rem; font-size: clamp(1.9rem, 4vw, 2.8rem); font-weight: 900; text-shadow: 0 3px 8px rgba(0,0,0,0.36); }
.card .sub { margin-top: 0.35rem; color: var(--gold); font-size: 0.9rem; font-weight: 700; }
.profile-metric-group {
  grid-column: span 4;
  padding: 1rem;
  min-height: 0;
  background: linear-gradient(180deg, rgba(255,255,255,0.052), rgba(255,255,255,0.024));
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
}
.profile-chart-group {
  grid-column: span 3;
  padding: 1rem;
  min-height: 0;
  background: linear-gradient(180deg, rgba(255,255,255,0.052), rgba(255,255,255,0.024));
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
}
.profile-metric-group h4,
.profile-chart-group h4 {
  margin: 0 0 0.8rem;
  color: var(--gold);
  font-size: 0.95rem;
  letter-spacing: 0;
}
.profile-metric-group-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(145px, 1fr));
  gap: 0.75rem;
}
.profile-metric-tile {
  min-height: 108px;
  padding: 0.85rem;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.02));
}
.profile-metric-tile .label {
  color: var(--muted);
  font-size: 0.86rem;
}
.profile-metric-tile .value {
  margin-top: 0.55rem;
  font-size: clamp(1.55rem, 3vw, 2.35rem);
  font-weight: 850;
}
.profile-metric-tile .sub {
  margin-top: 0.3rem;
  color: var(--gold);
  font-size: 0.88rem;
}
.player-lochscore-chart-inner {
  min-height: 0;
}
.player-lochscore-chart {
  overflow: hidden;
}
.player-lochscore-chart .mini-chart-card {
  padding: 0.85rem;
}
@media (max-width: 1250px) {
  .profile-metric-group {
    grid-column: 1 / -1;
  }
}
@media (max-width: 900px) {
  .profile-metric-group-grid {
    grid-template-columns: repeat(2, minmax(145px, 1fr));
  }
  .player-lochscore-chart {
    grid-column: 1 / -1;
  }
}
@media (max-width: 560px) {
  .profile-metric-group-grid {
    grid-template-columns: 1fr;
  }
  .player-lochscore-chart {
    padding: 0.75rem;
  }
  .player-lochscore-chart .mini-chart-card {
    padding: 0.65rem;
  }
  .player-lochscore-chart .mini-card-bars {
    gap: 0.38rem;
  }
  .player-lochscore-chart .mini-card-bar,
  .player-lochscore-chart .mini-card-bar-share {
    grid-template-columns: minmax(82px, 0.95fr) 2rem minmax(54px, 1fr) 3rem;
    column-gap: 0.32rem;
    font-size: 0.78rem;
  }
  .player-lochscore-chart .mini-card-bar strong {
    min-width: 0;
    font-size: 0.78rem;
  }
  .player-lochscore-chart .mini-card-track {
    height: 7px;
  }
}
.score-diagram-row {
  margin-top: 1rem;
}
.mini-chart-card {
  display: grid;
  align-content: start;
  gap: 0.65rem;
  height: 100%;
}
.mini-card-bars {
  display: grid;
  gap: 0.45rem;
}
.mini-chart-sections {
  display: grid;
  gap: 0.85rem;
}
.mini-chart-section {
  display: grid;
  gap: 0.45rem;
  min-width: 0;
}
.mini-chart-section h4 {
  margin: 0;
  color: #fff7d9;
  font-size: 0.82rem;
  font-weight: 950;
}
.mini-card-row {
  display: grid;
  gap: 0.28rem;
}
.mini-card-bar {
  display: grid;
  grid-template-columns: minmax(150px, 0.72fr) 3.6rem minmax(180px, 2.4fr) 5.25rem;
  align-items: center;
  column-gap: 0.55rem;
  row-gap: 0.35rem;
  color: var(--muted);
  font-size: 0.9rem;
  font-weight: 800;
}
.mini-card-bar-share {
  grid-template-columns: minmax(150px, 0.72fr) 3.6rem minmax(180px, 2.4fr) 5.25rem;
}
.mini-card-bar span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.mini-card-bar strong {
  color: var(--text);
  font-size: 0.92rem;
  font-weight: 900;
  text-align: right;
  white-space: nowrap;
}
.mini-card-track {
  height: 9px;
  overflow: hidden;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,0.06);
}
.mini-card-fill {
  display: block;
  height: 100%;
  width: var(--bar-width, 0%);
  max-width: 100%;
  min-width: 0;
  flex: 0 0 auto;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--gold), var(--green-2));
}
.mini-card-row-details {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 0.42rem;
  padding-left: 0;
  color: rgba(226, 237, 224, 0.78);
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1.25;
}
.mini-card-row-details span {
  min-width: 0;
  max-width: 100%;
  padding: 0.24rem 0.42rem;
  border-radius: 7px;
  background: rgba(6, 19, 11, 0.22);
  border: 1px solid rgba(255,255,255,0.06);
  overflow-wrap: anywhere;
  white-space: normal;
}
.mini-card-row-details b {
  display: inline-block;
  margin-right: 0.18rem;
  color: var(--gold);
  font-weight: 950;
}
.mini-card-empty {
  color: var(--muted);
  font-size: 0.86rem;
}

@media (max-width: 720px) {
  .mini-card-bar,
  .mini-card-bar-share {
    grid-template-columns: minmax(112px, 0.85fr) 3rem minmax(90px, 1.8fr) 4rem;
    gap: 0.45rem;
  }
  .mini-card-row-details {
    padding-left: 0;
  }
}

.dashboard-layout {
  display: grid;
  gap: 1rem;
}
.dashboard-main-grid {
  display: grid;
  grid-template-columns: minmax(340px, 0.9fr) minmax(0, 1.35fr);
  gap: 1rem;
  align-items: start;
}
.dashboard-stats-column {
  display: grid;
  gap: 1rem;
}
.dashboard-top-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
.dashboard-box {
  padding: clamp(1rem, 2vw, 1.35rem);
}
.dashboard-box h3 {
  margin: 0 0 1rem;
  color: var(--text);
  font-size: clamp(1.05rem, 2vw, 1.35rem);
}
.dashboard-split-grid {
  display: grid;
  gap: 1rem;
}
.dashboard-split-group {
  display: grid;
  gap: 0.8rem;
  padding: 0.9rem;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255,255,255,0.02);
}
.dashboard-split-group h4 {
  margin: 0;
  color: var(--gold);
  font-size: 0.9rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.dashboard-metric-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 0.85rem;
}
.dashboard-form-box .dashboard-metric-list {
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}
.dashboard-compact-box .dashboard-metric-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.dashboard-trend-panel {
  align-self: stretch;
}
.dashboard-trend-panel .dashboard-trend-grid {
  grid-template-columns: 1fr;
}
.dashboard-trend-panel .dashboard-trend-block {
  min-height: 165px;
}
.dashboard-trend-panel .mini-trend-bars {
  height: 4.25rem;
}
.dashboard-overview-box {
  padding: clamp(1rem, 2vw, 1.25rem);
}
.dashboard-overview-content {
  display: grid;
  grid-template-columns: minmax(260px, 0.55fr) minmax(0, 1.45fr);
  gap: 1rem;
  align-items: stretch;
}
.dashboard-overview-metrics {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.dashboard-overview-trends {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-content: start;
}
.dashboard-overview-trends .dashboard-trend-block {
  min-height: 150px;
}
.dashboard-overview-trends .mini-trend-bars {
  height: 3.6rem;
}
.dashboard-metric {
  min-height: 90px;
  padding: 0.85rem;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255,255,255,0.035);
}
.dashboard-metric span {
  display: block;
  color: var(--muted);
  font-size: 0.82rem;
}
.dashboard-metric strong {
  display: block;
  margin-top: 0.35rem;
  color: var(--text);
  font-size: clamp(1.35rem, 3vw, 2rem);
  line-height: 1.1;
}
.dashboard-metric small {
  display: block;
  margin-top: 0.35rem;
  color: var(--green-2);
  font-weight: 800;
}
.dashboard-wide-content {
  display: grid;
  grid-template-columns: minmax(220px, 0.85fr) minmax(0, 1.6fr);
  gap: 1rem;
  align-items: stretch;
}
.dashboard-score-metrics {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  align-content: start;
}
.dashboard-trend-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
.dashboard-trend-block {
  min-height: 210px;
  padding: 0.9rem;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255,255,255,0.025);
}
.dashboard-trend-block .label {
  color: var(--muted);
  font-size: 0.86rem;
}
.trend-arrow {
  display: inline-block;
  margin-right: 0.35rem;
  color: var(--gold);
  font-size: 1.05em;
}

.entry-panel p {
  color: var(--muted);
  line-height: 1.55;
}
.entry-panel {
  padding: clamp(1.2rem, 3vw, 2rem);
}
.entry-panel h3 {
  margin: 0.25rem 0 0.75rem;
  font-size: clamp(1.4rem, 3vw, 2.1rem);
}
.editor-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 0.9rem;
  margin: 1rem 0;
}
.editor-grid label {
  display: grid;
  gap: 0.4rem;
  color: var(--muted);
  font-weight: 800;
}
.editor-scorecard {
  margin-top: 1rem;
}
.counter-field {
  display: grid;
  grid-template-columns: 34px minmax(54px, 1fr) 34px;
  gap: 0.35rem;
  align-items: center;
  max-width: 150px;
}
.counter-field button,
.editor-actions button {
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--text);
  background: rgba(255,255,255,0.06);
  font-weight: 850;
  cursor: pointer;
}
.counter-field button {
  width: 34px;
  height: 34px;
}
.counter-field input {
  text-align: center;
  min-width: 0;
}
.inline-check {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  color: var(--muted);
  white-space: nowrap;
}
.detail-row td {
  padding-top: 0;
  background: rgba(255,255,255,0.018);
}
.hole-detail-editor {
  border: 1px solid rgba(211, 170, 77, 0.2);
  border-radius: 10px;
  padding: 0.65rem 0.75rem;
}
.hole-detail-editor summary {
  cursor: pointer;
  color: var(--gold);
  font-weight: 900;
}
.detail-editor-hint {
  margin: 0.7rem 0 0;
  color: var(--muted);
}
.detail-add-groups {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 0.85rem;
  margin-top: 0.8rem;
}
.detail-add-group {
  display: grid;
  gap: 0.55rem;
}
.detail-add-group h4 {
  margin: 0;
  color: var(--text);
}
.detail-add-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}
.detail-add-buttons button,
.detail-sequence-actions button {
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--text);
  background: rgba(255,255,255,0.06);
  font-weight: 850;
  cursor: pointer;
}
.detail-add-buttons button {
  padding: 0.45rem 0.65rem;
}
.detail-sequence-list {
  display: grid;
  gap: 0.45rem;
  margin-top: 0.9rem;
}
.detail-sequence-list:empty::before {
  content: "Noch keine Schlagdetails erfasst.";
  color: var(--muted);
  border: 1px dashed rgba(211, 170, 77, 0.26);
  border-radius: 8px;
  padding: 0.65rem;
}
.detail-sequence-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.8rem;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 0.55rem 0.65rem;
  background: rgba(255,255,255,0.04);
  color: var(--muted);
  font-weight: 800;
}
.detail-sequence-item span {
  color: var(--text);
}
.detail-sequence-label {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}
.detail-sequence-label small {
  color: var(--gold);
  font-size: 0.78rem;
  font-weight: 800;
}
.detail-sequence-actions {
  display: flex;
  gap: 0.35rem;
}
.detail-sequence-actions button {
  width: 30px;
  height: 30px;
}
.editor-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.8rem;
  margin-top: 1rem;
}
.editor-actions button {
  padding: 0.75rem 1rem;
  color: #07110d;
  border-color: transparent;
  background: linear-gradient(90deg, var(--gold), var(--green-2));
}
#editor-message {
  color: var(--gold);
  font-weight: 800;
}
.editor-list {
  padding: 1rem;
  margin-bottom: 1rem;
}
.editor-list-message {
  min-height: 1.2rem;
  margin: 0.8rem 0;
  color: var(--gold);
  font-weight: 800;
}
.round-edit-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
}
.trash-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: center;
  margin-bottom: 1rem;
}
.entry-steps {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 0.75rem;
  margin-top: 1.2rem;
}
.entry-steps span {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 0.85rem;
  color: var(--gold);
  background: rgba(255,255,255,0.04);
  font-weight: 800;
}

.leader { padding: 1rem; }
.leader h3, .panel h3 { margin:0 0 0.75rem; }
.rank-list { display:grid; gap:0.55rem; }
.rank {
  display:grid;
  grid-template-columns: 2rem 1fr auto;
  gap:0.75rem;
  align-items:center;
  padding:0.65rem;
  background: rgba(255,255,255,0.035);
  border:1px solid var(--line);
  border-radius:7px;
}
.rank .pos { color:var(--gold); font-weight:800; }
.rank .name { font-weight:750; }
.rank .meta { color:var(--muted); font-size:0.85rem; }
.rank .score { font-weight:850; color:var(--green-2); }

.leaderboard-filter-panel {
  margin-bottom: 1rem;
}

.leaderboard-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 1rem;
}

.leaderboard-card {
  padding: 1rem;
  border: 1px solid rgba(147, 211, 131, 0.26);
  border-radius: 8px;
  background:
    linear-gradient(145deg, rgba(52, 91, 73, 0.96) 0%, rgba(29, 65, 52, 0.96) 52%, rgba(18, 43, 35, 0.96) 100%);
  box-shadow: var(--tile-shadow);
}

.leaderboard-card-head {
  display: block;
  min-height: 3.75rem;
  margin-bottom: 0.8rem;
}

.leaderboard-card-head h3 {
  margin: 0;
  color: var(--gold);
  font-size: 1.05rem;
  line-height: 1.15;
}

.leaderboard-rank-list {
  display: grid;
  gap: 0.55rem;
}

.leaderboard-rank {
  display: grid;
  grid-template-columns: 2.1rem minmax(0, 1fr) auto;
  gap: 0.7rem;
  align-items: center;
  min-height: 3.75rem;
  padding: 0.65rem 0.7rem;
  border: 1px solid rgba(255,255,255,0.11);
  border-radius: 8px;
  background: rgba(255,255,255,0.045);
}

.leaderboard-rank .pos {
  display: grid;
  place-items: center;
  width: 2.1rem;
  height: 2.1rem;
  border-radius: 999px;
  color: #07110d;
  background: linear-gradient(145deg, #f1c96d, #93d383);
  font-weight: 900;
  overflow: visible;
}

.leaderboard-rank-logo-pos,
.rank .leaderboard-rank-logo-pos {
  display: grid;
  place-items: center;
  width: 2.1rem;
  height: 2.1rem;
  border-radius: 999px;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}

.leaderboard-rank-logo {
  display: block;
  width: 2.1rem;
  height: 2.1rem;
  aspect-ratio: 1;
  border-radius: 999px;
  object-fit: contain;
  filter: drop-shadow(0 0.16rem 0.22rem rgba(0, 0, 0, 0.34));
}

.leaderboard-rank-main {
  min-width: 0;
}

.leaderboard-rank .name {
  font-weight: 850;
}

.leaderboard-rank .meta {
  color: rgba(247, 241, 228, 0.68);
  font-size: 0.8rem;
  margin-top: 0.1rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.leaderboard-rank .score {
  color: #f7f1e4;
  font-size: 1.25rem;
  font-weight: 950;
  min-width: 2.7rem;
  text-align: right;
  white-space: nowrap;
  text-shadow: 0 2px 8px rgba(0,0,0,0.28);
}

.leaderboard-placeholder {
  opacity: 0.58;
  border-style: dashed;
}

.leaderboard-placeholder .pos {
  background: rgba(255,255,255,0.12);
  color: rgba(247, 241, 228, 0.75);
}

.leaderboard-placeholder .score {
  color: rgba(247, 241, 228, 0.6);
}

.leaderboard-own-separator {
  margin: 0.15rem 0 -0.1rem;
  color: var(--gold);
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.leaderboard-own-rank {
  border-color: rgba(241, 201, 109, 0.72);
  background: rgba(241, 201, 109, 0.09);
}

.table-wrap { overflow:auto; }
table { width:100%; border-collapse:collapse; min-width:720px; }
th, td { padding:0.8rem; border-bottom:1px solid var(--line); text-align:left; }
th { color:var(--gold); font-size:0.8rem; text-transform:uppercase; letter-spacing:0.06em; background:rgba(255,255,255,0.025); }
td { color:var(--text); }
.filters { display:flex; gap:0.7rem; flex-wrap:wrap; margin-bottom:1rem; }
.player-round-filter {
  margin-top: 1.35rem;
  margin-bottom: 1.35rem;
}
.player-rounds-table {
  margin-top: 0.25rem;
}
.player-rounds-table th:nth-child(n+7):nth-child(-n+11),
.player-rounds-table td:nth-child(n+7):nth-child(-n+11) {
  text-align: center;
}
input, select {
  background:#0c1813;
  color:var(--text);
  border:1px solid var(--line);
  border-radius:7px;
  padding:0.7rem 0.8rem;
  min-width:180px;
}

input[type="date"] {
  box-sizing: border-box;
  min-width: 13.25rem;
  height: 2.9rem;
  padding: 0.62rem 2.6rem 0.62rem 0.85rem;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 1rem;
  font-weight: 750;
  line-height: 1.2;
  letter-spacing: 0;
  font-variant-numeric: tabular-nums;
  color-scheme: dark;
}

input[type="date"]::-webkit-datetime-edit {
  min-width: 0;
  padding: 0;
}

input[type="date"]::-webkit-datetime-edit-fields-wrapper {
  min-width: 0;
}

input[type="date"]::-webkit-calendar-picker-indicator {
  margin-left: 0.45rem;
  opacity: 0.86;
}

.player-round-filter input[type="date"] {
  flex: 0 0 13.25rem;
  width: 13.25rem;
  max-width: 100%;
}

.player-round-filter .player-round-date-filter {
  flex: 0 0 11.5rem;
  width: 11.5rem;
  min-width: 11.5rem;
  max-width: 100%;
  padding-right: 2.6rem;
  font: inherit;
  font-size: 0.9rem;
  font-weight: 800;
  line-height: normal;
  letter-spacing: 0;
  font-variant-numeric: tabular-nums;
  text-align: left;
  text-transform: none;
}

.player-round-filter .player-round-date-filter::placeholder {
  color: rgba(210, 222, 236, 0.72);
  font-weight: 750;
  opacity: 1;
}

.chart { height:240px; padding:1.9rem 1rem 1rem; display:flex; align-items:end; gap:0.45rem; border-top:1px solid var(--line); }
.bar { flex:1; min-width:18px; background:linear-gradient(180deg, var(--green-2), var(--green)); border-radius:5px 5px 0 0; position:relative; overflow:visible; }
.bar span {
  position:absolute;
  bottom:100%;
  left:50%;
  transform:translateX(-50%);
  font-size:0.72rem;
  color:var(--muted);
  font-weight:900;
  line-height:1;
  padding-bottom:0.45rem;
}

.chart-test-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.icon-test-panel {
  grid-column: 1 / -1;
  padding: 1rem;
  margin-bottom: 1rem;
}
.icon-test-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin-bottom: 1rem;
}
.icon-test-nav span {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.55rem 0.75rem;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--muted);
  background: rgba(255,255,255,0.04);
  font-weight: 800;
}
.test-nav-icon,
.test-card-icon {
  display: inline-grid;
  place-items: center;
  color: var(--gold);
}
.test-nav-icon svg {
  width: 1.35rem;
  height: 1.35rem;
}
.icon-test-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 0.8rem;
}
.icon-test-card {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  min-height: 92px;
}
.test-card-icon {
  flex: 0 0 3.15rem;
  width: 3.15rem;
  height: 3.15rem;
  border: 1px solid rgba(211, 170, 77, 0.32);
  border-radius: 10px;
  background: rgba(211, 170, 77, 0.08);
}
.test-card-icon svg {
  width: 2.05rem;
  height: 2.05rem;
}
.icon-test-card strong,
.icon-test-card small {
  display: block;
}
.icon-test-card strong {
  color: var(--text);
}
.icon-test-card small {
  margin-top: 0.25rem;
  color: var(--muted);
}
.score-symbol-test {
  margin-top: 1.35rem;
  padding-top: 1.1rem;
  border-top: 1px solid var(--line);
}
.score-symbol-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 0.8rem;
}
.score-symbol-card {
  display: grid;
  justify-items: center;
  gap: 0.35rem;
  padding: 1rem 0.85rem;
  min-height: 132px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255,255,255,0.035);
  text-align: center;
}
.score-symbol-card strong {
  color: var(--text);
}
.score-symbol-card small {
  color: var(--muted);
}
.score-symbol {
  position: relative;
  display: inline-grid;
  place-items: center;
  width: 3.2rem;
  height: 3.2rem;
  color: var(--text);
  font-weight: 950;
  font-size: 1.05rem;
  line-height: 1;
}
.score-symbol b {
  position: relative;
  z-index: 2;
}
.score-symbol-hio b {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  transform: translateY(0.16rem);
}
.score-symbol-hio::before {
  content: "★";
  position: absolute;
  inset: -0.35rem;
  display: grid;
  place-items: center;
  color: var(--gold);
  font-size: 4.2rem;
  line-height: 1;
  text-shadow: 0 0 18px rgba(211,170,77,0.22);
  z-index: 1;
}
.score-symbol-hio b {
  color: #07110d;
  text-shadow: 0 1px 0 rgba(255,255,255,0.45);
}
.score-symbol-eagle-shape {
  position: absolute;
  width: 3.7rem;
  height: 3.35rem;
  color: var(--gold);
  stroke: currentColor;
  stroke-width: 4;
  stroke-linejoin: round;
  overflow: visible;
  z-index: 1;
}
.score-symbol-eagle b {
  transform: translateY(0.22rem);
}
.score-symbol-birdie {
  border: 2px solid #72d0ff;
  border-radius: 999px;
  box-shadow: 0 0 0 5px rgba(114,208,255,0.13);
}
.score-symbol-par {
  color: var(--muted);
  font-size: 1.4rem;
}
.score-symbol-boxes {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  z-index: 1;
}
.score-symbol-boxes i {
  position: absolute;
  display: block;
  width: 2.8rem;
  height: 2.8rem;
  border: 1.55px solid var(--gold);
  border-radius: 6px;
}
.score-symbol-double .score-symbol-boxes i {
  border-color: #f08b4f;
  border-width: 1.45px;
}
.score-symbol-triple .score-symbol-boxes i {
  border-color: #f05f5f;
  border-width: 1.35px;
}
.score-symbol-double .score-symbol-boxes i:nth-child(1) {
  transform: translate(-0.2rem, 0.2rem);
}
.score-symbol-double .score-symbol-boxes i:nth-child(2) {
  width: 2.8rem;
  height: 2.8rem;
  transform: translate(0.2rem, -0.2rem);
}
.score-symbol-triple .score-symbol-boxes i {
  width: 2.72rem;
  height: 2.72rem;
}
.score-symbol-triple .score-symbol-boxes i:nth-child(1) {
  transform: translate(-0.34rem, 0.34rem);
}
.score-symbol-triple .score-symbol-boxes i:nth-child(2) {
  transform: translate(0, 0);
}
.score-symbol-triple .score-symbol-boxes i:nth-child(3) {
  width: 2.72rem;
  height: 2.72rem;
  transform: translate(0.34rem, -0.34rem);
}
.score-symbol-scratch {
  border: 2px dashed var(--muted);
  border-radius: 8px;
  color: var(--muted);
}
.score-symbol-preview {
  margin-top: 1.35rem;
  padding-top: 1.1rem;
  border-top: 1px solid var(--line);
}
.symbol-scorecard-table td:nth-child(3),
.symbol-scorecard-table th:nth-child(3) {
  text-align: center;
}
.scorecard-panel table td:nth-child(6),
.scorecard-panel table th:nth-child(6) {
  text-align: center;
}
.score-cell-symbol,
.score-cell-plain {
  position: relative;
  display: inline-grid;
  place-items: center;
  width: 2.35rem;
  height: 2.35rem;
  font-weight: 950;
}
.score-cell-symbol b {
  position: relative;
  z-index: 2;
}
.score-cell-hio::before {
  content: "★";
  position: absolute;
  inset: -0.18rem;
  display: grid;
  place-items: center;
  color: var(--gold);
  font-size: 3rem;
  line-height: 1;
  z-index: 1;
}
.score-cell-hio b {
  color: #07110d;
  transform: translateY(0.11rem);
}
.score-cell-hio::before {
  content: "\2605";
}
.score-cell-eagle-shape {
  position: absolute;
  width: 2.65rem;
  height: 2.35rem;
  color: var(--gold);
  stroke: currentColor;
  stroke-width: 4;
  stroke-linejoin: round;
  overflow: visible;
  z-index: 1;
}
.score-cell-eagle b {
  transform: translateY(0.15rem);
}
.score-cell-birdie {
  border: 2px solid #72d0ff;
  border-radius: 999px;
}
.score-cell-boxes {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  z-index: 1;
}
.score-cell-boxes i {
  position: absolute;
  display: block;
  width: 2.05rem;
  height: 2.05rem;
  border: 1.45px solid var(--gold);
  border-radius: 5px;
}
.score-cell-double .score-cell-boxes i {
  border-color: #f08b4f;
  border-width: 1.35px;
}
.score-cell-triple .score-cell-boxes i {
  border-color: #f05f5f;
  border-width: 1.25px;
}
.score-cell-double .score-cell-boxes i:nth-child(1) {
  transform: translate(-0.13rem, 0.13rem);
}
.score-cell-double .score-cell-boxes i:nth-child(2) {
  width: 2.05rem;
  height: 2.05rem;
  transform: translate(0.13rem, -0.13rem);
}
.score-cell-triple .score-cell-boxes i {
  width: 1.95rem;
  height: 1.95rem;
}
.score-cell-triple .score-cell-boxes i:nth-child(1) {
  transform: translate(-0.22rem, 0.22rem);
}
.score-cell-triple .score-cell-boxes i:nth-child(2) {
  transform: translate(0, 0);
}
.score-cell-triple .score-cell-boxes i:nth-child(3) {
  width: 1.95rem;
  height: 1.95rem;
  transform: translate(0.22rem, -0.22rem);
}
.score-cell-scratch {
  border: 2px dashed var(--muted);
  border-radius: 6px;
  color: var(--muted);
}
.chart-panel {
  min-width: 0;
  overflow: hidden;
  min-height: 360px;
  padding: 1rem;
}
.chart-panel h3 {
  margin: 0 0 0.35rem;
}
.chart-help {
  min-height: 2.5em;
  margin: 0 0 0.75rem;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.25;
}
.chart-canvas-wrap {
  position: relative;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  height: 250px;
}
.chart-canvas-wrap canvas {
  display: block;
  width: 100% !important;
  max-width: 100%;
  min-width: 0;
}
.chart-panel:first-child,
.chart-panel:last-child {
  grid-column: 1 / -1;
}

.trend-filter-panel {
  margin-bottom: 1rem;
}
.page-content-frame-trends,
#trends-content,
#trends-latest-round-top,
.trend-filter-panel,
.trend-chart-grid,
.trend-par-average-grid,
.trend-pie-grid,
.trend-category-section-grid,
.trend-category-average-grid {
  max-width: 100%;
  min-width: 0;
}
.trend-average-overview {
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  margin-bottom: 1rem;
}
.trend-average-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr));
  gap: 1rem;
  max-width: 100%;
  min-width: 0;
}
.trend-average-grid .chart-panel,
.trend-average-grid .chart-panel:first-child,
.trend-average-grid .chart-panel:last-child {
  grid-column: auto;
}
.trend-average-card {
  background:
    linear-gradient(135deg, rgba(26, 91, 74, 0.96), rgba(37, 54, 47, 0.96)),
    var(--panel);
}
.trend-average-card .sub {
  line-height: 1.35;
}
.trend-average-combined-card {
  max-width: 100%;
  min-height: 465px;
  min-width: 0;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  padding: 1rem;
  overflow: hidden;
  background:
    linear-gradient(135deg, rgba(26, 91, 74, 0.72), rgba(18, 31, 25, 0.95)),
    var(--panel);
}
.trend-average-combined-card.trend-improved {
  border-color: rgba(147, 211, 131, 0.86);
}
.trend-average-combined-card.trend-worse {
  border-color: rgba(212, 107, 107, 0.88);
}
.trend-average-combined-card.trend-stable {
  border-color: rgba(211, 170, 77, 0.9);
}
.trend-average-combined-head {
  min-height: 94px;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.32rem;
  align-items: start;
  min-width: 0;
}
.trend-average-title-row {
  min-width: 0;
}
.trend-average-values-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(4.75rem, auto);
  gap: 0.85rem;
  align-items: start;
  min-width: 0;
}
.trend-average-current {
  min-width: 0;
  display: grid;
  justify-items: start;
  text-align: left;
}
.trend-average-combined-card .label {
  color: var(--text);
  font-size: 1.08rem;
  font-weight: 950;
  line-height: 1.2;
}
.trend-value-caption {
  display: inline-block;
  margin-top: 0;
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.04em;
  line-height: 1.1;
  text-transform: uppercase;
}
.trend-average-caption {
  color: var(--trend-average-line);
}
.trend-average-combined-card .value {
  margin-top: 0.18rem;
  color: var(--trend-average-line);
  font-size: clamp(1.17rem, 1.36vw, 1.72rem);
  font-weight: 850;
  line-height: 1;
  white-space: nowrap;
}
.trend-average-combined-card .sub {
  margin-top: 0.1rem;
  color: var(--gold);
  font-size: 0.78rem;
  line-height: 1.28;
}
.trend-average-latest-round {
  min-width: 0;
  align-self: start;
  display: grid;
  justify-items: end;
  text-align: right;
}
.trend-average-latest-round span {
  color: var(--trend-round-line);
  font-size: 0.72rem;
  font-weight: 950;
  letter-spacing: 0.04em;
  line-height: 1.1;
  text-transform: uppercase;
}
.trend-average-latest-round strong {
  margin-top: 0.18rem;
  color: var(--trend-round-line);
  font-size: clamp(1.17rem, 1.36vw, 1.72rem);
  font-weight: 850;
  line-height: 1;
  white-space: nowrap;
}
.trend-average-combined-card .chart-help {
  min-height: 2.7em;
  margin-bottom: 0.55rem;
}
.trend-average-combined-card .chart-canvas-wrap {
  height: 270px;
}

.trend-par-average-summary .label {
  color: var(--gold);
  font-size: 1.08rem;
  font-weight: 950;
  line-height: 1.2;
}
.trend-par-average-summary .value {
  margin-top: 0.35rem;
  color: var(--gold);
  font-size: clamp(1.8rem, 2.7vw, 2.85rem);
  font-weight: 850;
  line-height: 1;
}
.trend-par-average-chart .chart-help {
  margin-top: 0.45rem;
}
.trend-average-chart-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 145px), 1fr));
  max-width: 100%;
  min-width: 0;
  margin-bottom: 1rem;
}
.trend-average-chart-grid .chart-panel,
.trend-average-chart-grid .chart-panel:first-child,
.trend-average-chart-grid .chart-panel:last-child {
  grid-column: auto;
}
@media (max-width: 1800px) {
  .trend-average-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  }
  .trend-average-chart-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 145px), 1fr));
  }
}
@media (max-width: 1100px) {
  .trend-average-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
  }
  .trend-average-chart-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 145px), 1fr));
  }
}
@media (max-width: 720px) {
  .trend-average-grid,
  .trend-average-chart-grid {
    grid-template-columns: 1fr;
  }
  .trend-average-combined-head {
    grid-template-columns: 1fr;
  }
  .trend-average-latest-round {
    justify-items: start;
    text-align: left;
  }
}
.trend-summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 1rem;
  margin-bottom: 1rem;
}
.trend-latest-round-head {
  display: flex;
  align-items: baseline;
  gap: 0.75rem;
  margin-bottom: 0.75rem;
  padding: 0.85rem 1rem;
}
.trend-latest-round-head span {
  color: var(--gold);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.78rem;
  white-space: nowrap;
}
.trend-latest-round-head strong {
  color: var(--text);
  font-size: 1rem;
  line-height: 1.25;
}
.trend-par-score-panel {
  margin-bottom: 1rem;
}
.trend-par-score-panel h3 {
  margin: 0 0 0.85rem;
  color: var(--gold);
}
.trend-par-score-chart {
  max-width: 760px;
}
.trend-par-score-chart .mini-card-bar {
  grid-template-columns: minmax(210px, 1fr) 3.6rem minmax(220px, 2.2fr);
}
.trend-par-score-chart .mini-card-bar span {
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
  line-height: 1.2;
}
.trend-par-average-head {
  margin: 1rem 0 0.85rem;
}
.trend-par-average-head h3 {
  margin-bottom: 0.3rem;
}
.trend-par-average-head p {
  margin: 0;
  color: var(--muted);
  font-size: 0.9rem;
}
.trend-par-average-grid .trend-par-average-chart,
.trend-par-average-grid .trend-par-average-chart:first-child,
.trend-par-average-grid .trend-par-average-chart:last-child {
  grid-column: auto;
}
.trend-par-average-chart .chart-canvas-wrap {
  height: 260px;
}
.trend-metric-card .label {
  font-size: clamp(1rem, 1.2vw, 1.2rem);
  line-height: 1.2;
}
.trend-metric-card .value {
  font-size: clamp(1.75rem, 2.6vw, 2.45rem);
  line-height: 1;
}
.trend-metric-values {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  margin-top: 0.35rem;
  max-width: 100%;
}
.trend-metric-values .trend-value-row {
  position: relative;
  display: block;
  white-space: nowrap;
  margin-top: 0;
  text-align: center;
}
.trend-metric-values .trend-average-value {
  color: var(--accent);
}
.trend-metric-values .trend-value-prefix {
  position: absolute;
  right: calc(100% + 0.18em);
  top: 0.08em;
  display: inline-block;
  color: var(--muted);
  font-size: 0.7em;
  text-align: right;
}
.trend-metric-values .trend-value-row strong {
  font: inherit;
  color: inherit;
}
.trend-metric-card .sub {
  margin-top: 0.7rem;
  text-align: center;
}
.trend-metric-card {
  display: grid;
  align-content: center;
  justify-items: center;
  border-width: 3px;
  text-align: center;
}
.trend-metric-card.trend-improved {
  border-color: rgba(147, 211, 131, 0.86);
  box-shadow: 0 0 0 1px rgba(147, 211, 131, 0.18), 0 0 22px rgba(147, 211, 131, 0.12), var(--shadow);
}
.trend-metric-card.trend-worse {
  border-color: rgba(212, 107, 107, 0.88);
  box-shadow: 0 0 0 1px rgba(212, 107, 107, 0.18), 0 0 22px rgba(212, 107, 107, 0.12), var(--shadow);
}
.trend-metric-card.trend-stable {
  border-color: rgba(211, 170, 77, 0.9);
  box-shadow: 0 0 0 1px rgba(211, 170, 77, 0.2), 0 0 22px rgba(211, 170, 77, 0.12), var(--shadow);
}
.trend-metric-card.trend-empty {
  border-color: rgba(170, 184, 173, 0.34);
}
.trend-chart-grid .chart-panel,
.trend-chart-grid .chart-panel:first-child,
.trend-chart-grid .chart-panel:last-child {
  grid-column: auto;
}
.trend-chart-panel {
  min-height: 330px;
}
.trend-round-table {
  margin-top: 1rem;
}
.trend-round-table .table-wrap {
  margin-top: 0.8rem;
}

.dashboard-mini-trend {
  display: grid;
  gap: 0.45rem;
}
.dashboard-mini-trend-card {
  min-height: 0;
}
.mini-trend-head {
  display: flex;
  justify-content: space-between;
  gap: 0.7rem;
  align-items: center;
  color: var(--text);
}
.mini-trend-head span {
  color: var(--gold);
  font-weight: 900;
}
.mini-trend-bars {
  display: flex;
  align-items: flex-end;
  gap: 0.35rem;
  height: 4.2rem;
  padding-top: 0.35rem;
}
.mini-trend-bar {
  position: relative;
  flex: 1;
  min-width: 0.9rem;
  border-radius: 5px 5px 0 0;
  background: linear-gradient(180deg, var(--green-2), var(--green));
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.16);
}
.mini-trend-bar b {
  position: absolute;
  left: 50%;
  bottom: calc(100% + 0.15rem);
  transform: translateX(-50%);
  color: var(--muted);
  font-size: 0.68rem;
  line-height: 1;
}
.dashboard-mini-trend small {
  color: var(--muted);
  line-height: 1.25;
}

.empty {
  padding:1rem;
  border:1px dashed rgba(211,170,77,0.35);
  color:var(--muted);
  border-radius:8px;
  background:rgba(211,170,77,0.06);
}
.status-ok { color: var(--green-2); }
.status-missing { color: var(--gold); }
.badge { display:inline-block; padding:0.25rem 0.5rem; border-radius:999px; background:rgba(80,160,96,0.16); color:var(--green-2); font-size:0.78rem; }
.panel { padding:1rem; }
.player-card:target,
.scorecard-panel:target {
  outline: 2px solid var(--gold);
  box-shadow: 0 0 0 6px rgba(211,170,77,0.12), var(--shadow);
}
.scorecard-panel {
  grid-column: 1 / -1;
}
.scorecard-title {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:1rem;
  margin-bottom:0.8rem;
}
.scorecard-title h3 { margin:0; }
.scorecard-meta {
  display:flex;
  flex-wrap:wrap;
  gap:0.5rem;
  margin:0.7rem 0 1rem;
}
.scorecard-meta span {
  border:1px solid var(--line);
  border-radius:999px;
  padding:0.35rem 0.6rem;
  color:var(--muted);
  background:rgba(255,255,255,0.03);
  font-size:0.86rem;
}
.scorecard-hcp-note {
  color: var(--muted);
  font-size: 0.86rem;
  margin: 1rem 0 1.25rem;
}
.scorecard-stat-strip {
  width: min(100%, 860px);
  display: grid;
  grid-template-columns: repeat(5, minmax(112px, 1fr));
  gap: 0.45rem;
  margin: 0.85rem 0 0;
  padding: 0.5rem;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.025);
}
.scorecard-stat-strip .card {
  min-height: 68px;
  display: grid;
  align-content: center;
  justify-items: center;
  padding: 0.45rem 0.55rem;
  border-radius: 8px;
  text-align: center;
  box-shadow: none;
}
.scorecard-stat-strip .card .label {
  font-size: 0.72rem;
}
.scorecard-stat-strip .card .value {
  margin-top: 0.08rem;
  font-size: clamp(1.2rem, 1.65vw, 1.7rem);
  line-height: 1.05;
}
.scorecard-stat-strip .card .sub {
  margin-top: 0.08rem;
  font-size: 0.68rem;
}
.scorecard-main-layout {
  margin-top: 1rem;
}
.scorecard-compact-table {
  width: 100%;
  max-width: 820px;
}
.scorecard-compact-table table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}
.scorecard-compact-table th,
.scorecard-compact-table td {
  padding: 0.38rem 0.28rem;
  text-align: center;
  font-size: 0.92rem;
}
.scorecard-compact-table th:first-child,
.scorecard-compact-table td:first-child {
  text-align: left;
  width: 3.4rem;
}
.scorecard-compact-table th:nth-child(2),
.scorecard-compact-table td:nth-child(2) {
  width: 4.8rem;
}
.scorecard-compact-table th:nth-child(3),
.scorecard-compact-table td:nth-child(3),
.scorecard-compact-table th:nth-child(5),
.scorecard-compact-table td:nth-child(5),
.scorecard-compact-table th:nth-child(7),
.scorecard-compact-table td:nth-child(7),
.scorecard-compact-table th:nth-child(9),
.scorecard-compact-table td:nth-child(9),
.scorecard-compact-table th:nth-child(10),
.scorecard-compact-table td:nth-child(10) {
  width: 4rem;
}
.scorecard-compact-table th:nth-child(4),
.scorecard-compact-table td:nth-child(4) {
  width: 4.2rem;
}
.scorecard-compact-table th:nth-child(6),
.scorecard-compact-table td:nth-child(6) {
  width: 4.4rem;
}
.scorecard-compact-table th:nth-child(8),
.scorecard-compact-table td:nth-child(8) {
  width: 5.2rem;
}
.scorecard-handicap-slashes {
  color: var(--green-2);
  font-weight: 950;
  letter-spacing: 0.08em;
}
.scorecard-section-row td {
  color: var(--gold);
  font-weight: 950;
  background: rgba(211, 170, 77, 0.1);
  letter-spacing: 0;
}
@media (max-width: 1180px) {
  .scorecard-stat-strip {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    border-radius: 18px;
  }
}
.participant-list {
  margin:0.4rem 0 0;
  padding-left:1.2rem;
  color:var(--muted);
}
.score-rates {
  margin-top:1rem;
}
.shot-overview {
  margin-bottom: 1rem;
}
.analysis-stack {
  display: grid;
  gap: 1rem;
}
.analysis-block {
  padding: 1rem;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.022));
  box-shadow: var(--shadow);
}
.analysis-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}
.analysis-head h3 {
  margin: 0;
}
.analysis-head p {
  margin: 0;
  max-width: 460px;
  font-size: 0.92rem;
  text-align: right;
}
.metric-row {
  margin-bottom: 1rem;
}
.stat-bars {
  display: grid;
  gap: 0.85rem;
}
.stat-bar {
  display: grid;
  gap: 0.35rem;
}
.stat-label {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  color: var(--muted);
  font-size: 0.92rem;
}
.stat-label strong {
  color: var(--text);
}
.stat-track {
  height: 10px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255,255,255,0.06);
  border: 1px solid var(--line);
}
.stat-track > div {
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--gold), var(--green-2));
}
.compact-table table {
  min-width: 560px;
}
.detail-boards {
  margin-top: 1rem;
}
.course-hole-accordion {
  display: grid;
  gap: 0.85rem;
}
.course-hole-panel {
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
  background: rgba(255,255,255,0.03);
}
.course-hole-panel summary {
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.95rem 1rem;
  color: var(--text);
  list-style-position: inside;
}
.course-hole-panel summary strong {
  color: var(--green-2);
}
.course-hole-panel summary small {
  display: block;
  margin-top: 0.2rem;
  color: var(--muted);
  font-size: 0.82rem;
}
.course-hole-summary {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.45rem;
}
.course-hole-summary span {
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 0.28rem 0.55rem;
  color: var(--muted);
  background: rgba(255,255,255,0.035);
  font-size: 0.82rem;
  white-space: nowrap;
}
.course-hole-actions {
  display: flex;
  justify-content: flex-end;
  padding: 0 1rem 0.8rem;
}
.course-hole-insights {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.6rem;
  padding: 0 1rem 1rem;
}
.mini-insight {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 0.7rem;
  background: rgba(0,0,0,0.12);
}
.mini-insight span,
.mini-insight small {
  display: block;
  color: var(--muted);
  font-size: 0.78rem;
}
.mini-insight strong {
  display: block;
  margin: 0.2rem 0;
  color: var(--text);
  font-size: 1.05rem;
}
.course-hole-panel .table-wrap {
  margin: 0 1rem 1rem;
}

.course-analysis-filter-panel {
  margin-bottom: 1rem;
}

.course-analysis-filters {
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
}

.course-analysis-empty {
  margin-top: 1rem;
}

.course-analysis-block {
  margin-top: 1rem;
}

.course-analysis-block-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.9rem;
}

.course-analysis-block-head h3 {
  margin: 0;
}

.course-analysis-block-head p {
  max-width: 560px;
  margin: 0;
  color: var(--muted);
  text-align: right;
}

.course-analysis-metric-grid,
.course-analysis-special-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 0.75rem;
}

.course-analysis-metric-card,
.course-analysis-special-card,
.course-analysis-performance-tile,
.course-analysis-hole-card,
.course-hole-history-card {
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 8px;
  background:
    var(--tile-gradient, linear-gradient(145deg, rgba(91, 127, 107, 0.98) 0%, rgba(56, 103, 83, 0.98) 48%, rgba(34, 78, 64, 0.98) 100%));
  color: #f7f1e4;
  box-shadow: var(--tile-shadow);
}

.course-analysis-metric-card.profile-status-improved,
.course-analysis-special-card.profile-status-improved,
.course-analysis-performance-tile.profile-status-improved,
.course-analysis-hole-card.profile-status-improved,
.course-hole-history-card.profile-status-improved {
  --tile-gradient: linear-gradient(145deg, rgba(91, 127, 107, 0.98) 0%, rgba(56, 103, 83, 0.98) 48%, rgba(34, 78, 64, 0.98) 100%);
  border-color: rgba(147, 211, 131, 0.86);
}

.course-analysis-metric-card.profile-status-stable,
.course-analysis-special-card.profile-status-stable,
.course-analysis-performance-tile.profile-status-stable,
.course-analysis-hole-card.profile-status-stable,
.course-hole-history-card.profile-status-stable {
  --tile-gradient: linear-gradient(145deg, rgba(88, 117, 134, 0.98) 0%, rgba(57, 94, 116, 0.98) 48%, rgba(35, 70, 91, 0.98) 100%);
  border-color: rgba(117, 179, 214, 0.86);
}

.course-analysis-metric-card.profile-status-worse,
.course-analysis-special-card.profile-status-worse,
.course-analysis-performance-tile.profile-status-worse,
.course-analysis-hole-card.profile-status-worse,
.course-hole-history-card.profile-status-worse {
  --tile-gradient: linear-gradient(145deg, rgba(133, 74, 70, 0.98) 0%, rgba(118, 62, 59, 0.98) 48%, rgba(84, 49, 47, 0.98) 100%);
  border-color: rgba(212, 107, 107, 0.88);
}

.course-analysis-metric-card {
  min-height: 126px;
  display: grid;
  grid-template-rows: auto 1fr;
  align-content: start;
  padding: 0.9rem;
  text-align: left;
}

.course-analysis-metric-title {
  display: flex;
  align-items: center;
  min-height: 1.35rem;
  line-height: 1.15;
}

.course-analysis-metric-values {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.55rem;
  margin-top: 0.75rem;
}

.course-analysis-metric-values-single {
  grid-template-columns: minmax(0, 1fr);
}

.course-analysis-metric-value-box {
  display: grid;
  align-content: start;
  min-width: 0;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 8px;
  padding: 0.58rem 0.65rem;
  background: rgba(0, 0, 0, 0.14);
}

.course-analysis-metric-value-box span {
  line-height: 1.1;
}

.course-analysis-metric-card span,
.course-analysis-special-card span,
.course-analysis-performance-tile span {
  color: rgba(247, 241, 228, 0.86);
  font-weight: 850;
}

.course-analysis-metric-card strong {
  margin-top: 0.28rem;
  color: #fffaf0;
  font-size: clamp(1.75rem, 2.65vw, 2.4rem);
  line-height: 1;
  text-shadow: 0 3px 8px rgba(0,0,0,0.42);
}

.course-analysis-metric-card small,
.course-analysis-special-card small,
.course-analysis-performance-tile small {
  margin-top: 0.32rem;
  color: rgba(247, 241, 228, 0.9);
  font-weight: 750;
  line-height: 1.16;
}

.course-analysis-average-line {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.18rem;
}

.course-analysis-average-symbol {
  display: inline-block;
  transform: translateY(0.04em);
}

.course-analysis-latest {
  display: grid;
  gap: 0.12rem;
  margin-top: 0.45rem;
  color: var(--gold);
  font-size: 0.78rem;
  font-style: normal;
  font-weight: 850;
  line-height: 1.2;
  text-shadow: 0 2px 6px rgba(0,0,0,0.38);
}

.course-analysis-latest span {
  color: rgba(247, 241, 228, 0.72);
  font-size: 0.72rem;
  font-weight: 760;
}

.course-analysis-latest-improved {
  color: var(--gold);
}

.course-analysis-latest-worse {
  color: var(--gold);
}

.course-analysis-latest-stable {
  color: var(--gold);
}

.course-analysis-latest-compact {
  margin-top: 0.35rem;
  font-size: 0.72rem;
}

.course-analysis-hole-latest {
  margin-top: 0.7rem;
  border-radius: 8px;
  padding: 0.58rem 0.65rem;
  background: rgba(0,0,0,0.18);
  color: var(--gold);
  text-shadow: 0 2px 6px rgba(0,0,0,0.35);
}

.course-analysis-hole-latest span,
.course-analysis-hole-latest strong,
.course-analysis-hole-latest small {
  display: block;
}

.course-analysis-hole-latest span {
  font-size: 0.78rem;
  font-weight: 900;
}

.course-analysis-hole-latest strong {
  margin-top: 0.16rem;
  color: #fffaf0;
  font-size: 0.96rem;
  line-height: 1.2;
}

.course-analysis-hole-latest small {
  margin-top: 0.12rem;
  color: rgba(247, 241, 228, 0.76);
  font-size: 0.74rem;
  font-weight: 800;
}

.course-analysis-hole-title + .course-analysis-hole-latest {
  margin-top: 0;
  margin-bottom: 0.7rem;
}

.course-analysis-special-card em,
.course-analysis-performance-tile em,
.course-analysis-hole-title em {
  display: block;
  max-width: 100%;
  margin-top: 0.15rem;
  color: rgba(247, 241, 228, 0.78);
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 800;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.course-analysis-performance-tile .course-analysis-latest {
  color: var(--gold);
}

.course-analysis-performance-tile .course-analysis-latest span {
  color: rgba(247, 241, 228, 0.72);
}

.course-landing-zones-head {
  align-items: center;
}

.course-landing-zone-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-end;
  gap: 0.55rem 1rem;
  min-width: 0;
  max-width: 100%;
}

.course-landing-zone-control {
  min-width: 0;
  max-width: 100%;
}

.course-landing-zone-control > span {
  display: block;
  margin-bottom: 0.35rem;
  font-size: 0.78rem;
  font-weight: 800;
}

.course-landing-zone-controls .course-landing-zone-filter {
  justify-content: flex-start;
}

.course-landing-zone-controls .course-landing-zone-filter-hint {
  flex-basis: 100%;
  margin: 0;
  font-size: 0.75rem;
  text-align: right;
}

@media (max-width: 700px) {
  .course-landing-zone-controls {
    justify-content: flex-start;
    margin-top: 0.65rem;
  }
  .course-landing-zone-controls .course-landing-zone-filter-hint {
    text-align: left;
  }
}

.course-landing-zone-filter {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 0.35rem;
  padding: 0.25rem;
  border: 1px solid rgba(220, 178, 76, 0.34);
  border-radius: 999px;
  background: rgba(0,0,0,0.18);
}

.course-landing-zone-filter button {
  min-width: 2.35rem;
  border: 1px solid transparent;
  border-radius: 999px;
  padding: 0.42rem 0.68rem;
  background: transparent;
  color: rgba(247, 241, 228, 0.78);
  font: inherit;
  font-size: 0.82rem;
  font-weight: 900;
  cursor: pointer;
}

.course-landing-zone-filter button.active {
  border-color: rgba(220, 178, 76, 0.72);
  background: rgba(220, 178, 76, 0.2);
  color: var(--gold);
}

.course-landing-zone-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 0.85rem;
}

.course-landing-zone-card {
  display: grid;
  gap: 0.45rem;
  min-width: 0;
}

.course-landing-zone-image,
.course-landing-zone-placeholder {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 8px;
  background: rgba(0,0,0,0.18);
}

.course-landing-zone-image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.course-landing-zone-fit-layer {
  position: absolute;
  pointer-events: none;
}

.course-landing-zone-image canvas,
.course-landing-zone-points {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.course-landing-zone-dot {
  position: absolute;
  width: 0.66rem;
  height: 0.66rem;
  transform: translate(-50%, -50%);
  border: 1px solid rgba(255, 255, 255, 0.92);
  border-radius: 999px;
  background: rgba(255, 210, 94, 0.96);
  box-shadow: 0 1px 5px rgba(0,0,0,0.5);
}

.course-landing-zone-dot b {
  position: absolute;
  left: 50%;
  top: -0.98rem;
  min-width: 0.85rem;
  transform: translateX(-50%);
  border-radius: 999px;
  padding: 0.06rem 0.22rem;
  background: rgba(8, 24, 19, 0.82);
  color: #fffaf0;
  font-size: 0.58rem;
  line-height: 1;
  text-align: center;
}

.course-landing-zone-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  min-width: 0;
}

.course-landing-zone-meta strong {
  color: var(--text);
  font-size: 0.95rem;
  overflow-wrap: anywhere;
}

.course-landing-zone-meta span {
  border-radius: 999px;
  padding: 0.22rem 0.48rem;
  background: rgba(220, 178, 76, 0.16);
  color: var(--gold);
  font-size: 0.72rem;
  font-weight: 900;
  white-space: nowrap;
}

.course-landing-zone-meta.is-title-hidden {
  justify-content: flex-start;
}

.course-landing-zone-placeholder {
  display: grid;
  place-items: center;
  color: rgba(247, 241, 228, 0.68);
  font-size: 0.9rem;
  font-weight: 850;
}

.course-analysis-special-card {
  min-height: 112px;
  display: grid;
  align-content: center;
  justify-items: center;
  padding: 0.85rem;
  text-align: center;
}

.course-analysis-special-card strong {
  margin-top: 0.25rem;
  color: #fffaf0;
  font-size: 1.4rem;
  line-height: 1.05;
}

.course-analysis-special-card b {
  margin-top: 0.35rem;
  color: var(--gold);
  font-size: 1.05rem;
  line-height: 1.1;
  font-weight: 900;
  text-shadow: 0 3px 8px rgba(0,0,0,0.38);
}

.course-analysis-special-card small {
  color: var(--gold);
}

.course-analysis-performance-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(105px, 1fr));
  gap: 0.6rem;
}

.course-analysis-performance-tile {
  min-height: 94px;
  display: grid;
  align-content: center;
  justify-items: center;
  padding: 0.7rem;
  text-align: center;
}

.course-analysis-performance-tile strong {
  margin-top: 0.2rem;
  color: #fffaf0;
  font-size: 1.6rem;
  line-height: 1;
}

.course-analysis-hole-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
  gap: 0.85rem;
}

.course-analysis-hole-card {
  padding: 0.9rem;
}

.course-analysis-hole-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.8rem;
  margin-bottom: 0.8rem;
}

.course-analysis-hole-title span {
  display: block;
  color: var(--gold);
  font-size: 1.1rem;
  font-weight: 900;
}

.course-analysis-hole-title strong {
  display: block;
  margin-top: 0.25rem;
  color: #fffaf0;
  font-size: 0.9rem;
}

.course-analysis-hole-title b {
  min-width: 2.2rem;
  border-radius: 999px;
  padding: 0.35rem 0.45rem;
  background: rgba(0,0,0,0.18);
  color: var(--gold);
  text-align: center;
}

.course-analysis-hole-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.55rem;
}

.course-analysis-hole-stats div {
  border-radius: 8px;
  padding: 0.55rem;
  background: rgba(0,0,0,0.16);
}

.course-analysis-hole-stats span {
  display: block;
  color: rgba(247, 241, 228, 0.72);
  font-size: 0.76rem;
  font-weight: 800;
}

.course-analysis-hole-stats strong {
  display: block;
  margin-top: 0.16rem;
  color: #fffaf0;
  font-size: 1rem;
}

.course-analysis-hole-result-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin-top: 0.7rem;
}

.course-analysis-hole-result-row span {
  border-radius: 999px;
  padding: 0.25rem 0.5rem;
  background: rgba(0,0,0,0.18);
  color: rgba(247, 241, 228, 0.82);
  font-size: 0.78rem;
  font-weight: 800;
}

.course-hole-history-head {
  align-items: center;
}

.course-hole-history-head > div:first-child p {
  margin-top: 0.25rem;
  text-align: left;
}

.course-hole-history-filter {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.25rem;
  border: 1px solid rgba(220, 178, 76, 0.34);
  border-radius: 999px;
  background: rgba(0,0,0,0.18);
}

.course-hole-history-filter span {
  padding: 0 0.35rem;
  color: rgba(247, 241, 228, 0.72);
  font-size: 0.74rem;
  font-weight: 850;
  white-space: nowrap;
}

.course-hole-history-filter button {
  min-width: 2.5rem;
  border: 1px solid transparent;
  border-radius: 999px;
  padding: 0.42rem 0.7rem;
  background: transparent;
  color: rgba(247, 241, 228, 0.78);
  font: inherit;
  font-size: 0.85rem;
  font-weight: 900;
  cursor: pointer;
}

.course-hole-history-filter button.active {
  border-color: rgba(220, 178, 76, 0.72);
  background: rgba(220, 178, 76, 0.2);
  color: var(--gold);
}

.course-hole-dashboard-head {
  align-items: center;
}

.course-hole-dashboard-head > div:first-child p {
  margin-top: 0.25rem;
  text-align: left;
}

.course-hole-dashboard-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
  gap: 0.85rem;
  align-items: start;
}

.course-hole-dashboard-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin: 1rem 0 0.55rem;
}

.course-hole-dashboard-section-head h4 {
  margin: 0;
  color: var(--gold);
  font-size: 1rem;
  font-weight: 900;
}

.course-hole-history-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
  gap: 0.85rem;
}

.course-hole-history-card {
  padding: 0.82rem;
}

.course-hole-history-card-head {
  display: grid;
  gap: 0.55rem;
  margin-bottom: 0.85rem;
  padding: 0.1rem 0.1rem 0.8rem;
  border-bottom: 1px solid var(--lab-border, rgba(247, 241, 228, 0.14));
}

.course-hole-history-card-heading {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.45rem 0.75rem;
}

.course-hole-history-card-heading h5 {
  flex: 1 1 6rem;
  min-width: 0;
  margin: 0;
  color: var(--lab-title, #fffaf0);
  font-size: 1.05rem;
  font-weight: 900;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.course-hole-history-par {
  flex: 0 0 auto;
  padding: 0.25rem 0.6rem;
  border-radius: 999px;
  background: color-mix(in srgb, var(--lab-gold, var(--gold)) 12%, transparent);
  color: var(--lab-gold, var(--gold));
  font-size: 0.78rem;
  font-weight: 850;
  line-height: 1.3;
  white-space: nowrap;
}

.course-hole-history-card-head .course-hole-history-length {
  display: flex;
  align-items: baseline;
  gap: 0.55rem;
  margin: 0;
  color: var(--lab-muted, rgba(247, 241, 228, 0.72));
  font-size: 0.78rem;
  line-height: 1.4;
}

.course-hole-history-length strong {
  color: var(--lab-title, #fffaf0);
  font-size: 0.9rem;
  font-variant-numeric: tabular-nums;
}

.course-hole-history-card-head .course-hole-history-course {
  margin: 0;
  color: var(--lab-muted, rgba(247, 241, 228, 0.72));
  font-size: 0.72rem;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.course-hole-history-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.38rem;
  margin-bottom: 0.65rem;
}

.course-hole-history-summary div {
  border-radius: 8px;
  padding: 0.42rem 0.35rem;
  background: rgba(0,0,0,0.16);
  text-align: center;
}

.course-hole-history-summary span {
  display: block;
  color: rgba(247, 241, 228, 0.72);
  font-size: 0.66rem;
  font-weight: 850;
  white-space: nowrap;
}

.course-hole-history-summary strong {
  display: block;
  margin-top: 0.12rem;
  color: #fffaf0;
  font-size: 1.05rem;
  line-height: 1;
}

.course-hole-history-list {
  display: grid;
  gap: 0.28rem;
}

.course-hole-history-row {
  display: grid;
  grid-template-columns: minmax(4rem, 1.2fr) minmax(2rem, 0.62fr) minmax(1.8rem, 0.5fr) minmax(2.25rem, 0.62fr) minmax(1.8rem, 0.5fr);
  align-items: center;
  gap: 0.22rem;
  border-radius: 8px;
  padding: 0.4rem 0.42rem;
  background: rgba(0,0,0,0.16);
  color: rgba(247, 241, 228, 0.82);
  font-size: 0.75rem;
  font-weight: 800;
}

.course-hole-history-row-head {
  padding-top: 0.1rem;
  padding-bottom: 0.1rem;
  background: transparent;
  color: var(--gold);
  font-size: 0.66rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0;
}

.course-hole-history-row.is-hidden {
  display: none;
}

.course-hole-history-row b {
  color: #fffaf0;
  font-size: 0.92rem;
}

.course-hole-history-row em,
.course-hole-history-row i {
  color: var(--gold);
  font-style: normal;
  text-align: center;
}

.course-hole-history-row span,
.course-hole-history-row span:not(:first-child),
.course-hole-history-row b {
  text-align: center;
}

.course-hole-history-empty {
  display: grid;
  min-height: 5.7rem;
  place-items: center;
  border-radius: 8px;
  padding: 0.85rem;
  background: rgba(0,0,0,0.16);
  color: rgba(247, 241, 228, 0.74);
  font-size: 0.82rem;
  font-weight: 850;
  text-align: center;
}

@media (min-width: 2200px) {
  .page-content-frame-courses .course-hole-dashboard-grid {
    grid-template-columns: repeat(9, minmax(0, 1fr));
    gap: 0.65rem;
  }

  .page-content-frame-courses .course-analysis-hole-card,
  .page-content-frame-courses .course-hole-history-card {
    padding: 0.68rem;
  }

  .page-content-frame-courses .course-analysis-hole-title {
    gap: 0.48rem;
    margin-bottom: 0.55rem;
  }

  .page-content-frame-courses .course-analysis-hole-title span {
    font-size: 0.95rem;
    line-height: 1.05;
  }

  .page-content-frame-courses .course-analysis-hole-title strong,
  .page-content-frame-courses .course-analysis-hole-title em {
    font-size: 0.7rem;
  }

  .page-content-frame-courses .course-analysis-hole-title b {
    min-width: 1.85rem;
    padding: 0.28rem 0.35rem;
    font-size: 0.78rem;
  }

  .page-content-frame-courses .course-analysis-hole-stats {
    grid-template-columns: 1fr;
    gap: 0.35rem;
  }

  .page-content-frame-courses .course-analysis-hole-stats div {
    padding: 0.42rem;
  }

  .page-content-frame-courses .course-analysis-hole-stats span,
  .page-content-frame-courses .course-analysis-hole-result-row span {
    font-size: 0.68rem;
  }

  .page-content-frame-courses .course-analysis-hole-stats strong {
    font-size: 0.9rem;
  }

  .page-content-frame-courses .course-analysis-hole-latest {
    margin-top: 0.5rem;
    padding: 0.45rem 0.5rem;
  }

  .page-content-frame-courses .course-analysis-hole-title + .course-analysis-hole-latest {
    margin-top: 0;
    margin-bottom: 0.5rem;
  }

  .page-content-frame-courses .course-analysis-hole-latest span,
  .page-content-frame-courses .course-analysis-hole-latest small {
    font-size: 0.66rem;
  }

  .page-content-frame-courses .course-analysis-hole-latest strong {
    font-size: 0.82rem;
  }

  .page-content-frame-courses .course-analysis-hole-result-row {
    gap: 0.25rem;
    margin-top: 0.5rem;
  }

  .page-content-frame-courses .course-analysis-hole-result-row span {
    padding: 0.2rem 0.36rem;
  }

  .page-content-frame-courses .course-landing-zone-image,
  .page-content-frame-courses .course-landing-zone-placeholder {
    aspect-ratio: 4 / 5.25;
  }

  .page-content-frame-courses .course-landing-zone-meta strong {
    font-size: 0.78rem;
  }

  .page-content-frame-courses .course-landing-zone-meta span {
    padding: 0.18rem 0.36rem;
    font-size: 0.62rem;
  }

  .page-content-frame-courses .course-hole-history-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.22rem;
    margin-bottom: 0.45rem;
  }

  .page-content-frame-courses .course-hole-history-summary div {
    padding: 0.34rem;
  }

  .page-content-frame-courses .course-hole-history-summary span {
    font-size: 0.6rem;
  }

  .page-content-frame-courses .course-hole-history-summary strong {
    font-size: 0.88rem;
  }

  .page-content-frame-courses .course-hole-history-row {
    grid-template-columns: minmax(3.35rem, 1.1fr) minmax(1.5rem, 0.55fr) minmax(1.35rem, 0.48fr) minmax(1.65rem, 0.55fr) minmax(1.35rem, 0.48fr);
    gap: 0.12rem;
    padding: 0.32rem 0.28rem;
    font-size: 0.62rem;
  }

  .page-content-frame-courses .course-hole-history-row-head {
    font-size: 0.56rem;
  }

  .page-content-frame-courses .course-hole-history-row b {
    font-size: 0.78rem;
  }
}

.muted-row {
  color: var(--muted);
  opacity: 0.72;
}
.section h3 {
  margin: 1.4rem 0 0.8rem;
}
.scorecard-detail {
  margin:1rem 0 1.6rem;
}
.scorecard-compare-table td {
  vertical-align: top;
  line-height: 1.45;
  min-width: 180px;
}
.scorecard-compare-table td:first-child {
  min-width: 70px;
  color: var(--gold);
  font-weight: 800;
}
.scorecard-compare-table .compare-total td {
  border-top: 2px solid var(--line);
  color: var(--green-2);
  font-weight: 850;
}
.scorecard-compare-table .compare-different {
  background: rgba(211, 170, 77, 0.14);
  box-shadow: inset 3px 0 0 var(--gold);
}
.shot-detail-toggle {
  margin-top: 1rem;
}
.shot-detail-toggle summary {
  cursor: pointer;
  color: var(--gold);
  font-weight: 800;
  padding: 0.8rem 0;
}
.scorecard-play-path-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(156px, 1fr));
  gap: 0.75rem;
}
.scorecard-play-path-hole {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255,255,255,0.035);
  overflow: hidden;
}
.scorecard-play-path-hole[open] {
  overflow: visible;
}
.scorecard-play-path-hole summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.55rem;
  align-items: start;
  padding: 0.65rem;
  color: var(--text);
  list-style: none;
}
.scorecard-play-path-hole summary::-webkit-details-marker {
  display: none;
}
.scorecard-play-path-mini-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.45rem;
  min-width: 0;
}
.scorecard-play-path-hole summary strong,
.scorecard-play-path-hole summary small {
  display: block;
  line-height: 1.05;
  white-space: nowrap;
}
.scorecard-play-path-hole summary small {
  flex: 0 0 auto;
  min-width: max-content;
  margin-top: 0;
  padding: 0.18rem 0.38rem;
  border-radius: 999px;
  background: rgba(211, 170, 77, 0.12);
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 850;
}
.scorecard-play-path-hole.has-path summary small {
  color: var(--gold);
}
.scorecard-play-path-hole.is-empty {
  opacity: 0.72;
}
.scorecard-play-path-placeholder {
  display: grid;
  place-items: center;
  min-height: clamp(16rem, 17vw, 22rem);
  padding: 0.5rem;
  border-radius: 8px;
  border: 1px dashed rgba(255,255,255,0.18);
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 850;
  text-align: center;
}
.scorecard-play-path-figure {
  margin: 0;
}
.scorecard-play-path-figure figcaption {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem 0.9rem;
  align-items: baseline;
  margin: 0 0 0.65rem;
}
.scorecard-play-path-figure figcaption strong {
  color: var(--text);
  font-size: 1rem;
}
.scorecard-play-path-figure figcaption span {
  color: var(--muted);
  font-size: 0.86rem;
  font-weight: 800;
}
.scorecard-play-path-image {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  background: rgba(0,0,0,0.22);
}
.scorecard-play-path-image img {
  display: block;
  width: 100%;
  height: auto;
}
.scorecard-play-path-fit-layer {
  position: absolute;
  left: var(--scorecard-play-path-fit-left, 0);
  top: var(--scorecard-play-path-fit-top, 0);
  width: var(--scorecard-play-path-fit-width, 100%);
  height: var(--scorecard-play-path-fit-height, 100%);
  pointer-events: none;
}
.scorecard-play-path-large.is-editing .scorecard-play-path-fit-layer {
  cursor: crosshair;
  pointer-events: auto;
}
.scorecard-play-path-figure.is-compact .scorecard-play-path-image {
  height: clamp(16rem, 17vw, 22rem);
}
.scorecard-play-path-figure.is-compact img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.scorecard-play-path-layer {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.scorecard-play-path-line {
  fill: none;
  stroke: rgba(242, 190, 79, 0.94);
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
  filter: drop-shadow(0 1px 2px rgba(0,0,0,0.7));
}
.scorecard-play-path-distance-layer {
  z-index: 1;
}
.scorecard-play-path-distance-marker {
  fill: none;
  stroke: #d9ac42;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: drop-shadow(0 1px 2px rgba(0,0,0,0.72));
  vector-effect: non-scaling-stroke;
}
.scorecard-play-path-distance-marker.is-hole {
  stroke: #8bcf73;
}
.scorecard-play-path-distance-label-layer {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
}
.scorecard-play-path-distance-label {
  position: absolute;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2em;
  padding: 0.16em 0.32em 0.08em;
  border: 1px solid rgba(3, 16, 9, 0.46);
  border-radius: 4px;
  background: var(--distance-label-bg, #d9ac42);
  color: var(--distance-label-fg, #102116);
  font-size: clamp(7px, 1.30vw, 14px);
  font-weight: 950;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
  text-shadow: none;
  white-space: nowrap;
  box-shadow: 0 1px 3px rgba(0,0,0,0.48);
}
.scorecard-play-path-distance-label.is-selected-tee {
  outline: 1px solid rgba(255, 255, 255, 0.72);
  outline-offset: 1px;
  box-shadow: 0 1px 4px rgba(0,0,0,0.58), 0 0 0 1px rgba(3, 16, 9, 0.34);
}
.scorecard-play-path-distance-label.is-hole {
  width: 2.05em;
  min-width: 2.05em;
  height: 2.05em;
  padding: 0.04em 0.08em 0;
  border-color: rgba(3, 16, 9, 0.62);
  border-radius: 999px;
  background: var(--distance-label-bg, #8bcf73);
  color: var(--distance-label-fg, #102116);
  font-size: clamp(5px, 0.86vw, 9px);
  box-shadow: 0 1px 3px rgba(0,0,0,0.48), inset 0 0 0 1px rgba(247, 241, 228, 0.22);
}
.scorecard-play-path-distance-label.is-length {
  font-size: clamp(10px, 2vw, 22px);
}
.scorecard-play-path-figure.is-compact .scorecard-play-path-distance-label {
  font-size: clamp(7px, 8.5%, 11px);
}
.scorecard-play-path-figure.is-compact .scorecard-play-path-distance-label.is-hole {
  font-size: clamp(5px, 6.4%, 8px);
}
.scorecard-play-path-figure.is-compact .scorecard-play-path-distance-label.is-length {
  font-size: clamp(9px, 11%, 14px);
}
.scorecard-play-path-point {
  position: absolute;
  z-index: 3;
  width: 0.42rem;
  height: 0.42rem;
  border: 1px solid var(--gold);
  border-radius: 999px;
  background: #fff8dc;
  pointer-events: none;
  transform: translate(-50%, -50%);
  box-shadow: 0 1px 2px rgba(0,0,0,0.7);
}
.scorecard-play-path-figure.is-large .scorecard-play-path-point {
  width: 0.68rem;
  height: 0.68rem;
  border-width: 2px;
}
.scorecard-play-path-label {
  position: absolute;
  z-index: 1;
  color: #fff7d9;
  font-size: clamp(0.68rem, 1.1vw, 1rem);
  font-weight: 900;
  line-height: 1;
  pointer-events: none;
  text-shadow:
    0 1px 2px rgba(0,0,0,0.95),
    1px 0 1px rgba(0,0,0,0.9),
    -1px 0 1px rgba(0,0,0,0.9),
    0 -1px 1px rgba(0,0,0,0.9);
  text-align: center;
  transform: translate(-50%, 0.42rem);
  white-space: nowrap;
}
.scorecard-play-path-shot-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(9.5rem, 1fr));
  gap: 0.45rem;
  margin: 0.7rem 0 0;
  padding: 0;
  list-style: none;
}
.scorecard-play-path-shot-list li {
  display: grid;
  gap: 0.12rem;
  min-width: 0;
  padding: 0.5rem 0.62rem;
  border-radius: 8px;
  border: 1px solid var(--border);
  background: rgba(255, 255, 255, 0.045);
}
.scorecard-play-path-shot-list span {
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 850;
  text-transform: uppercase;
}
.scorecard-play-path-shot-list strong {
  overflow: hidden;
  color: var(--text);
  font-size: 0.82rem;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.scorecard-play-path-large {
  position: fixed;
  inset: 0;
  z-index: 950;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  padding: clamp(1rem, 3vw, 2rem);
  background: rgba(6, 12, 9, 0.86);
  backdrop-filter: blur(5px);
  overflow: auto;
}
.scorecard-play-path-large p {
  flex: 0 0 auto;
  width: min(92vw, 58rem);
  margin: 0;
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 750;
  text-align: center;
}
.scorecard-play-path-close {
  position: fixed;
  top: max(0.9rem, env(safe-area-inset-top));
  right: max(0.9rem, env(safe-area-inset-right));
  z-index: 2;
  min-height: 2.4rem;
  padding: 0.55rem 0.85rem;
  border: 1px solid rgba(211, 170, 77, 0.42);
  border-radius: 8px;
  background: rgba(22, 31, 23, 0.94);
  color: var(--gold);
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 0.8rem 1.8rem rgba(0, 0, 0, 0.36);
}
.scorecard-play-path-nav--frame {
  position: absolute;
  inset: 0;
  z-index: 8;
  pointer-events: none;
}
.scorecard-play-path-large.is-editing .scorecard-play-path-nav--frame {
  display: none;
}
.scorecard-play-path-nav-button {
  position: absolute;
  top: 50%;
  z-index: 2;
  display: grid;
  place-items: center;
  width: clamp(2.1rem, 3.4vw, 2.8rem);
  height: clamp(2.1rem, 3.4vw, 2.8rem);
  padding: 0;
  border: 1px solid rgba(211, 170, 77, 0.5);
  border-radius: 999px;
  background: rgba(22, 31, 23, 0.92);
  color: #fff7d9;
  font-size: 0;
  font-weight: 900;
  line-height: 1;
  overflow: hidden;
  cursor: pointer;
  pointer-events: auto;
  transform: translateY(-50%);
  box-shadow: 0 0.8rem 1.8rem rgba(0, 0, 0, 0.36);
}
.scorecard-play-path-nav-button svg {
  display: block;
  width: clamp(1.05rem, 1.6vw, 1.3rem);
  height: clamp(1.05rem, 1.6vw, 1.3rem);
  fill: none;
  stroke: currentColor;
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-linejoin: round;
  pointer-events: none;
}
.scorecard-play-path-nav-button.is-prev {
  left: clamp(0.35rem, 1.2vw, 0.85rem);
}
.scorecard-play-path-nav-button.is-next {
  right: clamp(0.35rem, 1.2vw, 0.85rem);
}
.scorecard-play-path-nav-button:hover,
.scorecard-play-path-close:hover {
  border-color: rgba(242, 190, 79, 0.86);
  background: rgba(39, 57, 44, 0.96);
}
.scorecard-play-path-editor-controls {
  position: fixed;
  left: 50%;
  bottom: max(1rem, env(safe-area-inset-bottom));
  z-index: 3;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.45rem;
  width: min(92vw, 38rem);
  transform: translateX(-50%);
}
.scorecard-play-path-editor-controls button {
  min-height: 2.25rem;
  padding: 0.45rem 0.7rem;
  border: 1px solid rgba(211, 170, 77, 0.42);
  border-radius: 999px;
  background: rgba(22, 31, 23, 0.94);
  color: var(--text);
  font-size: 0.8rem;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 0.6rem 1.4rem rgba(0, 0, 0, 0.34);
}
.scorecard-play-path-editor-controls button:hover {
  border-color: rgba(242, 190, 79, 0.86);
  background: rgba(39, 57, 44, 0.96);
}
.scorecard-play-path-editor-controls [data-scorecard-play-path-editor-action="delete"],
.scorecard-play-path-editor-controls [data-scorecard-play-path-editor-action="cancel"],
.scorecard-play-path-editor-controls [data-scorecard-play-path-editor-action="save"] {
  display: none;
}
.scorecard-play-path-large.is-editing .scorecard-play-path-editor-controls [data-scorecard-play-path-editor-action="edit"] {
  display: none;
}
.scorecard-play-path-large.is-editing .scorecard-play-path-editor-controls [data-scorecard-play-path-editor-action="delete"],
.scorecard-play-path-large.is-editing .scorecard-play-path-editor-controls [data-scorecard-play-path-editor-action="cancel"],
.scorecard-play-path-large.is-editing .scorecard-play-path-editor-controls [data-scorecard-play-path-editor-action="save"] {
  display: inline-flex;
  align-items: center;
}
.scorecard-play-path-large.is-saving .scorecard-play-path-editor-controls button {
  opacity: 0.62;
  pointer-events: none;
}
.scorecard-play-path-large.is-editing .scorecard-play-path-fit-layer > .scorecard-play-path-layer:not(.scorecard-play-path-distance-layer),
.scorecard-play-path-large.is-editing .scorecard-play-path-fit-layer > .scorecard-play-path-point,
.scorecard-play-path-large.is-editing .scorecard-play-path-fit-layer > .scorecard-play-path-label {
  opacity: 0.18;
}
.scorecard-play-path-editor-layer {
  position: absolute;
  inset: 0;
  z-index: 6;
}
.scorecard-play-path-editor-line {
  z-index: 0;
}
.scorecard-play-path-editor-point {
  position: absolute;
  z-index: 7;
  display: grid;
  place-items: center;
  width: 1.28rem;
  height: 1.28rem;
  border: 2px solid #fff7d9;
  border-radius: 999px;
  background: var(--gold);
  color: #102017;
  font-size: 0.68rem;
  font-weight: 950;
  line-height: 1;
  cursor: grab;
  touch-action: none;
  transform: translate(-50%, -50%);
  box-shadow: 0 2px 7px rgba(0,0,0,0.72);
}
.scorecard-play-path-editor-point.is-selected {
  outline: 3px solid rgba(255, 255, 255, 0.46);
  outline-offset: 2px;
}
.scorecard-play-path-editor-point:active {
  cursor: grabbing;
}
.scorecard-play-path-editor-status {
  min-height: 1.1rem;
}
.scorecard-play-path-editor-status:empty {
  display: none;
}
.scorecard-play-path-editor-status[data-tone="warn"] {
  color: var(--gold);
}
.scorecard-play-path-editor-status[data-tone="error"] {
  color: #ffb0a7;
}
.scorecard-play-path-figure.is-large {
  position: relative;
  flex: 0 1 auto;
  width: min(92vw, 58rem);
  height: min(calc(100vh - 8.5rem), 58rem);
  max-height: calc(100vh - 8.5rem);
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 0.7rem;
  padding: clamp(0.75rem, 2vw, 1rem);
  border: 1px solid rgba(211, 170, 77, 0.28);
  border-radius: 8px;
  background: rgba(34, 42, 33, 0.96);
  box-shadow: 0 1.6rem 4rem rgba(0, 0, 0, 0.55);
}
.scorecard-play-path-figure.is-large figcaption {
  justify-content: center;
  text-align: center;
  margin: 0;
}
.scorecard-play-path-figure.is-large figcaption strong {
  font-size: clamp(1rem, 1.8vw, 1.35rem);
}
.scorecard-play-path-figure.is-large figcaption span {
  font-size: clamp(0.82rem, 1.4vw, 1rem);
}
.scorecard-play-path-figure.is-large .scorecard-play-path-image {
  justify-self: center;
  align-self: center;
  display: grid;
  place-items: center;
  width: min(88vw, 46rem);
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  min-height: 0;
  overflow: visible;
}
.scorecard-play-path-figure.is-large .scorecard-play-path-image img {
  position: absolute;
  left: var(--scorecard-play-path-fit-left, 0);
  top: var(--scorecard-play-path-fit-top, 0);
  width: var(--scorecard-play-path-fit-width, 100%);
  height: var(--scorecard-play-path-fit-height, 100%);
  max-width: none;
  max-height: none;
  object-fit: fill;
}
@media (max-width: 760px) {
  .scorecard-play-path-nav-button {
    width: 2.15rem;
    height: 2.15rem;
    font-size: 0;
  }
  .scorecard-play-path-editor-controls {
    bottom: max(4.2rem, env(safe-area-inset-bottom));
  }
}
.scorecard-nine-split-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem;
}
.scorecard-split-card {
  padding: 0.85rem;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255,255,255,0.035);
}
.scorecard-split-card > span {
  display: block;
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 850;
}
.scorecard-split-card > strong {
  display: block;
  margin-top: 0.18rem;
  color: var(--text);
  font-size: 1.08rem;
  line-height: 1.2;
}
.scorecard-split-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.55rem;
  margin-top: 0.75rem;
}
.scorecard-split-metrics div {
  min-width: 0;
  padding: 0.55rem;
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 8px;
  background: rgba(0,0,0,0.12);
}
.scorecard-split-metrics span,
.scorecard-split-metrics strong {
  display: block;
  overflow-wrap: anywhere;
}
.scorecard-split-metrics span {
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 800;
}
.scorecard-split-metrics strong {
  margin-top: 0.18rem;
  color: var(--text);
  font-size: 1.08rem;
  font-weight: 950;
}
.scorecard-shot-quote-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  grid-auto-rows: 1fr;
}
.scorecard-shot-quote-grid .mini-chart-card {
  min-width: 0;
  height: 100%;
}
.scorecard-round-detail-card {
  background: linear-gradient(160deg, rgba(77, 128, 96, 0.88), rgba(34, 94, 72, 0.88));
}
.scorecard-round-detail-combo .mini-chart-sections {
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
  gap: 0.72rem;
}
.scorecard-round-detail-combo .mini-chart-section {
  padding-left: 0;
  padding-top: 0.72rem;
  border-left: 0;
  border-top: 1px solid rgba(255,255,255,0.1);
}
.scorecard-round-detail-combo .mini-chart-section:first-child {
  padding-left: 0;
  padding-top: 0;
  border-top: 0;
}
.scorecard-shot-quote-grid .mini-card-bars {
  gap: 0.48rem;
}
.scorecard-shot-quote-grid .mini-card-row {
  gap: 0.22rem;
}
.scorecard-shot-quote-grid .mini-card-bar,
.scorecard-shot-quote-grid .mini-card-bar-share {
  grid-template-columns: minmax(7rem, 9.25rem) minmax(2.2rem, 2.6rem) minmax(7rem, 1fr) minmax(3.2rem, 3.6rem);
  column-gap: 0.32rem;
  color: rgba(226, 237, 224, 0.82);
  font-size: 0.76rem;
  font-weight: 700;
}
.scorecard-shot-quote-grid .mini-card-bar span {
  color: rgba(226, 237, 224, 0.84);
}
.scorecard-shot-quote-grid .mini-card-bar strong {
  color: rgba(255, 250, 231, 0.92);
  font-size: 0.78rem;
  font-weight: 800;
}
.scorecard-shot-quote-grid .mini-card-track {
  height: 8px;
  background: rgba(255, 255, 255, 0.045);
}
.scorecard-shot-quote-grid .mini-card-row-details {
  gap: 0.2rem 0.32rem;
  color: rgba(226, 237, 224, 0.7);
  font-size: 0.66rem;
  font-weight: 700;
  line-height: 1.22;
}
.scorecard-shot-quote-grid .mini-card-row-details span {
  padding: 0.18rem 0.34rem;
  background: rgba(6, 19, 11, 0.14);
  border-color: rgba(255, 255, 255, 0.04);
}
.scorecard-round-detail-combo .mini-card-row-details {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.26rem;
}
.scorecard-round-detail-combo .mini-card-row-details span {
  background: rgba(6, 19, 11, 0.18);
}
.scorecard-round-detail-combo .mini-card-row-details b {
  display: inline-block;
  margin-right: 0.18rem;
  font-size: inherit;
}
@media (max-width: 1700px) {
  .scorecard-shot-quote-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr));
  }
}
@media (max-width: 1100px) {
  .scorecard-shot-quote-grid {
    grid-template-columns: 1fr;
  }
  .scorecard-nine-split-grid {
    grid-template-columns: 1fr;
  }
  .scorecard-split-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.scorecard-round-overview {
  display: grid;
  gap: 0.85rem;
  overflow: visible;
  margin-top: 0.55rem;
}
.scorecard-round-overview-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 1rem;
  padding: 0.92rem 1rem;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
  background: linear-gradient(145deg, rgba(11, 32, 51, 0.78), rgba(20, 54, 81, 0.64));
}
.scorecard-round-overview-head > div {
  min-width: 0;
}
.scorecard-round-overview-head h4 {
  margin: 0;
  color: #fff7d9;
  font-size: 1.05rem;
  font-weight: 950;
}
.scorecard-round-overview-head p {
  max-width: 42rem;
  margin: 0.24rem 0 0;
  color: rgba(226, 237, 245, 0.74);
  font-size: 0.84rem;
  font-weight: 700;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.scorecard-hole-matrix {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.28rem;
  max-width: 22rem;
}
.scorecard-hole-dot,
.scorecard-info-chip {
  position: relative;
  overflow: visible;
}
.scorecard-hole-dot {
  display: inline-grid;
  place-items: center;
  width: 1.82rem;
  aspect-ratio: 1;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 999px;
  color: #f8fbff;
  background: rgba(255, 255, 255, 0.08);
  font-size: 0.78rem;
  font-weight: 950;
}
.scorecard-hole-dot-hole-in-one,
.scorecard-hole-dot-albatros,
.scorecard-hole-dot-eagle,
.scorecard-hole-dot-birdie {
  color: #07140c;
  border-color: rgba(112, 222, 145, 0.56);
  background: linear-gradient(145deg, #7ce697, #d8f07a);
}
.scorecard-hole-dot-par {
  color: #1c1606;
  border-color: rgba(255, 211, 76, 0.58);
  background: linear-gradient(145deg, #ffe475, #d4a82f);
}
.scorecard-hole-dot-bogey {
  color: #f8fbff;
  border-color: rgba(117, 184, 255, 0.42);
  background: linear-gradient(145deg, rgba(58, 117, 171, 0.86), rgba(30, 68, 105, 0.9));
}
.scorecard-hole-dot-double_bogey,
.scorecard-hole-dot-triple_bogey_plus,
.scorecard-hole-dot-scratched {
  color: #fff8f8;
  border-color: rgba(245, 103, 98, 0.54);
  background: linear-gradient(145deg, rgba(197, 73, 68, 0.95), rgba(91, 33, 41, 0.92));
}
.scorecard-round-overview-groups {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.76rem;
  overflow: visible;
}
.scorecard-round-overview-group {
  min-width: 0;
  padding: 0.85rem;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
  background: linear-gradient(150deg, rgba(18, 49, 76, 0.82), rgba(9, 29, 48, 0.72));
}
.scorecard-round-group-title {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.7rem;
  margin-bottom: 0.7rem;
}
.scorecard-round-group-title span {
  color: rgba(255, 206, 68, 0.94);
  font-size: 0.68rem;
  font-weight: 950;
  text-transform: uppercase;
}
.scorecard-round-group-title strong {
  color: #fff;
  font-size: 1rem;
  font-weight: 950;
}
.scorecard-round-chip-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.42rem;
  overflow: visible;
}
.scorecard-info-chip {
  display: inline-flex;
  align-items: center;
  min-height: 2.25rem;
  max-width: 100%;
  padding: 0.38rem 0.72rem;
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 999px;
  color: rgba(248, 251, 255, 0.92);
  background: rgba(255, 255, 255, 0.075);
  cursor: help;
}
.scorecard-info-chip strong {
  overflow: hidden;
  font-size: 0.82rem;
  font-weight: 950;
  line-height: 1.1;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.scorecard-info-chip-hit {
  border-color: rgba(112, 222, 145, 0.24);
  background: rgba(54, 140, 84, 0.18);
}
.scorecard-info-chip-score {
  border-color: rgba(255, 211, 76, 0.24);
  background: rgba(255, 211, 76, 0.13);
}
.scorecard-info-chip-warning {
  border-color: rgba(245, 103, 98, 0.28);
  background: rgba(196, 73, 68, 0.18);
}
.scorecard-info-chip-putt {
  border-color: rgba(117, 184, 255, 0.22);
  background: rgba(64, 129, 185, 0.18);
}
.scorecard-info-tooltip {
  position: fixed;
  left: var(--scorecard-info-tooltip-left, 0.5rem);
  top: var(--scorecard-info-tooltip-top, 0.5rem);
  z-index: 40;
  display: grid;
  gap: 0.36rem;
  width: var(--scorecard-info-tooltip-width, min(21rem, calc(100vw - 1rem)));
  min-width: min(13rem, calc(100vw - 1rem));
  max-width: calc(100vw - 1rem);
  padding: 0.74rem 0.82rem;
  border: 1px solid rgba(255, 206, 68, 0.32);
  border-radius: 8px;
  color: rgba(248, 251, 255, 0.9);
  background: rgba(3, 15, 27, 0.98);
  box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.32);
  opacity: 0;
  pointer-events: none;
  transform: translateY(0.28rem);
  transition: opacity 160ms ease, transform 160ms ease;
}
.scorecard-info-tooltip::after {
  content: "";
  position: absolute;
  left: var(--scorecard-info-tooltip-arrow-left, 50%);
  bottom: -0.38rem;
  width: 0.72rem;
  aspect-ratio: 1;
  border-right: 1px solid rgba(255, 206, 68, 0.32);
  border-bottom: 1px solid rgba(255, 206, 68, 0.32);
  background: rgba(3, 15, 27, 0.98);
  transform: translateX(-50%) rotate(45deg);
}
[data-scorecard-tooltip-placement="below"] .scorecard-info-tooltip::after {
  top: -0.38rem;
  bottom: auto;
  transform: translateX(-50%) rotate(225deg);
}
.scorecard-info-chip:hover .scorecard-info-tooltip,
.scorecard-info-chip:focus-visible .scorecard-info-tooltip,
.scorecard-hole-dot:hover .scorecard-info-tooltip,
.scorecard-hole-dot:focus-visible .scorecard-info-tooltip {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}
.scorecard-info-tooltip b,
.scorecard-info-tooltip small,
.scorecard-info-tooltip em {
  display: block;
}
.scorecard-info-tooltip b {
  color: #fff7d9;
  font-size: 0.86rem;
  font-style: normal;
  font-weight: 950;
  line-height: 1.22;
}
.scorecard-info-tooltip small {
  color: rgba(255, 206, 68, 0.86);
  font-size: 0.72rem;
  font-weight: 850;
}
.scorecard-info-tooltip span {
  color: rgba(226, 237, 245, 0.78);
  font-size: 0.75rem;
  font-weight: 760;
  line-height: 1.3;
}
.scorecard-info-tooltip > span {
  display: grid;
  gap: 0.24rem;
  min-width: 0;
}
.scorecard-info-tooltip em {
  margin-bottom: 0.24rem;
  color: rgba(226, 237, 245, 0.66);
  font-size: 0.68rem;
  font-style: normal;
  font-weight: 950;
  text-transform: uppercase;
}
.scorecard-info-hole-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.24rem;
  min-width: 0;
}
.scorecard-info-hole-chips i {
  display: inline-grid;
  place-items: center;
  min-width: 1.58rem;
  min-height: 1.36rem;
  padding: 0 0.32rem;
  border: 1px solid rgba(255, 206, 68, 0.22);
  border-radius: 999px;
  color: #fff7d9;
  background: rgba(255, 206, 68, 0.11);
  font-size: 0.68rem;
  font-style: normal;
  font-weight: 950;
}
.scorecard-round-takeaways {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.46rem;
}
.scorecard-round-takeaways span {
  min-width: 0;
  padding: 0.58rem 0.72rem;
  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 8px;
  color: rgba(248, 251, 255, 0.86);
  background: rgba(255, 255, 255, 0.055);
  font-size: 0.78rem;
  font-weight: 790;
  line-height: 1.34;
}
.scorecard-round-empty {
  color: rgba(226, 237, 245, 0.64);
  font-size: 0.8rem;
  font-weight: 760;
}
@media (max-width: 1300px) {
  .scorecard-round-overview-groups {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 720px) {
  .scorecard-round-overview-head {
    grid-template-columns: 1fr;
  }
  .scorecard-hole-matrix {
    justify-content: flex-start;
    max-width: none;
  }
  .scorecard-round-takeaways {
    grid-template-columns: 1fr;
  }
  .scorecard-info-chip {
    min-height: 2.12rem;
    padding-inline: 0.62rem;
  }
  .scorecard-info-tooltip {
    left: 0;
    right: auto;
    max-width: min(20rem, calc(100vw - 2rem));
    transform: translate(0, 0.28rem);
  }
  .scorecard-info-tooltip::after {
    left: 1.15rem;
  }
  .scorecard-info-chip:hover .scorecard-info-tooltip,
  .scorecard-info-chip:focus-visible .scorecard-info-tooltip,
  .scorecard-hole-dot:hover .scorecard-info-tooltip,
  .scorecard-hole-dot:focus-visible .scorecard-info-tooltip {
    transform: translate(0, 0);
  }
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .scorecard-round-overview-head,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .scorecard-round-overview-group {
  border-color: rgba(178, 131, 37, 0.18);
  background: linear-gradient(145deg, rgba(255, 252, 246, 0.9), rgba(243, 234, 220, 0.72));
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .scorecard-round-overview-head h4,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .scorecard-round-group-title strong {
  color: #141817;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .scorecard-round-overview-head p,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .scorecard-round-takeaways span {
  color: rgba(20, 24, 23, 0.72);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .scorecard-round-group-title span {
  color: #b28325;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .scorecard-info-chip {
  color: rgba(20, 24, 23, 0.9);
  border-color: rgba(178, 131, 37, 0.16);
  background: rgba(255, 255, 255, 0.7);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .scorecard-info-tooltip {
  color: rgba(20, 24, 23, 0.9);
  border-color: rgba(178, 131, 37, 0.28);
  background: rgba(255, 252, 246, 0.98);
  box-shadow: 0 1rem 2rem rgba(52, 42, 28, 0.16);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .scorecard-info-tooltip::after {
  border-color: rgba(178, 131, 37, 0.28);
  background: rgba(255, 252, 246, 0.98);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .scorecard-info-tooltip b,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .scorecard-info-hole-chips i {
  color: #141817;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .scorecard-info-tooltip small,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .scorecard-info-tooltip em,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .scorecard-info-tooltip span {
  color: rgba(20, 24, 23, 0.7);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .scorecard-info-hole-chips i {
  border-color: rgba(178, 131, 37, 0.22);
  background: rgba(178, 131, 37, 0.1);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .scorecard-round-takeaways span {
  border-color: rgba(24, 45, 41, 0.1);
  background: rgba(255, 255, 255, 0.62);
}
.scorecard-panel,
.scorecard-shot-quote,
.scorecard-round-overview,
.scorecard-round-overview-head,
.scorecard-round-overview-group,
.scorecard-round-chip-list {
  overflow: visible;
}
.hole-detail-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  align-items: stretch;
  gap: 0.8rem;
  margin-top: 0.5rem;
}
.hole-detail {
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 0.72rem;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 0.82rem;
  background: linear-gradient(160deg, rgba(77, 128, 96, 0.88), rgba(34, 94, 72, 0.88));
  box-shadow: 0 0.8rem 1.7rem rgba(0, 0, 0, 0.18);
}
.hole-detail-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.6rem;
}
.hole-detail h4 {
  margin: 0;
  color: #fff7d9;
  font-size: 0.98rem;
  font-weight: 950;
}
.hole-detail-head span {
  color: var(--gold);
  font-size: 0.78rem;
  font-weight: 950;
  white-space: nowrap;
}
.hole-detail-chip-row {
  display: flex;
  flex-wrap: wrap;
  align-content: start;
  gap: 0.35rem;
}
.hole-detail-chip-row span {
  padding: 0.22rem 0.42rem;
  border-radius: 999px;
  background: rgba(6, 19, 11, 0.24);
  color: rgba(247, 241, 228, 0.92);
  font-size: 0.74rem;
  font-weight: 850;
  line-height: 1.15;
}
.hole-detail-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.35rem;
}
.hole-detail-metrics div {
  padding: 0.4rem;
  border-radius: 8px;
  background: rgba(6, 19, 11, 0.2);
  text-align: center;
}
.hole-detail-metrics span {
  display: block;
  color: rgba(226, 237, 224, 0.74);
  font-size: 0.66rem;
  font-weight: 850;
}
.hole-detail-metrics strong {
  color: #fff7d9;
  font-size: 0.96rem;
  font-weight: 950;
}

.faq-page {
  display: grid;
  gap: 1.25rem;
}
.faq-layout {
  display: grid;
  gap: 1rem;
}
.faq-group {
  display: grid;
  gap: 0.9rem;
  padding: clamp(1rem, 2vw, 1.35rem);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255,255,255,0.035);
  box-shadow: var(--shadow);
}
.faq-group-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 0.8rem;
}
.faq-group-head > span {
  display: grid;
  width: 2.35rem;
  height: 2.35rem;
  place-items: center;
  border: 1px solid rgba(211, 170, 77, 0.35);
  border-radius: 8px;
  color: var(--gold);
  background: rgba(211, 170, 77, 0.09);
  font-weight: 900;
}
.faq-group h3 {
  margin: 0;
  color: var(--text);
  font-size: clamp(1.1rem, 2vw, 1.35rem);
}
.faq-group-head p {
  margin: 0.22rem 0 0;
  color: var(--muted);
  line-height: 1.5;
}
.faq-question-list {
  display: grid;
  gap: 0.55rem;
}
.faq-item {
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 8px;
  background: rgba(5, 13, 10, 0.42);
  overflow: hidden;
}
.faq-item summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.85rem 1rem;
  color: var(--text);
  cursor: pointer;
  font-weight: 900;
}
.faq-item summary::-webkit-details-marker {
  display: none;
}
.faq-item summary::after {
  content: "+";
  flex: 0 0 auto;
  color: var(--gold);
  font-size: 1.2rem;
  line-height: 1;
}
.faq-item[open] summary::after {
  content: "-";
}
.faq-item p {
  margin: 0;
  padding: 0 1rem 1rem;
  color: var(--muted);
  line-height: 1.55;
}
.loading { padding: 2rem; color: var(--muted); }
.brand-loading {
  min-height: min(62vh, 34rem);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.2rem;
  text-align: center;
  color: var(--text);
}
.brand-loading-logo {
  width: clamp(10rem, 28vw, 18rem);
  aspect-ratio: 1;
  object-fit: contain;
  filter: drop-shadow(0 1rem 1.6rem rgba(0, 0, 0, 0.32));
}
.brand-loading p {
  margin: 0;
  color: var(--gold);
  font-size: 1.18rem;
  font-weight: 900;
  text-shadow: 0 2px 0 rgba(0, 0, 0, 0.38);
}
html.birdio-design-boot .brand-loading {
  min-height: min(68vh, 38rem);
  color: #f5f7fb;
  background:
    linear-gradient(180deg, rgba(17, 40, 66, 0.84), rgba(12, 29, 48, 0.9));
  border: 1px solid rgba(126, 169, 211, 0.16);
  border-radius: 8px;
  box-shadow: 0 18px 46px rgba(0, 0, 0, 0.24);
}
html.birdio-design-boot .brand-loading p {
  color: #d6aa45;
  text-shadow: none;
}
html.birdio-design-boot[data-admin-trend-lab-theme="light"] .brand-loading {
  color: #141817;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(250, 247, 239, 0.94));
  border-color: rgba(28, 44, 38, 0.12);
  box-shadow: 0 18px 38px rgba(46, 54, 47, 0.12);
}
html.birdio-design-boot[data-admin-trend-lab-theme="light"] .brand-loading p {
  color: #9c7628;
}
.startup-intro {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: none;
  place-items: center;
  overflow: hidden;
  min-height: 100vh;
  height: 100dvh;
  padding: clamp(1.5rem, 5vw, 4rem);
  background:
    radial-gradient(circle at 48% 30%, rgba(55, 92, 58, 0.24), transparent 32rem),
    linear-gradient(145deg, rgba(5, 18, 13, 0.3), rgba(1, 8, 6, 0.72)),
    var(--auth-background) center / cover no-repeat,
    linear-gradient(145deg, rgb(8, 25, 18), rgb(2, 9, 7));
  color: var(--text);
  text-align: center;
  opacity: 1;
}
html.birdio-design-boot .startup-intro {
  background:
    radial-gradient(circle at 82% -8%, rgba(82, 145, 214, 0.24), transparent 28rem),
    radial-gradient(circle at 12% 18%, rgba(49, 96, 142, 0.22), transparent 24rem),
    linear-gradient(180deg, rgba(7, 19, 33, 0.92), rgba(7, 15, 26, 0.98)),
    #071321;
  color: #f5f7fb;
}
html.birdio-design-boot[data-admin-trend-lab-theme="light"] .startup-intro {
  background:
    radial-gradient(circle at 82% -8%, rgba(104, 171, 119, 0.22), transparent 28rem),
    radial-gradient(circle at 12% 16%, rgba(221, 201, 162, 0.34), transparent 23rem),
    linear-gradient(180deg, rgba(247, 244, 238, 0.94), rgba(231, 225, 213, 0.98)),
    #f7f4ee;
  color: #141817;
}
html.startup-intro-active .startup-intro {
  display: grid;
}
.startup-intro-inner {
  display: grid;
  justify-items: center;
  gap: clamp(1.2rem, 3vw, 2rem);
}
.startup-intro-logo {
  width: clamp(9rem, 26vw, 17rem);
  aspect-ratio: 1;
  object-fit: contain;
  filter: drop-shadow(0 1.3rem 2rem rgba(0, 0, 0, 0.38));
  opacity: 0;
  transform: translateY(-2rem) scale(0.86);
  animation: startupLogoIn 0.92s cubic-bezier(0.16, 1, 0.3, 1) 0.12s forwards;
}
.startup-intro-copy {
  display: grid;
  justify-items: center;
  gap: 0.28rem;
}
.startup-intro-title,
.startup-intro-line,
.startup-intro-description {
  display: block;
  opacity: 0;
  transform: translateY(1.35rem);
  text-shadow: 0 3px 0 rgba(0, 0, 0, 0.36);
  animation: startupTextIn 0.82s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
.startup-intro-title {
  color: var(--text);
  font-size: clamp(3.2rem, 12vw, 8rem);
  font-weight: 950;
  line-height: 0.9;
  animation-delay: 0.95s;
}
.startup-intro-line {
  color: var(--gold);
  font-size: clamp(1.45rem, 4.6vw, 3.1rem);
  font-weight: 900;
  line-height: 1.08;
}
.startup-intro-line-1 { animation-delay: 1.62s; }
.startup-intro-line-2 { animation-delay: 2.22s; }
.startup-intro-line-3 { animation-delay: 2.82s; }
.startup-intro-description {
  max-width: min(42rem, 92vw);
  margin: 0.75rem 0 0;
  color: rgba(255, 253, 246, 0.86);
  font-size: clamp(1rem, 2.3vw, 1.45rem);
  font-weight: 750;
  line-height: 1.32;
  text-shadow: 0 2px 0 rgba(0, 0, 0, 0.32);
  animation-delay: 3.5s;
}
html.birdio-design-boot .startup-intro-title {
  color: #f5f7fb;
}
html.birdio-design-boot .startup-intro-line {
  color: #d6aa45;
}
html.birdio-design-boot .startup-intro-description {
  color: rgba(245, 247, 251, 0.82);
}
html.birdio-design-boot[data-admin-trend-lab-theme="light"] .startup-intro-title,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] .startup-intro-line,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] .startup-intro-description {
  text-shadow: none;
}
html.birdio-design-boot[data-admin-trend-lab-theme="light"] .startup-intro-title {
  color: #111615;
}
html.birdio-design-boot[data-admin-trend-lab-theme="light"] .startup-intro-line {
  color: #9c7628;
}
html.birdio-design-boot[data-admin-trend-lab-theme="light"] .startup-intro-description {
  color: #586960;
}
.startup-intro-description span {
  display: block;
}

@keyframes startupLogoIn {
  0% {
    opacity: 0;
    transform: translateY(-2rem) scale(0.86) rotate(-4deg);
  }
  72% {
    opacity: 1;
    transform: translateY(0.18rem) scale(1.03) rotate(1deg);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1) rotate(0deg);
  }
}

@keyframes startupTextIn {
  0% {
    opacity: 0;
    transform: translateY(1.35rem);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .startup-intro-logo,
  .startup-intro-title,
  .startup-intro-line,
  .startup-intro-description {
    animation-duration: 0.01ms;
    animation-delay: 0ms;
  }
}

@media (max-width: 760px) {
  .topbar { display:block; }
  .brand {
    flex-wrap: nowrap;
    row-gap: 0.12rem;
  }
  .brand-logo {
    width: clamp(76px, 20vw, 96px);
    height: clamp(76px, 20vw, 96px);
    margin: -0.35rem 0 -0.45rem -0.2rem;
  }
  .brand-name {
    font-size: clamp(1.75rem, 8vw, 2.35rem);
  }
  .brand-tagline {
    flex: 0 1 auto;
    font-size: clamp(0.75rem, 2.55vw, 0.96rem);
    line-height: 1;
  }
  nav { max-width: 100%; margin-top: 0.8rem; }
  table { min-width: 620px; }
  .dashboard-main-grid,
  .dashboard-top-grid,
  .dashboard-overview-content,
  .dashboard-wide-content,
  .dashboard-trend-grid {
    grid-template-columns: 1fr;
  }
  .dashboard-metric-list,
  .dashboard-form-box .dashboard-metric-list,
  .dashboard-compact-box .dashboard-metric-list,
  .dashboard-score-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .analysis-head {
    display: block;
  }
  .analysis-head p {
    margin-top: 0.35rem;
    text-align: left;
  }
  .course-hole-panel summary {
    display: block;
  }
  .course-hole-summary {
    justify-content: flex-start;
    margin-top: 0.6rem;
  }
  .course-hole-insights {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .course-analysis-block-head {
    display: block;
  }
  .course-analysis-block-head p {
    margin-top: 0.35rem;
    text-align: left;
  }
  .course-hole-dashboard-section-head {
    display: block;
  }
  .course-hole-dashboard-section-head .course-landing-zone-filter,
  .course-hole-dashboard-section-head .course-hole-history-filter {
    justify-content: flex-start;
    margin-top: 0.45rem;
  }
  .course-analysis-hole-grid,
  .course-hole-dashboard-grid {
    grid-template-columns: 1fr;
  }
  .chart-test-grid {
    grid-template-columns: 1fr;
  }
  .chart-panel:first-child,
  .chart-panel:last-child {
    grid-column: auto;
  }
}

@media (max-width: 900px) {
  .hero {
    align-items: stretch;
    flex-direction: column;
    justify-content: flex-end;
  }
  .hero-primary-cluster {
    width: 100%;
    max-width: 100%;
    gap: clamp(0.65rem, 3vw, 1rem);
  }
  .hero-player-card {
    width: 100%;
    min-width: 0;
    flex-basis: auto;
  }
  .app-entry-callout {
    width: 100%;
  }
  .hero-course-logo {
    top: 0.9rem;
    right: 0.9rem;
  }
  .hero-course-logo-warnemuende {
    width: clamp(155px, 48vw, 260px);
    max-height: 76px;
  }
  .hero-course-logo-apeldoer {
    width: clamp(86px, 27vw, 138px);
    max-height: 138px;
  }
  .live-panel {
    width: 100%;
    flex-basis: auto;
  }
  .hero-side-panel {
    width: 100%;
    flex-basis: auto;
  }
  .settings-hcp-form {
    grid-template-columns: 1fr;
  }
  .custom-club-fields {
    grid-template-columns: 1fr;
  }
  .admin-users-toolbar,
  .admin-user-card,
  .admin-registration-card,
  .admin-registration-notice,
  .admin-dashboard-kpi-grid,
  .admin-dashboard-layout,
  .admin-dashboard-shortcuts,
  .admin-golfdb-kpi-grid,
  .admin-golfdb-layout,
  .admin-golfdb-history-grid,
  .admin-ops-history-grid,
  .admin-ops-load-context .admin-dashboard-compact-list,
  .admin-user-statistics-page .admin-users-toolbar,
  .admin-user-stat-card,
  .admin-user-stat-metrics {
    grid-template-columns: 1fr;
  }
  .friends-settings-panel,
  .friends-layout,
  .friend-card {
    grid-template-columns: 1fr;
  }
  .admin-user-card .danger-pill,
  .admin-registration-card .pill-link,
  .admin-registration-notice .pill-link,
  .friend-card-actions {
    justify-self: start;
  }
  .friend-card-actions {
    justify-content: flex-start;
  }
  .dashboard-wide-content {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 480px) {
  .dashboard-metric-list,
  .dashboard-form-box .dashboard-metric-list,
  .dashboard-compact-box .dashboard-metric-list,
  .dashboard-score-metrics {
    grid-template-columns: 1fr;
  }
}


.feedback-page .feedback-form {
  width: 100%;
  max-width: none;
  display: grid;
  gap: 1.35rem;
}

.feedback-page .feedback-form label {
  display: grid;
  gap: 0.55rem;
  align-items: start;
  width: 100%;
}

.feedback-page .feedback-form textarea {
  width: 100%;
  min-height: 14rem;
  box-sizing: border-box;
}

.feedback-page .settings-hcp-actions {
  margin-top: 0.35rem;
}


.feedback-history,
.feedback-admin-list {
  display: grid;
  gap: 1rem;
  margin-top: 1.25rem;
}

.feedback-history h3 {
  margin: 0.25rem 0 0;
}

.feedback-history-card,
.feedback-admin-card {
  display: grid;
  gap: 1rem;
}

.feedback-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.feedback-card-head div {
  display: grid;
  gap: 0.2rem;
}

.feedback-card-head small,
.feedback-meta {
  color: var(--muted);
}

.feedback-status-pill {
  border-radius: 999px;
  padding: 0.35rem 0.7rem;
  font-weight: 800;
  border: 1px solid rgba(225, 246, 231, 0.2);
}

.feedback-status-pill.status-open { background: rgba(214, 176, 69, 0.18); color: #f3d47c; }
.feedback-status-pill.status-read { background: rgba(100, 154, 190, 0.18); color: #9fd0ef; }
.feedback-status-pill.status-progress { background: rgba(159, 105, 76, 0.22); color: #f0b695; }
.feedback-status-pill.status-done { background: rgba(117, 190, 129, 0.18); color: #a9e7ae; }

.feedback-answer {
  border-left: 3px solid rgba(159, 215, 144, 0.7);
  padding: 0.75rem 1rem;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 0.7rem;
}

.feedback-answer p,
.feedback-history-card p {
  margin: 0;
  white-space: pre-wrap;
}

.feedback-admin-card label {
  display: grid;
  gap: 0.45rem;
  font-weight: 800;
}

.feedback-admin-card textarea,
.feedback-admin-card select {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid rgba(225, 246, 231, 0.18);
  border-radius: 0.8rem;
  background: rgba(7, 24, 15, 0.72);
  color: var(--text);
  padding: 0.85rem 0.95rem;
  font: inherit;
}


.admin-todo-create-form,
.admin-todo-list,
.admin-todo-card {
  display: grid;
  gap: 1rem;
}

.admin-todo-list {
  margin-top: 1.25rem;
}

.admin-todo-create-form label,
.admin-todo-card label {
  display: grid;
  gap: 0.45rem;
  font-weight: 800;
}

.admin-todo-create-form input,
.admin-todo-create-form textarea,
.admin-todo-create-form select,
.admin-todo-card input,
.admin-todo-card textarea,
.admin-todo-card select {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid rgba(225, 246, 231, 0.18);
  border-radius: 0.8rem;
  background: rgba(7, 24, 15, 0.72);
  color: var(--text);
  padding: 0.85rem 0.95rem;
  font: inherit;
}

.todo-grid-two {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

@media (max-width: 720px) {
  .todo-grid-two {
    grid-template-columns: 1fr;
  }
}


.feedback-compact-item {
  padding: 0;
  overflow: hidden;
}

.feedback-compact-item > summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.1rem;
}

.feedback-compact-item > summary::-webkit-details-marker {
  display: none;
}

.feedback-compact-item > summary > span:first-child {
  min-width: 0;
  display: grid;
  gap: 0.25rem;
}

.feedback-compact-item > summary strong,
.feedback-compact-item > summary small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.feedback-detail-body {
  display: grid;
  gap: 1rem;
  border-top: 1px solid rgba(225, 246, 231, 0.12);
  padding: 1rem 1.1rem 1.15rem;
}

.feedback-reply-form {
  display: grid;
  gap: 0.85rem;
}

.feedback-reply-form label {
  display: grid;
  gap: 0.45rem;
  font-weight: 800;
}

.feedback-reply-form textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid rgba(225, 246, 231, 0.18);
  border-radius: 0.8rem;
  background: rgba(7, 24, 15, 0.72);
  color: var(--text);
  padding: 0.85rem 0.95rem;
  font: inherit;
}

.feedback-answer.user-reply {
  border-left-color: rgba(116, 177, 216, 0.75);
}


.feedback-toolbar-header {
  align-items: end;
}

.compact-filter {
  display: grid;
  gap: 0.35rem;
  min-width: 14rem;
  font-weight: 800;
}

.compact-filter select {
  border: 1px solid rgba(225, 246, 231, 0.18);
  border-radius: 0.8rem;
  background: rgba(7, 24, 15, 0.72);
  color: var(--text);
  padding: 0.7rem 0.85rem;
  font: inherit;
}

.admin-todo-create-form.is-collapsed {
  display: none;
}

@media (max-width: 720px) {
  .feedback-toolbar-header {
    align-items: stretch;
  }

  .compact-filter {
    min-width: 0;
  }
}


.admin-toolbar-actions {
  display: flex;
  align-items: end;
  justify-content: flex-end;
  gap: 0.75rem;
  flex-wrap: wrap;
}

.feedback-answer.todo-linked {
  border-left-color: rgba(214, 176, 69, 0.85);
}

@media (max-width: 720px) {
  .admin-toolbar-actions {
    justify-content: stretch;
  }

  .admin-toolbar-actions > * {
    width: 100%;
  }
}

.todo-summary-badges {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.45rem;
  flex-wrap: wrap;
}

.feedback-status-pill.priority-urgent {
  background: rgba(158, 65, 65, 0.35);
  color: #ffd6d6;
}

.feedback-status-pill.priority-normal {
  background: rgba(214, 176, 69, 0.18);
  color: #f3d47c;
}

.feedback-status-pill.priority-later {
  background: rgba(100, 154, 190, 0.18);
  color: #9fd0ef;
}

.scorecard-total-row td {
  border-top: 2px solid rgba(214, 176, 69, 0.45);
  color: #f8e7b0;
  font-weight: 800;
  background: rgba(214, 176, 69, 0.08);
}

.trend-pie-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.trend-lochscore-pie-layout {
  display: grid;
  grid-template-columns: minmax(220px, 0.75fr) minmax(220px, 1fr);
  gap: 1.25rem;
  align-items: center;
}

.trend-lochscore-pie-wrap {
  min-height: 260px;
}

.trend-lochscore-legend {
  display: grid;
  gap: 0.55rem;
}

.trend-lochscore-legend-row {
  display: grid;
  grid-template-columns: auto minmax(120px, 1fr) minmax(32px, auto) minmax(56px, auto);
  gap: 0.6rem;
  align-items: center;
  padding: 0.45rem 0.6rem;
  border: 1px solid rgba(217, 230, 221, 0.12);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.035);
}

.trend-lochscore-dot {
  width: 0.75rem;
  height: 0.75rem;
  border-radius: 999px;
  box-shadow: 0 0 0 2px rgba(255,255,255,0.08);
}

.trend-lochscore-legend-row strong {
  color: #fffdf2;
}

.trend-lochscore-legend-row em {
  color: #f3d47c;
  font-style: normal;
  text-align: right;
}

.trend-lochscore-pie-panel {
  min-width: 0;
}

.trend-category-average-panel {
  margin-top: 1rem;
}

.trend-category-section-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  align-items: start;
  min-width: 0;
}

.trend-category-average-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
  min-width: 0;
}

.trend-category-average-card {
  min-width: 0;
  overflow: hidden;
}

.trend-category-average-grid .chart-panel,
.trend-category-average-grid .chart-panel:first-child,
.trend-category-average-grid .chart-panel:last-child {
  grid-column: auto;
}

@media (max-width: 2200px) {
  .trend-category-section-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1100px) {
  .trend-pie-grid {
    grid-template-columns: 1fr;
  }

  .trend-category-average-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 1500px) and (min-width: 1101px) {
  .trend-category-average-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  .trend-lochscore-pie-layout {
    grid-template-columns: 1fr;
  }

  .trend-category-average-grid {
    grid-template-columns: 1fr;
  }
}


#trends-latest-round-top {
  margin-bottom: 1rem;
}
.trend-latest-round-grid {
  margin-top: 0.75rem;
  margin-bottom: 1rem;
}


/* App-naehere Optik fuer Webseite/Spielerprofil */
.filters select,
.filters input,
.login-card input,
.feedback-admin-card textarea,
.feedback-admin-card select,
.admin-todo-card input,
.admin-todo-card textarea,
.admin-todo-card select {
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: rgba(8, 28, 20, 0.72);
  color: var(--text);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.08);
}

body.login-page .login-card input {
  border-color: rgba(126, 169, 211, 0.26);
  background: rgba(7, 21, 36, 0.78);
  color: #f5f7fb;
}

body.login-page .login-card input:focus {
  border-color: rgba(126, 176, 243, 0.72);
  outline: none;
  box-shadow: 0 0 0 3px rgba(126, 176, 243, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.player-profile-main-filter {
  align-items: center;
  padding: 0.8rem;
  border: 1px solid rgba(255,255,255,0.13);
  border-radius: 8px;
  background: rgba(18, 34, 31, 0.55);
}

.player-card {
  background:
    radial-gradient(circle at 18% 10%, rgba(117, 154, 122, 0.14), transparent 16rem),
    linear-gradient(160deg, #223027 0%, #1a271f 48%, #332f25 100%);
}

.page-content-frame-players .player-card {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.player-card-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
  margin-bottom: 1rem;
}

.player-card-head p {
  margin: 0.25rem 0 0;
  color: var(--muted);
}

.player-hole-filter-pill {
  flex: 0 0 auto;
  padding: 0.5rem 0.75rem;
  border-radius: 999px;
  color: var(--text);
  background: rgba(255,255,255,0.10);
  border: 1px solid rgba(255,255,255,0.12);
  font-weight: 850;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.10);
}

.player-profile-summary-board {
  margin-bottom: 1rem;
}

.player-round-report {
  margin-bottom: 1rem;
  padding: 1rem;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background:
    radial-gradient(circle at 8% 0%, rgba(211, 190, 86, 0.14), transparent 18rem),
    linear-gradient(145deg, rgba(27, 54, 42, 0.94), rgba(10, 28, 22, 0.94));
  box-shadow: var(--tile-shadow);
}

.player-round-report.profile-status-improved {
  border-color: rgba(147, 211, 131, 0.72);
}

.player-round-report.profile-status-stable {
  border-color: rgba(117, 179, 214, 0.72);
}

.player-round-report.profile-status-worse {
  border-color: rgba(212, 107, 107, 0.76);
}

.player-round-report-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.9rem;
}

.player-round-report-head span,
.player-round-report-summary span,
.player-round-report-insight span,
.player-round-report-metric span {
  color: var(--gold);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.player-round-report-head h3 {
  margin: 0.2rem 0 0;
  font-size: clamp(1.35rem, 2.4vw, 2rem);
  line-height: 1.05;
  color: #fffaf0;
}

.player-round-report-head p {
  margin: 0.3rem 0 0;
  color: rgba(247, 241, 228, 0.78);
}

.player-round-report-link {
  flex: 0 0 auto;
  padding: 0.55rem 0.75rem;
  border-radius: 8px;
  border: 1px solid rgba(211, 190, 86, 0.48);
  color: #fffaf0;
  background: rgba(8, 28, 20, 0.62);
  font-weight: 850;
  text-decoration: none;
}

.player-round-report-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.65rem;
}

.player-round-report-metric,
.player-round-report-insight {
  min-width: 0;
  padding: 0.8rem;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(7, 17, 13, 0.36);
}

.player-round-report-metric strong {
  display: block;
  margin-top: 0.3rem;
  color: #fffaf0;
  font-size: clamp(1.8rem, 3.5vw, 2.8rem);
  line-height: 1;
  text-shadow: 0 3px 8px rgba(0,0,0,0.42);
}

.player-round-report-metric em {
  display: block;
  margin-top: 0.35rem;
  color: rgba(247, 241, 228, 0.78);
  font-size: 0.84rem;
  font-style: normal;
  font-weight: 750;
}

.player-round-report-metric.profile-status-improved {
  border-color: rgba(147, 211, 131, 0.62);
}

.player-round-report-metric.profile-status-stable {
  border-color: rgba(117, 179, 214, 0.62);
}

.player-round-report-metric.profile-status-worse {
  border-color: rgba(212, 107, 107, 0.68);
}

.player-round-report-summary {
  margin-top: 0.8rem;
  padding: 0.85rem;
  border-radius: 8px;
  background: rgba(8, 28, 20, 0.5);
  border: 1px solid rgba(211, 190, 86, 0.24);
}

.player-round-report-summary p {
  margin: 0.35rem 0 0;
  max-width: 76rem;
  color: rgba(247, 241, 228, 0.9);
  line-height: 1.45;
}

[data-round-report-special]:empty {
  display: none;
}

.player-round-report-special {
  margin-top: 0.8rem;
  padding: 0.95rem;
  border-radius: 8px;
  border: 1px solid rgba(242, 190, 79, 0.76);
  background:
    radial-gradient(circle at 12% 15%, rgba(242, 190, 79, 0.08), transparent 14rem),
    linear-gradient(145deg, rgba(27, 66, 48, 0.98), rgba(10, 38, 30, 0.98));
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.12), 0 18px 35px rgba(0,0,0,0.24);
}

.player-round-report-special span {
  display: block;
  color: var(--gold);
  font-size: 0.78rem;
  font-weight: 950;
  text-transform: uppercase;
}

.player-round-report-special strong {
  display: block;
  margin-top: 0.25rem;
  color: #fffaf0;
  font-size: clamp(1.45rem, 3vw, 2.4rem);
  line-height: 1;
}

.player-round-report-special p {
  margin: 0.45rem 0 0;
  color: rgba(247, 241, 228, 0.9);
  line-height: 1.42;
}

.player-round-report-special-birdie {
  border-width: 2px;
  border-color: rgba(242, 190, 79, 0.9);
  background:
    radial-gradient(circle at 12% 15%, rgba(242, 190, 79, 0.14), transparent 16rem),
    linear-gradient(145deg, rgba(27, 66, 48, 0.98), rgba(10, 38, 30, 0.98));
}

.player-round-report-special-record {
  border-color: rgba(117, 179, 214, 0.86);
  background:
    radial-gradient(circle at 12% 15%, rgba(117, 179, 214, 0.12), transparent 14rem),
    linear-gradient(145deg, rgba(35, 70, 91, 0.96), rgba(10, 38, 30, 0.98));
}

.player-round-report-special-eagle {
  border-width: 2px;
  border-color: rgba(242, 190, 79, 0.9);
  background:
    radial-gradient(circle at 12% 15%, rgba(242, 190, 79, 0.18), transparent 15rem),
    linear-gradient(145deg, rgba(41, 82, 58, 0.98), rgba(10, 38, 30, 0.98));
}

.player-round-report-special-hole-in-one {
  border-width: 2px;
  border-color: rgba(242, 190, 79, 0.94);
  background:
    radial-gradient(circle at 12% 15%, rgba(242, 190, 79, 0.38), transparent 16rem),
    radial-gradient(circle at 92% 8%, rgba(255, 250, 240, 0.16), transparent 12rem),
    linear-gradient(145deg, rgba(105, 73, 31, 0.98), rgba(37, 84, 61, 0.98));
}

.player-round-report-special-hole-in-one strong {
  color: #fff9db;
  text-shadow: 0 4px 10px rgba(0,0,0,0.34);
}

.player-round-report-insights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.65rem;
  margin-top: 0.8rem;
}

.player-round-report-insight strong {
  display: block;
  margin-top: 0.25rem;
  color: #fffaf0;
  font-size: 1.05rem;
}

.player-round-report-insight p {
  margin: 0.25rem 0 0;
  color: rgba(247, 241, 228, 0.76);
  font-size: 0.88rem;
  line-height: 1.35;
}

.course-analysis-overview-slot {
  margin-bottom: 1rem;
}

.course-analysis-filter-panel {
  margin-bottom: 1rem;
}

.profile-metric-group {
  padding: 0;
  border: 0;
  background: transparent;
}

.profile-metric-group-filtered .profile-metric-group-grid {
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}

.profile-highlight-group {
  width: 100%;
}

.profile-highlight-grid {
  display: grid;
  grid-template-columns: minmax(220px, 0.95fr) minmax(280px, 1.15fr) minmax(340px, 1.35fr) minmax(280px, 1.15fr) minmax(220px, 0.9fr);
  gap: 0.62rem;
  align-items: stretch;
}

.profile-highlight-card {
  min-width: 0;
  min-height: 144px;
  padding: 0.72rem 0.78rem;
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 0.45rem;
  overflow: hidden;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background:
    linear-gradient(145deg, rgba(43, 74, 62, 0.96), rgba(24, 53, 43, 0.98)),
    radial-gradient(circle at 84% 12%, rgba(211, 170, 77, 0.15), transparent 34%);
  box-shadow: var(--tile-shadow);
  color: #f7f1e4;
}

.profile-highlight-card.profile-status-improved {
  border-color: rgba(147, 211, 131, 0.78);
  box-shadow: 0 0 0 1px rgba(147, 211, 131, 0.14) inset, var(--tile-shadow);
}

.profile-highlight-card.profile-status-stable {
  border-color: rgba(117, 179, 214, 0.54);
}

.profile-highlight-card.profile-status-worse {
  border-color: rgba(212, 107, 107, 0.72);
  background:
    linear-gradient(145deg, rgba(74, 52, 47, 0.96), rgba(52, 39, 36, 0.98)),
    radial-gradient(circle at 84% 12%, rgba(212, 107, 107, 0.14), transparent 34%);
}

.profile-highlight-card.profile-status-highlight {
  border-color: rgba(211, 170, 77, 0.82);
  background:
    linear-gradient(145deg, rgba(55, 75, 55, 0.98), rgba(33, 55, 43, 0.98)),
    radial-gradient(circle at 84% 8%, rgba(211, 170, 77, 0.22), transparent 38%);
}

.profile-highlight-card.profile-status-loading {
  border-color: rgba(211, 190, 86, 0.58);
  background: linear-gradient(145deg, rgba(78, 92, 91, 0.96), rgba(34, 49, 47, 0.96));
}

.profile-highlight-eyebrow,
.profile-highlight-head span,
.profile-highlight-record span,
.profile-highlight-details span,
.profile-highlight-activity-grid span,
.profile-highlight-values span,
.profile-highlight-stack span,
.profile-highlight-hcp-values span,
.profile-highlight-hcp-list > span,
.profile-highlight-history-list > span,
.profile-highlight-course-list > span {
  display: block;
  min-width: 0;
  color: rgba(247, 241, 228, 0.78);
  font-size: 0.78rem;
  font-weight: 850;
  line-height: 1.2;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}

.profile-highlight-card-activity .profile-highlight-eyebrow {
  color: rgba(247, 241, 228, 0.78);
}

.profile-highlight-main {
  min-width: 0;
}

.profile-highlight-main strong {
  display: block;
  color: #fffaf0;
  font-size: clamp(1.55rem, 2.35vw, 2.05rem);
  line-height: 0.95;
  text-shadow: 0 3px 8px rgba(0,0,0,0.42);
}

.profile-highlight-main span,
.profile-highlight-card p,
.profile-highlight-link {
  min-width: 0;
  color: rgba(247, 241, 228, 0.82);
  font-size: 0.82rem;
  font-weight: 750;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.profile-highlight-card p {
  margin: 0;
}

.profile-highlight-head {
  display: flex;
  justify-content: space-between;
  gap: 0.75rem;
  min-width: 0;
}

.profile-highlight-head > div {
  min-width: 0;
}

.profile-highlight-head strong {
  display: block;
  margin-top: 0.18rem;
  color: #fffaf0;
  font-size: 1rem;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.profile-highlight-head em {
  flex: 0 0 auto;
  max-width: 44%;
  align-self: start;
  padding: 0.25rem 0.45rem;
  border-radius: 999px;
  border: 1px solid rgba(211, 170, 77, 0.36);
  color: var(--gold);
  background: rgba(13, 25, 19, 0.38);
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 900;
  line-height: 1.1;
  text-align: center;
  overflow-wrap: anywhere;
}

.profile-highlight-values {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.5rem;
  align-items: stretch;
}

.profile-highlight-values > div,
.profile-highlight-details > div,
.profile-highlight-activity-grid > div,
.profile-highlight-stack > div,
.profile-highlight-hcp-values > div {
  min-width: 0;
}

.profile-highlight-card-form .profile-highlight-values > div,
.profile-highlight-card-activity .profile-highlight-activity-grid > div,
.profile-highlight-card-hcp .profile-highlight-hcp-values > div,
.profile-highlight-details > div {
  display: grid;
  gap: 0.26rem;
  min-height: 3.65rem;
  align-content: center;
  padding: 0.5rem;
  border-radius: 8px;
  border: 1px solid rgba(211, 170, 77, 0.24);
  background: rgba(7, 17, 13, 0.24);
}

.profile-highlight-card-activity .profile-highlight-activity-grid > div {
  min-height: 3rem;
  gap: 0.18rem;
  padding: 0.42rem 0.45rem;
}

.profile-highlight-card-form .profile-highlight-values > div,
.profile-highlight-card-activity .profile-highlight-activity-grid > div,
.profile-highlight-card-hcp .profile-highlight-hcp-values > div,
.profile-highlight-details > div,
.profile-highlight-record > div {
  justify-items: stretch;
  text-align: center;
}

.profile-highlight-card-form .profile-highlight-values > div > span,
.profile-highlight-card-activity .profile-highlight-activity-grid > div > span,
.profile-highlight-card-hcp .profile-highlight-hcp-values > div > span,
.profile-highlight-details > div > span,
.profile-highlight-record > div > span {
  justify-self: center;
  text-align: center;
}

.profile-highlight-card-form .profile-highlight-values > div > strong,
.profile-highlight-card-activity .profile-highlight-activity-grid > div > strong,
.profile-highlight-card-hcp .profile-highlight-hcp-values > div > strong,
.profile-highlight-details > div > strong,
.profile-highlight-record > div > strong {
  justify-self: center;
  text-align: center;
}

.profile-highlight-values strong,
.profile-highlight-details strong,
.profile-highlight-activity-grid strong,
.profile-highlight-stack strong,
.profile-highlight-hcp-values strong,
.profile-highlight-record strong {
  display: block;
  margin-top: 0.18rem;
  color: #fffaf0;
  font-size: clamp(1.35rem, 1.85vw, 1.78rem);
  line-height: 1;
  text-shadow: 0 2px 7px rgba(0,0,0,0.42);
  overflow-wrap: normal;
}

.profile-highlight-activity-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.55rem;
  align-items: start;
}

.profile-highlight-activity-grid span {
  min-height: 1.2rem;
}

.profile-highlight-activity-grid strong,
.profile-highlight-card-activity .profile-highlight-main strong {
  margin-top: 0.16rem;
}

.profile-highlight-details,
.profile-highlight-stack {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.45rem;
}

.profile-highlight-stack {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.profile-highlight-line {
  height: 0.42rem;
  border-radius: 999px;
  border: 1px solid rgba(211, 170, 77, 0.3);
  background: rgba(7, 17, 13, 0.36);
  overflow: hidden;
}

.profile-highlight-line span {
  display: block;
  width: 68%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, rgba(211, 170, 77, 0.5), rgba(247, 241, 228, 0.5));
}

.profile-highlight-values .trend-metric-sparkline {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.6rem;
  height: 1.55rem;
  box-sizing: content-box;
  padding: 0.2rem 0.28rem;
  border: 1px solid rgba(211, 170, 77, 0.24);
  border-radius: 7px;
  background:
    linear-gradient(rgba(211, 170, 77, 0.075) 1px, transparent 1px),
    linear-gradient(90deg, rgba(211, 170, 77, 0.06) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0)),
    rgba(8, 28, 20, 0.2);
  background-size: 100% 9px, 11px 100%, auto, auto;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.055);
  color: rgba(211, 170, 77, 0.78);
}

.profile-highlight-value-with-spark {
  display: grid;
  grid-template-columns: minmax(0, auto) auto;
  gap: 0.68rem;
  align-items: center;
  justify-content: center;
  min-width: 0;
}

.profile-highlight-values .trend-metric-sparkline svg {
  display: block;
  width: 100%;
  height: 100%;
}

.profile-highlight-values .trend-metric-sparkline path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.profile-status-worse .profile-highlight-line span {
  width: 46%;
  background: linear-gradient(90deg, rgba(212, 107, 107, 0.62), rgba(211, 170, 77, 0.5));
}

.profile-status-stable .profile-highlight-line span {
  width: 56%;
  background: linear-gradient(90deg, rgba(117, 179, 214, 0.52), rgba(247, 241, 228, 0.42));
}

.profile-highlight-records {
  display: grid;
  gap: 0.5rem;
  align-content: start;
  min-width: 0;
}

.profile-highlight-record {
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.35rem 0.55rem;
  align-items: start;
  padding: 0;
  border: 0;
  background: transparent;
}

.profile-highlight-record > div {
  min-width: 0;
  display: grid;
  gap: 0.26rem;
  min-height: 3.65rem;
  align-content: center;
  padding: 0.5rem;
  border-radius: 8px;
  border: 1px solid rgba(211, 170, 77, 0.24);
  background: rgba(7, 17, 13, 0.24);
}

.profile-highlight-record strong.profile-status-improved {
  color: #bfe7a8;
}

.profile-highlight-record strong.profile-status-worse {
  color: #f1b0a5;
}

.profile-highlight-record small {
  min-width: 0;
  color: rgba(247, 241, 228, 0.8);
  font-size: 0.76rem;
  font-weight: 850;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.profile-highlight-record small.profile-status-improved {
  color: #bfe7a8;
}

.profile-highlight-record small.profile-status-worse {
  color: #f1b0a5;
}

.profile-highlight-link {
  min-width: 0;
  align-self: start;
  max-width: 12rem;
  text-align: right;
}

.profile-highlight-link .text-link {
  max-width: 100%;
  display: inline-block;
  white-space: normal;
  overflow-wrap: anywhere;
}

.profile-highlight-hcp-values {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.5rem;
  align-items: start;
}

.profile-highlight-hcp-values strong {
  font-size: clamp(1.32rem, 1.72vw, 1.7rem);
}

.profile-highlight-hcp-values span,
.profile-highlight-activity-grid span,
.profile-highlight-details span,
.profile-highlight-record span {
  font-size: clamp(0.58rem, 0.64vw, 0.7rem);
  letter-spacing: 0;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
  white-space: nowrap;
}

.profile-highlight-hcp-values > div {
  padding-inline: 0.46rem;
}

.profile-highlight-hcp-list,
.profile-highlight-history-list,
.profile-highlight-course-list {
  min-width: 0;
  display: grid;
  gap: 0.26rem;
}

.profile-highlight-hcp-list small,
.profile-highlight-history-list small,
.profile-highlight-course-list small {
  color: rgba(247, 241, 228, 0.76);
  font-size: 0.76rem;
  font-weight: 800;
  line-height: 1.2;
}

.profile-highlight-hcp-row,
.profile-highlight-history-row,
.profile-highlight-course-row {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1fr);
  gap: 0.45rem;
  align-items: baseline;
  padding: 0.28rem 0.38rem;
  border-radius: 7px;
  border: 1px solid rgba(211, 170, 77, 0.18);
  background: rgba(7, 17, 13, 0.2);
}

.profile-highlight-hcp-row strong,
.profile-highlight-hcp-row span,
.profile-highlight-history-row strong,
.profile-highlight-history-row span,
.profile-highlight-course-row strong,
.profile-highlight-course-row span,
.profile-highlight-row-link {
  min-width: 0;
  color: rgba(247, 241, 228, 0.9);
  font-size: 0.78rem;
  font-weight: 900;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.profile-highlight-hcp-row > span,
.profile-highlight-history-row span,
.profile-highlight-course-row span,
.profile-highlight-row-link {
  color: var(--green-2);
  text-align: right;
}

.profile-highlight-row-link {
  display: block;
  text-decoration: none;
}

.profile-highlight-hcp-row > span .profile-highlight-row-link {
  display: inline;
  text-align: inherit;
}

.profile-highlight-row-link:hover,
.profile-highlight-row-link:focus-visible {
  color: var(--green-2);
  text-decoration: underline;
}

@media (max-width: 1450px) {
  .profile-highlight-grid {
    grid-template-columns: repeat(4, minmax(220px, 1fr));
  }

  .profile-highlight-card-best {
    grid-column: span 2;
  }
}

@media (max-width: 1120px) {
  .profile-highlight-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .profile-highlight-card-best {
    grid-column: auto;
  }
}

@media (max-width: 680px) {
  .profile-highlight-grid {
    grid-template-columns: 1fr;
  }

  .profile-highlight-card {
    min-height: 0;
  }

  .profile-highlight-values,
  .profile-highlight-details,
  .profile-highlight-activity-grid,
  .profile-highlight-stack,
  .profile-highlight-hcp-values,
  .profile-highlight-hcp-row,
  .profile-highlight-history-row,
  .profile-highlight-course-row,
  .profile-highlight-record {
    grid-template-columns: 1fr;
  }

  .profile-highlight-hcp-row span,
  .profile-highlight-history-row span,
  .profile-highlight-course-row span,
  .profile-highlight-row-link {
    text-align: left;
  }

  .profile-highlight-head {
    display: grid;
  }

  .profile-highlight-head em {
    max-width: 100%;
    justify-self: start;
  }

  .profile-highlight-link {
    text-align: left;
    max-width: 100%;
  }
}

.profile-metric-tile {
  min-height: 132px;
  display: grid;
  align-content: center;
  justify-items: center;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background:
    var(--tile-gradient, linear-gradient(145deg, rgba(91, 127, 107, 0.98) 0%, rgba(56, 103, 83, 0.98) 48%, rgba(34, 78, 64, 0.98) 100%));
  color: #f7f1e4;
  box-shadow: var(--tile-shadow);
  text-align: center;
}

.profile-metric-group-filtered .profile-metric-tile,
#trends-latest-round-top .trend-latest-round-grid .trend-metric-card,
.course-analysis-metric-card {
  min-height: 132px;
}

.profile-metric-tile .label {
  color: rgba(247, 241, 228, 0.86);
  font-size: 1rem;
  font-weight: 850;
}

.profile-metric-tile .value {
  margin-top: 0.45rem;
  font-size: clamp(2rem, 4.8vw, 3rem);
  line-height: 1;
  color: #fffaf0;
  text-shadow: 0 3px 8px rgba(0,0,0,0.42);
}

.profile-metric-tile .sub {
  margin-top: 0.5rem;
  color: var(--gold);
  font-size: 0.88rem;
  font-weight: 750;
}

.profile-metric-tile.profile-status-improved {
  --tile-gradient: linear-gradient(145deg, rgba(91, 127, 107, 0.98) 0%, rgba(56, 103, 83, 0.98) 48%, rgba(34, 78, 64, 0.98) 100%);
  border-color: rgba(147, 211, 131, 0.86);
}

.profile-metric-tile.profile-status-stable {
  --tile-gradient: linear-gradient(145deg, rgba(88, 117, 134, 0.98) 0%, rgba(57, 94, 116, 0.98) 48%, rgba(35, 70, 91, 0.98) 100%);
  border-color: rgba(117, 179, 214, 0.86);
}

.profile-metric-tile.profile-status-worse {
  --tile-gradient: linear-gradient(145deg, rgba(133, 74, 70, 0.98) 0%, rgba(118, 62, 59, 0.98) 48%, rgba(84, 49, 47, 0.98) 100%);
  border-color: rgba(212, 107, 107, 0.88);
}

.profile-metric-tile.profile-status-loading {
  --tile-gradient: linear-gradient(145deg, rgba(78, 92, 91, 0.96) 0%, rgba(50, 68, 65, 0.96) 52%, rgba(34, 49, 47, 0.96) 100%);
  border-color: rgba(211, 190, 86, 0.68);
}

.profile-metric-tile.profile-status-loading .value {
  animation: profileMetricPulse 1s ease-in-out infinite;
}

.profile-highlight-card.profile-status-loading .profile-highlight-main strong {
  animation: profileMetricPulse 1s ease-in-out infinite;
}

.loading-state-panel {
  border: 1px solid var(--lab-border, rgba(126, 169, 211, 0.18));
  border-radius: 8px;
  color: var(--lab-text, #f5f7fb);
  background:
    radial-gradient(circle at 18% 12%, color-mix(in srgb, var(--lab-blue, #64a7ff) 10%, transparent), transparent 18rem),
    linear-gradient(180deg, var(--lab-card, #112842), var(--lab-card-soft, #172f49));
  box-shadow: none;
}

.loading-state-message {
  display: grid;
  gap: 0.45rem;
  justify-items: center;
  border: 0;
  color: var(--lab-muted, #aebccd);
  background: transparent;
  box-shadow: none;
}

.loading-state-message strong {
  color: var(--lab-title, #ffffff);
  font-size: 2rem;
  line-height: 1;
  animation: profileMetricPulse 1s ease-in-out infinite;
}

body.admin-trend-lab-route .admin-trend-lab-shell .loading-state-panel {
  border-color: var(--lab-border);
  background:
    radial-gradient(circle at 18% 12%, color-mix(in srgb, var(--lab-blue) 14%, transparent), transparent 18rem),
    linear-gradient(180deg, color-mix(in srgb, var(--lab-card) 98%, transparent), color-mix(in srgb, var(--lab-card-soft) 78%, transparent));
  box-shadow: none;
}

body.admin-trend-lab-route .admin-trend-lab-shell .loading-state-message {
  border-color: color-mix(in srgb, var(--lab-border) 72%, transparent);
  color: var(--lab-muted);
  background: color-mix(in srgb, var(--lab-card-soft) 34%, transparent);
}

body.admin-trend-lab-route .admin-trend-lab-shell .loading-state-message strong {
  color: var(--lab-title);
  text-shadow: none;
}

body.admin-trend-lab-route .admin-trend-lab-shell[data-theme="light"] .loading-state-panel,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-trend-lab-shell .loading-state-panel {
  background:
    radial-gradient(circle at 18% 12%, rgba(178, 131, 37, 0.1), transparent 18rem),
    linear-gradient(180deg, rgba(255, 253, 248, 0.96), rgba(246, 239, 226, 0.84));
}

body.admin-trend-lab-route .admin-trend-lab-shell[data-theme="light"] .loading-state-message,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-trend-lab-shell .loading-state-message {
  border-color: rgba(178, 131, 37, 0.24);
  color: #5f665f;
  background: rgba(255, 250, 241, 0.72);
}

body.admin-trend-lab-route .admin-trend-lab-shell[data-theme="light"] .loading-state-message strong,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-trend-lab-shell .loading-state-message strong {
  color: #111615;
}

@keyframes profileMetricPulse {
  0%, 100% {
    opacity: 0.46;
  }
  50% {
    opacity: 1;
  }
}

.player-round-filter {
  padding: 0.75rem;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 8px;
  background: rgba(7, 17, 13, 0.28);
}

/* App-naehere Trend-Segmentfarben */
.trend-latest-round-grid .trend-metric-card {
  background:
    linear-gradient(145deg, rgba(91, 127, 107, 0.98) 0%, rgba(56, 103, 83, 0.98) 48%, rgba(34, 78, 64, 0.98) 100%);
  box-shadow: var(--tile-shadow);
}

.trend-average-overview .trend-average-combined-card {
  background:
    linear-gradient(145deg, rgba(91, 127, 107, 0.98) 0%, rgba(56, 103, 83, 0.98) 48%, rgba(34, 78, 64, 0.98) 100%);
  box-shadow: var(--tile-shadow);
}

.trend-par-average-grid .trend-par-average-chart,
.trend-average-chart-grid .trend-average-chart,
.trend-chart-grid .trend-chart-panel {
  background:
    linear-gradient(145deg, rgba(88, 117, 134, 0.98) 0%, rgba(57, 94, 116, 0.98) 48%, rgba(35, 70, 91, 0.98) 100%);
  box-shadow: var(--tile-shadow);
}

.trend-category-section-grid .trend-category-average-panel:first-child .trend-category-average-card,
.trend-category-section-grid .trend-category-average-panel:first-child .chart-panel {
  background:
    linear-gradient(145deg, rgba(111, 92, 143, 0.98) 0%, rgba(88, 75, 126, 0.98) 48%, rgba(62, 56, 96, 0.98) 100%);
  box-shadow: var(--tile-shadow);
}

.trend-category-section-grid .trend-category-average-panel:nth-child(2) .trend-category-average-card,
.trend-category-section-grid .trend-category-average-panel:nth-child(2) .chart-panel {
  background:
    linear-gradient(145deg, rgba(133, 74, 70, 0.98) 0%, rgba(118, 62, 59, 0.98) 48%, rgba(84, 49, 47, 0.98) 100%);
  box-shadow: var(--tile-shadow);
}

.trend-pie-grid .panel:first-child {
  background:
    linear-gradient(145deg, rgba(111, 92, 143, 0.98) 0%, rgba(88, 75, 126, 0.98) 48%, rgba(62, 56, 96, 0.98) 100%);
  box-shadow: var(--tile-shadow);
}

.trend-pie-grid .panel:nth-child(2) {
  background:
    linear-gradient(145deg, rgba(133, 74, 70, 0.98) 0%, rgba(118, 62, 59, 0.98) 48%, rgba(84, 49, 47, 0.98) 100%);
  box-shadow: var(--tile-shadow);
}

.trend-average-overview .trend-average-combined-card.trend-improved,
.trend-average-overview .trend-average-combined-card.trend-worse,
.trend-average-overview .trend-average-combined-card.trend-stable,
.trend-category-average-card.trend-improved,
.trend-category-average-card.trend-worse,
.trend-category-average-card.trend-stable {
  border-color: rgba(255, 255, 255, 0.18);
}

.trend-metric-card.trend-improved,
.trend-metric-card.trend-worse,
.trend-metric-card.trend-stable,
.trend-metric-card.trend-empty {
  background:
    linear-gradient(145deg, rgba(91, 127, 107, 0.98) 0%, rgba(56, 103, 83, 0.98) 48%, rgba(34, 78, 64, 0.98) 100%);
  box-shadow: var(--tile-shadow);
}

/* Obere Letzte-Runde-Kacheln: Statusfarben statt Positionsfarben. */
#trends-latest-round-top .trend-latest-round-grid .trend-metric-card {
  color: #f7f1e4;
  align-content: start;
  grid-template-rows: minmax(2.35rem, auto) auto minmax(2.5rem, auto);
  row-gap: 0.18rem;
  box-shadow: var(--tile-shadow);
}

#trends-latest-round-top .trend-latest-round-grid .trend-metric-card .label {
  align-self: start;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  min-height: 2.35rem;
}

#trends-latest-round-top .trend-latest-round-grid .trend-metric-values {
  margin-top: 0;
}

#trends-latest-round-top .trend-latest-round-grid .trend-average-value {
  font-size: clamp(1.25rem, 1.9vw, 1.75rem);
}

#trends-latest-round-top .trend-latest-round-grid .trend-metric-card .sub {
  align-self: end;
  margin-top: 0;
}

#trends-latest-round-top .trend-latest-round-grid .trend-metric-card.trend-improved {
  background:
    linear-gradient(145deg, rgba(91, 127, 107, 0.98) 0%, rgba(56, 103, 83, 0.98) 48%, rgba(34, 78, 64, 0.98) 100%);
  border-color: rgba(147, 211, 131, 0.86);
}

#trends-latest-round-top .trend-latest-round-grid .trend-metric-card.trend-stable,
#trends-latest-round-top .trend-latest-round-grid .trend-metric-card.trend-empty {
  background:
    linear-gradient(145deg, rgba(88, 117, 134, 0.98) 0%, rgba(57, 94, 116, 0.98) 48%, rgba(35, 70, 91, 0.98) 100%);
  border-color: rgba(117, 179, 214, 0.86);
}

#trends-latest-round-top .trend-latest-round-grid .trend-metric-card.trend-worse {
  background:
    linear-gradient(145deg, rgba(133, 74, 70, 0.98) 0%, rgba(118, 62, 59, 0.98) 48%, rgba(84, 49, 47, 0.98) 100%);
  border-color: rgba(212, 107, 107, 0.88);
}

/* KPI-Variante fuer die obere Trend-Kachelreihe. */
#trends-latest-round-top .trend-latest-round-grid .trend-kpi-card {
  position: relative;
  display: grid;
  --trend-kpi-value-size: clamp(1rem, 1.22vw, 1.34rem);
  grid-template-rows: 2.45rem auto minmax(2rem, auto);
  align-content: stretch;
  justify-items: stretch;
  min-height: 126px;
  padding: 0.82rem 0.8rem 0.72rem;
  border-width: 1px;
  border-color: rgba(147, 211, 131, 0.24);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0) 42%),
    linear-gradient(180deg, rgba(38, 76, 59, 0.98), rgba(27, 61, 48, 0.98));
  box-shadow: var(--tile-shadow);
  color: #f7f1e4;
  text-align: left;
}

#trends-latest-round-top .trend-latest-round-grid .trend-kpi-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: rgba(147, 211, 131, 0.92);
}

#trends-latest-round-top .trend-kpi-card .trend-metric-head,
#trends-latest-round-top .trend-kpi-card .trend-metric-body,
#trends-latest-round-top .trend-kpi-card .trend-metric-sub-pill {
  position: relative;
  z-index: 1;
}

#trends-latest-round-top .trend-kpi-card .trend-metric-title-row {
  display: flex;
  align-items: flex-start;
  gap: 0.45rem;
  min-width: 0;
}

#trends-latest-round-top .trend-kpi-card .trend-metric-icon {
  display: inline-flex;
  flex: 0 0 auto;
  width: 1.15rem;
  height: 1.15rem;
  color: var(--gold);
}

#trends-latest-round-top .trend-kpi-card .trend-metric-icon svg {
  width: 100%;
  height: 100%;
}

#trends-latest-round-top .trend-latest-round-grid .trend-kpi-card .label {
  display: block;
  min-height: 0;
  color: var(--gold);
  font-size: clamp(0.9rem, 0.9vw, 1rem);
  font-weight: 900;
  line-height: 1.14;
  text-align: left;
}

#trends-latest-round-top .trend-kpi-card .trend-metric-body {
  display: grid;
  gap: 0.26rem;
  align-items: stretch;
  margin-top: 0.06rem;
}

#trends-latest-round-top .trend-kpi-card .trend-metric-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.56rem;
  align-items: center;
  min-width: 0;
}

#trends-latest-round-top .trend-kpi-card .trend-round-value {
  text-align: left;
}

#trends-latest-round-top .trend-kpi-card .trend-round-value strong {
  color: #fffaf0;
  font-size: var(--trend-kpi-value-size);
  font-weight: 900;
  line-height: 1.05;
  text-shadow: 0 3px 8px rgba(0, 0, 0, 0.38);
}

#trends-latest-round-top .trend-kpi-card .trend-average-value {
  display: flex;
  align-items: baseline;
  gap: 0.28rem;
  margin-top: 0;
  color: rgba(247, 241, 228, 0.82);
  font-size: var(--trend-kpi-value-size);
  font-weight: 850;
  line-height: 1.05;
  text-align: left;
}

#trends-latest-round-top .trend-kpi-card .trend-average-value span {
  color: rgba(247, 241, 228, 0.58);
  font-size: 0.74em;
  font-weight: 900;
}

#trends-latest-round-top .trend-kpi-card .trend-average-value strong {
  color: inherit;
  font: inherit;
}

#trends-latest-round-top .trend-kpi-card .trend-metric-sparkline {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.48rem;
  height: 1.38rem;
  box-sizing: content-box;
  padding: 0.2rem 0.28rem;
  border: 1px solid rgba(211, 170, 77, 0.24);
  border-radius: 7px;
  background:
    linear-gradient(rgba(211, 170, 77, 0.075) 1px, transparent 1px),
    linear-gradient(90deg, rgba(211, 170, 77, 0.06) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0)),
    rgba(8, 28, 20, 0.2);
  background-size: 100% 9px, 11px 100%, auto, auto;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.055);
  color: rgba(211, 170, 77, 0.78);
}

#trends-latest-round-top .trend-kpi-card .trend-metric-sparkline svg {
  display: block;
  width: 100%;
  height: 100%;
}

#trends-latest-round-top .trend-kpi-card .trend-metric-sparkline path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

#trends-latest-round-top .trend-kpi-card .trend-metric-sub-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  justify-self: center;
  align-self: end;
  width: auto;
  max-width: 100%;
  margin-top: 0.52rem;
  padding: 0.27rem 0.48rem;
  border: 1px solid rgba(211, 170, 77, 0.34);
  border-radius: 999px;
  background: rgba(211, 170, 77, 0.1);
  color: var(--gold);
  font-size: clamp(0.68rem, 0.72vw, 0.78rem);
  font-weight: 850;
  line-height: 1.15;
  text-align: center;
}

#trends-latest-round-top .trend-latest-round-grid .trend-kpi-card.trend-improved {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0) 42%),
    linear-gradient(180deg, rgba(40, 82, 63, 0.98), rgba(26, 64, 50, 0.98));
  border-color: rgba(147, 211, 131, 0.38);
}

#trends-latest-round-top .trend-latest-round-grid .trend-kpi-card.trend-improved::before {
  background: rgba(147, 211, 131, 0.92);
}

#trends-latest-round-top .trend-latest-round-grid .trend-kpi-card.trend-stable,
#trends-latest-round-top .trend-latest-round-grid .trend-kpi-card.trend-empty {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0) 42%),
    linear-gradient(180deg, rgba(43, 75, 70, 0.98), rgba(28, 57, 54, 0.98));
  border-color: rgba(117, 179, 214, 0.28);
}

#trends-latest-round-top .trend-latest-round-grid .trend-kpi-card.trend-stable::before,
#trends-latest-round-top .trend-latest-round-grid .trend-kpi-card.trend-empty::before {
  background: rgba(117, 179, 214, 0.76);
}

#trends-latest-round-top .trend-latest-round-grid .trend-kpi-card.trend-worse {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0) 42%),
    linear-gradient(180deg, rgba(82, 50, 45, 0.98), rgba(63, 40, 37, 0.98));
  border-color: rgba(212, 107, 107, 0.38);
}

#trends-latest-round-top .trend-latest-round-grid .trend-kpi-card.trend-worse::before {
  background: rgba(212, 107, 107, 0.9);
}

/* Lesbarkeit: Laufende Durchschnittswerte und Durchschnittsverlauf etwas dunkler. */
.trend-average-overview .trend-average-combined-card {
  background:
    linear-gradient(145deg, rgba(64, 104, 83, 0.98) 0%, rgba(39, 82, 65, 0.98) 48%, rgba(23, 58, 47, 0.98) 100%);
}

.trend-par-average-grid .trend-par-average-chart,
.trend-average-chart-grid .trend-average-chart {
  background:
    linear-gradient(145deg, rgba(60, 91, 108, 0.98) 0%, rgba(40, 75, 96, 0.98) 48%, rgba(25, 56, 76, 0.98) 100%);
}

/* Vergleich letzter Rundenwert gegen aktuellen Schnitt: besser/gruen, gleich/blau, schlechter/rot. */
.trend-average-overview .trend-average-combined-card.trend-improved,
.trend-category-average-card.trend-improved,
.trend-par-average-grid .trend-par-average-chart.trend-improved {
  background:
    linear-gradient(145deg, rgba(91, 127, 107, 0.98) 0%, rgba(56, 103, 83, 0.98) 48%, rgba(34, 78, 64, 0.98) 100%);
  border-color: rgba(147, 211, 131, 0.86);
}

.trend-average-overview .trend-average-combined-card.trend-stable,
.trend-category-average-card.trend-stable,
.trend-par-average-grid .trend-par-average-chart.trend-stable {
  background:
    linear-gradient(145deg, rgba(88, 117, 134, 0.98) 0%, rgba(57, 94, 116, 0.98) 48%, rgba(35, 70, 91, 0.98) 100%);
  border-color: rgba(117, 179, 214, 0.86);
}

.trend-average-overview .trend-average-combined-card.trend-worse,
.trend-category-average-card.trend-worse,
.trend-par-average-grid .trend-par-average-chart.trend-worse {
  background:
    linear-gradient(145deg, rgba(133, 74, 70, 0.98) 0%, rgba(118, 62, 59, 0.98) 48%, rgba(84, 49, 47, 0.98) 100%);
  border-color: rgba(212, 107, 107, 0.88);
}

/* Codex: keep compact trend cards readable when long labels meet narrow widths. */
.trend-summary-grid,
.trend-average-grid {
  min-width: 0;
}

.trend-metric-card,
.trend-average-combined-card,
.trend-average-card {
  min-width: 0;
  overflow: hidden;
}

.trend-metric-card h3,
.trend-metric-card .trend-metric-title,
.trend-average-combined-card h3,
.trend-average-combined-card .trend-average-title,
.trend-average-card h3,
.trend-average-card .trend-average-title {
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: auto;
  line-height: 1.15;
}

.trend-metric-card .trend-comparison,
.trend-metric-card small,
.trend-average-combined-card .trend-comparison,
.trend-average-combined-card small,
.trend-average-card .trend-comparison,
.trend-average-card small {
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: auto;
}

/* Codex: the compact top trend cards use .label for their headings. */
#trends-latest-round-top .trend-latest-round-grid .trend-metric-card .label,
.trend-summary-grid .trend-metric-card .label {
  display: block;
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: auto;
  line-height: 1.15;
}



.course-filter-page .section-header {
  align-items: end;
  flex-wrap: wrap;
}
.course-filter-page .section-header > div {
  flex: 1 1 24rem;
  min-width: 0;
}
.course-filter-page .section-header .ghost-link {
  flex: 0 1 12rem;
  max-width: 100%;
}
.course-filter-panel {
  display: grid;
  gap: 1rem;
  max-width: 100%;
  overflow-x: hidden;
}
.course-filter-toolbar {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(13rem, 100%), 1fr));
  gap: 0.85rem;
  align-items: end;
}
.course-filter-toolbar label {
  display: grid;
  gap: 0.35rem;
  min-width: 0;
  color: var(--text);
  font-weight: 850;
}
.course-filter-toolbar select,
.course-filter-toolbar input {
  max-width: 100%;
  min-width: 0;
  width: 100%;
}
#settings-facility-page-region-filter {
  min-width: 11rem;
  width: auto;
}
.course-filter-toolbar .course-filter-checkbox {
  align-self: end;
  display: block !important;
  justify-self: start;
  min-height: 2.6rem;
  max-width: max-content;
  width: max-content !important;
  white-space: nowrap;
}
.course-filter-checkbox-inner {
  align-items: center;
  display: inline-flex;
  gap: 0.32rem;
  width: max-content;
}
.course-filter-checkbox-inner span {
  flex: 0 0 auto;
}
.course-filter-checkbox-inner input {
  accent-color: var(--gold);
  flex: 0 0 1rem;
  height: 1rem;
  margin: 0;
  width: 1rem !important;
}
.player-filter-toolbar {
  grid-template-columns: minmax(14rem, 32rem);
}
.course-filter-summary {
  color: var(--muted);
  font-size: 0.95rem;
}
.course-filter-summary strong {
  color: var(--gold);
}
.course-filter-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(28rem, 1fr));
  gap: 0.8rem;
  align-items: start;
}
#settings-facilities-page-form .course-filter-toolbar {
  grid-template-columns: repeat(auto-fit, minmax(min(13rem, 100%), 1fr));
}
#settings-facilities-page-form .course-filter-toolbar .course-filter-checkbox {
  max-width: 100%;
  width: 100% !important;
}
#settings-facilities-page-form .course-filter-checkbox-inner {
  width: 100%;
  max-width: 100%;
}
#settings-facilities-page-form .course-filter-list {
  grid-template-columns: repeat(auto-fit, minmax(min(22rem, 100%), 1fr));
}
#settings-courses-form .course-filter-list {
  grid-template-columns: repeat(auto-fit, minmax(min(34rem, 100%), min(46rem, 100%)));
  justify-content: start;
}
#settings-courses-form .course-filter-toolbar {
  grid-template-columns: minmax(12rem, 0.95fr) minmax(6rem, 8rem) minmax(14rem, 1.25fr);
}
.player-filter-list {
  grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
}
.course-filter-card {
  display: grid;
  gap: 0.65rem;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  padding: 0.85rem 0.95rem;
  border: 1px solid rgba(174, 217, 185, 0.25);
  border-radius: 10px;
  background:
    radial-gradient(circle at 18% 10%, rgba(255, 255, 255, 0.08), transparent 32%),
    linear-gradient(145deg, rgba(61, 105, 82, 0.78), rgba(19, 48, 38, 0.88));
}
.course-filter-card[hidden] {
  display: none;
}
.course-filter-card-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.7rem;
  align-items: center;
  cursor: pointer;
}
.course-filter-card-head input {
  width: 1.05rem;
  min-width: 1.05rem;
  accent-color: var(--gold);
}
.course-filter-card-head span {
  display: grid;
  gap: 0.12rem;
  min-width: 0;
}
.course-filter-card-head strong {
  color: var(--text);
  font-size: 1.05rem;
}
.course-filter-card-head small {
  color: var(--muted);
  line-height: 1.25;
}
.course-filter-details {
  display: grid;
  gap: 0.85rem;
  margin: 0 0 0 1.75rem;
  min-width: 0;
}
.course-filter-tee-group {
  display: grid;
  gap: 0.35rem;
  min-width: 0;
}
.course-filter-tee-group h4 {
  margin: 0;
  color: var(--gold);
  font-weight: 850;
  font-size: 0.95rem;
}
.course-filter-tee-table-wrap {
  overflow: visible;
  max-width: 100%;
}
.course-filter-tee-table {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  overflow: hidden;
  border: 1px solid rgba(174, 217, 185, 0.16);
  border-radius: 8px;
  background: rgba(3, 19, 14, 0.34);
}
.course-filter-tee-table th,
.course-filter-tee-table td {
  padding: 0.44rem 0.45rem;
  border-bottom: 1px solid rgba(174, 217, 185, 0.12);
  color: var(--text);
  line-height: 1.25;
  text-align: left;
  overflow-wrap: anywhere;
  white-space: normal;
}
.course-filter-tee-table th:first-child,
.course-filter-tee-table td:first-child {
  width: 38%;
}
.course-filter-tee-table th {
  color: var(--gold);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
.course-filter-tee-table th:not(:first-child),
.course-filter-tee-table td:not(:first-child) {
  text-align: right;
  width: 20.666%;
}
.course-filter-tee-table tr:last-child td {
  border-bottom: 0;
}
.course-filter-details .muted {
  margin: 0;
  color: var(--muted);
  line-height: 1.35;
}
.course-filter-actions {
  position: sticky;
  bottom: 0.75rem;
  z-index: 2;
  display: grid;
  grid-template-columns: auto auto;
  align-items: center;
  gap: 0.65rem;
  width: fit-content;
  max-width: 100%;
  padding: 0.75rem;
  border: 1px solid rgba(174, 217, 185, 0.16);
  border-radius: 10px;
  background: rgba(17, 39, 31, 0.94);
  backdrop-filter: blur(10px);
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.28);
}
.course-filter-actions span {
  grid-column: 1 / -1;
  width: auto;
}
.course-filter-actions button,
.course-filter-actions .button-link {
  box-sizing: border-box;
  display: grid;
  grid-template-rows: minmax(1.4rem, auto) 1fr;
  align-items: start;
  justify-items: center;
  gap: 0.35rem;
  height: 5.35rem;
  width: 7.35rem;
  min-width: 0;
  min-height: 5.35rem;
  padding: 0.58rem 0.55rem 0.5rem;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 8px;
  color: #fffdf7;
  font-size: 0.9rem;
  font-weight: 950;
  line-height: 1.05;
  text-align: center;
  text-decoration: none;
  text-shadow: 0 2px 5px rgba(0, 0, 0, 0.38);
  box-shadow:
    0 12px 22px rgba(0, 0, 0, 0.24),
    inset 0 1px 0 rgba(255, 255, 255, 0.35);
  cursor: pointer;
  transition:
    transform 140ms ease,
    box-shadow 140ms ease,
    filter 140ms ease;
}
.course-filter-actions button {
  background: linear-gradient(145deg, rgba(111, 92, 143, 0.98), rgba(88, 75, 126, 0.98) 48%, rgba(62, 56, 96, 0.98));
}
.course-filter-actions .button-link {
  background: linear-gradient(145deg, rgba(73, 111, 130, 0.98), rgba(49, 87, 106, 0.98) 48%, rgba(36, 63, 79, 0.98));
}
.course-filter-actions button::after,
.course-filter-actions .button-link::after {
  content: "";
  display: block;
  align-self: center;
  width: 2.85rem;
  aspect-ratio: 1;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  filter:
    drop-shadow(0 7px 5px rgba(0, 0, 0, 0.45))
    drop-shadow(0 2px 1px rgba(0, 0, 0, 0.35));
}
.course-filter-actions button::after {
  background-image: url("/static/images/action-save.png");
  width: 2.35rem;
}
.course-filter-actions .button-link::after {
  background-image: url("/static/images/action-back.png");
}
.course-filter-actions button:hover,
.course-filter-actions .button-link:hover {
  transform: translateY(-1px);
  filter: brightness(1.05);
  box-shadow:
    0 16px 28px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.48);
}
.button-link,
.ghost-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.6rem;
  padding: 0.72rem 1rem;
  border: 1px solid rgba(211, 170, 77, 0.42);
  border-radius: 8px;
  color: var(--text);
  text-decoration: none;
  font-weight: 850;
  background: rgba(255,255,255,0.04);
}
.button-link:hover,
.ghost-link:hover {
  border-color: rgba(211, 170, 77, 0.72);
}
@media (max-width: 980px) {
  .course-filter-page .section-header {
    align-items: start;
  }
  .course-filter-page .section-header .ghost-link {
    justify-content: flex-start;
    width: fit-content;
  }
  #settings-courses-form .course-filter-toolbar {
    grid-template-columns: minmax(0, 1fr) minmax(7rem, 10rem);
  }
  #settings-courses-form .course-filter-toolbar label:last-child {
    grid-column: 1 / -1;
  }
}
@media (max-width: 760px) {
  .player-round-report {
    padding: 0.85rem;
  }
  .player-round-report-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }
  .player-round-report-link {
    justify-self: start;
  }
  .player-round-report-metrics,
  .player-round-report-insights {
    grid-template-columns: minmax(0, 1fr);
  }
  .admin-player-profile-lab-top-report .player-round-report-metrics,
  .admin-player-profile-lab-top-report .player-round-report-insights {
    grid-template-columns: minmax(0, 1fr);
  }
  .course-filter-page {
    max-width: 100%;
    min-width: 0;
    overflow-x: hidden;
  }
  .course-filter-page .section-header {
    align-items: start;
  }
  .course-filter-toolbar {
    grid-template-columns: minmax(0, 1fr);
  }
  #settings-courses-form .course-filter-toolbar {
    grid-template-columns: minmax(0, 1fr);
  }
  #settings-facility-page-region-filter,
  .course-filter-toolbar .course-filter-checkbox {
    max-width: 100%;
    min-width: 0;
    width: 100% !important;
  }
  .course-filter-checkbox-inner {
    width: 100%;
  }
  .course-filter-list,
  .player-filter-list {
    grid-template-columns: minmax(0, 1fr);
  }
  #settings-courses-form .course-filter-list {
    grid-template-columns: minmax(0, 1fr);
  }
  .course-filter-card {
    border-radius: 8px;
    padding: 0.8rem;
  }
  .course-filter-card-head {
    grid-template-columns: 1.8rem minmax(0, 1fr);
    gap: 0.55rem;
  }
  .course-filter-card-head input {
    justify-self: center;
  }
  .course-filter-details {
    margin-left: 0;
  }
  .course-filter-panel {
    overflow-x: hidden;
    padding-bottom: 7.25rem;
  }
  .course-filter-actions {
    bottom: max(0.5rem, env(safe-area-inset-bottom));
    width: 100%;
    grid-template-columns: 1fr 1fr;
    padding: 0.55rem;
  }
  .course-filter-actions button,
  .course-filter-actions .button-link {
    height: 4.45rem;
    min-height: 4.45rem;
    width: 100%;
  }
  .course-filter-actions button::after {
    width: 1.95rem;
  }
  .course-filter-actions .button-link::after {
    width: 2.35rem;
  }
}

/* Admin-only trend redesign lab */
.admin-trend-lab-page {
  --lab-panel: rgba(13, 32, 50, 0.92);
  --lab-card: #112842;
  --lab-card-soft: #172f49;
  --lab-border: rgba(126, 169, 211, 0.18);
  --lab-text: #f5f7fb;
  --lab-muted: #aebccd;
  --lab-title: #ffffff;
  display: grid;
  gap: 1rem;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-trend-lab-page {
  --lab-panel: rgba(255, 255, 255, 0.78);
  --lab-card: #ffffff;
  --lab-card-soft: #f8faf6;
  --lab-border: rgba(28, 44, 38, 0.12);
  --lab-text: #141817;
  --lab-muted: #607069;
  --lab-title: #111615;
}
.admin-trend-lab-header {
  align-items: end;
}
body.admin-trend-lab-route .admin-trend-lab-header .eyebrow {
  color: #8eb7e8;
}
body.admin-trend-lab-route .admin-trend-lab-header h2 {
  color: #f8fbff;
}
body.admin-trend-lab-route .admin-trend-lab-header p:not(.eyebrow) {
  color: #b8c7d8;
}
body.admin-trend-lab-route .admin-trend-lab-header .section-emotion {
  color: #f8fbff;
  font-weight: 900;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-trend-lab-header .eyebrow {
  color: #4f755a;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-trend-lab-header h2 {
  color: #111615;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-trend-lab-header p:not(.eyebrow) {
  color: #586960;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-trend-lab-header .section-emotion {
  color: #111615;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-trend-lab-header .admin-trend-lab-info {
  color: #68786f;
  border-color: rgba(88, 105, 96, 0.48);
}
.admin-trend-lab-theme-toggle {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.25rem;
  border: 1px solid var(--lab-border, rgba(174, 217, 185, 0.24));
  border-radius: 999px;
  background: color-mix(in srgb, var(--lab-panel, rgba(6, 25, 18, 0.42)) 82%, transparent);
}
.admin-trend-lab-theme-toggle button {
  display: grid;
  place-items: center;
  width: 2.05rem;
  height: 2.05rem;
  min-height: 0;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 999px;
  color: var(--muted);
  font-weight: 950;
  background: transparent;
  cursor: pointer;
}
.admin-trend-lab-theme-toggle button::before {
  content: "";
  display: block;
  width: 0.88rem;
  height: 0.88rem;
  border-radius: 50%;
}
.admin-trend-lab-theme-button-light::before {
  background: #d6aa45;
  box-shadow:
    0 0 0 0.16rem rgba(214, 170, 69, 0.2),
    0 0 0.55rem rgba(214, 170, 69, 0.45);
}
.admin-trend-lab-theme-button-dark::before {
  background: #8eb7e8;
  box-shadow:
    inset -0.34rem 0 0 #10243a,
    0 0 0.45rem rgba(142, 183, 232, 0.28);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-trend-lab-theme-toggle {
  background: rgba(255, 255, 255, 0.64);
  border-color: rgba(28, 44, 38, 0.14);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-trend-lab-theme-button-dark::before {
  box-shadow:
    inset -0.34rem 0 0 #ffffff,
    0 0 0.45rem rgba(73, 91, 85, 0.18);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-trend-lab-theme-toggle button.active {
  border-color: rgba(79, 159, 98, 0.42);
  background: rgba(255, 255, 255, 0.88);
}
.admin-trend-lab-theme-toggle button.active {
  border-color: color-mix(in srgb, var(--lab-blue, #64a7ff) 52%, transparent);
  background: color-mix(in srgb, var(--lab-card, #112842) 72%, transparent);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.16);
}
.admin-trend-lab-shell {
  --lab-bg: #071827;
  --lab-panel: rgba(13, 32, 50, 0.92);
  --lab-card: #112842;
  --lab-card-soft: #172f49;
  --lab-border: rgba(126, 169, 211, 0.18);
  --lab-grid: rgba(126, 169, 211, 0.1);
  --lab-text: #f5f7fb;
  --lab-muted: #aebccd;
  --lab-title: #ffffff;
  --lab-green: #6bbd85;
  --lab-red: #f0716b;
  --lab-blue: #64a7ff;
  --lab-gold: #d6aa45;
  --lab-shadow: 0 18px 46px rgba(0, 0, 0, 0.32);
  display: grid;
  gap: 1rem;
  min-width: 0;
  padding: clamp(0.8rem, 1.3vw, 1.15rem);
  border: 1px solid var(--lab-border);
  border-radius: 12px;
  color: var(--lab-text);
  background:
    radial-gradient(circle at 82% 10%, rgba(77, 137, 207, 0.18), transparent 28rem),
    linear-gradient(180deg, var(--lab-bg), #08111e);
  box-shadow: var(--lab-shadow);
}
.admin-trend-lab-shell[data-theme="light"] {
  --lab-bg: #f4f1ea;
  --lab-panel: rgba(255, 255, 255, 0.78);
  --lab-card: #ffffff;
  --lab-card-soft: #f8faf6;
  --lab-border: rgba(28, 44, 38, 0.12);
  --lab-grid: rgba(64, 119, 73, 0.16);
  --lab-text: #141817;
  --lab-muted: #607069;
  --lab-title: #111615;
  --lab-green: #5aa968;
  --lab-red: #dc625d;
  --lab-blue: #4f9a63;
  --lab-gold: #b28325;
  --lab-shadow: 0 18px 46px rgba(25, 31, 28, 0.14);
  background:
    radial-gradient(circle at 80% 0%, rgba(111, 177, 126, 0.2), transparent 24rem),
    linear-gradient(180deg, var(--lab-bg), #eeeae2);
}

.achievements-page {
  --lab-bg: #071827;
  --lab-panel: rgba(13, 32, 50, 0.92);
  --lab-card: #112842;
  --lab-card-soft: #172f49;
  --lab-border: rgba(126, 169, 211, 0.18);
  --lab-grid: rgba(126, 169, 211, 0.1);
  --lab-text: #f5f7fb;
  --lab-muted: #aebccd;
  --lab-title: #ffffff;
  --lab-green: #6bbd85;
  --lab-red: #f0716b;
  --lab-blue: #64a7ff;
  --lab-gold: #d6aa45;
  display: grid;
  gap: 1rem;
}

body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .achievements-page {
  --lab-bg: #f4f1ea;
  --lab-panel: rgba(255, 255, 255, 0.78);
  --lab-card: #ffffff;
  --lab-card-soft: #f8faf6;
  --lab-border: rgba(28, 44, 38, 0.12);
  --lab-grid: rgba(64, 119, 73, 0.16);
  --lab-text: #141817;
  --lab-muted: #607069;
  --lab-title: #111615;
  --lab-green: #5aa968;
  --lab-red: #dc625d;
  --lab-blue: #4f9a63;
  --lab-gold: #b28325;
}

.achievements-header h2 {
  max-width: 17ch;
}

.page-content-frame-achievements {
  padding: clamp(0.9rem, 1.5vw, 1.25rem);
}

.achievements-shell {
  gap: clamp(1rem, 1.8vw, 1.35rem);
}

.achievements-hero-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(16rem, 23rem);
  gap: 1rem;
  align-items: stretch;
  min-width: 0;
  padding: clamp(1rem, 2vw, 1.35rem);
  border: 1px solid color-mix(in srgb, var(--lab-gold) 28%, var(--lab-border));
  border-radius: 12px;
  background:
    radial-gradient(circle at 16% 18%, color-mix(in srgb, var(--lab-gold) 18%, transparent), transparent 18rem),
    radial-gradient(circle at 86% 20%, color-mix(in srgb, var(--lab-blue) 14%, transparent), transparent 18rem),
    linear-gradient(135deg, color-mix(in srgb, var(--lab-card) 92%, transparent), color-mix(in srgb, var(--lab-card-soft) 86%, transparent));
}

.achievements-hero-copy {
  display: flex;
  align-items: center;
  gap: clamp(0.8rem, 1.4vw, 1.15rem);
  min-width: 0;
}

.achievement-hero-icon {
  display: grid;
  place-items: center;
  width: clamp(4.4rem, 7vw, 6.4rem);
  aspect-ratio: 1;
  flex: 0 0 auto;
  border: 1px solid color-mix(in srgb, var(--lab-gold) 58%, transparent);
  border-radius: 50%;
  color: var(--lab-gold);
  background:
    radial-gradient(circle at 34% 28%, color-mix(in srgb, var(--lab-title) 18%, transparent), transparent 1.9rem),
    linear-gradient(145deg, color-mix(in srgb, var(--lab-gold) 18%, var(--lab-card)), color-mix(in srgb, var(--lab-card-soft) 92%, transparent));
  box-shadow: 0 18px 36px color-mix(in srgb, var(--lab-gold) 13%, transparent);
}

.achievement-hero-collection-icon {
  overflow: visible;
  border-color: color-mix(in srgb, var(--lab-gold) 34%, transparent);
  background: color-mix(in srgb, var(--lab-card) 72%, transparent);
}

.achievement-hero-collection-icon img {
  display: block;
  width: 138%;
  height: 138%;
  object-fit: contain;
}

.achievement-hero-icon svg,
.achievement-summary-icon svg,
.achievement-badge-icon svg,
.achievement-lock-icon svg,
.achievement-detail-icon svg {
  width: 58%;
  height: 58%;
}

.achievements-hero-copy strong {
  display: block;
  color: var(--lab-title);
  font-size: clamp(1.35rem, 2.2vw, 2.1rem);
  line-height: 1.05;
}

.achievements-hero-copy p,
.achievements-section-head p {
  max-width: 48rem;
  margin: 0.45rem 0 0;
  color: var(--lab-muted);
}

.achievements-progress-card,
.achievement-summary-tile,
.achievement-badge-card {
  border: 1px solid var(--lab-border);
  color: var(--lab-text);
  background: color-mix(in srgb, var(--lab-card-soft) 72%, transparent);
}

.achievements-progress-card {
  display: grid;
  align-content: center;
  gap: 0.8rem;
  min-width: 0;
  padding: 1rem;
  border-radius: 10px;
}

.achievements-progress-head {
  display: flex;
  align-items: baseline;
  gap: 0.55rem;
  flex-wrap: wrap;
}

.achievements-progress-head strong {
  color: var(--lab-title);
  font-size: clamp(1.8rem, 3vw, 2.6rem);
  line-height: 1;
}

.achievements-progress-head span,
.achievements-progress-meta,
.achievement-badge-foot {
  color: var(--lab-muted);
}

.achievements-progress-meta {
  display: flex;
  justify-content: space-between;
  gap: 0.8rem;
  flex-wrap: wrap;
  font-weight: 750;
  font-size: 0.88rem;
}

.achievement-progress {
  display: block;
  overflow: hidden;
  width: 100%;
  height: 0.55rem;
  border: 1px solid color-mix(in srgb, var(--lab-border) 76%, transparent);
  border-radius: 999px;
  background: color-mix(in srgb, var(--lab-bg) 62%, transparent);
}

.achievement-progress span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--lab-green), var(--lab-gold));
}

.achievements-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.8rem;
}

.achievement-summary-tile {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  grid-template-areas:
    "icon label"
    "icon value"
    "icon text";
  column-gap: 0.75rem;
  align-items: center;
  min-width: 0;
  min-height: 6.25rem;
  padding: 0.9rem;
  border-radius: 10px;
}

.achievement-summary-icon {
  grid-area: icon;
  display: grid;
  place-items: center;
  width: 2.65rem;
  aspect-ratio: 1;
  border-radius: 50%;
  color: var(--lab-gold);
  background: color-mix(in srgb, var(--lab-gold) 13%, transparent);
}

.achievement-summary-image-wrap {
  overflow: visible;
  background: color-mix(in srgb, var(--lab-card) 54%, transparent);
}

.achievement-summary-image-wrap img {
  display: block;
  width: 118%;
  height: 118%;
  object-fit: contain;
}

.achievement-summary-tile > span:not(.achievement-summary-icon) {
  grid-area: label;
  color: var(--lab-muted);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.achievement-summary-tile strong {
  grid-area: value;
  color: var(--lab-title);
  font-size: 1.25rem;
  line-height: 1.05;
}

.achievement-summary-tile small {
  grid-area: text;
  color: var(--lab-muted);
}

.achievements-next-section,
.achievements-badge-grid {
  min-width: 0;
}

.achievements-section-head {
  display: grid;
  gap: 0.25rem;
}

.achievements-section-head h3 {
  margin: 0;
  color: var(--lab-title);
  font-size: clamp(1.15rem, 1.6vw, 1.45rem);
}

.achievements-next-grid,
.achievements-badge-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.9rem;
  margin-top: 0.85rem;
}

.achievements-category-strip {
  display: flex;
  gap: 0.55rem;
  overflow-x: auto;
  padding: 0.15rem 0 0.2rem;
  scrollbar-width: thin;
}

.achievements-category-strip button {
  flex: 0 0 auto;
  min-height: 2.2rem;
  padding: 0.42rem 0.85rem;
  border: 1px solid var(--lab-border);
  border-radius: 999px;
  color: var(--lab-muted);
  background: color-mix(in srgb, var(--lab-card-soft) 58%, transparent);
  font: inherit;
  font-weight: 800;
  cursor: pointer;
  transition: border-color 150ms ease, background 150ms ease, color 150ms ease, transform 150ms ease;
}

.achievements-category-strip button.active {
  border-color: color-mix(in srgb, var(--lab-gold) 58%, transparent);
  color: var(--lab-title);
  background: color-mix(in srgb, var(--lab-gold) 14%, var(--lab-card));
}

.achievements-category-strip button:hover,
.achievements-category-strip button:focus-visible {
  border-color: color-mix(in srgb, var(--lab-gold) 45%, var(--lab-border));
  color: var(--lab-title);
  transform: translateY(-1px);
}

.achievements-empty-filter {
  margin: 0.2rem 0 0;
  padding: 1rem;
  border: 1px solid var(--lab-border);
  border-radius: 10px;
  color: var(--lab-muted);
  background: color-mix(in srgb, var(--lab-card-soft) 72%, transparent);
}

.achievement-badge-card[hidden],
.achievements-empty-filter[hidden] {
  display: none;
}

.achievement-badge-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.8rem 0.95rem;
  align-items: center;
  min-width: 0;
  min-height: 11.5rem;
  padding: 1rem;
  border-radius: 10px;
  text-align: left;
  font: inherit;
  cursor: pointer;
  box-shadow: none;
}

.achievement-badge-card:hover,
.achievement-badge-card:focus-visible {
  transform: translateY(-1px);
  border-color: color-mix(in srgb, var(--lab-gold) 52%, var(--lab-border));
  background: color-mix(in srgb, var(--lab-card) 78%, var(--lab-card-soft));
}

.achievement-badge-card.is-special {
  border-color: color-mix(in srgb, var(--achievement-tier-color, var(--lab-gold)) 42%, var(--lab-border));
}

.achievement-badge-art {
  position: relative;
  display: grid;
  place-items: center;
  width: clamp(4.2rem, 6.5vw, 5.4rem);
  aspect-ratio: 1;
  border: 1px solid color-mix(in srgb, var(--achievement-tier-color, var(--lab-border)) 62%, transparent);
  border-radius: 50%;
  color: var(--achievement-tier-color, var(--lab-gold));
  background:
    radial-gradient(circle at 36% 28%, color-mix(in srgb, var(--lab-title) 18%, transparent), transparent 1.35rem),
    linear-gradient(145deg, color-mix(in srgb, var(--achievement-tier-color, var(--lab-gold)) 20%, var(--lab-card)), color-mix(in srgb, var(--lab-card-soft) 90%, transparent));
}

.achievement-badge-icon,
.achievement-detail-icon {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
}

.achievement-image-wrap {
  overflow: visible;
  border-radius: 0;
}

.achievement-badge-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: filter 180ms ease, opacity 180ms ease, transform 180ms ease;
}

.achievement-badge-card.is-locked .achievement-badge-image,
.achievement-detail-art.is-locked .achievement-badge-image {
  filter: none;
  opacity: 1;
}

.achievement-badge-card.is-locked:hover .achievement-badge-image,
.achievement-badge-card.is-locked:focus-visible .achievement-badge-image {
  opacity: 1;
}

.achievement-badge-card.is-unlocked .achievement-badge-image,
.achievement-detail-art.is-unlocked .achievement-badge-image {
  filter: none;
  opacity: 1;
}

.achievement-badge-card:hover .achievement-badge-image,
.achievement-badge-card:focus-visible .achievement-badge-image {
  transform: scale(1.025);
}

.achievement-badge-card.is-special .achievement-badge-art,
.achievement-detail-art.is-special {
  border-color: transparent;
  border-radius: 0;
  background: none;
}

.achievement-badge-card.is-special .achievement-badge-art {
  width: clamp(4.9rem, 7.2vw, 6.1rem);
}

.achievement-badge-card.is-special .achievement-badge-image {
  transform: scale(1.08);
}

.achievement-badge-card.is-special:hover .achievement-badge-image,
.achievement-badge-card.is-special:focus-visible .achievement-badge-image {
  transform: scale(1.115);
}

.achievement-lock {
  position: absolute;
  right: -0.12rem;
  top: -0.12rem;
  display: grid;
  place-items: center;
  width: 1.45rem;
  aspect-ratio: 1;
  border: 1px solid color-mix(in srgb, var(--lab-border) 80%, transparent);
  border-radius: 50%;
  color: var(--lab-muted);
  background: var(--lab-card);
}

.achievement-badge-copy {
  display: grid;
  gap: 0.28rem;
  min-width: 0;
}

.achievement-badge-meta {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  min-width: 0;
  flex-wrap: wrap;
}

.achievement-badge-category,
.achievement-detail-category {
  color: var(--achievement-tier-color, var(--lab-gold));
  font-size: 0.76rem;
  font-weight: 950;
  letter-spacing: 0;
  text-transform: uppercase;
}

.achievement-badge-special {
  display: inline-flex;
  align-items: center;
  min-height: 1.25rem;
  padding: 0.12rem 0.42rem;
  border: 1px solid color-mix(in srgb, var(--lab-gold) 46%, var(--lab-border));
  border-radius: 999px;
  color: var(--lab-title);
  background: color-mix(in srgb, var(--lab-gold) 14%, var(--lab-card-soft));
  font-size: 0.68rem;
  font-weight: 900;
  line-height: 1;
}

.achievement-badge-copy strong {
  color: var(--lab-title);
  font-size: 1.12rem;
  line-height: 1.12;
}

.achievement-badge-copy small {
  color: var(--lab-muted);
  line-height: 1.35;
}

.achievement-badge-foot {
  grid-column: 1 / -1;
  display: flex;
  justify-content: space-between;
  gap: 0.8rem;
  font-size: 0.86rem;
  font-weight: 800;
}

.achievement-badge-card .achievement-progress {
  grid-column: 1 / -1;
  height: 0.45rem;
}

.achievement-tier-bronze {
  --achievement-tier-color: #c58a55;
}

.achievement-tier-silver {
  --achievement-tier-color: #b8c5ca;
}

.achievement-tier-gold {
  --achievement-tier-color: var(--lab-gold);
}

.achievement-tier-platinum {
  --achievement-tier-color: #79c7df;
}

.achievement-tier-diamond {
  --achievement-tier-color: #74f0ff;
}

.achievement-detail-backdrop {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: grid;
  place-items: center;
  padding: 1rem;
  background: rgba(2, 8, 14, 0.68);
  backdrop-filter: blur(14px);
}

.achievement-detail-backdrop[hidden] {
  display: none;
}

.achievement-detail-card {
  position: relative;
  display: grid;
  justify-items: center;
  gap: 0;
  width: min(34rem, 100%);
  max-height: calc(100dvh - 2rem);
  overflow-y: auto;
  padding: clamp(1.3rem, 4vw, 2.25rem);
  border: 1px solid var(--lab-border);
  border-radius: 14px;
  color: var(--lab-text);
  text-align: center;
  background:
    radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--lab-gold) 18%, transparent), transparent 16rem),
    linear-gradient(180deg, var(--lab-card), var(--lab-bg));
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.42);
}

.achievement-detail-close {
  position: absolute;
  right: 0.75rem;
  top: 0.75rem;
  display: grid;
  place-items: center;
  width: 2.2rem;
  aspect-ratio: 1;
  min-height: 0;
  padding: 0;
  border: 1px solid var(--lab-border);
  border-radius: 50%;
  color: var(--lab-title);
  background: color-mix(in srgb, var(--lab-card-soft) 78%, transparent);
  font-size: 1.3rem;
  line-height: 1;
}

.achievement-detail-art {
  justify-self: center;
  display: grid;
  place-items: center;
  width: min(18rem, 66vw);
  aspect-ratio: 1;
  margin: 0 auto clamp(1.15rem, 2.8vw, 1.65rem);
  border: 1px solid color-mix(in srgb, var(--achievement-tier-color, var(--lab-gold)) 62%, transparent);
  border-radius: 50%;
  color: var(--achievement-tier-color, var(--lab-gold));
  background:
    radial-gradient(circle at 36% 28%, color-mix(in srgb, var(--lab-title) 18%, transparent), transparent 4rem),
    linear-gradient(145deg, color-mix(in srgb, var(--achievement-tier-color, var(--lab-gold)) 22%, var(--lab-card)), color-mix(in srgb, var(--lab-card-soft) 92%, transparent));
  box-shadow: 0 22px 46px color-mix(in srgb, var(--achievement-tier-color, var(--lab-gold)) 16%, transparent);
}

.achievement-detail-art.is-special {
  width: min(20rem, 72vw);
  box-shadow: none;
}

.achievement-detail-copy {
  display: grid;
  justify-items: center;
  gap: 0.68rem;
  width: min(25rem, 100%);
  margin: 0 auto;
  text-align: center;
}

.achievement-detail-status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 1.8rem;
  padding: 0.32rem 0.72rem;
  border: 1px solid color-mix(in srgb, var(--achievement-tier-color, var(--lab-gold)) 46%, var(--lab-border));
  border-radius: 999px;
  color: var(--lab-title);
  background: color-mix(in srgb, var(--achievement-tier-color, var(--lab-gold)) 12%, var(--lab-card-soft));
  font-size: 0.72rem;
  font-weight: 950;
}

.achievement-detail-card h3 {
  margin: 0;
  color: var(--lab-title);
  font-size: clamp(1.45rem, 3vw, 2.08rem);
  line-height: 1.05;
}

.achievement-detail-card p {
  margin: 0;
  color: var(--lab-muted);
}

.achievement-detail-category {
  margin: 0;
}

.achievement-detail-emotion {
  max-width: 22rem;
  color: var(--lab-text);
  font-size: 0.92rem;
  line-height: 1.45;
}

.achievement-detail-task {
  display: grid;
  gap: 0.35rem;
  width: 100%;
  margin-top: 0.15rem;
  padding: 0.72rem 0.82rem;
  border: 1px solid color-mix(in srgb, var(--lab-border) 76%, transparent);
  border-radius: 10px;
  background: color-mix(in srgb, var(--lab-card-soft) 66%, transparent);
  text-align: left;
}

.achievement-detail-task span {
  color: var(--lab-gold);
  font-size: 0.72rem;
  font-weight: 950;
  text-transform: uppercase;
}

.achievement-detail-task p {
  color: var(--lab-text);
  font-size: 0.92rem;
  line-height: 1.45;
}

.achievement-detail-progress {
  display: grid;
  gap: 0.45rem;
  width: 100%;
  color: var(--lab-muted);
  font-size: 0.9rem;
  font-weight: 850;
}

.admin-trend-lab-shell[data-theme="light"] .achievement-detail-card,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .achievement-detail-card {
  background:
    radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--lab-gold) 18%, transparent), transparent 16rem),
    linear-gradient(180deg, #ffffff, #f4f1ea);
  box-shadow: 0 28px 70px rgba(25, 31, 28, 0.22);
}

.achievement-families {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 20px;
}

.achievement-family {
  flex: var(--achievement-count) 1 calc(var(--achievement-count) * 155px + (var(--achievement-count) - 1) * 8px);
  min-width: 0;
  max-width: min(100%, calc(var(--achievement-count) * 220px + (var(--achievement-count) - 1) * 8px));
  padding-top: 12px;
  border-top: 1px solid var(--lab-border);
}

.achievement-family[hidden] { display: none; }

.achievement-family-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 4px 12px;
  min-height: 40px;
  margin-bottom: 8px;
}

.achievement-family-head h3 { margin: 0; font-size: 18px; color: var(--lab-title); }
.achievement-family-head > span { color: var(--lab-muted); font-size: 12px; }

.achievement-family-grid {
  display: grid;
  grid-template-columns: repeat(var(--achievement-count), minmax(0, 1fr));
  gap: 8px;
}

.achievement-family-grid .achievement-badge-card {
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: 32px 72px 1fr auto auto 6px;
  align-items: start;
  gap: 8px;
  padding: 10px;
  min-height: 245px;
  border-radius: 8px;
}

.achievement-stage {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 4px 8px;
  color: var(--achievement-tier-color);
  font-size: 13px;
  font-weight: 800;
}
.achievement-stage small { font-size: 11px; color: var(--lab-muted); }
.achievement-family-grid .is-next { border-color: var(--lab-gold); }
.achievement-family-grid .is-next .achievement-stage small { color: var(--lab-gold); }
.achievement-family-grid .achievement-badge-card .achievement-badge-art {
  width: 72px;
  height: 72px;
  justify-self: center;
  border: 0;
  background: none;
}
.achievement-family-grid .achievement-badge-card .achievement-badge-image,
.achievement-family-grid .achievement-badge-card:hover .achievement-badge-image { transform: none; }
.achievement-family-grid .achievement-badge-copy { gap: 6px; }
.achievement-family-grid .achievement-badge-copy strong { font-size: 15px; line-height: 1.3; }
.achievement-family-grid .achievement-badge-copy small { display: none; }
.achievement-family-grid .achievement-badge-copy strong { overflow-wrap: anywhere; }
.achievement-remaining { font-size: 13px; font-weight: 800; color: var(--lab-title); }
.achievement-family-grid .achievement-badge-foot { flex-wrap: wrap; gap: 4px; font-size: 12px; color: var(--lab-muted); }
.achievement-family-grid .achievement-progress { height: 6px; align-self: end; }

@media (max-width: 900px) {
  .achievement-family-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 145px), 1fr)); }
}

@media (max-width: 640px) {
  .achievement-families { gap: 16px; }
  .achievement-family { flex-basis: 100%; max-width: 100%; }
  .achievement-family-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .achievement-family-grid .achievement-badge-card { min-height: 245px; }
  .achievement-family-head { flex-wrap: wrap; gap: 4px; }
  .achievement-family-grid .achievement-stage { min-height: 32px; align-content: start; }
  .achievement-family-grid .achievement-badge-copy strong { overflow-wrap: anywhere; }
}

@media (max-width: 359px) {
  .achievement-family-grid { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 980px) {
  .achievements-hero-panel,
  .achievements-summary-grid,
  .achievements-next-grid,
  .achievements-badge-grid {
    grid-template-columns: 1fr 1fr;
  }

  .achievements-progress-card {
    grid-column: 1 / -1;
  }
}

@media (max-width: 640px) {
  .page-content-frame-achievements {
    padding: 0.75rem;
  }

  .achievements-hero-panel,
  .achievements-summary-grid,
  .achievements-next-grid,
  .achievements-badge-grid {
    grid-template-columns: 1fr;
  }

  .achievements-hero-copy {
    align-items: flex-start;
  }

  .achievement-badge-card {
    min-height: 0;
  }

  .achievement-badge-art {
    width: 4.3rem;
  }
}

body.admin-trend-lab-route .settings-page {
  display: grid;
  gap: 1rem;
}
body.admin-trend-lab-route .settings-page .section-header {
  align-items: end;
  margin-bottom: 0;
}
body.admin-trend-lab-route .settings-page .section-header h2 {
  color: #f8fbff;
}
body.admin-trend-lab-route .settings-page .section-header p {
  color: #b8c7d8;
  margin-bottom: 0;
}
body.admin-trend-lab-route .settings-page .section-header .section-emotion {
  color: #f8fbff;
  font-weight: 900;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .settings-page .section-header h2 {
  color: #111615;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .settings-page .section-header p {
  color: #586960;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .settings-page .section-header .section-emotion {
  color: #111615;
}
.page-content-frame-settings {
  --lab-bg: #071827;
  --lab-panel: rgba(13, 32, 50, 0.92);
  --lab-card: #112842;
  --lab-card-soft: #172f49;
  --lab-border: rgba(126, 169, 211, 0.18);
  --lab-text: #f5f7fb;
  --lab-muted: #aebccd;
  --lab-title: #ffffff;
  --lab-green: #6bbd85;
  --lab-red: #f0716b;
  --lab-blue: #64a7ff;
  --lab-gold: #d6aa45;
  --lab-shadow: 0 18px 46px rgba(0, 0, 0, 0.32);
  display: grid;
  gap: 1rem;
  border-color: var(--lab-border);
  color: var(--lab-text);
  background:
    radial-gradient(circle at 82% 10%, rgba(77, 137, 207, 0.18), transparent 28rem),
    linear-gradient(180deg, var(--lab-bg), #08111e);
  box-shadow: var(--lab-shadow);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .page-content-frame-settings {
  --lab-bg: #f4f1ea;
  --lab-panel: rgba(255, 255, 255, 0.78);
  --lab-card: #ffffff;
  --lab-card-soft: #f8faf6;
  --lab-border: rgba(28, 44, 38, 0.12);
  --lab-text: #141817;
  --lab-muted: #607069;
  --lab-title: #111615;
  --lab-green: #5aa968;
  --lab-red: #dc625d;
  --lab-blue: #4f9a63;
  --lab-gold: #b28325;
  --lab-shadow: 0 18px 46px rgba(25, 31, 28, 0.14);
  background:
    radial-gradient(circle at 80% 0%, rgba(111, 177, 126, 0.2), transparent 24rem),
    linear-gradient(180deg, var(--lab-bg), #eeeae2);
}
body.admin-trend-lab-route .settings-page .settings-group {
  gap: 1rem;
  padding: clamp(0.8rem, 1.2vw, 1rem);
  border-color: var(--lab-border);
  border-radius: 12px;
  background: var(--lab-panel);
  box-shadow: none;
}
body.admin-trend-lab-route .settings-page .settings-group h3 {
  color: var(--lab-title);
  font-size: clamp(1.03rem, 1.25vw, 1.22rem);
  font-weight: 950;
}
body.admin-trend-lab-route .settings-page .settings-app-tile-grid {
  grid-template-columns: repeat(auto-fit, minmax(10.8rem, 1fr));
  gap: 0.85rem;
}
body.admin-trend-lab-route .settings-page .settings-app-tile {
  min-height: 11.6rem;
  padding: 0.95rem 0.85rem;
  border-color: var(--lab-border);
  border-radius: 10px;
  color: var(--lab-text);
  background:
    radial-gradient(circle at 24% 16%, color-mix(in srgb, var(--lab-blue) 16%, transparent), transparent 38%),
    linear-gradient(180deg, var(--lab-card), var(--lab-card-soft));
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.18);
}
body.admin-trend-lab-route .settings-page .settings-app-tile:hover,
body.admin-trend-lab-route .settings-page .settings-app-tile:focus-visible {
  border-color: color-mix(in srgb, var(--lab-green) 62%, transparent);
  background:
    radial-gradient(circle at 24% 16%, color-mix(in srgb, var(--lab-green) 18%, transparent), transparent 38%),
    linear-gradient(180deg, color-mix(in srgb, var(--lab-card) 90%, var(--lab-green) 10%), var(--lab-card-soft));
  box-shadow: 0 18px 34px rgba(0, 0, 0, 0.2), 0 0 0 1px color-mix(in srgb, var(--lab-green) 18%, transparent);
}
body.admin-trend-lab-route .settings-page .settings-app-tile[aria-pressed="false"] {
  border-color: var(--lab-border);
  background:
    radial-gradient(circle at 24% 16%, color-mix(in srgb, var(--lab-muted) 9%, transparent), transparent 38%),
    linear-gradient(180deg, color-mix(in srgb, var(--lab-card) 82%, #000 18%), color-mix(in srgb, var(--lab-card-soft) 82%, #000 18%));
  box-shadow: none;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .settings-page .settings-app-tile[aria-pressed="false"] {
  background:
    radial-gradient(circle at 24% 16%, rgba(88, 105, 96, 0.08), transparent 38%),
    linear-gradient(180deg, #fafbf8, #eef2ec);
}
body.admin-trend-lab-route .settings-page .settings-app-tile strong {
  min-height: 2.8rem;
  color: var(--lab-title);
  font-size: 1rem;
  line-height: 1.08;
  text-shadow: none;
}
body.admin-trend-lab-route .settings-page .settings-info-tip {
  border-color: color-mix(in srgb, var(--lab-gold) 42%, var(--lab-border));
  background: color-mix(in srgb, var(--lab-card-soft) 86%, var(--lab-blue) 14%);
  color: var(--lab-title);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.18);
}
body.admin-trend-lab-route .settings-page .settings-info-tip::after {
  border-color: color-mix(in srgb, var(--lab-gold) 46%, var(--lab-border));
  background: color-mix(in srgb, var(--lab-card) 96%, #000 4%);
  color: var(--lab-text);
  box-shadow: var(--lab-shadow);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .settings-page .settings-info-tip {
  background: rgba(255, 253, 247, 0.92);
  color: #755318;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .settings-page .settings-info-tip::after {
  background: rgba(255, 253, 247, 0.98);
  color: #18231f;
}
body.admin-trend-lab-route .settings-page .settings-app-icon {
  width: min(6.8rem, 62%);
}
body.admin-trend-lab-route .settings-page .settings-app-icon img {
  filter: drop-shadow(0 11px 10px rgba(0, 0, 0, 0.32));
}
body.admin-trend-lab-route .settings-page .settings-app-tile[aria-pressed="false"] .settings-app-icon img {
  opacity: 0.5;
}
body.admin-trend-lab-route .settings-page .settings-app-select-tile select,
body.admin-trend-lab-route .settings-page .settings-hcp-form input,
body.admin-trend-lab-route .settings-page .settings-hcp-form select,
body.admin-trend-lab-route .settings-page .settings-select-row select {
  border-color: var(--lab-border);
  color: var(--lab-text);
  background: color-mix(in srgb, var(--lab-card) 88%, transparent);
}
body.admin-trend-lab-route .settings-page .settings-legal-links {
  justify-content: center;
  gap: 0.55rem;
  padding: 0;
  border: 0;
  border-radius: 0;
  color: var(--lab-muted);
  background: transparent;
}
body.admin-trend-lab-route .settings-page .settings-legal-links a {
  display: inline-flex;
  align-items: center;
  min-height: 2.1rem;
  padding: 0.42rem 0.78rem;
  border: 1px solid var(--lab-border);
  border-radius: 999px;
  color: var(--lab-title);
  background: color-mix(in srgb, var(--lab-card) 64%, transparent);
  text-decoration: none;
}
body.admin-trend-lab-route .settings-page .settings-legal-links a:hover,
body.admin-trend-lab-route .settings-page .settings-legal-links a:focus-visible {
  color: var(--lab-title);
  border-color: color-mix(in srgb, var(--lab-title) 28%, var(--lab-border));
  background: color-mix(in srgb, var(--lab-card-soft) 82%, transparent);
  text-decoration: none;
}
body.admin-trend-lab-route .settings-modal-backdrop .settings-hcp-form {
  --lab-card: #112842;
  --lab-card-soft: #172f49;
  --lab-border: rgba(126, 169, 211, 0.22);
  --lab-text: #f5f7fb;
  --lab-muted: #aebccd;
  --lab-gold: #d6aa45;
  color: var(--lab-text);
  border-color: var(--lab-border);
  border-radius: 12px;
  background:
    radial-gradient(circle at 18% 12%, rgba(77, 137, 207, 0.18), transparent 18rem),
    linear-gradient(180deg, var(--lab-card), #0c2035);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .settings-modal-backdrop .settings-hcp-form {
  --lab-card: #ffffff;
  --lab-card-soft: #f8faf6;
  --lab-border: rgba(28, 44, 38, 0.14);
  --lab-text: #141817;
  --lab-muted: #607069;
  --lab-gold: #b28325;
  background:
    radial-gradient(circle at 18% 12%, rgba(111, 177, 126, 0.16), transparent 18rem),
    linear-gradient(180deg, #ffffff, #f1eee6);
}
body.admin-trend-lab-route .settings-modal-backdrop .settings-hcp-form label,
body.admin-trend-lab-route .settings-modal-backdrop .settings-hcp-form p,
body.admin-trend-lab-route .settings-modal-backdrop .settings-hcp-actions span {
  color: var(--lab-muted);
}
body.admin-trend-lab-route .settings-modal-backdrop .settings-hcp-form h3 {
  color: var(--lab-title, var(--lab-text));
}
body.admin-trend-lab-route .settings-modal-backdrop .eyebrow,
body.admin-trend-lab-route .settings-modal-backdrop .settings-new-club-panel > strong {
  color: var(--lab-gold);
}
.page-content-frame-faq,
.page-content-frame-feedback {
  --lab-bg: #071827;
  --lab-panel: rgba(13, 32, 50, 0.92);
  --lab-card: #112842;
  --lab-card-soft: #172f49;
  --lab-border: rgba(126, 169, 211, 0.18);
  --lab-text: #f5f7fb;
  --lab-muted: #aebccd;
  --lab-title: #ffffff;
  --lab-green: #6bbd85;
  --lab-red: #f0716b;
  --lab-blue: #64a7ff;
  --lab-gold: #d6aa45;
  --lab-shadow: 0 18px 46px rgba(0, 0, 0, 0.32);
  border-color: var(--lab-border);
  color: var(--lab-text);
  background:
    radial-gradient(circle at 16% 6%, color-mix(in srgb, var(--lab-blue) 16%, transparent), transparent 18rem),
    linear-gradient(180deg, var(--lab-bg), #08111e);
  box-shadow: var(--lab-shadow);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .page-content-frame-faq,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .page-content-frame-feedback,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .page-content-frame-faq,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .page-content-frame-feedback {
  --lab-bg: #f7f3ea;
  --lab-panel: rgba(255, 252, 246, 0.82);
  --lab-card: #fffdfa;
  --lab-card-soft: #f3eadc;
  --lab-border: rgba(178, 131, 37, 0.18);
  --lab-text: #141817;
  --lab-muted: #6d665d;
  --lab-title: #111615;
  --lab-green: #6f8d61;
  --lab-red: #dc625d;
  --lab-blue: #7f8fa8;
  --lab-gold: #b28325;
  --lab-shadow: 0 18px 46px rgba(52, 42, 28, 0.12);
  background:
    radial-gradient(circle at 16% 6%, rgba(178, 131, 37, 0.12), transparent 18rem),
    linear-gradient(180deg, var(--lab-bg), #eee6d8);
}
.admin-faq-lab-shell,
.admin-feedback-lab-shell {
  gap: 1rem;
  padding: 0;
  border: 0;
  color: var(--lab-text);
  background: transparent;
  box-shadow: none;
}
.admin-faq-lab-shell .faq-group,
.admin-feedback-lab-shell .feedback-form,
.admin-feedback-lab-shell .feedback-compact-item,
.admin-feedback-lab-shell .empty {
  border-color: var(--lab-border);
  color: var(--lab-text);
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--lab-card) 98%, transparent), color-mix(in srgb, var(--lab-card-soft) 78%, transparent));
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.12);
}
.admin-faq-lab-shell .faq-group {
  box-shadow: none;
}
.admin-faq-lab-shell .faq-group-head > span {
  border-color: color-mix(in srgb, var(--lab-gold) 48%, transparent);
  color: var(--lab-gold);
  background: color-mix(in srgb, var(--lab-gold) 12%, transparent);
}
.admin-faq-lab-shell .faq-group h3,
.admin-feedback-lab-shell .feedback-history h3,
.admin-feedback-lab-shell .feedback-compact-item > summary strong {
  color: var(--lab-title);
}
.admin-faq-lab-shell .faq-group-head p,
.admin-faq-lab-shell .faq-item p,
.admin-feedback-lab-shell .feedback-form label,
.admin-feedback-lab-shell .feedback-compact-item > summary small,
.admin-feedback-lab-shell .feedback-meta,
.admin-feedback-lab-shell .feedback-detail-body > p {
  color: var(--lab-muted);
}
.admin-faq-lab-shell .faq-item {
  border-color: color-mix(in srgb, var(--lab-border) 82%, transparent);
  background: color-mix(in srgb, var(--lab-card-soft) 58%, transparent);
}
.admin-faq-lab-shell .faq-item[open],
.admin-faq-lab-shell .faq-item:hover {
  border-color: color-mix(in srgb, var(--lab-gold) 54%, transparent);
  background: color-mix(in srgb, var(--lab-gold) 8%, var(--lab-card-soft));
}
.admin-faq-lab-shell .faq-item summary {
  color: var(--lab-title);
}
.admin-faq-lab-shell .faq-item summary::after {
  color: var(--lab-gold);
}
.admin-feedback-lab-shell .feedback-form textarea,
.admin-feedback-lab-shell .feedback-reply-form textarea,
.admin-feedback-lab-shell .feedback-admin-card textarea,
.admin-feedback-lab-shell .feedback-admin-card select,
body.admin-trend-lab-route .admin-feedback-page .compact-filter select {
  border-color: var(--lab-border);
  color: var(--lab-text);
  background: color-mix(in srgb, var(--lab-card) 88%, transparent);
}
.admin-feedback-lab-shell .feedback-form textarea::placeholder,
.admin-feedback-lab-shell .feedback-reply-form textarea::placeholder {
  color: color-mix(in srgb, var(--lab-muted) 72%, transparent);
}
.admin-feedback-lab-shell .feedback-detail-body {
  border-top-color: color-mix(in srgb, var(--lab-border) 82%, transparent);
}
.admin-feedback-lab-shell .feedback-answer {
  border-left-color: color-mix(in srgb, var(--lab-blue) 72%, var(--lab-gold));
  color: var(--lab-text);
  background: color-mix(in srgb, var(--lab-card-soft) 66%, transparent);
}
.admin-feedback-lab-shell .feedback-answer strong {
  color: var(--lab-gold);
}
.admin-feedback-lab-shell .feedback-answer.user-reply {
  border-left-color: var(--lab-gold);
}
.admin-feedback-lab-shell .feedback-answer.todo-linked {
  border-left-color: var(--lab-blue);
}
.admin-feedback-lab-shell .settings-hcp-actions span,
.admin-feedback-lab-shell [data-feedback-reply-message],
.admin-feedback-lab-shell [data-admin-feedback-message] {
  color: var(--lab-gold);
}
.admin-feedback-lab-shell .feedback-status-pill {
  border-color: color-mix(in srgb, currentColor 34%, transparent);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-status-pill.status-done,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-status-pill.status-done {
  color: #3f874d;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-status-pill.status-read,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-status-pill.status-read {
  color: #437493;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-status-pill.status-open,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-status-pill.status-open {
  color: #9d7619;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-status-pill.status-progress,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-status-pill.status-progress {
  color: #a86948;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-faq-lab-shell .faq-group,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-form,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-compact-item,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .empty,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-faq-lab-shell .faq-group,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-form,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-compact-item,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .empty {
  border-color: rgba(178, 131, 37, 0.18);
  background:
    linear-gradient(180deg, rgba(255, 253, 248, 0.96), rgba(246, 239, 226, 0.82));
  box-shadow: 0 14px 34px rgba(52, 42, 28, 0.1);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-faq-lab-shell .faq-item,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-faq-lab-shell .faq-item {
  border-color: rgba(178, 131, 37, 0.14);
  background: rgba(255, 250, 241, 0.72);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-faq-lab-shell .faq-item[open],
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-faq-lab-shell .faq-item:hover,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-faq-lab-shell .faq-item[open],
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-faq-lab-shell .faq-item:hover {
  border-color: rgba(178, 131, 37, 0.34);
  background: rgba(246, 235, 214, 0.72);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-form textarea,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-reply-form textarea,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-admin-card textarea,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-admin-card select,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-form textarea,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-reply-form textarea,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-admin-card textarea,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-admin-card select {
  border-color: rgba(178, 131, 37, 0.2);
  background: rgba(255, 253, 248, 0.88);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-answer,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-answer {
  border-left-color: var(--lab-gold);
  background: rgba(246, 235, 214, 0.62);
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-answer.todo-linked,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-answer.todo-linked {
  border-left-color: #6f8d61;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-faq-lab-shell .faq-group h3,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-faq-lab-shell .faq-item summary,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-history h3,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-compact-item > summary strong,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-form label,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-answer,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-answer p,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-detail-body > p,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-faq-lab-shell .faq-group h3,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-faq-lab-shell .faq-item summary,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-history h3,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-compact-item > summary strong,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-form label,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-answer,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-answer p,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-detail-body > p {
  color: #111615;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-weight: 850;
  text-shadow: none;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-faq-lab-shell .faq-group-head p,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-faq-lab-shell .faq-item p,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-compact-item > summary small,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-meta,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .empty,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-faq-lab-shell .faq-group-head p,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-faq-lab-shell .faq-item p,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-compact-item > summary small,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-meta,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .empty {
  color: #5f665f;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 0.96rem;
  font-weight: 650;
  line-height: 1.55;
  text-shadow: none;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-form textarea,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-reply-form textarea,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-admin-card textarea,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-admin-card select,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-form textarea,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-reply-form textarea,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-admin-card textarea,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-admin-card select {
  color: #111615;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  text-shadow: none;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-form textarea::placeholder,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .feedback-reply-form textarea::placeholder,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-form textarea::placeholder,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .feedback-reply-form textarea::placeholder {
  color: #7b766d;
  opacity: 1;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .settings-hcp-actions button,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .settings-hcp-actions button {
  border-color: rgba(178, 131, 37, 0.42);
  color: #111615;
  background: linear-gradient(180deg, rgba(255, 244, 218, 0.96), rgba(231, 199, 128, 0.62));
  box-shadow: 0 8px 18px rgba(52, 42, 28, 0.1);
  text-shadow: none;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .settings-hcp-actions button:hover,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .admin-feedback-lab-shell .settings-hcp-actions button:focus-visible,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .settings-hcp-actions button:hover,
html.birdio-design-boot[data-admin-trend-lab-theme="light"] body.admin-trend-lab-route .admin-feedback-lab-shell .settings-hcp-actions button:focus-visible {
  border-color: rgba(178, 131, 37, 0.66);
  background: linear-gradient(180deg, rgba(255, 239, 202, 0.98), rgba(218, 178, 91, 0.72));
}
.admin-trend-lab-filterbar {
  min-width: 0;
  padding: 0.75rem;
  border: 1px solid var(--lab-border);
  border-radius: 10px;
  background: var(--lab-panel);
  backdrop-filter: blur(10px);
}
.admin-trend-lab-filterbar .filters {
  margin: 0;
}
.admin-trend-lab-filterbar select,
.admin-trend-lab-filterbar input {
  border-color: var(--lab-border);
  color: var(--lab-text);
  background: color-mix(in srgb, var(--lab-card) 88%, transparent);
}
.round-date-filter-wrap {
  position: relative;
  display: inline-flex;
  min-width: 10rem;
  min-height: 2.4rem;
  flex: 1 1 10rem;
}
.round-date-filter-wrap input {
  width: 100%;
}
.round-date-filter-wrap .round-date-text-filter {
  min-width: 11.5rem;
  padding-right: 2.6rem;
  font: inherit;
  font-size: 0.9rem;
  font-weight: 800;
  line-height: normal;
  letter-spacing: 0;
  font-variant-numeric: tabular-nums;
  text-align: left;
  text-transform: none;
}
.round-date-filter-wrap .round-date-text-filter::placeholder {
  color: rgba(210, 222, 236, 0.72);
  font-weight: 750;
  opacity: 1;
}
.round-date-picker-button {
  position: absolute;
  right: 0.45rem;
  top: 50%;
  display: grid;
  place-items: center;
  width: 1.75rem;
  min-width: 1.75rem;
  height: 1.75rem;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 6px;
  color: rgba(210, 222, 236, 0.88);
  background: transparent;
  cursor: pointer;
  transform: translateY(-50%);
}
.round-date-picker-button::before {
  content: "";
  display: block;
  width: 0.92rem;
  height: 0.82rem;
  border: 2px solid currentColor;
  border-top-width: 0.28rem;
  border-radius: 3px;
  box-shadow: 0 -0.28rem 0 -0.16rem currentColor;
}
.round-date-picker-button:hover,
.round-date-picker-button:focus-visible {
  border-color: rgba(126, 169, 211, 0.28);
  color: #f5f7fb;
  background: rgba(126, 169, 211, 0.1);
}
.round-date-native-picker {
  position: absolute;
  right: 0.45rem;
  top: 50%;
  width: 1px;
  min-width: 1px;
  height: 1px;
  padding: 0;
  border: 0;
  opacity: 0;
  pointer-events: none;
  transform: translateY(-50%);
}
.round-date-placeholder {
  position: absolute;
  left: 0.85rem;
  top: 50%;
  max-width: calc(100% - 2.6rem);
  color: var(--lab-text);
  font-size: 0.86rem;
  font-weight: 850;
  line-height: 1;
  opacity: 0.88;
  pointer-events: none;
  transform: translateY(-50%);
}
.round-date-filter-wrap.is-filled .round-date-placeholder,
.round-date-filter-wrap:focus-within .round-date-placeholder {
  opacity: 0;
}
.admin-trend-lab-content {
  display: grid;
  gap: 1rem;
  overflow: visible;
}
.admin-trend-lab-info {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 1rem;
  height: 1rem;
  margin-left: 0.22rem;
  border: 1px solid color-mix(in srgb, var(--lab-muted, var(--muted)) 55%, transparent);
  border-radius: 50%;
  color: var(--lab-muted, var(--muted));
  font-size: 0;
  font-weight: 950;
  line-height: 1;
  text-align: center;
  vertical-align: middle;
  cursor: help;
}
.admin-trend-lab-info::before {
  content: "!";
  display: block;
  color: inherit;
  font-size: 0.7rem;
  font-weight: 950;
  line-height: 1;
  transform: translateY(-0.02rem);
}
.admin-trend-lab-info > span {
  position: fixed;
  z-index: 9999;
  left: var(--admin-trend-lab-tooltip-left, 0.5rem);
  top: var(--admin-trend-lab-tooltip-top, 0.5rem);
  width: var(--admin-trend-lab-tooltip-width, min(18rem, calc(100vw - 1rem)));
  max-width: calc(100vw - 1rem);
  padding: 0.55rem 0.65rem;
  border: 1px solid var(--lab-border, rgba(174, 217, 185, 0.24));
  border-radius: 8px;
  color: var(--lab-text, var(--text));
  background: color-mix(in srgb, var(--lab-panel, rgba(13, 32, 50, 0.92)) 96%, transparent);
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.22);
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1.25;
  text-transform: none;
  white-space: normal;
  overflow-wrap: anywhere;
  transform: translateY(0.25rem);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.12s ease, transform 0.12s ease;
}
.admin-trend-lab-info:hover > span,
.admin-trend-lab-info:focus-visible > span {
  transform: translateY(0);
  opacity: 1;
}
.admin-trend-lab-summary {
  display: grid;
  grid-template-columns: minmax(0, 0.32fr) minmax(0, 0.68fr);
  gap: 0.75rem;
}
.admin-trend-lab-summary > div {
  overflow: visible;
  min-width: 0;
  padding: 0.85rem 1rem;
  border: 1px solid var(--lab-border);
  border-radius: 10px;
  background: var(--lab-panel);
}
.admin-trend-lab-summary > div > span,
.admin-trend-lab-group-head p,
.admin-trend-lab-card small,
.admin-trend-lab-empty {
  color: var(--lab-muted);
}
.admin-trend-lab-summary > div > span,
.admin-trend-lab-card-top > span {
  display: block;
  font-size: 0.74rem;
  font-weight: 900;
  letter-spacing: 0;
}
.admin-trend-lab-summary strong {
  display: block;
  margin-top: 0.18rem;
  color: var(--lab-title);
  font-size: clamp(1.15rem, 1.6vw, 1.55rem);
  line-height: 1.08;
  overflow-wrap: anywhere;
}
.admin-trend-lab-group {
  display: grid;
  gap: 0.7rem;
  overflow: visible;
  min-width: 0;
  padding: 0.8rem;
  border: 1px solid var(--lab-border);
  border-radius: 12px;
  background: var(--lab-panel);
}
.admin-trend-lab-group-head {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 0.8rem;
}
.admin-trend-lab-group-head h3 {
  margin: 0;
  color: var(--lab-title);
  font-size: clamp(1rem, 1.25vw, 1.2rem);
  line-height: 1.1;
}
.admin-trend-lab-group-head p {
  margin: 0.22rem 0 0;
  font-weight: 750;
  line-height: 1.3;
}
.admin-trend-lab-section-legend {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.55rem;
  min-width: max-content;
  padding-top: 0.1rem;
  color: var(--lab-muted);
  font-size: 0.74rem;
  font-weight: 900;
  line-height: 1.1;
}
.admin-trend-lab-section-legend span {
  display: inline-flex;
  align-items: center;
  gap: 0.34rem;
}
.admin-trend-lab-section-legend span::before {
  content: "";
  display: block;
  width: 1.05rem;
  height: 0.16rem;
  border-radius: 999px;
  background: #d6aa45;
}
.admin-trend-lab-section-legend .average::before {
  background: #d8f4dd;
}
.admin-trend-lab-shell[data-theme="light"] .admin-trend-lab-section-legend .average::before {
  background: #4f9f62;
}
.admin-trend-lab-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(22rem, 1fr));
  gap: 0.75rem;
}
.admin-trend-lab-group-green-approach .admin-trend-lab-card-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.green-approach-coverage {
  color: var(--lab-muted);
  font-size: 0.78rem;
  line-height: 1.5;
}
.green-approach-chart-empty {
  display: grid;
  place-items: center;
  min-height: 7rem;
  color: var(--lab-muted);
  font-size: 0.85rem;
  text-align: center;
}
@media (max-width: 1399px) {
  .admin-trend-lab-group-green-approach .admin-trend-lab-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 620px) {
  .admin-trend-lab-group-green-approach .admin-trend-lab-card-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
.admin-trend-lab-card {
  --lab-card-glow: transparent;
  --lab-card-state-border: var(--lab-border);
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 0.95rem;
  overflow: visible;
  min-width: 0;
  min-height: 16.4rem;
  padding: 1rem 0.85rem 0.95rem;
  border: 1px solid var(--lab-card-state-border);
  border-radius: 10px;
  color: var(--lab-text);
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--lab-card-soft) 58%, transparent), transparent 80%),
    var(--lab-card);
  box-shadow:
    0 10px 26px rgba(0, 0, 0, 0.1),
    0 0 0 1px color-mix(in srgb, var(--lab-card-glow) 58%, transparent),
    0 0 26px var(--lab-card-glow);
}
.admin-trend-lab-card.admin-trend-lab-improved {
  --lab-card-glow: rgba(107, 189, 133, 0.24);
  --lab-card-state-border: color-mix(in srgb, var(--lab-green) 46%, var(--lab-border));
}
.admin-trend-lab-card.admin-trend-lab-worse {
  --lab-card-glow: rgba(240, 113, 107, 0.23);
  --lab-card-state-border: color-mix(in srgb, var(--lab-red) 44%, var(--lab-border));
}
.admin-trend-lab-shell[data-theme="light"] .admin-trend-lab-card.admin-trend-lab-improved {
  --lab-card-glow: rgba(55, 145, 74, 0.18);
  --lab-card-state-border: rgba(55, 145, 74, 0.28);
}
.admin-trend-lab-shell[data-theme="light"] .admin-trend-lab-card.admin-trend-lab-worse {
  --lab-card-glow: rgba(198, 75, 75, 0.17);
  --lab-card-state-border: rgba(198, 75, 75, 0.27);
}
.admin-trend-lab-card-top > span {
  color: var(--lab-title);
  font-size: clamp(1.12rem, 1.45vw, 1.38rem);
  line-height: 1.12;
  overflow-wrap: anywhere;
}
.admin-trend-lab-card-main {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
  gap: 0.9rem;
  min-width: 0;
}
.admin-trend-lab-card-values {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.7rem;
  min-width: 0;
  width: 100%;
}
.admin-trend-lab-card-values > div {
  display: grid;
  align-content: center;
  min-width: 0;
  min-height: 5.25rem;
  padding: 0.72rem 0.78rem;
  border: 1px solid var(--lab-border);
  border-radius: 8px;
  background: color-mix(in srgb, var(--lab-card-soft) 72%, transparent);
}
.admin-trend-lab-card-values > div > span {
  display: block;
  margin-bottom: 0.22rem;
  color: var(--lab-muted);
  font-size: 0.72rem;
  font-weight: 950;
  line-height: 1.05;
}
.admin-trend-lab-card-values strong {
  display: block;
  color: var(--lab-gold);
  font-size: clamp(2.1rem, 2.55vw, 2.75rem);
  line-height: 0.98;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}
.admin-trend-lab-card-values .average strong {
  color: var(--lab-green);
}
.admin-trend-lab-card .admin-trend-lab-card-top {
  text-align: center;
}
.admin-trend-lab-card .admin-trend-lab-card-values > div > span {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  min-width: 0;
}
.admin-trend-lab-value-label {
  min-width: 0;
  overflow-wrap: anywhere;
}
.admin-trend-lab-card .admin-trend-lab-card-values > div {
  min-height: 4.9rem;
}
.admin-trend-lab-card-values span.admin-trend-lab-value-indicator {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.18rem;
  flex: 0 0 auto;
  min-width: 2.45rem;
  height: 1.45rem;
  margin: 0;
  padding: 0 0.25rem;
  border-radius: 999px;
  color: var(--lab-blue);
  font-size: 0.86rem;
  font-weight: 950;
  line-height: 1;
  background: color-mix(in srgb, currentColor 12%, transparent);
}
.admin-trend-lab-value-indicator-improved {
  color: var(--lab-green) !important;
}
.admin-trend-lab-value-indicator-worse {
  color: var(--lab-red) !important;
}
.admin-trend-lab-value-indicator-stable,
.admin-trend-lab-value-indicator-empty {
  color: var(--lab-muted) !important;
}
.admin-trend-lab-card-values .admin-trend-lab-value-indicator .admin-trend-lab-info {
  width: 0.98rem;
  height: 0.98rem;
  margin-left: 0;
  color: currentColor;
  font-size: 0;
}
.admin-trend-lab-sparkline {
  display: block;
  width: 100%;
  min-width: 4.8rem;
  height: 3.25rem;
  overflow: hidden;
  border: 1px solid var(--lab-border);
  border-radius: 8px;
  background:
    linear-gradient(var(--lab-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--lab-grid) 1px, transparent 1px),
    color-mix(in srgb, var(--lab-card-soft) 82%, transparent);
  background-size: 100% 33.333%, 25% 100%, auto;
}
.admin-trend-lab-sparkline svg {
  display: block;
  width: 100%;
  height: 100%;
}
.admin-trend-lab-sparkline line {
  stroke: var(--lab-grid);
  stroke-width: 1;
}
.admin-trend-lab-sparkline path {
  fill: none;
  stroke: var(--lab-blue);
  stroke-width: 4;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.admin-trend-lab-sparkline-improved path,
.admin-trend-lab-improved .admin-trend-lab-delta {
  color: var(--lab-green);
  stroke: var(--lab-green);
}
.admin-trend-lab-sparkline-worse path,
.admin-trend-lab-worse .admin-trend-lab-delta {
  color: var(--lab-red);
  stroke: var(--lab-red);
}
.admin-trend-lab-chart {
  display: block;
  width: 100%;
  min-width: 0;
  height: 10.75rem;
  overflow: hidden;
  border: 1px solid var(--lab-border);
  border-radius: 8px;
  background: color-mix(in srgb, var(--lab-card-soft) 82%, transparent);
}
.admin-trend-lab-chart svg {
  display: block;
  width: 100%;
  height: 100%;
}
.admin-trend-lab-chart-grid line {
  stroke: var(--lab-grid);
  stroke-width: 1;
}
.admin-trend-lab-chart path {
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.admin-trend-lab-chart path.round {
  stroke: #d6aa45;
  stroke-width: 1.35;
}
.admin-trend-lab-chart path.average {
  stroke: #d8f4dd;
  stroke-width: 1.18;
}
.admin-trend-lab-shell[data-theme="light"] .admin-trend-lab-chart path.average {
  stroke: #4f9f62;
}
.admin-trend-lab-chart circle.round {
  fill: #d6aa45;
  stroke: color-mix(in srgb, var(--lab-card) 80%, #000 20%);
  stroke-width: 0.8;
}
.admin-trend-lab-chart circle.average {
  fill: #d8f4dd;
  stroke: color-mix(in srgb, var(--lab-card) 80%, #000 20%);
  stroke-width: 0.65;
}
.admin-trend-lab-chart a {
  color: inherit;
  cursor: pointer;
}
.admin-trend-lab-chart circle.hit {
  fill: transparent;
  stroke: transparent;
  pointer-events: all;
}
.admin-trend-lab-chart a:hover circle.round,
.admin-trend-lab-chart a:focus-visible circle.round {
  stroke: var(--lab-title);
  stroke-width: 1.2;
}
.admin-trend-lab-chart a:hover circle.average,
.admin-trend-lab-chart a:focus-visible circle.average {
  stroke: var(--lab-title);
  stroke-width: 1.05;
}
.admin-trend-lab-shell[data-theme="light"] .admin-trend-lab-chart circle.average {
  fill: #4f9f62;
}
.admin-trend-lab-axis-label {
  fill: var(--lab-muted);
  font-size: 8.2px;
  font-weight: 850;
}
.admin-trend-lab-y-axis-label {
  fill: var(--lab-muted);
  font-size: 8px;
  font-weight: 850;
  opacity: 0.86;
}
.admin-trend-lab-delta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  width: fit-content;
  max-width: 100%;
  min-width: 3.1rem;
  min-height: 2rem;
  padding: 0.34rem 0.5rem;
  border-radius: 999px;
  color: var(--lab-blue);
  font-size: 0.9rem;
  font-weight: 950;
  line-height: 1.15;
  background: color-mix(in srgb, currentColor 12%, transparent);
  overflow: visible;
}
.admin-trend-lab-delta .dashboard-trend-icon {
  width: 1.08rem;
  height: 1.08rem;
  flex: 0 0 auto;
}
.admin-trend-lab-delta .admin-trend-lab-info {
  width: 1.06rem;
  height: 1.06rem;
  margin-left: 0;
}
.admin-trend-lab-shell[data-theme="light"] .admin-trend-lab-improved .admin-trend-lab-delta {
  color: #277d3f;
  background: rgba(39, 125, 63, 0.12);
}
.admin-trend-lab-shell[data-theme="light"] .admin-trend-lab-worse .admin-trend-lab-delta {
  color: #c54343;
  background: rgba(197, 67, 67, 0.12);
}
.admin-trend-lab-shell[data-theme="light"] .admin-trend-lab-stable .admin-trend-lab-delta,
.admin-trend-lab-shell[data-theme="light"] .admin-trend-lab-empty .admin-trend-lab-delta {
  color: #52665d;
  background: rgba(82, 102, 93, 0.12);
}
.admin-trend-lab-empty {
  padding: 1rem;
  border: 1px solid var(--lab-border);
  border-radius: 10px;
  background: var(--lab-panel);
  font-weight: 850;
}
.admin-trend-lab-distribution-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.admin-trend-lab-distribution-card {
  display: grid;
  gap: 0.65rem;
  min-width: 0;
  padding: 1rem;
  border: 1px solid var(--lab-border);
  border-radius: 10px;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--lab-card-soft) 52%, transparent), transparent 80%),
    var(--lab-card);
}
.admin-trend-lab-distribution-card h4 {
  margin: 0;
  color: var(--lab-title);
  font-size: 0.98rem;
  line-height: 1.15;
}
.admin-trend-lab-distribution-list {
  display: grid;
  gap: 0.55rem;
}
.admin-trend-lab-distribution-row {
  display: grid;
  gap: 0.28rem;
  min-width: 0;
}
.admin-trend-lab-distribution-row div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 0.55rem;
  min-width: 0;
}
.admin-trend-lab-distribution-row span {
  display: inline-flex;
  align-items: center;
  gap: 0.42rem;
  min-width: 0;
  color: var(--lab-text);
  font-weight: 850;
  line-height: 1.15;
  overflow-wrap: anywhere;
}
.admin-trend-lab-distribution-row i {
  width: 0.72rem;
  height: 0.72rem;
  flex: 0 0 auto;
  border-radius: 50%;
  box-shadow: 0 0 0 1px rgba(255,255,255,0.2);
}
.admin-trend-lab-distribution-row strong {
  color: var(--lab-title);
  font-weight: 950;
}
.admin-trend-lab-distribution-row em {
  min-width: 3.4rem;
  color: var(--lab-muted);
  font-style: normal;
  font-weight: 850;
  text-align: right;
}
.admin-trend-lab-distribution-row b {
  display: block;
  height: 0.42rem;
  overflow: hidden;
  border-radius: 999px;
  background: color-mix(in srgb, var(--lab-card-soft) 72%, #000 28%);
}
.admin-trend-lab-distribution-row u {
  display: block;
  height: 100%;
  border-radius: inherit;
  text-decoration: none;
}
.club-analysis-filterbar #club-analysis-detail-filter {
  display: none;
}
.club-analysis-summary {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.club-analysis-summary > div {
  min-height: 6.2rem;
}
.club-analysis-summary small {
  display: block;
  margin-top: 0.18rem;
  color: var(--lab-muted);
  font-size: 0.72rem;
  font-weight: 850;
  line-height: 1.18;
}
.club-analysis-highlight-group {
  padding: 0.75rem;
}
.club-analysis-highlight-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.7rem;
  min-width: 0;
}
.club-analysis-highlight-card {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  grid-template-rows: auto auto auto;
  column-gap: 0.68rem;
  align-items: center;
  min-width: 0;
  padding: 0.78rem;
  border: 1px solid var(--lab-border);
  border-radius: 8px;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--lab-gold) 12%, transparent), transparent 70%),
    color-mix(in srgb, var(--lab-card-soft) 72%, transparent);
}
.club-analysis-highlight-card img {
  grid-row: 1 / 4;
  width: 3rem;
  height: 3rem;
  object-fit: contain;
  filter: drop-shadow(0 0.45rem 0.55rem rgba(0, 0, 0, 0.22));
}
.club-analysis-highlight-card span,
.club-analysis-highlight-card small {
  min-width: 0;
  color: var(--lab-muted);
  font-size: 0.72rem;
  font-weight: 900;
  line-height: 1.08;
}
.club-analysis-highlight-card strong {
  min-width: 0;
  color: var(--lab-title);
  font-size: 1rem;
  line-height: 1.1;
  overflow-wrap: anywhere;
}
.club-analysis-quality {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  min-width: 0;
}
.club-analysis-quality span {
  display: inline-flex;
  max-width: 100%;
  padding: 0.45rem 0.62rem;
  border: 1px solid color-mix(in srgb, var(--lab-gold) 42%, var(--lab-border));
  border-radius: 999px;
  color: var(--lab-title);
  background: color-mix(in srgb, var(--lab-gold) 12%, transparent);
  font-size: 0.76rem;
  font-weight: 850;
  line-height: 1.15;
  overflow-wrap: anywhere;
}
.club-analysis-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
  gap: 0.75rem;
  min-width: 0;
}
.club-analysis-club-card {
  min-height: 0;
  padding: 0.85rem;
  gap: 0.78rem;
}
.club-analysis-club-head {
  display: grid;
  grid-template-columns: 3.3rem minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.7rem;
  min-width: 0;
}
.club-analysis-club-icon {
  display: grid;
  place-items: center;
  width: 3.3rem;
  height: 3.3rem;
  border: 1px solid var(--lab-border);
  border-radius: 8px;
  background: color-mix(in srgb, var(--lab-card-soft) 74%, transparent);
}
.club-analysis-club-icon img {
  width: 2.65rem;
  height: 2.65rem;
  object-fit: contain;
  filter: drop-shadow(0 0.42rem 0.5rem rgba(0, 0, 0, 0.25));
}
.club-analysis-club-head span {
  min-width: 0;
}
.club-analysis-club-head strong {
  display: block;
  color: var(--lab-title);
  font-size: clamp(1.05rem, 1.35vw, 1.25rem);
  line-height: 1.08;
  overflow-wrap: anywhere;
}
.club-analysis-club-head small {
  display: block;
  margin-top: 0.18rem;
}
.club-analysis-club-head em {
  justify-self: end;
  max-width: 6.4rem;
  padding: 0.36rem 0.55rem;
  border-radius: 999px;
  color: var(--lab-green);
  background: color-mix(in srgb, var(--lab-green) 13%, transparent);
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 950;
  line-height: 1.05;
  text-align: center;
}
.admin-trend-lab-empty .club-analysis-club-head em {
  color: var(--lab-muted);
}
.club-analysis-values {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.55rem;
}
.club-analysis-values > div {
  min-height: 4.05rem;
  padding: 0.58rem 0.62rem;
}
.club-analysis-values strong {
  color: var(--lab-title);
  font-size: clamp(1rem, 1.35vw, 1.28rem);
  line-height: 1.02;
}
.club-analysis-card-bottom {
  display: grid;
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 0.58fr);
  gap: 0.65rem;
  align-items: stretch;
  min-width: 0;
}
.club-analysis-card-bottom .admin-trend-lab-sparkline {
  height: 3rem;
}
.club-analysis-usage {
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  gap: 0.35rem;
  min-width: 0;
  padding: 0.45rem;
  border: 1px solid var(--lab-border);
  border-radius: 8px;
  background: color-mix(in srgb, var(--lab-card-soft) 72%, transparent);
}
.club-analysis-usage span {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  max-width: 100%;
  padding: 0.22rem 0.42rem;
  border-radius: 999px;
  color: var(--lab-muted);
  background: color-mix(in srgb, var(--lab-card) 88%, transparent);
  font-size: 0.72rem;
  font-weight: 850;
  line-height: 1.05;
}
.club-analysis-usage b {
  color: var(--lab-title);
}
.admin-trend-lab-shell[data-theme="light"] .club-analysis-highlight-card,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .club-analysis-highlight-card,
.admin-trend-lab-shell[data-theme="light"] .club-analysis-club-icon,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .club-analysis-club-icon,
.admin-trend-lab-shell[data-theme="light"] .club-analysis-usage,
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .club-analysis-usage {
  background: rgba(255, 255, 255, 0.64);
}
.admin-player-profile-lab-card {
  min-height: 16.4rem;
}
.admin-player-profile-lab-card-body {
  display: grid;
  align-content: start;
  gap: 0.85rem;
  min-width: 0;
}
.admin-player-profile-lab-overview-grid {
  align-items: stretch;
}
.admin-player-profile-lab-values-three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.admin-player-profile-lab-values-three > div,
.admin-player-profile-lab-record-row > div {
  text-align: center;
}
.admin-player-profile-lab-values-three strong,
.admin-player-profile-lab-record-row strong {
  color: var(--lab-gold);
}
.admin-player-profile-lab-values-three > div:nth-child(2) strong,
.admin-player-profile-lab-record-row > div:nth-child(2) strong {
  color: var(--lab-green);
}
.admin-player-profile-lab-hcp-card .admin-player-profile-lab-values-three > div:nth-child(3) strong,
.admin-player-profile-lab-record-row > div:nth-child(3) strong {
  color: var(--lab-gold);
}
.admin-player-profile-lab-record-grid,
.admin-player-profile-lab-list {
  display: grid;
  gap: 0.58rem;
  min-width: 0;
}
.admin-player-profile-lab-record-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.62rem;
  min-width: 0;
}
.admin-player-profile-lab-record-row > div {
  display: grid;
  align-content: center;
  min-width: 0;
  min-height: 4.55rem;
  padding: 0.62rem 0.58rem;
  border: 1px solid var(--lab-border);
  border-radius: 8px;
  background: color-mix(in srgb, var(--lab-card-soft) 72%, transparent);
}
.admin-player-profile-lab-record-row > div > span,
.admin-player-profile-lab-list > span {
  color: var(--lab-muted);
  font-size: 0.72rem;
  font-weight: 950;
  line-height: 1.08;
}
.admin-player-profile-lab-record-row strong {
  display: block;
  margin-top: 0.22rem;
  font-size: clamp(1.45rem, 2vw, 2rem);
  line-height: 1;
}
.admin-player-profile-lab-list {
  padding-top: 0.1rem;
}
.admin-player-profile-lab-list-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.5rem;
  min-width: 0;
  padding: 0.38rem 0.52rem;
  border: 1px solid color-mix(in srgb, var(--lab-border) 78%, transparent);
  border-radius: 7px;
  background: color-mix(in srgb, var(--lab-card-soft) 52%, transparent);
}
.admin-player-profile-lab-list-row strong {
  min-width: 0;
  color: var(--lab-gold);
  font-size: 0.82rem;
  line-height: 1.12;
  overflow-wrap: anywhere;
}
.admin-player-profile-lab-list-row span {
  color: var(--lab-green);
}
.admin-player-profile-lab-list-row span,
.admin-player-profile-lab-list small {
  color: var(--lab-muted);
  font-size: 0.78rem;
  font-weight: 850;
  line-height: 1.15;
}
.admin-player-profile-lab-list-row > span {
  color: var(--lab-green);
}
.admin-player-profile-lab-list-row .profile-highlight-row-link {
  color: var(--lab-green);
  text-decoration: none;
}
.admin-player-profile-lab-list-row .profile-highlight-row-link:hover,
.admin-player-profile-lab-list-row .profile-highlight-row-link:focus-visible {
  text-decoration: underline;
}
.admin-player-profile-lab-rounds-layout {
  display: grid;
  gap: 1rem;
  min-width: 0;
}
.admin-player-profile-lab-top-report,
.admin-player-profile-lab-round-table-card,
.admin-player-profile-lab-scorecard-detail {
  min-width: 0;
  border: 1px solid var(--lab-border);
  border-radius: 8px;
  background: color-mix(in srgb, var(--lab-card) 76%, transparent);
  box-shadow: var(--lab-shadow);
}
.admin-player-profile-lab-top-report {
  overflow: hidden;
}
.admin-player-profile-lab-top-report .player-round-report {
  margin: 0;
  display: grid;
  gap: 0.85rem;
  min-width: 0;
  padding: clamp(0.85rem, 1.35vw, 1rem);
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.admin-player-profile-lab-top-report .player-round-report-metrics,
.admin-player-profile-lab-top-report .player-round-report-insights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
}
.admin-player-profile-lab-top-report .player-round-report-head,
.admin-player-profile-lab-top-report .player-round-report-metrics,
.admin-player-profile-lab-top-report .player-round-report-summary,
.admin-player-profile-lab-top-report .player-round-report-special,
.admin-player-profile-lab-top-report .player-round-report-insights {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
.admin-player-profile-lab-top-report .player-round-report-metric,
.admin-player-profile-lab-top-report .player-round-report-summary,
.admin-player-profile-lab-top-report .player-round-report-special,
.admin-player-profile-lab-top-report .player-round-report-insight {
  min-width: 0;
  border-color: color-mix(in srgb, var(--lab-border) 78%, transparent);
  background: color-mix(in srgb, var(--lab-card-soft) 66%, transparent);
}
.admin-player-profile-lab-top-report .player-round-report-summary,
.admin-player-profile-lab-top-report .player-round-report-special {
  padding: 0.85rem;
}
.admin-player-profile-lab-top-report .player-round-report-metric,
.admin-player-profile-lab-top-report .player-round-report-insight {
  height: 100%;
}
.admin-player-profile-lab-top-report .player-round-report-head h3,
.admin-player-profile-lab-top-report .player-round-report-summary p,
.admin-player-profile-lab-top-report .player-round-report-insight strong,
.admin-player-profile-lab-top-report .player-round-report-special strong {
  color: var(--lab-title);
}
.admin-player-profile-lab-top-report .player-round-report-head span,
.admin-player-profile-lab-top-report .player-round-report-summary span,
.admin-player-profile-lab-top-report .player-round-report-insight span,
.admin-player-profile-lab-top-report .player-round-report-metric span {
  color: var(--lab-gold);
}
.admin-player-profile-lab-top-report .player-round-report-link {
  color: var(--lab-title);
  border-color: color-mix(in srgb, var(--lab-gold) 78%, transparent);
  background: color-mix(in srgb, var(--lab-card-soft) 68%, transparent);
}
.admin-player-profile-lab-top-report .player-round-report-metric strong {
  color: var(--lab-gold);
  text-shadow: none;
}
.admin-player-profile-lab-top-report .player-round-report-head p,
.admin-player-profile-lab-top-report .player-round-report-metric em,
.admin-player-profile-lab-top-report .player-round-report-insight p,
.admin-player-profile-lab-top-report .player-round-report-special p {
  color: var(--lab-muted);
}
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-top-report,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-round-table-card,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(248, 250, 246, 0.86)),
    var(--lab-card);
}
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-top-report .player-round-report-metric,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-top-report .player-round-report-summary,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-top-report .player-round-report-special,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-top-report .player-round-report-insight {
  border-color: rgba(28, 44, 38, 0.13);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(247, 250, 245, 0.78)),
    rgba(255, 255, 255, 0.74);
  box-shadow: 0 12px 26px rgba(25, 31, 28, 0.08);
}
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-top-report .player-round-report-head p,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-top-report .player-round-report-metric em,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-top-report .player-round-report-insight p,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-top-report .player-round-report-special p {
  color: #586960;
}
.admin-player-profile-lab-scorecard-detail {
  display: grid;
  justify-items: start;
  align-items: start;
  margin: 0;
  padding: 1rem;
  overflow: visible;
}
.admin-player-profile-lab-scorecard-detail.empty {
  display: block;
  padding: 0;
  background: transparent;
  box-shadow: none;
}
.admin-player-profile-lab-scorecard-detail > .empty {
  margin: 0;
  width: clamp(40rem, 34vw, 58rem);
  max-width: 100%;
}
.admin-player-profile-lab-scorecard-detail > .scorecard-panel {
  grid-column: auto;
  width: clamp(40rem, 34vw, 58rem);
  max-width: 100%;
}
.admin-player-profile-lab-scorecard-detail .scorecard-panel,
.admin-player-profile-lab-scorecard-detail .panel,
.admin-player-profile-lab-scorecard-detail .shot-detail-toggle,
.admin-player-profile-lab-scorecard-detail .scorecard-play-path-hole {
  border-color: var(--lab-border);
  background: color-mix(in srgb, var(--lab-card-soft) 62%, transparent);
}
.admin-player-profile-lab-scorecard-detail .scorecard-panel {
  padding: clamp(0.85rem, 1.7vw, 1.15rem);
  border-radius: 8px;
  color: var(--lab-title);
  box-shadow: none;
}
.admin-player-profile-lab-scorecard-detail .scorecard-title h3,
.admin-player-profile-lab-scorecard-detail .shot-detail-toggle summary,
.admin-player-profile-lab-scorecard-detail .scorecard-split-card > strong,
.admin-player-profile-lab-scorecard-detail .hole-detail h4 {
  color: var(--lab-title);
}
.admin-player-profile-lab-scorecard-detail .scorecard-title .eyebrow,
.admin-player-profile-lab-scorecard-detail .scorecard-section-row td,
.admin-player-profile-lab-scorecard-detail .scorecard-split-card > span,
.admin-player-profile-lab-scorecard-detail .hole-detail-head span,
.admin-player-profile-lab-scorecard-detail .scorecard-round-detail-card h4,
.admin-player-profile-lab-scorecard-detail .mini-chart-card h4 {
  color: var(--lab-gold);
}
.admin-player-profile-lab-scorecard-detail .pill-link,
.admin-player-profile-lab-scorecard-detail .text-link,
.admin-player-profile-lab-scorecard-detail a:not(.scorecard-play-path-close) {
  color: var(--lab-green);
}
.admin-player-profile-lab-scorecard-detail .scorecard-meta span,
.admin-player-profile-lab-scorecard-detail .scorecard-hcp-note,
.admin-player-profile-lab-scorecard-detail .scorecard-split-metrics span,
.admin-player-profile-lab-scorecard-detail .hole-detail-metrics span,
.admin-player-profile-lab-scorecard-detail .mini-card-bar,
.admin-player-profile-lab-scorecard-detail .mini-card-bar span,
.admin-player-profile-lab-scorecard-detail .mini-card-row-details {
  color: var(--lab-muted);
}
.admin-player-profile-lab-scorecard-detail .scorecard-meta span,
.admin-player-profile-lab-scorecard-detail .scorecard-compact-table,
.admin-player-profile-lab-scorecard-detail .scorecard-split-card,
.admin-player-profile-lab-scorecard-detail .hole-detail,
.admin-player-profile-lab-scorecard-detail .scorecard-round-detail-card,
.admin-player-profile-lab-scorecard-detail .mini-chart-card,
.admin-player-profile-lab-scorecard-detail .scorecard-split-metrics div,
.admin-player-profile-lab-scorecard-detail .hole-detail-metrics div {
  border-color: color-mix(in srgb, var(--lab-border) 76%, transparent);
  background: color-mix(in srgb, var(--lab-card) 70%, transparent);
}
.admin-player-profile-lab-scorecard-detail .scorecard-round-detail-card,
.admin-player-profile-lab-scorecard-detail .hole-detail {
  background: linear-gradient(180deg, color-mix(in srgb, var(--lab-card) 92%, transparent), color-mix(in srgb, var(--lab-card-soft) 80%, transparent));
  box-shadow: var(--lab-shadow);
}
.admin-player-profile-lab-scorecard-detail .scorecard-split-metrics strong,
.admin-player-profile-lab-scorecard-detail .hole-detail-metrics strong,
.admin-player-profile-lab-scorecard-detail .mini-card-bar strong {
  color: var(--lab-gold);
}
.admin-player-profile-lab-scorecard-detail .hole-detail-chip-row span,
.admin-player-profile-lab-scorecard-detail .mini-card-row-details span {
  border: 1px solid color-mix(in srgb, var(--lab-border) 64%, transparent);
  background: color-mix(in srgb, var(--lab-card-soft) 64%, transparent);
  color: var(--lab-title);
}
.admin-player-profile-lab-scorecard-detail .mini-card-track {
  background: color-mix(in srgb, var(--lab-border) 34%, transparent);
}
.admin-player-profile-lab-scorecard-detail .mini-card-fill {
  background: linear-gradient(90deg, var(--lab-gold), color-mix(in srgb, var(--lab-blue) 72%, var(--lab-gold)));
}
.admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid {
  min-width: 0;
  overflow: hidden;
}
.admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-chart-card,
.admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-bars,
.admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-row,
.admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-track {
  min-width: 0;
  max-width: 100%;
}
.admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-chart-card {
  overflow: hidden;
}
.admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-bar,
.admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-bar-share {
  min-width: 0;
  max-width: 100%;
  grid-template-columns: minmax(0, 1.16fr) minmax(1.35rem, auto) minmax(3.4rem, 0.86fr) minmax(2.25rem, auto);
  column-gap: 0.28rem;
}
.admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-bar > span:first-child,
.admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-bar-share > span:first-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
.admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-bar strong,
.admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-bar-share strong {
  min-width: 0;
  white-space: nowrap;
}
.admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-row-details span {
  max-width: 100%;
  overflow-wrap: anywhere;
}
.admin-player-profile-lab-scorecard-detail .scorecard-section-row td {
  background: color-mix(in srgb, var(--lab-gold) 12%, transparent);
}
.admin-player-profile-lab-scorecard-detail .table-wrap {
  max-width: 100%;
}
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .scorecard-panel,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .panel,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .shot-detail-toggle,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .scorecard-play-path-hole {
  border-color: rgba(28, 44, 38, 0.13);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(248, 250, 246, 0.84)),
    rgba(255, 255, 255, 0.78);
  color: var(--lab-title);
}
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .scorecard-compact-table,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .scorecard-compact-table table {
  background: rgba(255, 255, 255, 0.88);
  color: #141817;
}
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .scorecard-compact-table th {
  color: #9b7225;
}
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .scorecard-compact-table td {
  color: #1a211e;
}
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .scorecard-section-row td,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .scorecard-total-row td {
  color: #9b7225;
  background: rgba(178, 131, 37, 0.1);
}
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .scorecard-compact-table tr,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .scorecard-compact-table th,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .scorecard-compact-table td {
  border-color: rgba(28, 44, 38, 0.1);
}
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .scorecard-meta span,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .scorecard-hcp-note,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .scorecard-split-metrics span,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .hole-detail-metrics span,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .mini-card-bar,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .mini-card-bar span,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .mini-card-row-details {
  color: #586960;
}
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .scorecard-round-detail-card,
.admin-trend-lab-shell[data-theme="light"] .admin-player-profile-lab-scorecard-detail .hole-detail {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.95), rgba(247, 250, 245, 0.84)),
    rgba(255, 255, 255, 0.8);
  box-shadow: 0 14px 32px rgba(25, 31, 28, 0.1);
}
.admin-trend-lab-shell .scorecard-play-path-large {
  background:
    radial-gradient(circle at 74% 12%, color-mix(in srgb, var(--lab-blue) 15%, transparent), transparent 24rem),
    color-mix(in srgb, var(--lab-bg) 90%, #000 10%);
  backdrop-filter: blur(8px);
}
.admin-trend-lab-shell .scorecard-play-path-figure.is-large {
  border-color: color-mix(in srgb, var(--lab-border) 82%, transparent);
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--lab-card-soft) 62%, transparent), transparent 78%),
    var(--lab-card);
  box-shadow: var(--lab-shadow);
}
.admin-trend-lab-shell .scorecard-play-path-figure.is-large figcaption strong,
.admin-trend-lab-shell .scorecard-play-path-large p {
  color: var(--lab-title);
}
.admin-trend-lab-shell .scorecard-play-path-figure.is-large figcaption span {
  color: var(--lab-muted);
}
.admin-trend-lab-shell .scorecard-play-path-close,
.admin-trend-lab-shell .scorecard-play-path-nav-button {
  border-color: color-mix(in srgb, var(--lab-gold) 54%, transparent);
  background: color-mix(in srgb, var(--lab-card) 86%, #000 14%);
  color: var(--lab-title);
  box-shadow: var(--lab-shadow);
}
.admin-trend-lab-shell .scorecard-play-path-close {
  color: var(--lab-gold);
}
.admin-trend-lab-shell .scorecard-play-path-nav-button:hover,
.admin-trend-lab-shell .scorecard-play-path-close:hover {
  border-color: color-mix(in srgb, var(--lab-gold) 86%, transparent);
  background: color-mix(in srgb, var(--lab-card-soft) 78%, transparent);
}
.admin-player-profile-lab-round-table-card {
  display: grid;
  gap: 0.8rem;
  padding: 1rem;
}
.admin-player-profile-lab-round-table-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.8rem;
}
.admin-player-profile-lab-round-table-head span {
  color: var(--lab-title);
  font-size: 0.9rem;
  font-weight: 950;
}
.admin-player-profile-lab-round-table-head strong {
  flex: 0 0 auto;
  color: var(--lab-gold);
  font-size: 1.2rem;
  line-height: 1;
}
.admin-player-profile-lab-round-table-card .player-rounds-table {
  margin: 0;
  border: 1px solid color-mix(in srgb, var(--lab-border) 70%, transparent);
  border-radius: 8px;
  background: color-mix(in srgb, var(--lab-card-soft) 42%, transparent);
}
.admin-player-profile-lab-round-table-card table {
  min-width: 980px;
}
.admin-player-profile-lab-round-table-card th {
  color: var(--lab-muted);
}
.admin-player-profile-lab-round-table-card td {
  color: var(--lab-title);
}
.admin-player-profile-lab-round-table-card a {
  color: var(--lab-green);
}

.admin-leaderboard-lab-shell {
  gap: 1rem;
}

.admin-leaderboard-lab-content {
  gap: 1rem;
}

.admin-leaderboard-lab-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(21rem, 1fr));
  gap: 0.75rem;
  min-width: 0;
}

.admin-leaderboard-lab-card {
  min-height: 0;
  grid-template-rows: auto 1fr;
}

.admin-leaderboard-lab-card-top {
  min-height: 2.6rem;
}

.admin-leaderboard-lab-rank-list {
  display: grid;
  gap: 0.52rem;
  align-content: start;
  min-width: 0;
}

.admin-leaderboard-lab-rank {
  display: grid;
  grid-template-columns: 2.25rem minmax(0, 1fr) minmax(3.1rem, auto);
  gap: 0.7rem;
  align-items: center;
  min-width: 0;
  min-height: 3.65rem;
  padding: 0.6rem 0.68rem;
  border: 1px solid var(--lab-border);
  border-radius: 9px;
  background: color-mix(in srgb, var(--lab-card-soft) 72%, transparent);
}

.admin-leaderboard-lab-rank .pos {
  display: grid;
  place-items: center;
  width: 2.2rem;
  height: 2.2rem;
  border-radius: 999px;
  color: #07110d;
  background: linear-gradient(145deg, var(--lab-gold), var(--lab-green));
  font-weight: 950;
  line-height: 1;
  overflow: visible;
}

.admin-leaderboard-lab-rank .leaderboard-rank-logo-pos {
  background: transparent;
}

.admin-leaderboard-lab-rank .leaderboard-rank-logo {
  width: 2.2rem;
  height: 2.2rem;
}

.admin-leaderboard-lab-rank-main {
  min-width: 0;
}

.admin-leaderboard-lab-rank .name,
.admin-leaderboard-lab-rank .name a {
  color: var(--lab-title);
  font-weight: 950;
  line-height: 1.05;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-leaderboard-lab-rank .meta {
  margin-top: 0.12rem;
  color: var(--lab-muted);
  font-size: 0.76rem;
  font-weight: 800;
  line-height: 1.18;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-leaderboard-lab-rank .meta a {
  color: var(--lab-green);
}

.admin-leaderboard-lab-rank .score {
  color: var(--lab-gold);
  font-size: clamp(1.35rem, 1.7vw, 1.72rem);
  font-weight: 950;
  line-height: 1;
  text-align: right;
  white-space: nowrap;
}

.admin-leaderboard-lab-placeholder {
  opacity: 0.55;
  border-style: dashed;
}

.admin-leaderboard-lab-placeholder .score {
  color: var(--lab-muted);
}

.admin-leaderboard-lab-own-separator {
  margin: 0.05rem 0 -0.14rem;
  color: var(--lab-gold);
  font-size: 0.72rem;
  font-weight: 950;
  letter-spacing: 0;
  text-transform: uppercase;
}

.admin-leaderboard-lab-own-rank {
  border-color: color-mix(in srgb, var(--lab-gold) 58%, var(--lab-border));
  background: color-mix(in srgb, var(--lab-gold) 10%, var(--lab-card-soft));
}

.admin-courses-lab-shell {
  gap: 0.9rem;
}
.admin-courses-lab-shell [hidden] { display: none !important; }
.course-view-switch { display: flex; flex-wrap: wrap; gap: .5rem; }
.course-view-switch button {
  padding: .7rem 1rem; border-radius: 999px; color: var(--lab-text);
  background: var(--lab-card); border: 1px solid var(--lab-border); cursor: pointer;
}
.course-view-switch button[aria-pressed="true"] {
  color: var(--lab-title); border-color: var(--lab-gold);
  background: color-mix(in srgb, var(--lab-gold) 14%, var(--lab-card));
}
.course-comparison { display: grid; gap: 1rem; max-width: 1440px; min-width: 0; color: var(--lab-text); }
.course-comparison .panel { margin: 0; padding: 1rem; border: 1px solid var(--lab-border); background: var(--lab-panel); }
.course-comparison p { line-height: 1.5; margin: .5rem 0 0; }
.course-comparison h3, .course-comparison h4 { margin: 0; color: var(--lab-title); }
.course-comparison .muted, .course-comparison-consent p { color: var(--lab-muted); font-size: .85rem; }
.course-comparison-filters { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(90px, .35fr) minmax(0, 1.3fr) minmax(180px, .9fr); gap: .8rem; margin-top: 1rem; }
.course-comparison-filters label { display: grid; gap: .4rem; min-width: 0; font-weight: 700; font-size: .85rem; }
.course-comparison-filters select { min-width: 0; width: 100%; min-height: 44px; padding: .6rem; color: var(--lab-text); background: var(--lab-card); border: 1px solid var(--lab-border); border-radius: 8px; }
.course-comparison-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .8rem; }
.course-comparison-grid .course-analysis-metric-card { align-content: start; }
.course-comparison-grid h4 { font-size: 1rem; }
.course-comparison-notice { padding: 1rem; border-left: 3px solid var(--lab-gold); background: var(--lab-card-soft); border-radius: 6px; }
.course-comparison-notice p { color: var(--lab-muted); font-size: .9rem; max-width: 75ch; }
.comparison-delta { font-size: .8rem; color: var(--lab-muted); }
.comparison-delta.improved { color: var(--lab-green, #7ed6b0); }
.comparison-delta.worse { color: var(--lab-red, #eea8a3); }
.course-comparison-consent label { display: flex; align-items: center; justify-content: flex-start; gap: .7rem; font-weight: 700; cursor: pointer; text-align: left; }
.course-comparison-consent input { width: 18px; min-width: 18px; max-width: 18px; height: 18px; margin: 0; padding: 0; flex: 0 0 18px; accent-color: var(--lab-gold); }
.course-comparison-consent p { max-width: 90ch; }
.course-comparison-consent [data-comparison-status]:empty { display: none; }
.course-comparison-holes-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.course-comparison-holes-head label { display: grid; gap: .35rem; font-size: .85rem; font-weight: 700; min-width: 160px; }
.course-comparison-holes-head select { min-height: 44px; padding: .5rem; color: var(--lab-text); background: var(--lab-card); border: 1px solid var(--lab-border); border-radius: 8px; }
.course-comparison-hole-table { width: 100%; min-width: 0; table-layout: fixed; border-collapse: collapse; font-size: 1rem; }
.course-comparison-hole-table td { color: var(--lab-text); }
.course-comparison-hole-table thead th { font-size: .8rem; color: var(--lab-muted); }
.course-comparison-hole-table th, .course-comparison-hole-table td { padding: .7rem .5rem; text-align: left; border-bottom: 1px solid var(--lab-border); overflow-wrap: anywhere; }
.course-comparison-hole-table thead th:first-child { width: 17%; }
.course-comparison-hole-table thead th:nth-child(2), .course-comparison-hole-table thead th:nth-child(3) { width: 23%; }
.course-comparison-hole-table tbody th { color: var(--lab-title); }
.course-comparison-hole-table td:not(:last-child) { font-weight: 800; font-variant-numeric: tabular-nums; }
.course-comparison-hole-table small { display: block; margin-top: .2rem; color: var(--lab-muted); font-size: .75rem; font-weight: 500; }
.course-comparison-hole-table .comparison-delta small { color: inherit; }
.course-comparison-hole-table tbody tr:last-child > * { border-bottom: 0; }
.course-comparison-hole-table tbody tr:nth-child(even) { background: color-mix(in srgb, var(--lab-card) 55%, transparent); }
@media (max-width: 1100px) { .course-comparison-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 800px) { .course-comparison-filters { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 560px) {
  .course-comparison-filters, .course-comparison-grid { grid-template-columns: minmax(0, 1fr); }
  .course-view-switch button { flex: 1; padding: .7rem .5rem; }
  .course-comparison-holes-head { flex-direction: column; }
  .course-comparison-holes-head label { width: 100%; }
  .course-comparison-hole-table th, .course-comparison-hole-table td { padding: .65rem .25rem; }
  .course-comparison-hole-table thead th { font-size: .75rem; }
}
.admin-courses-lab-shell .course-analysis-overview-slot {
  margin: 0;
}
.admin-courses-lab-shell .course-analysis-filter-panel,
.admin-courses-lab-shell .course-analysis-block {
  margin: 0;
}
.admin-courses-lab-shell .course-analysis-block {
  display: grid;
  gap: 0.8rem;
  min-width: 0;
  padding: 0.8rem;
  border: 1px solid var(--lab-border);
  border-radius: 12px;
  background: var(--lab-panel);
  box-shadow: none;
}
.admin-courses-lab-shell .course-analysis-block + .course-analysis-block {
  margin-top: 0.9rem;
}
.admin-courses-lab-shell .course-analysis-block-head,
.admin-courses-lab-shell .course-hole-dashboard-head,
.admin-courses-lab-shell .course-hole-history-head,
.admin-courses-lab-shell .course-landing-zones-head {
  margin-bottom: 0;
}
.admin-courses-lab-shell .course-analysis-block-head h3,
.admin-courses-lab-shell .course-hole-dashboard-section-head h4 {
  color: var(--lab-title);
  font-size: clamp(1rem, 1.25vw, 1.2rem);
  line-height: 1.1;
}
.admin-courses-lab-shell .course-analysis-block-head p,
.admin-courses-lab-shell .course-hole-dashboard-head > div:first-child p,
.admin-courses-lab-shell .course-hole-history-head > div:first-child p {
  max-width: 48rem;
  color: var(--lab-muted);
  font-weight: 750;
  line-height: 1.3;
}
.admin-courses-lab-shell .course-analysis-metric-grid,
.admin-courses-lab-shell .course-analysis-special-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.admin-courses-lab-shell .course-analysis-metric-card {
  gap: 0.6rem;
  min-height: 0;
  padding: 0.75rem;
}
.admin-courses-lab-shell .course-analysis-metric-title {
  justify-content: center;
  color: var(--lab-title);
  font-size: 0.95rem;
  font-weight: 950;
  text-align: center;
}
.admin-courses-lab-shell .course-analysis-metric-values {
  margin-top: 0;
}
.admin-courses-lab-shell .course-analysis-metric-value-box {
  min-height: 5.9rem;
  border-color: color-mix(in srgb, var(--lab-gold) 26%, var(--lab-border));
  background: color-mix(in srgb, var(--lab-card-soft) 72%, transparent);
}
.admin-courses-lab-shell .course-analysis-metric-value-box span {
  color: var(--lab-muted);
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}
.admin-courses-lab-shell .course-analysis-metric-value-box strong {
  font-size: clamp(2rem, 2.2vw, 2.85rem);
  white-space: nowrap;
}
.admin-courses-lab-shell .course-analysis-metric-value-box small {
  color: var(--lab-green);
  font-size: 0.72rem;
  overflow-wrap: anywhere;
}
.admin-courses-lab-shell .course-analysis-metric-value-latest strong {
  color: var(--lab-gold);
}
.admin-courses-lab-shell .course-analysis-metric-value-average strong,
.admin-courses-lab-shell .course-analysis-metric-value-average .course-analysis-average-line {
  color: var(--lab-green);
}
.admin-courses-lab-shell .course-analysis-metric-card,
.admin-courses-lab-shell .course-analysis-special-card,
.admin-courses-lab-shell .course-analysis-performance-tile,
.admin-courses-lab-shell .course-analysis-hole-card,
.admin-courses-lab-shell .course-hole-history-card {
  border-color: var(--lab-border);
  color: var(--lab-text);
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--lab-card) 98%, transparent), color-mix(in srgb, var(--lab-card-soft) 74%, transparent));
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.12);
}
.admin-courses-lab-shell .profile-status-improved {
  border-color: color-mix(in srgb, var(--lab-green) 56%, var(--lab-border));
  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--lab-green) 18%, transparent),
    0 18px 40px color-mix(in srgb, var(--lab-green) 18%, transparent);
}
.admin-courses-lab-shell .profile-status-worse {
  border-color: color-mix(in srgb, var(--lab-red) 56%, var(--lab-border));
  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--lab-red) 16%, transparent),
    0 18px 40px color-mix(in srgb, var(--lab-red) 15%, transparent);
}
.admin-courses-lab-shell .profile-status-stable {
  border-color: color-mix(in srgb, var(--lab-blue) 40%, var(--lab-border));
}
.admin-courses-lab-shell .course-analysis-metric-title,
.admin-courses-lab-shell .course-analysis-metric-card span,
.admin-courses-lab-shell .course-analysis-special-card span,
.admin-courses-lab-shell .course-analysis-performance-tile span,
.admin-courses-lab-shell .course-analysis-hole-stats span,
.admin-courses-lab-shell .course-hole-history-summary span,
.admin-courses-lab-shell .course-hole-history-filter span,
.admin-courses-lab-shell .course-analysis-hole-result-row span,
.admin-courses-lab-shell .course-hole-history-row,
.admin-courses-lab-shell .course-hole-history-empty {
  color: var(--lab-muted);
  text-shadow: none;
}
.admin-courses-lab-shell .course-analysis-metric-card strong,
.admin-courses-lab-shell .course-analysis-special-card strong,
.admin-courses-lab-shell .course-analysis-performance-tile strong,
.admin-courses-lab-shell .course-analysis-hole-latest strong,
.admin-courses-lab-shell .course-analysis-hole-stats strong,
.admin-courses-lab-shell .course-hole-history-summary strong,
.admin-courses-lab-shell .course-hole-history-row b {
  color: var(--lab-gold);
  text-shadow: none;
}
.admin-courses-lab-shell .course-analysis-average-line,
.admin-courses-lab-shell .course-landing-zone-meta strong {
  color: var(--lab-green);
}
.admin-courses-lab-shell .course-analysis-latest,
.admin-courses-lab-shell .course-analysis-special-card b,
.admin-courses-lab-shell .course-analysis-special-card small,
.admin-courses-lab-shell .course-analysis-performance-tile .course-analysis-latest,
.admin-courses-lab-shell .course-analysis-hole-title span,
.admin-courses-lab-shell .course-analysis-hole-title b,
.admin-courses-lab-shell .course-hole-dashboard-section-head h4,
.admin-courses-lab-shell .course-hole-history-row-head,
.admin-courses-lab-shell .course-hole-history-row em,
.admin-courses-lab-shell .course-hole-history-row i,
.admin-courses-lab-shell .course-landing-zone-meta span {
  color: var(--lab-gold);
  text-shadow: none;
}
.admin-courses-lab-shell .course-analysis-hole-title strong,
.admin-courses-lab-shell .course-analysis-special-card em,
.admin-courses-lab-shell .course-analysis-performance-tile em,
.admin-courses-lab-shell .course-analysis-hole-title em {
  color: var(--lab-text);
  text-shadow: none;
}
.admin-courses-lab-shell .course-analysis-metric-title {
  color: var(--lab-title);
}
.admin-courses-lab-shell .course-analysis-hole-latest,
.admin-courses-lab-shell .course-analysis-hole-stats div,
.admin-courses-lab-shell .course-analysis-hole-result-row span,
.admin-courses-lab-shell .course-hole-history-summary div,
.admin-courses-lab-shell .course-hole-history-row,
.admin-courses-lab-shell .course-hole-history-empty,
.admin-courses-lab-shell .course-landing-zone-filter,
.admin-courses-lab-shell .course-hole-history-filter,
.admin-courses-lab-shell .course-landing-zone-image,
.admin-courses-lab-shell .course-landing-zone-placeholder {
  border-color: var(--lab-border);
  background: color-mix(in srgb, var(--lab-card-soft) 72%, transparent);
}
.admin-courses-lab-shell .course-analysis-hole-latest {
  color: var(--lab-gold);
  text-shadow: none;
}
.admin-courses-lab-shell .course-analysis-hole-latest span {
  color: var(--lab-gold);
  text-shadow: none;
}
.admin-courses-lab-shell .course-analysis-hole-latest small {
  color: var(--lab-muted);
  text-shadow: none;
}
.admin-courses-lab-shell[data-theme="light"] .course-analysis-hole-latest {
  background: color-mix(in srgb, var(--lab-card-soft) 88%, #ffffff 12%);
}
.admin-courses-lab-shell[data-theme="light"] .course-analysis-hole-latest strong {
  color: var(--lab-gold);
}
.admin-courses-lab-shell[data-theme="light"] .course-analysis-hole-latest small {
  color: #5d675f;
}
.admin-courses-lab-shell .course-landing-zone-filter button,
.admin-courses-lab-shell .course-hole-history-filter button {
  color: var(--lab-muted);
}
.admin-courses-lab-shell .course-landing-zone-filter button.active,
.admin-courses-lab-shell .course-hole-history-filter button.active {
  border-color: color-mix(in srgb, var(--lab-gold) 62%, transparent);
  color: var(--lab-gold);
  background: color-mix(in srgb, var(--lab-gold) 16%, transparent);
}
.admin-courses-lab-shell .course-landing-zone-dot {
  border-color: color-mix(in srgb, var(--lab-title) 82%, transparent);
  background: var(--lab-gold);
}
.admin-courses-lab-shell .course-landing-zone-dot b {
  color: var(--lab-title);
  background: color-mix(in srgb, var(--lab-bg) 82%, #000 18%);
}
.admin-courses-lab-shell[data-theme="light"] .course-landing-zone-dot b {
  color: #ffffff;
}
@media (min-width: 1180px) {
  .admin-trend-lab-card-grid,
  .admin-trend-lab-group-scoring .admin-trend-lab-card-grid,
  .admin-trend-lab-group-play .admin-trend-lab-card-grid,
  .admin-trend-lab-group-average-score .admin-trend-lab-card-grid,
  .admin-trend-lab-group-average-play .admin-trend-lab-card-grid,
  .admin-trend-lab-group-category-shot .admin-trend-lab-card-grid,
  .admin-trend-lab-group-par .admin-trend-lab-card-grid,
  .admin-trend-lab-group-category-lochscore .admin-trend-lab-card-grid {
    grid-template-columns: repeat(auto-fit, minmax(22rem, 1fr));
  }
}
@media (max-width: 900px) {
  .admin-trend-lab-header {
    align-items: start;
  }
  .admin-trend-lab-group-head {
    display: grid;
  }
  .admin-trend-lab-section-legend {
    justify-content: flex-start;
    min-width: 0;
  }
  .admin-trend-lab-summary {
    grid-template-columns: minmax(0, 1fr);
  }
  .club-analysis-summary,
  .club-analysis-highlight-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .club-analysis-card-bottom {
    grid-template-columns: minmax(0, 1fr);
  }
  .admin-trend-lab-distribution-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 760px) {
  .admin-trend-lab-filterbar {
    padding: 0.65rem;
  }
  .admin-trend-lab-filterbar .filters {
    gap: 0.55rem;
  }
  .admin-trend-lab-filterbar select,
  .admin-trend-lab-filterbar input,
  .round-date-filter-wrap {
    flex: 1 1 11rem;
    min-width: 0;
    max-width: 100%;
  }
  .club-analysis-card-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .club-analysis-club-head {
    grid-template-columns: 2.8rem minmax(0, 1fr);
  }
  .club-analysis-club-head em {
    grid-column: 2;
    justify-self: start;
  }
  .club-analysis-club-icon {
    width: 2.8rem;
    height: 2.8rem;
  }
  .club-analysis-club-icon img {
    width: 2.25rem;
    height: 2.25rem;
  }
  .club-analysis-values {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .admin-player-profile-lab-top-report .player-round-report {
    padding: 0.85rem;
    gap: 0.72rem;
  }
  .admin-player-profile-lab-top-report .player-round-report-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0.72rem;
  }
  .admin-player-profile-lab-top-report .player-round-report-link {
    justify-self: stretch;
    text-align: center;
  }
  .admin-player-profile-lab-top-report .player-round-report-metrics,
  .admin-player-profile-lab-top-report .player-round-report-insights {
    grid-template-columns: minmax(0, 1fr);
  }
  .admin-player-profile-lab-top-report .player-round-report-head h3,
  .admin-player-profile-lab-top-report .player-round-report-head p,
  .admin-player-profile-lab-top-report .player-round-report-summary p,
  .admin-player-profile-lab-top-report .player-round-report-special p,
  .admin-player-profile-lab-top-report .player-round-report-insight p {
    overflow-wrap: anywhere;
  }
  .admin-player-profile-lab-scorecard-detail,
  .admin-player-profile-lab-round-table-card {
    padding: 0.75rem;
  }
  .admin-player-profile-lab-scorecard-detail > .scorecard-panel,
  .admin-player-profile-lab-scorecard-detail > .empty {
    width: 100%;
  }
  .admin-player-profile-lab-round-table-head {
    align-items: flex-start;
  }
  .admin-courses-lab-shell .course-analysis-block-head,
  .admin-courses-lab-shell .course-hole-dashboard-head,
  .admin-courses-lab-shell .course-hole-history-head,
  .admin-courses-lab-shell .course-landing-zones-head {
    display: grid;
  }
  .admin-courses-lab-shell .course-analysis-block-head p {
    max-width: none;
    text-align: left;
  }
}
@media (max-width: 1500px) {
  .admin-courses-lab-shell .course-analysis-metric-grid,
  .admin-courses-lab-shell .course-analysis-special-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 1100px) {
  .admin-courses-lab-shell .course-analysis-metric-grid,
  .admin-courses-lab-shell .course-analysis-special-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 620px) {
  .admin-trend-lab-shell {
    padding: 0.65rem;
  }
  .admin-trend-lab-card-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .admin-trend-lab-card-main {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
  }
  .admin-trend-lab-chart {
    min-width: 0;
    height: 7rem;
  }
  .admin-trend-lab-sparkline {
    height: 3rem;
  }
  .admin-trend-lab-card {
    padding: 1rem 0.82rem;
  }
  .admin-trend-lab-card-values {
    gap: 0.56rem;
  }
  .admin-trend-lab-card-values > div {
    min-height: 4.55rem;
    padding: 0.62rem 0.58rem;
    overflow: hidden;
  }
  .admin-trend-lab-card-values > div > span {
    gap: 0.28rem;
    font-size: 0.66rem;
    line-height: 1;
  }
  .admin-trend-lab-card-values strong {
    font-size: clamp(1.95rem, 9.5vw, 2.42rem);
  }
  .club-analysis-summary,
  .club-analysis-highlight-grid,
  .club-analysis-values {
    grid-template-columns: minmax(0, 1fr);
  }
  .club-analysis-summary > div {
    min-height: 0;
  }
  .club-analysis-highlight-card {
    grid-template-columns: 2.65rem minmax(0, 1fr);
  }
  .club-analysis-highlight-card img {
    width: 2.65rem;
    height: 2.65rem;
  }
  .club-analysis-values strong {
    font-size: clamp(1.05rem, 5.6vw, 1.42rem);
  }
  .admin-trend-lab-card-values span.admin-trend-lab-value-indicator {
    min-width: 2rem;
    height: 1.22rem;
    gap: 0.08rem;
    padding: 0 0.16rem;
    font-size: 0.72rem;
  }
  .admin-trend-lab-card-values .admin-trend-lab-value-indicator .admin-trend-lab-info {
    width: 0.78rem;
    height: 0.78rem;
  }
  .admin-player-profile-lab-record-row {
    gap: 0.5rem;
  }
  .admin-player-profile-lab-record-row > div {
    min-height: 4.15rem;
    padding: 0.56rem 0.45rem;
  }
  .admin-player-profile-lab-record-row strong {
    font-size: clamp(1.25rem, 6vw, 1.72rem);
  }
  .admin-player-profile-lab-scorecard-detail {
    justify-items: stretch;
    overflow: hidden;
  }
  .admin-player-profile-lab-scorecard-detail > .scorecard-panel,
  .admin-player-profile-lab-scorecard-detail > .empty {
    min-width: 0;
  }
  .admin-player-profile-lab-scorecard-detail .scorecard-panel {
    padding: 0.75rem;
  }
  .admin-player-profile-lab-scorecard-detail .scorecard-title {
    display: grid;
    gap: 0.42rem;
  }
  .admin-player-profile-lab-scorecard-detail .scorecard-title h3 {
    font-size: 1rem;
    line-height: 1.14;
    overflow-wrap: anywhere;
    hyphens: auto;
  }
  .admin-player-profile-lab-scorecard-detail .scorecard-meta {
    gap: 0.34rem;
  }
  .admin-player-profile-lab-scorecard-detail .scorecard-meta span {
    padding: 0.28rem 0.46rem;
    font-size: 0.76rem;
    line-height: 1.1;
  }
  .admin-player-profile-lab-scorecard-detail .scorecard-compact-table {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
  }
  .admin-player-profile-lab-scorecard-detail .scorecard-compact-table table {
    min-width: 38rem;
    table-layout: fixed;
  }
  .admin-player-profile-lab-scorecard-detail .scorecard-compact-table th,
  .admin-player-profile-lab-scorecard-detail .scorecard-compact-table td {
    padding: 0.36rem 0.24rem;
    font-size: 0.78rem;
    white-space: nowrap;
  }
  .admin-player-profile-lab-scorecard-detail .scorecard-compact-table th:first-child,
  .admin-player-profile-lab-scorecard-detail .scorecard-compact-table td:first-child {
    position: sticky;
    left: 0;
    z-index: 2;
    background: color-mix(in srgb, var(--lab-card) 96%, transparent);
    box-shadow: 0.5rem 0 0.8rem rgba(0, 0, 0, 0.08);
  }
  .admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid {
    min-width: 0;
  }
  .admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-bar,
  .admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-bar-share {
    grid-template-columns: minmax(5.8rem, 1fr) minmax(1.55rem, auto) minmax(4.9rem, 0.9fr) minmax(2.25rem, auto);
    column-gap: 0.26rem;
    font-size: 0.72rem;
  }
  .admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-bar > span:first-child,
  .admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-bar-share > span:first-child {
    min-width: 0;
    overflow-wrap: anywhere;
    hyphens: auto;
  }
  .admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-track {
    min-width: 0;
  }
  .admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-bar strong,
  .admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-bar-share strong {
    font-size: 0.72rem;
    white-space: nowrap;
  }
  .admin-courses-lab-shell .course-analysis-metric-grid,
  .admin-courses-lab-shell .course-analysis-special-grid,
  .admin-courses-lab-shell .course-analysis-hole-grid,
  .admin-courses-lab-shell .course-hole-dashboard-grid,
  .admin-courses-lab-shell .course-hole-history-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .admin-courses-lab-shell .course-analysis-metric-values {
    gap: 0.5rem;
  }
  .admin-courses-lab-shell .course-analysis-metric-value-box {
    min-height: 5.35rem;
    padding: 0.55rem;
  }
  .admin-courses-lab-shell .course-analysis-metric-value-box strong {
    font-size: clamp(1.8rem, 10vw, 2.35rem);
  }
  .admin-courses-lab-shell .course-hole-history-row {
    grid-template-columns: minmax(3.5rem, 1fr) repeat(4, minmax(1.8rem, 0.62fr));
    font-size: 0.68rem;
  }
  .admin-leaderboard-lab-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .admin-leaderboard-lab-rank {
    grid-template-columns: 2.1rem minmax(0, 1fr) minmax(2.8rem, auto);
    gap: 0.55rem;
    padding: 0.58rem;
  }
  .admin-leaderboard-lab-rank .pos,
  .admin-leaderboard-lab-rank .leaderboard-rank-logo,
  .admin-leaderboard-lab-rank .leaderboard-rank-logo-pos {
    width: 2.05rem;
    height: 2.05rem;
  }
  .admin-leaderboard-lab-rank .score {
    font-size: clamp(1.18rem, 6vw, 1.5rem);
  }
}
@media (max-width: 360px) {
  .admin-trend-lab-card-values {
    grid-template-columns: minmax(0, 1fr);
  }
  .admin-courses-lab-shell .course-analysis-metric-values {
    grid-template-columns: minmax(0, 1fr);
  }
  .admin-player-profile-lab-record-row {
    grid-template-columns: minmax(0, 1fr);
  }
  .admin-player-profile-lab-scorecard-detail .scorecard-panel {
    padding: 0.64rem;
  }
  .admin-player-profile-lab-scorecard-detail .scorecard-compact-table table {
    min-width: 36rem;
  }
  .admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-bar,
  .admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-bar-share {
    grid-template-columns: minmax(4.8rem, 1fr) minmax(1.35rem, auto) minmax(3.7rem, 0.76fr) minmax(2rem, auto);
    column-gap: 0.2rem;
    font-size: 0.68rem;
  }
  .admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-bar strong,
  .admin-player-profile-lab-scorecard-detail .scorecard-shot-quote-grid .mini-card-bar-share strong {
    font-size: 0.68rem;
  }
  .admin-leaderboard-lab-rank {
    grid-template-columns: 1.9rem minmax(0, 1fr) minmax(2.3rem, auto);
    gap: 0.45rem;
  }
  .admin-leaderboard-lab-rank .pos,
  .admin-leaderboard-lab-rank .leaderboard-rank-logo,
  .admin-leaderboard-lab-rank .leaderboard-rank-logo-pos {
    width: 1.8rem;
    height: 1.8rem;
  }
  .admin-leaderboard-lab-rank .meta {
    font-size: 0.68rem;
  }
  .admin-trend-lab-chart {
    height: 7.8rem;
  }
}

/* Redesign compatibility for older settings/admin/filter pages */
body.admin-trend-lab-route .entry-page {
  --text: var(--lab-text);
  --muted: var(--lab-muted);
  --line: var(--lab-border);
  --gold: var(--lab-gold);
  color-scheme: dark;
}
body.admin-trend-lab-route[data-admin-trend-lab-theme="light"] .entry-page {
  color-scheme: light;
}
body.admin-trend-lab-route .entry-page .editor-grid label {
  min-width: 0;
}
body.admin-trend-lab-route .entry-page .editor-grid :is(input, select) {
  width: 100%;
  min-width: 0;
}
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) {
  color: var(--lab-text);
}
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .section-header h2,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .section-header h3,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .panel h3,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .card .value {
  color: var(--lab-title);
  text-shadow: none;
}
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .section-header p:not(.eyebrow),
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .muted,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .card .label,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .card .sub,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) label,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) small {
  color: var(--lab-muted);
}
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .eyebrow,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .section-emotion,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .course-filter-summary strong,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .course-filter-tee-group h4,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .course-filter-tee-table th,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .admin-golfdb-count,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .admin-dashboard-kpi strong,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .admin-stats-kpi strong {
  color: var(--lab-gold);
}
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .panel,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .card,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .table-wrap,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .leader,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .settings-group,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .settings-action-card,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .settings-toggle-row,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .club-choice-tile,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .club-distance-tile,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .course-filter-card,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .admin-dashboard-kpi,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .admin-stats-kpi,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .admin-user-card,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .admin-user-stat-card,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .admin-registration-card,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .admin-registration-notice,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .admin-dashboard-user-row,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .admin-dashboard-compact-row,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .admin-golfdb-history-card,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .friend-card,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .empty {
  border-color: var(--lab-border);
  color: var(--lab-text);
  background:
    radial-gradient(circle at 18% 12%, color-mix(in srgb, var(--lab-blue) 10%, transparent), transparent 18rem),
    linear-gradient(180deg, color-mix(in srgb, var(--lab-card) 96%, transparent), color-mix(in srgb, var(--lab-card-soft) 78%, transparent));
  box-shadow: var(--lab-shadow);
}
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .settings-action-card:hover,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .settings-action-card:focus-visible,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .club-choice-tile:hover,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .club-choice-tile:focus-within,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .course-filter-card:hover {
  border-color: color-mix(in srgb, var(--lab-gold) 48%, var(--lab-border));
  background:
    radial-gradient(circle at 22% 14%, color-mix(in srgb, var(--lab-gold) 12%, transparent), transparent 18rem),
    linear-gradient(180deg, color-mix(in srgb, var(--lab-card) 92%, transparent), color-mix(in srgb, var(--lab-card-soft) 84%, transparent));
}
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) input,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) select,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) textarea {
  border-color: var(--lab-border);
  color: var(--lab-text);
  background: color-mix(in srgb, var(--lab-card) 88%, transparent);
}
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) input::placeholder,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) textarea::placeholder {
  color: color-mix(in srgb, var(--lab-muted) 72%, transparent);
}
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) table th,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) table td {
  border-color: color-mix(in srgb, var(--lab-border) 78%, transparent);
}
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) table th {
  color: var(--lab-gold);
  background: color-mix(in srgb, var(--lab-card-soft) 76%, transparent);
}
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) table td {
  color: var(--lab-text);
  background: color-mix(in srgb, var(--lab-card) 70%, transparent);
}
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .button-link,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .ghost-link,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .pill-link {
  border-color: var(--lab-border);
  color: var(--lab-title);
  background: color-mix(in srgb, var(--lab-card-soft) 70%, transparent);
}
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .button-link:hover,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .ghost-link:hover,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .pill-link:hover {
  border-color: color-mix(in srgb, var(--lab-gold) 58%, var(--lab-border));
}
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .settings-hcp-actions button,
body.admin-trend-lab-route .section:not(.admin-trend-lab-page) .editor-actions button {
  border-color: color-mix(in srgb, var(--lab-gold) 52%, transparent);
  color: var(--lab-title);
  background: linear-gradient(145deg, color-mix(in srgb, var(--lab-card-soft) 70%, var(--lab-gold) 30%), var(--lab-card));
}
body.admin-trend-lab-route .course-filter-tee-table,
body.admin-trend-lab-route .admin-golfdb-sparkline,
body.admin-trend-lab-route .admin-golfdb-bar em {
  border-color: var(--lab-border);
  background: color-mix(in srgb, var(--lab-card-soft) 62%, transparent);
}
body.admin-trend-lab-route .admin-golfdb-bar i {
  background: linear-gradient(90deg, var(--lab-gold), color-mix(in srgb, var(--lab-blue) 72%, var(--lab-gold)));
}
body.admin-trend-lab-route .admin-golfdb-sparkline path {
  stroke: var(--lab-gold);
}
body.admin-trend-lab-route .friends-layout,
body.admin-trend-lab-route .friends-layout > *,
body.admin-trend-lab-route .admin-golfdb-page,
body.admin-trend-lab-route .admin-golfdb-page > *,
body.admin-trend-lab-route .course-filter-page,
body.admin-trend-lab-route .course-filter-page > * {
  min-width: 0;
}
body.admin-trend-lab-route .friend-card-main strong,
body.admin-trend-lab-route .friend-card-main small,
body.admin-trend-lab-route .admin-dashboard-compact-row strong,
body.admin-trend-lab-route .admin-dashboard-compact-row small {
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: auto;
}
body.admin-trend-lab-route .friend-visibility-label {
  white-space: normal;
}
@media (max-width: 1120px) {
  body.admin-trend-lab-route .friends-layout,
  body.admin-trend-lab-route .admin-golfdb-layout {
    grid-template-columns: minmax(0, 1fr);
  }
  body.admin-trend-lab-route .admin-golfdb-source {
    justify-items: start;
  }
}
@media (max-width: 760px) {
  body.admin-trend-lab-route .friends-settings-main,
  body.admin-trend-lab-route .friends-settings-panel,
  body.admin-trend-lab-route .friends-layout {
    grid-template-columns: minmax(0, 1fr);
  }
  body.admin-trend-lab-route .friends-settings-panel .friends-toggle-row,
  body.admin-trend-lab-route .friends-settings-panel .friends-leaderboard-field {
    width: 100%;
  }
  body.admin-trend-lab-route .friends-settings-panel .friends-leaderboard-field {
    grid-template-columns: minmax(0, 1fr);
    gap: 0.55rem;
  }
  body.admin-trend-lab-route .friend-card {
    grid-template-columns: 2.75rem minmax(0, 1fr);
    align-items: start;
  }
  body.admin-trend-lab-route .friend-avatar {
    width: 2.75rem;
  }
  body.admin-trend-lab-route .friend-card-actions {
    grid-column: 1 / -1;
    justify-content: flex-start;
    width: 100%;
  }
  body.admin-trend-lab-route .friend-card-actions .pill-link {
    flex: 1 1 7rem;
    min-width: min(100%, 7rem);
  }
  body.admin-trend-lab-route .friend-visibility-switch {
    flex-wrap: wrap;
  }
}

.admin-ops-dev-media-choice { display: flex; align-items: center; gap: 0.75rem; }
.admin-ops-dev-media-choice input { flex: 0 0 1.15rem; min-width: 0; max-width: 1.15rem; width: 1.15rem; height: 1.15rem; }
.admin-ops-dev-media-choice span { flex: 1; min-width: 0; }

.profile-update-notice { margin: 12px 20px; padding: 12px 16px; border: 1px solid var(--lab-border, var(--line)); border-radius: 12px; background: var(--lab-panel, var(--panel)); color: var(--lab-text, var(--text)); font-size: 0.875rem; }

.round-table-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;flex-wrap:wrap}.round-table-pagination span{font-size:.85rem}.round-table-pagination button:disabled{opacity:.4;cursor:default}
