.site-header{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.site-brand{display:grid;gap:2px;flex:none}.site-byline{font-size:12px;color:var(--fg-dim);text-decoration:none;margin-left:18px}.site-nav,.site-tools{display:flex;align-items:center;gap:24px}.site-nav{margin-left:auto}.site-nav a,.site-mobile a{color:var(--fg);text-decoration:none}.site-nav a[aria-current],.site-mobile a[aria-current]{color:var(--accent);text-decoration:underline;text-underline-offset:6px}.site-tools{gap:12px;margin-left:auto}.site-tools .lc-toggle__opt{min-width:44px;min-height:44px;display:grid;place-items:center;text-decoration:none}.site-tools .lc-toggle__opt[aria-current=true]{background:var(--lc-accent-wash);color:var(--fg)}.site-mobile{display:none}.lc-footer__col button{padding:0;border:0;background:none;color:var(--fg);font:inherit;text-align:left;cursor:pointer;min-height:44px}html[data-app-page=dashboard] .app-main h1,html[data-app-page=profile] .app-main h1,.svc-title h1,.public-heading h1,.auth-panel h1{font:var(--text-t-display);letter-spacing:-.025em;line-height:1.15;font-weight:600}.app-kicker,.svc-kicker,.lc-kicker{font-family:var(--font-data);font-size:var(--lc-fs-label);font-weight:700;line-height:var(--lh-ui);letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--fg-dim)}.site-header a:focus-visible,.site-header summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}@media(max-width:900px){.site-header{gap:12px}.site-nav{display:none}.site-mobile{display:block;width:100%;border-top:1px solid var(--border)}.site-mobile summary{display:flex;justify-content:space-between;list-style:none;padding:12px 0;cursor:pointer}.site-mobile summary::-webkit-details-marker{display:none}.site-mobile nav{display:grid;padding-bottom:12px}.site-mobile nav a{padding:10px 0}.site-tools{gap:4px}.site-tools>.btn{padding-inline:10px}}@media(max-width:360px){.site-brand{width:100%}.site-tools{margin-left:0}}

.site-brand .lc-lockup{min-height:24px;line-height:1.2}.lc-byline{min-height:44px}.lc-footer__col>a,.lc-footer__col>button{display:flex;align-items:center;min-height:44px;color:var(--fg);text-decoration:none;font:inherit;text-align:left}.lc-footer__col>a:hover,.lc-footer__col>button:hover{text-decoration:underline}

/* UX role contract: title and kicker are distinct, even inside a panel.
   Canonical DS tokens stay locked; this is their semantic application. */
