:root{--eco:#173b2a;--eco2:#2e6b4b;--paper:#fff;--line:#dce8e0;--muted:#607068;--warn:#fff6df;--danger:#fff0ef}
.participate-shell{max-width:1120px;margin:0 auto;padding:28px 18px 80px}
.participate-hero{background:linear-gradient(135deg,#173b2a,#2e6b4b);color:#fff;border-radius:24px;padding:32px;margin-bottom:18px}
.participate-hero h1{font-size:clamp(2rem,5vw,3.6rem);margin:.35rem 0}.participate-hero p{max-width:820px;opacity:.94}
.participate-panel{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:22px;margin:16px 0;box-shadow:0 10px 30px rgba(23,59,42,.06)}
.hidden{display:none!important}.step-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:18px}.step-head>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e7f2eb;color:var(--eco);font-weight:800}
.step-head h2{margin:0 0 4px}.step-head p{margin:0;color:var(--muted)}
.role-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}
.role-choice{border:1px solid var(--line);background:#fff;border-radius:16px;padding:16px;text-align:left;cursor:pointer;min-height:145px}.role-choice:hover,.role-choice.active{border-color:var(--eco2);box-shadow:0 0 0 3px rgba(46,107,75,.10)}.role-choice strong{display:block;font-size:1.05rem}.role-choice small{display:block;color:var(--muted);margin-top:8px}
.safety-alert{background:var(--warn);border-left:4px solid #d19b2c;border-radius:10px;padding:14px;margin:12px 0}.plain-list{display:grid;gap:8px;margin-top:12px}.plain-list div{padding:10px 12px;border-radius:10px;background:#f7faf8}
.participate-form{display:grid;gap:16px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid label{display:grid;gap:6px;font-weight:650}.form-grid input,.form-grid select,.form-grid textarea{width:100%;min-height:44px;padding:10px 12px;border:1px solid #ccd9d1;border-radius:10px;background:#fff}.form-grid textarea{min-height:90px}.form-grid small{font-weight:400;color:var(--muted)}.full{grid-column:1/-1}
.check-row{display:flex;gap:10px;align-items:flex-start;padding:10px 0}.check-row input{margin-top:4px}
.form-message{margin-top:10px;min-height:20px}.form-message.success{color:#17633d}.form-message.error{color:#a52b2b}
.policy-row,.term-row{border:1px solid var(--line);border-radius:14px;padding:14px;margin:10px 0}.policy-row header,.term-row header{display:flex;justify-content:space-between;gap:12px;align-items:center}.badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#edf5f0;font-size:.78rem;font-weight:750}.badge.restricted{background:#ffe9e7;color:#8a2820}.badge.controlled{background:#fff3d6;color:#795500}
@media(max-width:700px){.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.participate-hero{padding:24px 18px}.participate-panel{padding:16px}.role-grid{grid-template-columns:1fr}}

/* DEV-3 — Join ITERVO navigation integration */
.dev3-join-hub{border-color:#c9dfd0;background:#fbfefc}
.dev3-join-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.dev3-join-actions .btn{min-height:44px}
.dev3-join-boundary{margin:14px 0 0;padding:12px 14px;border:1px solid #ead9a9;border-radius:12px;background:#fff8e7;color:#624d14;line-height:1.5}
@media(max-width:700px){.dev3-join-actions{display:grid;grid-template-columns:1fr}.dev3-join-actions .btn{width:100%}}
