:root{--radius:0.625rem;--background:oklch(0.978 0.005 68);--foreground:oklch(0.145 0 0);--card:oklch(0.98 0.006 85);--card-foreground:oklch(0.145 0 0);--popover:oklch(0.98 0.006 85);--popover-foreground:oklch(0.145 0 0);--primary:oklch(0.205 0 0);--primary-foreground:oklch(0.985 0 0);--secondary:oklch(0.97 0 0);--secondary-foreground:oklch(0.205 0 0);--muted:oklch(0.97 0 0);--muted-foreground:oklch(0.45 0 0);--accent:oklch(0.97 0 0);--accent-foreground:oklch(0.205 0 0);--destructive:oklch(0.561 0.245 27.325);--destructive-solid:oklch(0.561 0.245 27.325);--destructive-foreground:oklch(1 0 0);--overlay:oklch(0 0 0 / 50%);--scrim:oklch(0 0 0 / 60%);--scrim-foreground:oklch(1 0 0);--viewer-backdrop:oklch(0 0 0);--moment-scoreboard-ink:oklch(0.205 0 0);--border:oklch(0.9 0.012 70);--card-shadow:oklch(0.35 0.03 60 / 12%);--input:oklch(0.922 0 0);--ring:oklch(0.2 0 0);--action-gradient:linear-gradient(135deg, #E43B47 0%, #D41B7E 50%, #6A23AD 100%);--action-fallback:#D41B7E;--supporter-ring:linear-gradient(135deg, #FD9231 8%, #FF7733 14%, #FC424F 27%, #F61A6A 36%, #ED176F 41%, #BA1A8D 50%, #6A23AD 63%, #4B22A4 67%, #35147A 82%, #240650 89%, #20034C 100%);--chart-1:oklch(0.646 0.222 41.116);--chart-2:oklch(0.6 0.118 184.704);--chart-3:oklch(0.398 0.07 227.392);--chart-4:oklch(0.828 0.189 84.429);--chart-5:oklch(0.769 0.188 70.08);--sidebar:oklch(0.985 0 0);--sidebar-foreground:oklch(0.145 0 0);--sidebar-primary:oklch(0.205 0 0);--sidebar-primary-foreground:oklch(0.985 0 0);--sidebar-accent:oklch(0.97 0 0);--sidebar-accent-foreground:oklch(0.205 0 0);--sidebar-border:oklch(0.922 0 0);--sidebar-ring:oklch(0.708 0 0);--role-commissioner:oklch(0.93 0.034 250);--role-commissioner-foreground:oklch(0.35 0.1 250);--role-coach:oklch(0.93 0.04 145);--role-coach-foreground:oklch(0.35 0.12 145);--role-family:oklch(0.93 0.04 300);--role-family-foreground:oklch(0.4 0.15 300);--status-active:oklch(0.93 0.034 250);--status-active-foreground:oklch(0.35 0.1 250);--status-paused:oklch(0.94 0.06 95);--status-paused-foreground:oklch(0.4 0.12 85);--status-completed:oklch(0.93 0.04 145);--status-completed-foreground:oklch(0.35 0.12 145);--constraint-coach-kid:oklch(0.93 0.034 250);--constraint-coach-kid-foreground:oklch(0.45 0.12 250);--constraint-saved:oklch(0.94 0.06 95);--constraint-saved-foreground:oklch(0.45 0.12 85);--constraint-sibling:oklch(0.93 0.04 145);--constraint-sibling-foreground:oklch(0.45 0.12 145);--constraint-ride:oklch(0.93 0.04 300);--constraint-ride-foreground:oklch(0.45 0.15 300);--event-practice:oklch(0.93 0.034 250);--event-practice-foreground:oklch(0.35 0.1 250);--event-practice-dot:oklch(0.58 0.19 255);--event-game:oklch(0.93 0.04 145);--event-game-foreground:oklch(0.35 0.12 145);--event-game-dot:oklch(0.58 0.17 145);--event-tournament:oklch(0.93 0.04 300);--event-tournament-foreground:oklch(0.4 0.15 300);--event-draft:oklch(0.93 0.06 55);--event-draft-foreground:oklch(0.4 0.14 45);--event-draft-dot:oklch(0.66 0.17 55);--event-evaluation:var(--event-other);--event-evaluation-foreground:oklch(0.4 0.15 310);--event-evaluation-dot:oklch(0.43 0.15 310);--event-other:oklch(0.94 0 0);--event-other-foreground:oklch(0.4 0 0);--event-other-dot:oklch(0.54 0 0);--assignment-hat-pull:oklch(0.93 0.06 55);--assignment-hat-pull-foreground:oklch(0.4 0.14 45);--assignment-manual:oklch(0.93 0.034 250);--assignment-manual-foreground:oklch(0.35 0.1 250);--avatar-1:oklch(0.45 0.12 250);--avatar-1-foreground:oklch(1 0 0);--avatar-2:oklch(0.45 0.12 145);--avatar-2-foreground:oklch(1 0 0);--avatar-3:oklch(0.45 0.12 300);--avatar-3-foreground:oklch(1 0 0);--avatar-4:oklch(0.45 0.12 55);--avatar-4-foreground:oklch(1 0 0);--avatar-5:oklch(0.45 0.12 350);--avatar-5-foreground:oklch(1 0 0);--avatar-6:oklch(0.45 0.12 270);--avatar-6-foreground:oklch(1 0 0);--feedback-success:oklch(0.93 0.08 145);--feedback-success-foreground:oklch(0.3 0.15 145);--feedback-warning:oklch(0.94 0.12 95);--feedback-warning-foreground:oklch(0.35 0.12 85);--component-inactive-color:var(--muted-foreground);--component-bg:var(--card);--component-shadow:var(--border);--component-active-bg:var(--secondary);--component-line-inactive-color:var(--border);--component-active-color-default:var(--accent-foreground);--spacing:0.25rem;--spacing-gutter:1rem;--spacing-dialog-inset:20px;--spacing-dialog-focus-inset:4px;--spacing-section:1.25rem;--spacing-heading:0.5rem;--spacing-tap:2.75rem;--spacing-control:2.5rem;--spacing-control-compact:2.25rem;--spacing-icon-sm:1rem;--spacing-icon:1.25rem;--spacing-icon-lg:1.5rem;--radius-tick:4px;--radius-control:10px;--radius-badge:10px;--radius-card:16px;--radius-tile:20px;--radius-sheet:24px;--text-2xs:0.6875rem;--text-2xs--line-height:1rem;--text-xs:0.75rem;--text-xs--line-height:calc(1 / 0.75);--text-sm:0.875rem;--text-sm--line-height:calc(1.25 / 0.875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-entity:1.75rem;--text-entity--line-height:2rem;--text-title:2.125rem;--text-title--line-height:2.5rem;--font-display:'BarlowCondensed-ExtraBold';--leading-card-title:21px;--shadow-card:0 1px 3px 0 rgb(0 0 0 / 0.05), 0 1px 2px -1px rgb(0 0 0 / 0.05);--shadow-surface:0 1px 2px 0 var(--color-card-shadow), 0 6px 16px -6px var(--color-card-shadow);--shadow-raised:0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);--shadow-overlay:0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);}
@media(prefers-color-scheme:dark){:root{--background:oklch(0.155 0.007 271);--foreground:oklch(0.985 0 0);--card:oklch(0.201 0.008 275);--card-foreground:oklch(0.985 0 0);--popover:oklch(0.201 0.008 275);--popover-foreground:oklch(0.985 0 0);--primary:oklch(0.922 0 0);--primary-foreground:oklch(0.205 0 0);--secondary:oklch(0.26 0.01 272);--secondary-foreground:oklch(0.985 0 0);--muted:oklch(0.26 0.01 272);--muted-foreground:oklch(0.75 0 0);--accent:oklch(0.26 0.01 272);--accent-foreground:oklch(0.985 0 0);--destructive:oklch(0.704 0.191 22.216);--destructive-solid:oklch(0.499293572 0.123055118 20.699752220);--destructive-foreground:oklch(1 0 0);--overlay:oklch(0 0 0 / 50%);--scrim:oklch(0 0 0 / 60%);--scrim-foreground:oklch(1 0 0);--viewer-backdrop:oklch(0 0 0);--moment-scoreboard-ink:oklch(0.205 0 0);--border:oklch(1 0 0 / 14%);--card-shadow:oklch(0 0 0 / 40%);--input:oklch(1 0 0 / 15%);--ring:oklch(0.85 0 0);--action-gradient:linear-gradient(135deg, #E43B47 0%, #D41B7E 50%, #6A23AD 100%);--action-fallback:#D41B7E;--supporter-ring:linear-gradient(135deg, #FD9231 8%, #FF7733 14%, #FC424F 27%, #F61A6A 36%, #ED176F 41%, #BA1A8D 50%, #6A23AD 63%, #4B22A4 67%, #35147A 82%, #240650 89%, #20034C 100%);--chart-1:oklch(0.488 0.243 264.376);--chart-2:oklch(0.696 0.17 162.48);--chart-3:oklch(0.769 0.188 70.08);--chart-4:oklch(0.627 0.265 303.9);--chart-5:oklch(0.645 0.246 16.439);--sidebar:oklch(0.205 0 0);--sidebar-foreground:oklch(0.985 0 0);--sidebar-primary:oklch(0.488 0.243 264.376);--sidebar-primary-foreground:oklch(0.985 0 0);--sidebar-accent:oklch(0.269 0 0);--sidebar-accent-foreground:oklch(0.985 0 0);--sidebar-border:oklch(1 0 0 / 10%);--sidebar-ring:oklch(0.556 0 0);--role-commissioner:oklch(0.3 0.08 250);--role-commissioner-foreground:oklch(0.85 0.06 250);--role-coach:oklch(0.3 0.08 145);--role-coach-foreground:oklch(0.85 0.08 145);--role-family:oklch(0.3 0.08 300);--role-family-foreground:oklch(0.85 0.08 300);--status-active:oklch(0.3 0.08 250);--status-active-foreground:oklch(0.85 0.06 250);--status-paused:oklch(0.32 0.08 95);--status-paused-foreground:oklch(0.88 0.08 85);--status-completed:oklch(0.3 0.08 145);--status-completed-foreground:oklch(0.85 0.08 145);--constraint-coach-kid:oklch(0.3 0.08 250);--constraint-coach-kid-foreground:oklch(0.85 0.06 250);--constraint-saved:oklch(0.32 0.08 95);--constraint-saved-foreground:oklch(0.88 0.08 85);--constraint-sibling:oklch(0.3 0.08 145);--constraint-sibling-foreground:oklch(0.85 0.08 145);--constraint-ride:oklch(0.3 0.08 300);--constraint-ride-foreground:oklch(0.85 0.08 300);--event-practice:oklch(0.3 0.08 250);--event-practice-foreground:oklch(0.85 0.06 250);--event-practice-dot:oklch(0.68 0.17 255);--event-game:oklch(0.3 0.08 145);--event-game-foreground:oklch(0.85 0.08 145);--event-game-dot:oklch(0.74 0.17 145);--event-tournament:oklch(0.3 0.08 300);--event-tournament-foreground:oklch(0.85 0.08 300);--event-draft:oklch(0.32 0.08 55);--event-draft-foreground:oklch(0.88 0.08 50);--event-draft-dot:oklch(0.79 0.15 55);--event-evaluation:var(--event-other);--event-evaluation-foreground:oklch(0.85 0.08 310);--event-evaluation-dot:oklch(0.56 0.15 310);--event-other:oklch(0.3 0 0);--event-other-foreground:oklch(0.85 0 0);--event-other-dot:oklch(0.62 0 0);--assignment-hat-pull:oklch(0.32 0.08 55);--assignment-hat-pull-foreground:oklch(0.88 0.08 50);--assignment-manual:oklch(0.3 0.08 250);--assignment-manual-foreground:oklch(0.85 0.06 250);--avatar-1:oklch(0.45 0.12 250);--avatar-1-foreground:oklch(1 0 0);--avatar-2:oklch(0.45 0.12 145);--avatar-2-foreground:oklch(1 0 0);--avatar-3:oklch(0.45 0.12 300);--avatar-3-foreground:oklch(1 0 0);--avatar-4:oklch(0.45 0.12 55);--avatar-4-foreground:oklch(1 0 0);--avatar-5:oklch(0.45 0.12 350);--avatar-5-foreground:oklch(1 0 0);--avatar-6:oklch(0.45 0.12 270);--avatar-6-foreground:oklch(1 0 0);--feedback-success:oklch(0.3 0.1 145);--feedback-success-foreground:oklch(0.85 0.1 145);--feedback-warning:oklch(0.32 0.1 85);--feedback-warning-foreground:oklch(0.88 0.1 85);--component-inactive-color:var(--muted-foreground);--component-bg:var(--card);--component-shadow:var(--border);--component-active-bg:var(--secondary);--component-line-inactive-color:var(--muted-foreground);--component-active-color-default:var(--accent-foreground);}}
* {
  box-sizing: border-box;
}
:root {
  color-scheme: light dark;
}
body {
  margin: 0;
  background: var(--background);
  color: var(--foreground);
  font-family: system-ui, sans-serif;
  font-size: var(--text-base);
  line-height: 1.5;
}
/* Rule 1.13: spacing-section = 20 px; spacing-heading = 8 px. No browser-default block/list gaps. */
h1,
h2,
p,
dl,
dt,
dd,
ul,
li {
  margin: 0;
  padding: 0;
}
main {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-section);
  max-width: 56rem;
  margin: auto;
  padding: var(--spacing-section) var(--spacing-gutter);
  overflow-wrap: anywhere;
}
/* 28 over 32: the app's title grew to 34 for its condensed display font (decision 609); these pages keep the system font. */
h1 {
  font-size: var(--text-entity);
  line-height: var(--text-entity--line-height);
  font-weight: 600;
}
h2 {
  font-size: var(--text-base);
  line-height: 1.5;
  font-weight: 600;
}
.public-identity {
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 3);
}
.public-identity > div {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--spacing);
}
.public-avatar {
  display: flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: calc(var(--spacing) * 14);
  height: calc(var(--spacing) * 14);
  border-radius: 50%;
  background: var(--muted);
  color: var(--muted-foreground);
  font-size: var(--text-xl);
  font-weight: 600;
}
.public-meta {
  color: var(--muted-foreground);
  font-size: var(--text-sm);
  white-space: pre-line;
}
.public-tabs {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--spacing-heading);
  margin-inline: calc(-1 * var(--spacing-gutter));
  padding-inline: var(--spacing-gutter);
  border-bottom: 1px solid var(--border);
  font-size: var(--text-sm);
  font-weight: 500;
}
.public-tabs > * {
  display: flex;
  align-items: center;
  min-height: var(--spacing-tap);
  padding: calc(var(--spacing) * 2.5) calc(var(--spacing) * 3);
}
.public-current-tab {
  border-bottom: 2px solid var(--primary);
}
.public-tabs a {
  color: var(--muted-foreground);
  text-decoration: none;
}
.public-tabs a:hover {
  background: var(--muted);
}
.public-tabs a:focus-visible {
  outline: 2px solid var(--ring);
  outline-offset: var(--spacing);
}
.public-overview {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-section);
}
.public-section {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-heading);
}
.public-row-list {
  list-style: none;
  border: 1px solid var(--border);
  border-radius: var(--radius-card);
  overflow: hidden;
  background: var(--card);
}
.public-row-list > * + * {
  border-top: 1px solid var(--border);
}
.public-fact-row,
.public-data-row {
  padding: calc(var(--spacing) * 2.5) calc(var(--spacing) * 3);
}
.public-fact-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: calc(var(--spacing) * 3);
  font-size: var(--text-sm);
}
dt {
  color: var(--muted-foreground);
}
dd {
  text-align: right;
  font-weight: 500;
}
.public-row-title {
  font-size: var(--text-sm);
  font-weight: 600;
}
.public-row-meta {
  color: var(--muted-foreground);
  font-size: var(--text-xs);
}