:root{--lc-type-section:var(--text-t-title);--lc-type-subsection:600 var(--fs-lead)/var(--lh-ui) var(--font-text)}
.app-main h2,.svc-main h2,.auth-panel h2,.public-main h2{font:var(--lc-type-section);letter-spacing:0;color:var(--white)}
.app-main h3,.svc-main h3,.public-main h3{font:var(--lc-type-subsection);letter-spacing:0;color:var(--white)}
.app-main h2.panel__label{font:var(--lc-type-section);color:var(--white);text-transform:none;letter-spacing:0}
.app-main h3.panel__label{font:var(--lc-type-subsection);color:var(--white);text-transform:none;letter-spacing:0}
.app-main .app-match-who h2{font:var(--lc-type-section)}
.svc-person h1{font:var(--text-t-display)}
.app-main h2,.svc-main h2,.auth-panel h2{margin:0 0 var(--s-3)}
.app-main h3,.svc-main h3{margin-block:var(--s-4) var(--s-2)}
.svc-members-list h3,.svc-row h3{font:var(--text-t-strong);margin:0 0 var(--s-1)}
.public-main h3{font:var(--lc-type-subsection)}
.lc-field-feedback{min-height:24px;display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2);font:var(--text-t-small);color:var(--fg-dim);scroll-margin-top:110px}
.lc-field-feedback[data-state=saved]{color:var(--ok)}
.lc-field-feedback[data-state=error]{color:var(--danger)}
.lc-field-feedback .lc-save-retry{font:var(--text-t-button);min-height:var(--tap);padding:4px 12px;color:var(--danger);text-decoration:underline;text-underline-offset:3px}
.lc-field-feedback[hidden],.lc-field-feedback [hidden],.auth-invitation[hidden]{display:none!important}
.app-field>.lc-field-feedback{margin-top:-4px}
.app-matching-summary{display:flex;justify-content:space-between;align-items:center;gap:var(--s-5);padding:var(--s-4)}
.app-matching-summary p{margin:0 0 var(--s-2)}
.app-matching-summary .btn{flex-shrink:0;white-space:normal;max-width:320px}
.matching-date{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s-1) var(--s-2);margin:0 0 var(--s-3)}.app-label{font-family:var(--font-data);font-size:var(--lc-fs-label);font-weight:700;line-height:var(--lh-ui);letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--fg-dim);white-space:nowrap}.app-date{font-family:var(--font-data);font-size:var(--fs-small);color:var(--fg-dim);font-variant-numeric:tabular-nums;white-space:nowrap}
.matching-editor{display:grid;gap:var(--s-4)}
.matching-participation{background:var(--bg-tint)}
.matching-participation .lc-field-feedback[data-state=saved]{color:var(--fg)}
.matching-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-3);border:0;padding:0;margin:0;min-width:0}
.matching-options .lc-radio-card,.matching-editor .svc-pools .lc-radio-card{display:flex;align-items:flex-start;gap:12px;padding:var(--s-3);background:var(--bg-panel);min-width:0}
.matching-options .lc-radio-card:has(:checked),.matching-editor .svc-pools .lc-radio-card:has(:checked){background:var(--lc-accent-wash)}
.matching-editor .lc-radio-card__input{flex:none;margin-top:5px}
.matching-option-hint{display:block;font:var(--text-t-small);color:var(--fg-dim);margin-top:var(--s-2)}
.matching-editor .lc-radio-card__title{font:var(--text-t-strong);display:block}
.matching-columns{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-4);align-items:start}
.matching-range{margin-top:var(--s-4);display:grid;gap:var(--s-2)}
.matching-range .lc-range__input{width:100%;min-height:var(--tap);accent-color:var(--accent)}
.matching-range .lc-range__head{display:flex;justify-content:space-between;gap:var(--s-3)}
.matching-range .lc-range__ends{display:flex;justify-content:space-between;gap:var(--s-3);font:var(--text-t-small);color:var(--fg-dim)}
.matching-range .lc-range__ends span:last-child{text-align:right}
.matching-membership-state{display:block;font:var(--text-t-small);color:var(--accent);margin-top:var(--s-2)}
.svc-sr{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
.partner-primary-contact{margin-block:var(--s-4)}
.partner-primary-contact .svc-card{padding:var(--s-3);border-radius:var(--radius);background:var(--bg-tint)}
.partner-primary-contact .svc-card h2{font:var(--lc-type-subsection)}
.app-match-details h3{margin-top:0}
.auth-invitation{background:var(--bg-tint);padding:var(--s-3);border-radius:var(--radius);font:var(--text-t-small)}
.auth-invitation p{margin:0 0 var(--s-2)}
@media(max-width:900px){.matching-options{grid-template-columns:1fr}.app-matching-summary{align-items:stretch;flex-direction:column;gap:var(--s-3)}.app-matching-summary .btn{max-width:none}}
@media(max-width:700px){.matching-columns{grid-template-columns:1fr}.matching-editor .svc-card{padding:var(--s-3)}.app-title-row .btn{white-space:normal;text-align:center}.app-match-details{gap:var(--s-4)}}

.app-save-status{top:var(--lc-header-offset,80px);z-index:19}
.app-editor-fields>section{scroll-margin-top:calc(var(--lc-header-offset,80px) + 90px)}
@media(max-width:900px){.app-save-status{top:var(--lc-header-offset,120px)}}

.svc-dialog h2,.svc-settings-details>summary{font:var(--lc-type-section)}
.svc-main h1,.public-main h1{font:var(--text-t-display);letter-spacing:var(--tr-tight)}
@media(max-width:700px){.matching-editor .svc-row{flex-direction:column;align-items:flex-start}.matching-editor .svc-row>div{width:100%}}
