
/* v8 local design only: native join API and click handler unchanged. */
.forest-modal-dialog:has(.ritual-join){width:min(680px,96vw);max-width:680px!important;padding:0!important;max-height:94dvh;overflow:auto;border:1px solid #b78363!important;border-radius:5px;background:radial-gradient(ellipse at 50% 0%,#4d2b34,#1a1016 60%,#0e0b10)!important;box-shadow:0 25px 110px #000,0 0 0 5px #110b0e,0 0 0 6px #89574c88!important}
.forest-modal-dialog:has(.ritual-join) .forest-close{right:15px;top:12px;color:#f4d5c3}
.forest-modal-dialog .ritual-join{padding:clamp(25px,5vw,48px)!important;background:none!important;border:0!important;box-shadow:none!important}
.ritual-join:before{inset:12px!important;border:1px solid #b78a6150!important;background:none!important;pointer-events:none}
.ritual-join .home-action-top{justify-content:center;margin:0 0 12px}
.ritual-join .home-action-top .eyebrow{color:#d9a88a;letter-spacing:.25em;font-size:10px}
.ritual-join h2{text-align:center!important;font:700 clamp(29px,5vw,46px) Georgia,serif!important;line-height:1.1;margin:0 0 10px!important;color:#f7decb!important}
.ritual-join>p{text-align:center;color:#d7bdb1;max-width:440px;margin:0 auto 28px!important;line-height:1.6;font-size:14px}
.ritual-join .field{margin:18px auto 25px;max-width:520px}
.ritual-join .field>label{display:block;margin-bottom:10px!important;letter-spacing:.16em!important;color:#e3bca7!important}
.ritual-join #joinName{width:100%;padding:16px 18px;background:#0d0b0f!important;border:1px solid #9b655e!important;box-shadow:inset 0 2px 8px #0008}
.ritual-join #joinCode.join-original-code{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.join-code-cells{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(5px,1.5vw,11px)}
.join-code-cell{min-width:0;width:100%;height:clamp(48px,8vw,68px);border:1px solid #9d695e;border-bottom:3px solid #b27b61;border-radius:3px;background:linear-gradient(#25161d,#100c11);box-shadow:inset 0 3px 9px #0008,0 5px 12px #0006;color:#fbe5d2;font:700 clamp(21px,4vw,32px) Georgia,serif;text-align:center;text-transform:uppercase;outline:none}
.join-code-cell:focus{border-color:#efb58d;box-shadow:0 0 0 2px #c76e5360,0 0 22px #b34c3a66}
.join-code-hint{font-size:12px;text-align:center;color:#c4a59b;margin-top:12px}
.ritual-join .ritual-submit{display:block;width:min(100%,360px);margin:30px auto 0!important;padding:18px!important;background:linear-gradient(#9f4c48,#5a252a)!important;border:1px solid #efb38c!important;font:700 19px Georgia,serif;box-shadow:0 7px 20px #0008!important}
@media(max-width:480px){.forest-modal-dialog .ritual-join{padding:30px 19px!important}.join-code-cells{gap:5px}.join-code-cell{font-size:22px}}
