/* Sign-up pages only: /join/, /join/neighbors/, /join/bakers/ and /account/ (loaded with page(styles=)). */
.doors{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:20px 0}
.door{display:flex;flex-direction:column;gap:6px;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:24px;color:var(--ink);text-decoration:none;transition:box-shadow .15s,transform .15s}.door:hover{box-shadow:0 12px 30px rgba(60,35,15,.14);transform:translateY(-2px)}
.door.baker{background:var(--crust-soft);border-color:transparent}.door-ic{font-size:2.2rem}.door h2{margin:.2rem 0}.door p{margin:0;color:var(--muted)}.door ul{padding-left:1.1rem;margin:.4rem 0 1rem;flex:1}.door .btn{align-self:flex-start}
.center{text-align:center}
.perks{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:20px 0}.perk{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px}.perk span{font-size:1.6rem}.perk h3{margin:.3rem 0}.perk p{margin:0;color:var(--muted);font-size:.95rem}
.join-form{background:var(--card);border:2px solid var(--crust);border-radius:20px;padding:22px;margin:20px 0;max-width:560px}
.jsteps{list-style:none;counter-reset:j;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:18px 0}.jsteps li{counter-increment:j;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px}
.jsteps li::before{content:counter(j);display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--crust);color:#fff;font-weight:700;margin-bottom:6px}.jsteps strong,.jsteps span{display:block}.jsteps span{color:var(--muted);font-size:.93rem}
.pw{display:flex;gap:6px}.pw input{flex:1}.pw-show{font:600 .85rem var(--sans);border:1px solid var(--line);background:var(--bg);border-radius:10px;padding:0 .8rem;cursor:pointer}
.billing{border-top:1px solid var(--line);margin-top:14px;padding-top:6px}.bill-row{border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;margin:10px 0;background:var(--bg)}
.bill-up{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:10px 0}.bill-plan{display:flex;flex-direction:column;gap:4px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px}
.bill-plan.best{border:2px solid var(--crust)}.bill-plan .price{font:700 1.15rem var(--serif);margin:0}.bill-plan .btn{margin-top:auto;text-align:center}.stage{font:600 .75rem var(--sans);padding:.15rem .5rem;border-radius:6px;background:var(--crust-soft)}
