.membership-screen{min-width:0;max-width:100%;margin-block:18px;padding:20px;border:1px solid var(--border);border-radius:20px;background:linear-gradient(135deg,var(--surface-strong),var(--surface));overflow-wrap:anywhere}
.membership-screen [hidden]{display:none!important}
.membership-heading{margin:0 0 12px;font-size:1.4rem;line-height:1.45}
.membership-lead,.membership-policy,.membership-hint,.membership-status,.membership-result{line-height:1.7;overflow-wrap:anywhere}
.membership-policy{padding:14px;border:1px solid var(--border);border-radius:12px;color:var(--text);background:var(--panel)}
.membership-hint{margin:4px 0 12px;color:var(--muted);font-size:.875rem}
.membership-status,.membership-result:not(:empty){font-weight:700;color:var(--mint)}
.membership-form{display:grid;gap:14px;margin-block:20px;min-width:0}
.membership-field{display:grid;gap:7px;min-width:0}
.membership-field label{font-weight:700;font-size:1rem;line-height:1.5}
.membership-field input,.membership-field textarea,.membership-field select{display:block;width:100%;max-width:100%;min-width:0;min-height:48px;padding:12px;border:1px solid var(--border);border-radius:12px;font:inherit;font-size:16px;line-height:1.5;background:var(--input);color:var(--text)}
.membership-field textarea{min-height:110px;resize:vertical}
.membership-screen button{max-width:100%;min-height:48px;white-space:normal;overflow-wrap:anywhere}
.membership-screen button:disabled,.membership-field :disabled{opacity:.6;cursor:default}
.membership-screen :focus-visible{outline:3px solid var(--mint);outline-offset:3px}
.membership-link{display:inline-flex;align-items:center;min-height:44px;color:var(--mint);text-underline-offset:.2em;line-height:1.6;overflow-wrap:anywhere}
.membership-own{margin-top:22px}.membership-own h3{font-size:1.15rem;line-height:1.5}
.membership-list{display:grid;gap:14px;margin-block:16px;min-width:0}
.membership-application{min-width:0;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--panel)}
.membership-application h4{margin:0 0 6px;font-size:1.1rem;line-height:1.5;overflow-wrap:anywhere}
.membership-state{margin:0 0 14px;color:var(--mint);font-weight:750;line-height:1.6}
.membership-facts{display:grid;grid-template-columns:minmax(0,1fr);gap:4px;margin:0;font-size:.9375rem;line-height:1.6}
.membership-facts dt{color:var(--muted)}.membership-facts dd{margin:0 0 12px;white-space:pre-wrap;overflow-wrap:anywhere}
.membership-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.membership-actions button{flex:1 1 130px}
.membership-filters{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin-block:18px}
.membership-confirm{padding:16px;margin-block:18px;border:2px solid var(--mint);border-radius:14px;min-width:0}
.membership-confirm h3{margin:0 0 10px;line-height:1.5}.membership-confirm p{line-height:1.7}.membership-confirm button{margin-block:12px 0;margin-inline-end:8px}
.membership-confirm-summary{font-weight:750;overflow-wrap:anywhere}
@media(min-width:480px){.membership-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.membership-facts{grid-template-columns:minmax(130px,.45fr) minmax(0,1fr);gap:8px 14px}.membership-facts dd{margin-bottom:6px}}
@media(forced-colors:active){.membership-screen,.membership-policy,.membership-application,.membership-confirm,.membership-field input,.membership-field textarea,.membership-field select{border-color:CanvasText}}
