/* Review R2: consumer roles from Kyle's A2 direction. Imported kit tokens stay intact. */
:root,[data-local-theme=light]{--fc-cta-primary:#ffd34d;--fc-cta-primary-hover:#f5c43d;--fc-cta-primary-pressed:#e9b42a;--fc-cta-primary-text:#0f2d46;--fc-cta-secondary:#062d5b;--fc-cta-secondary-hover:#124574;--fc-cta-secondary-pressed:#041f41;--fc-cta-secondary-text:#fff;--fc-cta-tertiary:#fff;--fc-cta-tertiary-hover:#e5f6fa;--fc-cta-tertiary-pressed:#c5eaf0;--fc-cta-tertiary-text:#0f2d46}
[data-theme=dark],[data-local-theme=dark]{--fc-cta-primary:#8be0e8;--fc-cta-primary-hover:#adebf0;--fc-cta-primary-pressed:#66cbd5;--fc-cta-primary-text:#081b31;--fc-cta-secondary:#213e59;--fc-cta-secondary-hover:#2d506b;--fc-cta-secondary-pressed:#172f47;--fc-cta-secondary-text:#f5fbff;--fc-cta-tertiary:#10273e;--fc-cta-tertiary-hover:#213e59;--fc-cta-tertiary-pressed:#172f47;--fc-cta-tertiary-text:#f5fbff}
.fc-nav-links{display:flex;align-items:center;gap:clamp(12px,1.5vw,28px)}
.fc-nav-link{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--fc-text,#0f2d46);font:600 15px/1.35 var(--fc-type-body,'DM Sans',sans-serif);text-decoration:none;cursor:pointer;transition:background-color 180ms cubic-bezier(.2,.8,.2,1),color 180ms cubic-bezier(.2,.8,.2,1),transform 120ms cubic-bezier(.2,.8,.2,1)}
.fc-nav-link:hover{background:var(--fc-surface-soft,#e5f6fa);color:var(--fc-link,#087881);text-decoration:none}
.fc-nav-link:active{transform:translateY(1px);background:var(--fc-selected-bg,#c5eaf0)}
.fc-nav-link[aria-current],.fc-nav-link[aria-selected=true],.fc-nav-link[aria-pressed=true],details[open]>.fc-nav-link{background:var(--fc-surface-soft,#e5f6fa);color:var(--fc-text,#0f2d46)}
.fc-space-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.fc-space-card{display:grid;grid-template-columns:1fr auto;align-content:start;gap:7px 16px;padding:18px 20px;min-height:108px;border:1.5px solid var(--fc-border-control,#8ba6b6);border-radius:14px;background:var(--fc-surface,#fff);color:var(--fc-text,#0f2d46);text-decoration:none;transition:background-color 180ms,border-color 180ms,transform 120ms;position:relative}
.fc-space-card strong{font:700 18px/1.25 var(--fc-type-body,'DM Sans',sans-serif)}
.fc-space-card .fc-space-description{grid-column:1;display:block;font:400 14px/1.45 var(--fc-type-body,'DM Sans',sans-serif);color:var(--fc-text-muted,#426077);margin:0}
.fc-space-card .fc-space-arrow{grid-column:2;grid-row:1 / 3;align-self:center;width:20px;height:20px;transition:transform 180ms cubic-bezier(.2,.8,.2,1)}
.fc-space-card:hover{background:var(--fc-surface-soft,#e5f6fa);border-color:var(--fc-text,#0f2d46)}.fc-space-card:hover .fc-space-arrow{transform:translateX(3px)}
.fc-space-card:active{transform:translateY(1px)}.fc-space-card[aria-current]{border:2px solid var(--fc-text,#0f2d46);background:var(--fc-surface-soft,#e5f6fa)}
:is(.fc-action-primary,.fc-action-secondary,.fc-action-tertiary){display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:12px 24px;border:1.5px solid transparent;border-radius:999px;font:700 16px/1.35 var(--fc-type-body,'DM Sans',sans-serif);text-align:center;text-decoration:none;cursor:pointer;transition:background-color 180ms cubic-bezier(.2,.8,.2,1),transform 120ms cubic-bezier(.2,.8,.2,1),box-shadow 180ms}
.fc-action-primary.fc-action-primary{background:var(--fc-cta-primary);color:var(--fc-cta-primary-text);border-color:transparent}.fc-action-primary.fc-action-primary:hover{background:var(--fc-cta-primary-hover);color:var(--fc-cta-primary-text)}.fc-action-primary.fc-action-primary:active{background:var(--fc-cta-primary-pressed)}
.fc-action-secondary.fc-action-secondary{background:var(--fc-cta-secondary);color:var(--fc-cta-secondary-text);border-color:transparent}.fc-action-secondary.fc-action-secondary:hover{background:var(--fc-cta-secondary-hover);color:var(--fc-cta-secondary-text)}.fc-action-secondary.fc-action-secondary:active{background:var(--fc-cta-secondary-pressed)}
.fc-action-tertiary.fc-action-tertiary{background:var(--fc-cta-tertiary);color:var(--fc-cta-tertiary-text);border-color:var(--fc-border-control,#8ba6b6)}.fc-action-tertiary.fc-action-tertiary:hover{background:var(--fc-cta-tertiary-hover);color:var(--fc-cta-tertiary-text)}.fc-action-tertiary.fc-action-tertiary:active{background:var(--fc-cta-tertiary-pressed)}
:is(.fc-action-primary,.fc-action-secondary,.fc-action-tertiary):hover{text-decoration:none;box-shadow:0 3px 0 rgb(15 45 70 / .13)}
:is(.fc-action-primary,.fc-action-secondary,.fc-action-tertiary):active{transform:translateY(2px);box-shadow:none}
:is(.fc-nav-link,.fc-space-card,.fc-action-primary,.fc-action-secondary,.fc-action-tertiary):focus-visible{outline:3px solid var(--fc-focus,#087881);outline-offset:4px}
@media(max-width:599px){.fc-space-grid{grid-template-columns:1fr}.fc-nav-links{gap:8px}.fc-nav-link{padding-inline:12px}.fc-space-card{min-height:96px}}
@media(prefers-reduced-motion:reduce){:is(.fc-nav-link,.fc-nav-link::after,.fc-space-card,.fc-space-arrow,.fc-action-primary,.fc-action-secondary,.fc-action-tertiary){transition:none!important;animation:none!important;transform:none!important}}
:is([data-motion=off],[data-motion=reduced]) :is(.fc-nav-link,.fc-nav-link::after,.fc-space-card,.fc-space-arrow,.fc-action-primary,.fc-action-secondary,.fc-action-tertiary){transition:none!important;animation:none!important;transform:none!important}
@media(forced-colors:active){.fc-space-card,.fc-nav-link,:is(.fc-action-primary,.fc-action-secondary,.fc-action-tertiary){border:1px solid ButtonText}}
/* One directory structure across static and native consumers. */
.fc-space-directory{display:grid!important;grid-template-columns:1fr 1.25fr 1fr!important;gap:24px!important;align-items:start}
.fc-space-directory .fc-space-group{grid-column:auto!important;min-width:0}
.fc-space-directory .fc-space-group h3{font:700 14px/1.4 var(--fc-type-body);color:var(--fc-text-accent);margin:0 0 10px}
.fc-space-group-links{display:grid;gap:10px}
.fc-space-directory .fc-space-card{min-height:110px;margin:0;padding:16px;border-radius:14px}
.fc-space-directory [data-space-group=shared]{grid-column:1/-1!important;border-top:1px solid var(--fc-border-subtle);padding-top:18px;display:grid;grid-template-columns:1fr 2fr;gap:24px;align-items:center}
.fc-space-directory [data-space-group=shared] h3{margin:0}
.fc-space-directory [data-space-group=shared] .fc-space-card{min-height:80px}
.fc-family__spaces-panel:has(.fc-space-directory){width:min(840px,calc(100vw - 64px));right:clamp(24px,4vw,64px)}
@media(max-width:599px){.fc-space-directory{grid-template-columns:1fr!important;gap:24px!important}.fc-space-directory [data-space-group=shared]{display:block}.fc-space-directory [data-space-group=shared] h3{margin-bottom:10px}.fc-space-directory .fc-space-card{min-height:90px}.fc-family__spaces-panel:has(.fc-space-directory){width:100%;padding-inline:0}}

/* Approved six equal destinations. The directory owns this treatment in both static and native headers. */
.fc-family-directory__cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.fc-family-directory__cards .fc-space-card{display:flex;gap:14px;min-width:0;min-height:152px;padding:22px 20px;margin:0;border:1px solid var(--fc-directory-border);border-radius:14px;background:var(--fc-directory-card);color:var(--fc-directory-text)}
.fc-family-directory__cards .fc-space-card:hover{background:var(--fc-directory-hover);border-color:var(--fc-directory-text);color:var(--fc-directory-text)}
.fc-family-directory__cards .fc-space-card[aria-current]{padding:21px 19px;border:2px solid var(--fc-directory-current-border);background:var(--fc-directory-current);color:var(--fc-directory-text)}
.fc-family-directory__cards .fc-space-number{flex:none;padding-top:5px;font:400 12px/1.4 var(--fc-type-body);color:var(--fc-directory-muted)}
.fc-family-directory__cards .fc-space-copy{display:block;min-width:0;padding-right:20px}
.fc-family-directory__cards .fc-space-card strong{display:block;margin:0 0 9px;font:500 24px/1.15 'Fredoka',var(--fc-type-display);letter-spacing:.008em}
.fc-family-directory__cards .fc-space-description{display:block;grid-column:auto;max-width:220px;margin:0;font:400 14px/1.45 var(--fc-type-body);color:var(--fc-directory-muted)}
.fc-family-directory__cards .fc-space-current{display:block;margin-top:8px;font:600 11px/1.4 var(--fc-type-body);color:var(--fc-directory-text)}
.fc-family-directory__cards .fc-space-arrow{display:block;position:absolute;top:17px;right:16px;width:auto;height:auto;font:400 19px/1.2 var(--fc-type-body)}
@media(min-width:600px) and (max-width:1250px){.fc-family-directory__cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:599px){.fc-family-directory__cards{grid-template-columns:1fr;gap:10px}.fc-family-directory__cards .fc-space-card{min-height:102px;padding:16px 14px;gap:12px}.fc-family-directory__cards .fc-space-card[aria-current]{padding:15px 13px}.fc-family-directory__cards .fc-space-card strong{font-size:22px;margin-bottom:5px}.fc-family-directory__cards .fc-space-description{font-size:13px}.fc-family-directory__cards .fc-space-number{font-size:11px}.fc-family-directory__cards .fc-space-current{margin-top:5px}.fc-family-directory__cards .fc-space-arrow{top:14px;right:12px}}
