.invite-area{--main:#3a9cc5;--main-dk:#2a7fa0;--danger:#dc2626;background:var(--cream);color:var(--text);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:2rem 1rem;font-family:Noto Sans TC,PingFang TC,Microsoft JhengHei,sans-serif;display:flex}.invite-area .logo-area{flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1.8rem;display:flex}.invite-area .logo-row{align-items:center;gap:10px;text-decoration:none;display:flex}.invite-area .logo-text{letter-spacing:.05em;color:var(--deep);font-size:1.6rem;font-weight:900}.invite-area .logo-sub{color:var(--muted);letter-spacing:.04em;font-size:.82rem;font-weight:500}.invite-area .card{background:var(--white);border-radius:16px;width:100%;max-width:480px;padding:2.4rem 2.2rem 2rem;box-shadow:0 4px 32px #03666f1a,0 1px 4px #0000000f}.invite-area .welcome-title{color:var(--text);letter-spacing:-.01em;margin-bottom:.5rem;font-size:1.35rem;font-weight:900}.invite-area .welcome-sub{color:var(--muted);margin-bottom:1.4rem;font-size:.88rem;line-height:1.75}.invite-area .user-info{background:var(--bg);border-radius:10px;flex-direction:column;gap:.35rem;margin-bottom:1.4rem;padding:.9rem 1.1rem;display:flex}.invite-area .user-info-row{color:var(--deep);align-items:center;gap:.5rem;font-size:.88rem;font-weight:500;display:flex}.invite-area .user-info-note{color:#3a5a608c;margin-top:.3rem;font-size:.76rem}.invite-area .form-group{margin-bottom:1.1rem}.invite-area .form-label{color:var(--deep);margin-bottom:.4rem;font-size:.82rem;font-weight:700;display:block}.invite-area .form-input{border:1.5px solid var(--pale);width:100%;color:var(--text);background:var(--bg);border-radius:10px;outline:none;padding:.75rem 1rem;font-family:inherit;font-size:.95rem;transition:border-color .2s,background .2s}.invite-area .form-input:focus{border-color:var(--bright);background:var(--white)}.invite-area .form-input.error{border-color:var(--danger)}.invite-area .form-hint{color:#3a5a608c;margin-top:.35rem;font-size:.76rem;line-height:1.5}.invite-area .form-error{color:var(--danger);margin-top:.35rem;font-size:.76rem;font-weight:600;display:none}.invite-area .form-error.visible{display:block}.invite-area .btn-submit{background:var(--main);width:100%;color:var(--white);cursor:pointer;border:none;border-radius:999px;margin-top:.4rem;padding:.9rem;font-family:inherit;font-size:1rem;font-weight:800;transition:background .2s,transform .15s}.invite-area .btn-submit:hover{background:var(--main-dk);transform:translateY(-1px)}.invite-area .btn-submit:active{transform:translateY(0)}.invite-area .success-state{text-align:center;flex-direction:column;align-items:center;padding:.5rem 0 .8rem;display:none}.invite-area .success-icon{color:#059669;background:#d1fae5;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:1.2rem;font-size:2rem;display:flex}.invite-area .success-title{color:var(--text);margin-bottom:.4rem;font-size:1.25rem;font-weight:900}.invite-area .success-sub{color:var(--muted);margin-bottom:1.4rem;font-size:.88rem}.invite-area .progress-bar-wrap{background:var(--pale);border-radius:999px;width:100%;height:6px;overflow:hidden}.invite-area .progress-bar-fill{background:var(--bright);border-radius:999px;width:0%;height:100%;transition:width 2s linear}.invite-area .footer-note{color:#3a5a608c;text-align:center;max-width:480px;margin-top:1.4rem;font-size:.76rem;line-height:1.75}.invite-area .footer-note a{color:var(--mid);text-decoration:none}.invite-area .footer-note a:hover{text-decoration:underline}.invite-area .expired-icon{width:64px;height:64px;color:var(--danger);background:#fee2e2;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1.2rem;font-size:2rem;display:flex}.invite-area .expired-title{color:var(--text);text-align:center;margin-bottom:.6rem;font-size:1.2rem;font-weight:900}.invite-area .expired-desc{color:var(--muted);text-align:center;margin-bottom:1.5rem;font-size:.88rem;line-height:1.8}.invite-area .btn-contact{text-align:center;border:2px solid var(--main);width:100%;color:var(--main);background:0 0;border-radius:999px;padding:.85rem;font-family:inherit;font-size:.95rem;font-weight:800;text-decoration:none;transition:background .2s,color .2s;display:block}.invite-area .btn-contact:hover{background:var(--main);color:var(--white)}@media (max-width:520px){.invite-area .card{border-radius:12px;padding:1.8rem 1.2rem 1.5rem}.invite-area .invite-area{justify-content:flex-start;padding:2.5rem .75rem 1.5rem}}
