:root{color:#1f2a44;font-synthesis:none;text-rendering:optimizelegibility;--ink:#1f2a44;--slate:#5e6b85;--snow:#fffdf7;--white:#fff;--border:#e5ebf5;--green:#58cc02;--green-dark:#46a302;--sky:#1cb0f6;--red:#d93a3a;background:#fffdf7;font-family:Nunito,ui-rounded,SF Pro Rounded,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--snow);min-width:320px;min-height:100%}body{background:var(--snow);min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}.page-shell{min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) 20px max(16px, env(safe-area-inset-bottom));grid-template-rows:1fr auto;place-items:center;display:grid;position:relative;overflow:hidden}.ambient-dot{z-index:0;opacity:.055;pointer-events:none;border:30px solid;border-radius:50%;width:210px;height:210px;position:fixed}.dot-one{color:var(--green);top:-110px;right:-90px}.dot-two{color:var(--sky);bottom:80px;left:-145px}.join-card,.waiting-card{z-index:1;border:2px solid var(--border);background:var(--white);border-radius:30px;width:min(100%,480px);padding:30px 24px 26px;position:relative;box-shadow:0 10px #dfe7f3}.secret-card{text-align:center;background:#ffffffeb;border:1px solid #2d2a381f;border-radius:2rem;width:min(100%,28rem);padding:2rem;box-shadow:0 1.5rem 4rem #362d5324}.secret-card-face{color:#2d2a38;background:#f8f7fb;border:1px solid #2d2a3824;border-radius:1.5rem;align-content:center;gap:.75rem;min-height:10rem;margin:1.75rem 0;padding:2rem 1.25rem;display:grid}.secret-card-face.masked{color:#676274;background:#eceaf3}.secret-card-title{color:#676274;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;font-weight:700}.secret-card-face strong{font-size:clamp(1.7rem,6vw,2.4rem);line-height:1.05}.secret-card-lock{color:#a19baa;margin:0 auto;font-size:2rem;display:block}.brand-mark{background:#eaf8df;border-radius:24px;width:74px;height:74px;margin:0 auto 14px;position:relative;transform:rotate(-3deg)}.brand-eye{color:var(--ink);font-size:22px;position:absolute;top:21px;left:19px}.brand-lens{border:5px solid var(--green);border-radius:50%;width:30px;height:30px;position:absolute;top:17px;right:13px}.brand-lens:after{background:var(--green);content:"";transform-origin:0;border-radius:999px;width:17px;height:6px;position:absolute;bottom:-10px;right:-12px;transform:rotate(47deg)}.eyebrow{color:var(--green-dark);letter-spacing:1.2px;text-align:center;text-transform:uppercase;margin:0 0 8px;font-size:13px;font-weight:900}h1{max-width:390px;color:var(--ink);letter-spacing:-1.2px;text-align:center;margin:0 auto;font-size:clamp(29px,8vw,38px);font-weight:950;line-height:1.05}.lead{max-width:380px;color:var(--slate);text-align:center;margin:16px auto 26px;font-size:17px;font-weight:650;line-height:1.45}form{gap:17px;display:grid}label{gap:7px;display:grid}label>span{color:var(--slate);padding-left:3px;font-size:14px;font-weight:850}input{border:2px solid var(--border);width:100%;min-height:56px;color:var(--ink);background:#fbfcff;border-radius:17px;outline:none;padding:13px 16px;font-size:18px;font-weight:800;transition:border-color .12s,box-shadow .12s,transform .12s}input:focus{border-color:var(--sky);box-shadow:0 0 0 4px #1cb0f624}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--sky);outline-offset:3px}input::placeholder{color:#a8b1c4}.invite-chip{min-height:48px;color:var(--green-dark);text-align:center;background:#f1fde8;border:2px solid #d9f2c8;border-radius:16px;padding:13px 16px;font-size:15px;font-weight:850}.primary-button{background:var(--green);min-height:59px;box-shadow:0 6px 0 var(--green-dark);color:var(--white);cursor:pointer;border:0;border-radius:18px;margin-top:4px;font-size:18px;font-weight:950;transition:transform .1s,box-shadow .1s,opacity .1s}.link-button{justify-content:center;align-items:center;text-decoration:none;display:flex}.primary-button:active:not(:disabled){box-shadow:0 2px 0 var(--green-dark);transform:translateY(4px)}.primary-button:disabled{cursor:not-allowed;opacity:.72;background:#b7d99f;box-shadow:0 6px #99bd80}.error-message{color:var(--red);margin:-4px 3px 0;font-size:14px;font-weight:800;line-height:1.35}.privacy-note{color:#7c879e;text-align:center;margin:22px 0 0;font-size:13px;font-weight:650;line-height:1.4}.waiting-card{text-align:center;padding-top:34px}.status-orbit{background:#eef9ff;border:2px solid #dcecf7;border-radius:50%;place-items:center;width:96px;height:96px;margin:0 auto 18px;animation:3.2s ease-in-out infinite status-orbit;display:grid;position:relative}.phone-glyph{color:var(--sky);font-size:49px;line-height:1}.status-dot{border:4px solid var(--white);background:#a8b1c4;border-radius:50%;width:20px;height:20px;position:absolute;top:5px;right:5px}.status-dot.online{background:var(--green);animation:1.8s ease-in-out infinite status-pulse}@keyframes status-orbit{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-5px)rotate(2deg)}}@keyframes status-pulse{0%,to{box-shadow:0 0 #58cc0200}50%{box-shadow:0 0 0 6px #58cc022e}}.room-facts{grid-template-columns:1fr 1fr;gap:10px;margin:25px 0 20px;display:grid}.room-facts>div{border:2px solid var(--border);background:#fbfcff;border-radius:18px;place-content:center;gap:5px;min-height:84px;padding:12px;display:grid}.room-facts span{color:var(--slate);letter-spacing:.6px;text-transform:uppercase;font-size:12px;font-weight:850}.room-facts strong{color:var(--ink);font-size:15px;font-weight:950}.text-button{min-height:48px;color:var(--slate);cursor:pointer;text-underline-offset:4px;background:0 0;border:0;padding:8px 14px;font-weight:850;text-decoration:underline}.text-button:disabled{color:#9fa6b5;cursor:default;text-decoration:none}footer{z-index:1;padding-top:24px;position:relative}footer a{color:var(--slate);font-size:13px;font-weight:700}@media (width<=390px){.page-shell{padding-left:14px;padding-right:14px}.join-card,.waiting-card{border-radius:25px;padding-left:18px;padding-right:18px}.room-facts{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
