body{font-family:Inter,system-ui,-apple-system,sans-serif}.join-container.svelte-mlftnr{max-width:500px;margin:0 auto;padding:2rem 1rem;min-height:100vh;display:flex;flex-direction:column;justify-content:center;gap:2rem;color:#1c1c1c}.join-header.svelte-mlftnr{text-align:center}.join-title.svelte-mlftnr{font-family:Fraunces,Playfair Display,Georgia,serif;font-size:clamp(2.5rem,7vw,3.5rem);font-weight:600;margin:0 0 .75rem;color:#1c1c1c;letter-spacing:-.02em;line-height:1}.join-subtitle.svelte-mlftnr{font-family:Fraunces,Georgia,serif;font-size:1.1rem;font-style:italic;color:#5a544c;margin:0;line-height:1.5}.join-form.svelte-mlftnr{display:flex;flex-direction:column;gap:1.5rem}.input-group.svelte-mlftnr{display:flex;flex-direction:column;gap:.5rem}.input-label.svelte-mlftnr{font-family:Inter,system-ui,sans-serif;font-weight:500;color:#5a544c;font-size:.72rem;text-transform:uppercase;letter-spacing:.18em}.room-code-input.svelte-mlftnr{padding:1.1rem 1.5rem;font-family:Fraunces,Georgia,serif;font-size:clamp(1.75rem,5vw,2.5rem);font-weight:600;text-align:center;letter-spacing:.4em;text-transform:uppercase;text-indent:.4em;background:#ffffff80;border:1px solid #c9bfae;border-radius:4px;color:#1c1c1c;outline:none;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.room-code-input.svelte-mlftnr:focus{border-color:#1c1c1c;background:#fffc;box-shadow:0 0 0 3px #1c1c1c0f}.name-input.svelte-mlftnr{padding:.95rem 1.1rem;font-family:Inter,system-ui,sans-serif;font-size:1.05rem;font-weight:500;background:#ffffff80;border:1px solid #c9bfae;border-radius:4px;color:#1c1c1c;outline:none;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.name-input.svelte-mlftnr:focus{border-color:#1c1c1c;background:#fffc;box-shadow:0 0 0 3px #1c1c1c0f}.name-input.svelte-mlftnr::placeholder,.room-code-input.svelte-mlftnr::placeholder{color:#8a8278}.device-explanation.svelte-mlftnr{display:flex;flex-direction:column;gap:1rem;background:#fff6;border:1px solid #c9bfae;border-radius:4px;padding:1.5rem}.device-info.svelte-mlftnr{display:flex;align-items:center;gap:1rem}.device-icon.svelte-mlftnr{font-size:1.75rem;flex-shrink:0;filter:grayscale(.4)}.device-text.svelte-mlftnr{display:flex;flex-direction:column;gap:.2rem}.device-text.svelte-mlftnr strong:where(.svelte-mlftnr){font-family:Fraunces,Georgia,serif;color:#1c1c1c;font-weight:600;font-size:1.05rem;letter-spacing:-.01em}.device-text.svelte-mlftnr span:where(.svelte-mlftnr){color:#5a544c;font-size:.9rem;line-height:1.4}.action-buttons.svelte-mlftnr{display:flex;flex-direction:column;gap:1.75rem}.join-btn.svelte-mlftnr{padding:1.15rem 2rem;font-family:Inter,system-ui,sans-serif;font-size:1.05rem;font-weight:600;letter-spacing:.04em;border-radius:999px;border:1px solid #1c1c1c;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease,border-color .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;-webkit-tap-highlight-color:transparent;position:relative;overflow:hidden}.join-btn.primary.svelte-mlftnr{background:#1c1c1c;color:#f4efe6;box-shadow:0 6px 20px #0000002e}.join-btn.primary.svelte-mlftnr:hover:not(:disabled){background:#c14a3a;border-color:#c14a3a;transform:translateY(-2px);box-shadow:0 10px 28px #c14a3a52}.join-btn.primary.svelte-mlftnr:active:not(:disabled){transform:translateY(0)}.join-btn.svelte-mlftnr:disabled{opacity:.45;cursor:not-allowed;transform:none!important}.tv-link.svelte-mlftnr{text-align:center;padding:1.25rem;background:transparent;border-top:1px solid #c9bfae;border-radius:0}.tv-text.svelte-mlftnr{font-family:Fraunces,Georgia,serif;font-style:italic;color:#5a544c;font-size:.95rem;margin:0 0 .85rem}.tv-link-btn.svelte-mlftnr{padding:.75rem 1.5rem;font-family:Inter,system-ui,sans-serif;font-size:.95rem;font-weight:500;border-radius:999px;border:1px solid #1c1c1c;background:transparent;color:#1c1c1c;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;margin:0 auto}.tv-link-btn.svelte-mlftnr:hover:not(:disabled){background:#1c1c1c;color:#f4efe6;transform:translateY(-1px)}.tv-link-btn.svelte-mlftnr:disabled{opacity:.4;cursor:not-allowed;transform:none!important}.spinner.svelte-mlftnr{width:1rem;height:1rem;border:2px solid rgba(244,239,230,.3);border-top:2px solid #f4efe6;border-radius:50%;animation:svelte-mlftnr-spin 1s linear infinite}@keyframes svelte-mlftnr-spin{to{transform:rotate(360deg)}}.error-message.svelte-mlftnr{background:#c14a3a14;color:#c14a3a;border:1px solid #c14a3a;padding:.85rem 1.25rem;border-radius:4px;font-family:Inter,system-ui,sans-serif;font-weight:500;text-align:center;animation:svelte-mlftnr-slideInShake .5s cubic-bezier(.34,1.56,.64,1)}@keyframes svelte-mlftnr-slideInShake{0%{opacity:0;transform:translateY(-20px) scale(.96)}50%{transform:translateY(0) scale(1.01)}65%{transform:translate(-3px)}80%{transform:translate(3px)}to{opacity:1;transform:translate(0) scale(1)}}@media (prefers-reduced-motion: reduce){.room-code-input.svelte-mlftnr:focus,.name-input.svelte-mlftnr:focus{transform:none}.join-btn.svelte-mlftnr:hover:not(:disabled){transform:none}.join-btn.svelte-mlftnr:active:not(:disabled){transform:none;opacity:.85}.error-message.svelte-mlftnr{animation:svelte-mlftnr-fadeIn .3s ease-out}@keyframes svelte-mlftnr-fadeIn{0%{opacity:0}to{opacity:1}}}@media (max-width: 768px){.join-container.svelte-mlftnr{padding:1rem}}
