.join-main{max-width:720px;margin:auto;padding:40px 24px 60px;overflow-wrap:anywhere}.join-brand{display:flex;align-items:center;gap:14px;color:var(--green);font:28px Georgia,serif;margin-bottom:44px}.join-brand img{width:50px;height:50px}.join-brand small{display:block;font:12px Arial,sans-serif;margin-top:8px;letter-spacing:.3px}.join-main h1{font:36px/1.15 Georgia,serif;color:var(--green);letter-spacing:-.5px}.join-intro{font-size:16px;line-height:1.7;margin:18px 0 28px}.join-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;margin:18px 0}.join-card h2{margin-bottom:18px;color:var(--green)}.join-card p{line-height:1.65;margin:12px 0}.join-card .field{margin:14px 0}.join-card input:not([type=checkbox]){width:100%;min-width:0}.join-card .form-grid{grid-template-columns:1fr 1fr}.consent-check{display:flex;align-items:flex-start;gap:12px;line-height:1.65;margin:18px 0 4px;cursor:pointer}.consent-check input{width:20px;height:20px;min-width:20px;margin:3px 0 0;accent-color:var(--green)}.consent-document{border-top:1px solid var(--line);padding:15px 0;max-width:100%}.consent-document summary{cursor:pointer;color:var(--green);line-height:1.5}.consent-text{white-space:pre-wrap;line-height:1.7;font-size:13px;margin-top:16px;overflow-wrap:anywhere;max-height:380px;overflow-y:auto;padding-right:8px}.join-submit{width:100%;justify-content:center;min-height:50px;font-size:16px}.join-footer{font-size:12px;line-height:1.8;text-align:center;color:var(--muted);margin-top:24px}.join-main .error{margin:20px 0}.consent-qr{width:240px;height:240px;background:white;border:1px solid var(--line);padding:8px;border-radius:8px}.consent-desk{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;margin-bottom:25px}.consent-row{border:1px solid var(--line);border-radius:9px;padding:18px;margin:14px 0}.consent-row p{line-height:1.6;margin:10px 0}.consent-settings textarea{min-height:160px;width:100%;padding:12px;line-height:1.6;border:1px solid var(--line);border-radius:7px;resize:vertical}.consent-settings .field{margin:16px 0}.consent-settings details{margin-top:16px}.consent-settings summary{color:var(--green);cursor:pointer}.consent-link{overflow-wrap:anywhere}.consent-hint{line-height:1.7;margin:14px 0}.consent-history .consent-text{max-height:250px}
@media(max-width:650px){.join-main{padding:28px 16px 40px}.join-brand{font-size:24px;margin-bottom:32px}.join-main h1{font-size:31px}.join-card{padding:20px}.join-card .form-grid{grid-template-columns:1fr}.consent-desk{grid-template-columns:1fr}.consent-qr{margin:auto;display:block}.join-main input{font-size:16px}.join-card .actions{display:grid}.join-card .btn{min-height:46px;white-space:normal}}
@media print{.join-page .join-main{max-width:none}.consent-text{max-height:none;overflow:visible}.consent-qr{width:70mm;height:70mm}}
.join-test-notice{padding:18px 20px;background:#fff2d5;border:1px solid #e1c994;border-radius:10px;line-height:1.7;margin-bottom:24px;color:#6d501b}
.join-main.join-compact{max-width:462px}
.join-compact .join-brand{margin-bottom:24px}
.join-registration h1{font-size:27px}
.join-registration .join-intro{font-size:14px;color:var(--muted);margin:10px 0 20px}
.join-registration .field{font-size:14px}
.join-registration .consent-check{font-size:13px;margin-top:12px}
.join-registration .consent-check small{display:block;margin-top:2px}
.join-registration .join-accept-all{padding:12px;background:var(--sage);border-radius:8px;margin-top:20px}
.join-registration .join-accept-all strong{font-size:15px;color:var(--green)}
.join-registration .join-submit{margin-top:20px}
.join-registration .join-footnote,.join-registration .join-footer{text-align:center;font-size:12px;color:var(--muted)}
.join-documents>summary{cursor:pointer;text-align:center;color:var(--green);font-size:13px;padding:8px 0}
.join-documents .consent-document{padding:10px 0;font-size:13px}
.join-policy-text{white-space:pre-wrap;line-height:1.7}
#join-pd-dialog .consent-text{margin:0 0 16px}
#join-pd-dialog .actions{flex-wrap:wrap;justify-content:flex-end}
#join-pd-dialog .btn{white-space:normal}
