:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#171a1d;background:#e7f4ee;font-synthesis:none;text-rendering:optimizeLegibility;--page: var(--tg-app-bg, #e7f4ee);--surface: #ffffff;--text: var(--tg-app-text, #171a1d);--muted: var(--tg-app-muted, #7b828a);--primary: var(--tg-app-button, #2f80ed);--primary-text: var(--tg-app-button-text, #ffffff);--success: #ff6863;--mint: #cfeae0;--border: rgba(23, 26, 29, .1);--shadow: 0 16px 48px rgba(30, 65, 52, .12);--safe-top: max( env(safe-area-inset-top, 0px), var(--tg-content-safe-area-inset-top, 0px) );--safe-right: max( env(safe-area-inset-right, 0px), var(--tg-content-safe-area-inset-right, 0px) );--safe-bottom: max( env(safe-area-inset-bottom, 0px), var(--tg-content-safe-area-inset-bottom, 0px) );--safe-left: max( env(safe-area-inset-left, 0px), var(--tg-content-safe-area-inset-left, 0px) )}:root[data-color-scheme=dark]{--surface: var(--tg-app-secondary-bg, #202326);--border: rgba(255, 255, 255, .1);--shadow: 0 16px 48px rgba(0, 0, 0, .26)}*{box-sizing:border-box}html{min-width:320px;min-height:100%;background:var(--page)}body{min-width:320px;min-height:100%;margin:0;overflow-x:hidden;color:var(--text);background:radial-gradient(circle at 50% -20%,rgba(255,255,255,.7),transparent 48%),var(--page)}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 38%,transparent);outline-offset:2px}button{color:inherit}#app{min-height:100svh;padding:calc(12px + var(--safe-top)) calc(12px + var(--safe-right)) calc(12px + var(--safe-bottom)) calc(12px + var(--safe-left))}.app-shell{position:relative;display:flex;flex-direction:column;width:min(100%,520px);min-height:calc(100svh - 24px - var(--safe-top) - var(--safe-bottom));margin:0 auto;overflow:hidden;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:28px;box-shadow:var(--shadow)}.brand-header{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;min-height:82px;padding:18px 22px 12px}.brand-lockup{display:flex;align-items:center;min-width:0;gap:11px}.brand-mark{width:42px;height:42px;flex:0 0 auto;filter:drop-shadow(0 5px 7px rgba(35,77,65,.14))}.brand-name{font-size:20px;font-weight:780;line-height:1.1;letter-spacing:-.02em}.brand-line{margin-top:4px;overflow:hidden;color:var(--muted);font-size:13px;font-weight:500;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.icon-button{display:grid;width:44px;height:44px;flex:0 0 auto;padding:0;place-items:center;color:var(--muted);background:color-mix(in srgb,var(--muted) 8%,transparent);border:0;border-radius:50%;cursor:pointer;transition:color .18s ease,transform .18s ease,background .18s ease}.icon-button:hover{color:var(--text);background:color-mix(in srgb,var(--muted) 14%,transparent)}.icon-button:active{transform:scale(.94)}.icon-button svg{width:23px;height:23px;fill:none;stroke:currentcolor;stroke-width:2;stroke-linecap:round}.join-view{display:flex;flex:1;flex-direction:column;padding:0 30px 30px}.dice-wrap{display:grid;place-items:center}.dice-wrap--captcha{min-height:220px;margin-top:8px}.dice-svg{width:min(220px,58vw);height:auto;overflow:visible}.dice-body{transform-origin:110px 120px;animation:dice-breathe 3.8s ease-in-out infinite}.join-copy,.success-copy{text-align:center}h1{margin:0;color:var(--text);font-size:clamp(30px,7vw,34px);font-weight:800;line-height:1.1;letter-spacing:-.035em}.join-copy p,.success-copy p,.center-state p,.subscription-state>p{margin:12px 0 0;color:var(--muted);font-size:17px;font-weight:500;line-height:1.45}.captcha-form{display:flex;flex:1;flex-direction:column;margin-top:20px}.captcha-image{display:grid;min-height:96px;place-items:center;overflow:hidden;background:linear-gradient(#ffffff2e,#ffffff2e),var(--mint);border:1px solid rgba(31,113,91,.14);border-radius:16px}.captcha-image img{width:min(100%,300px);height:86px;object-fit:contain;image-rendering:auto;user-select:none}.code-input{width:100%;height:60px;margin-top:20px;padding:0 18px;color:var(--text);font-size:18px;font-weight:600;letter-spacing:.08em;background:var(--surface);border:2px solid var(--border);border-radius:16px;box-shadow:none;transition:border-color .18s ease,box-shadow .18s ease}.code-input::placeholder{color:var(--muted);font-weight:500;letter-spacing:0}.code-input:focus{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 12%,transparent);outline:0}.code-input--error{border-color:var(--success)}.input-hint{margin:8px 0 0;color:var(--muted);font-size:13px;font-weight:500;text-align:center}.field-error{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 10px;margin:9px 0 0;color:#c53f3a;font-size:13px;font-weight:650;text-align:center}.field-error span{color:var(--muted)}.primary-button{display:flex;width:100%;min-height:58px;align-items:center;justify-content:center;gap:10px;margin-top:auto;padding:14px 20px;color:var(--primary-text);font-size:17px;font-weight:700;line-height:1.2;background:var(--primary);border:0;border-radius:16px;box-shadow:0 10px 22px color-mix(in srgb,var(--primary) 24%,transparent);cursor:pointer;transition:filter .18s ease,transform .18s ease,box-shadow .18s ease}.captcha-form .primary-button{margin-top:auto}.primary-button:hover:not(:disabled){filter:brightness(1.04)}.primary-button:active:not(:disabled){transform:translateY(1px) scale(.992);box-shadow:0 6px 14px color-mix(in srgb,var(--primary) 22%,transparent)}.primary-button:disabled{cursor:wait;opacity:.9}.button-icon{width:23px;height:23px;margin-left:auto;fill:none;stroke:currentcolor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.loading-spacer{flex:1;min-height:140px}.button-spinner,.loader{border:3px solid rgba(255,255,255,.34);border-top-color:currentcolor;border-radius:50%;animation:spin .8s linear infinite}.button-spinner{width:20px;height:20px}.center-state{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;padding:40px 30px 100px;text-align:center}.loader{width:40px;height:40px;color:var(--primary);border-color:color-mix(in srgb,var(--primary) 18%,transparent);border-top-color:var(--primary)}.loading-label{margin-top:18px}.app-shell--state .center-state,.subscription-state{padding-bottom:100px}.error-state .primary-button,.subscription-state .primary-button{max-width:360px;margin-top:30px}.status-orb{display:grid;width:66px;height:66px;margin-bottom:24px;place-items:center;color:#fff;font-size:32px;font-weight:800;border-radius:50%;box-shadow:0 12px 24px #1d312b24}.status-orb--error{background:var(--success)}.status-orb--warning{background:#f3b41b}.app-shell--success{isolation:isolate}.success-view{position:relative;z-index:2;display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;padding:10px 28px 132px}.dice-wrap--success{min-height:260px}.dice-wrap--success .dice-body{animation:dice-success .72s cubic-bezier(.2,.8,.2,1) both}.success-check{display:grid;width:70px;height:70px;margin-top:-12px;place-items:center;color:#fff;background:var(--success);border-radius:50%;box-shadow:0 12px 25px #ff686342;animation:check-pop .45s .22s cubic-bezier(.2,.9,.3,1.35) both}.success-check svg{width:42px;height:42px;fill:none;stroke:currentcolor;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.success-copy{margin-top:22px}.success-copy p{font-size:20px}.bottom-action{position:absolute;z-index:5;right:28px;bottom:28px;left:28px}.confetti{position:absolute;z-index:1;inset:70px 0 130px;overflow:hidden;pointer-events:none}.confetti i{position:absolute;top:-20px;left:var(--x);width:8px;height:14px;background:var(--color);border-radius:2px;opacity:0;animation:confetti-fall var(--duration) var(--delay) ease-in 1 forwards}.subscription-state{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;padding:36px 30px;text-align:center}.channel-list{display:grid;width:min(100%,390px);margin-top:24px;gap:10px}.channel-row{display:flex;min-height:54px;align-items:center;justify-content:space-between;padding:13px 16px;color:var(--text);font-size:16px;font-weight:650;text-align:left;text-decoration:none;background:color-mix(in srgb,var(--mint) 64%,var(--surface));border:1px solid var(--border);border-radius:16px}.channel-row span{color:var(--primary);font-size:19px}.channel-row--disabled{color:var(--muted)}.muted-note{margin:0;color:var(--muted);font-size:14px}.app-shell--stats{overflow:visible}.stats-view{display:flex;flex:1;flex-direction:column;padding:18px 26px 30px}.stats-view>h1{margin-bottom:26px;text-align:left}.segmented-control{display:grid;grid-template-columns:1fr 1fr;min-height:54px;margin-bottom:24px;overflow:hidden;background:color-mix(in srgb,var(--muted) 6%,var(--surface));border:1px solid var(--border);border-radius:16px}.segmented-control button{min-height:52px;padding:10px 16px;color:var(--muted);font-size:17px;font-weight:650;background:transparent;border:0;cursor:pointer;transition:color .18s ease,background .18s ease,box-shadow .18s ease}.segmented-control button.is-active{color:var(--primary-text);background:var(--primary);box-shadow:0 6px 16px color-mix(in srgb,var(--primary) 20%,transparent)}.chart-frame,.chart-empty{min-height:296px;border:1px solid var(--border);border-radius:22px}.chart-frame{padding:18px 12px 8px}.chart-label{margin-left:14px;color:var(--muted);font-size:13px;font-weight:600}.stats-chart{display:block;width:100%;height:auto;min-height:240px;overflow:visible}.chart-grid line{stroke:var(--border);stroke-dasharray:4 4}.chart-grid text,.chart-axis-labels text{fill:var(--muted);font-size:10px;font-weight:550}.chart-area{fill:color-mix(in srgb,var(--primary) 13%,transparent)}.chart-line{fill:none;stroke:var(--primary);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.chart-points circle{fill:var(--primary);stroke:var(--surface);stroke-width:2}.chart-empty{display:grid;padding:32px;place-items:center;color:var(--muted);font-size:17px;font-weight:550;line-height:1.4;text-align:center;background:color-mix(in srgb,var(--muted) 3%,var(--surface))}.metric-summary{display:grid;grid-template-columns:1fr 1fr;margin-top:24px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.metric{display:grid;min-width:0;grid-template-columns:46px 1fr;grid-template-rows:auto auto;padding:22px 12px;column-gap:12px}.metric+.metric{border-left:1px solid var(--border)}.metric-icon{display:grid;width:46px;height:46px;grid-row:1 / 3;place-items:center;border-radius:14px}.metric-icon svg{width:27px;height:27px;fill:currentcolor}.metric-icon--blue{color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,transparent)}.metric-icon--mint{color:#168f7b;background:var(--mint)}.metric-icon--mint svg{fill:none;stroke:currentcolor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.metric strong{overflow:hidden;font-size:28px;font-weight:790;line-height:1.05;letter-spacing:-.03em;text-overflow:ellipsis}.metric>span:last-child{align-self:end;margin-top:5px;color:var(--muted);font-size:13px;font-weight:550;line-height:1.2}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@keyframes spin{to{transform:rotate(360deg)}}@keyframes dice-breathe{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-6px) rotate(1deg)}}@keyframes dice-success{0%{transform:translateY(40px) rotate(-8deg) scale(.76);opacity:0}65%{transform:translateY(-8px) rotate(3deg) scale(1.04);opacity:1}to{transform:translateY(0) rotate(0) scale(1);opacity:1}}@keyframes check-pop{0%{transform:scale(.3);opacity:0}to{transform:scale(1);opacity:1}}@keyframes confetti-fall{0%{transform:translate3d(0,-10px,0) rotate(0);opacity:0}10%{opacity:1}to{transform:translate3d(18px,620px,0) rotate(620deg);opacity:0}}@media(max-width:559px){#app{padding:0}.app-shell{min-height:100svh;border:0;border-radius:0;box-shadow:none}.brand-header{padding:calc(14px + var(--safe-top)) calc(18px + var(--safe-right)) 10px calc(18px + var(--safe-left))}.join-view{padding-right:calc(24px + var(--safe-right));padding-bottom:calc(24px + var(--safe-bottom));padding-left:calc(24px + var(--safe-left))}.bottom-action{right:calc(22px + var(--safe-right));bottom:calc(18px + var(--safe-bottom));left:calc(22px + var(--safe-left))}.stats-view{padding:16px calc(20px + var(--safe-right)) calc(26px + var(--safe-bottom)) calc(20px + var(--safe-left))}}@media(max-width:390px){.brand-line{max-width:205px;font-size:12px}.dice-wrap--captcha{min-height:188px}.dice-svg{width:190px}.captcha-form{margin-top:16px}.stats-view{padding-right:16px;padding-left:16px}.metric{grid-template-columns:40px 1fr;padding:18px 8px;column-gap:8px}.metric-icon{width:40px;height:40px}.metric strong{font-size:24px}}@media(max-height:720px)and (orientation:portrait){.brand-header{min-height:68px;padding-top:10px;padding-bottom:8px}.brand-mark{width:36px;height:36px}.dice-wrap--captcha{min-height:154px;margin:-10px 0}.dice-svg{width:175px}.captcha-image{min-height:78px}.captcha-image img{height:72px}.code-input{height:54px;margin-top:14px}.captcha-form .primary-button{margin-top:16px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.confetti{display:none}}.join-page{display:grid;width:100%;min-height:100svh;padding:calc(14px + var(--safe-top)) calc(14px + var(--safe-right)) calc(14px + var(--safe-bottom)) calc(14px + var(--safe-left));place-items:center;overflow:hidden;background:radial-gradient(circle at 16% 12%,rgba(255,255,255,.96),transparent 28%),radial-gradient(circle at 88% 88%,rgba(189,226,255,.72),transparent 36%),linear-gradient(145deg,#e9e9ff,#eaf5ff 52%,#dfeaff)}.join-canvas{position:relative;display:flex;width:min(100%,470px);min-height:min(760px,calc(100svh - 28px - var(--safe-top) - var(--safe-bottom)));padding:28px 26px;overflow:hidden;color:#171a1d;background:#fff;border:1px solid rgba(65,75,108,.08);border-radius:30px;box-shadow:0 26px 72px #3d467729,0 3px 14px #3d467714}.join-canvas h1{color:#171a1d}.ticket-mascot{display:block;width:240px;max-width:78vw;height:auto;object-fit:contain;filter:drop-shadow(0 18px 20px rgba(69,110,120,.17));pointer-events:none;user-select:none;-webkit-user-drag:none}.intro-scene,.human-scene,.numeric-scene,.verifying-scene,.closed-scene,.join-error-scene{display:flex;width:100%;flex:1;flex-direction:column;align-items:center;justify-content:center;text-align:center}.ticket-mascot--intro{width:min(330px,80vw);animation:ticket-intro 2.4s cubic-bezier(.18,.78,.22,1) both}.human-scene,.numeric-scene{justify-content:flex-start}.ticket-mascot--human{width:min(218px,58vw);margin-top:-8px;animation:ticket-settle .65s cubic-bezier(.2,.82,.28,1.15) both}.ticket-mascot--numeric{width:min(198px,52vw);margin-top:-10px;animation:ticket-float 2.8s ease-in-out infinite}.verification-form-area{position:relative;z-index:2;display:flex;width:100%;flex-direction:column;align-items:center;opacity:0;transform:translateY(34px);animation:verification-form-reveal .58s 80ms cubic-bezier(.2,.8,.2,1) forwards;transition:opacity .34s ease,transform .34s cubic-bezier(.4,0,1,1)}.verification-form-area--human{margin-top:-2px}.verification-form-area--numeric{margin-top:-14px}.verification-form-area h1{max-width:370px;margin-top:14px;font-size:clamp(26px,7vw,31px)}.verification-clock-wrap{display:grid;width:48px;height:48px;place-items:center}.verification-clock{width:44px;height:44px;overflow:visible}.verification-clock__face{fill:#f5bd29;stroke:#e3a812;stroke-width:1.5}.verification-clock__hour,.verification-clock__minute{transform-box:view-box;transform-origin:24px 24px}.verification-clock__hour{animation:verification-hour-hand 19.2s linear infinite}.verification-clock__minute{animation:verification-minute-hand 1.6s linear infinite}.verification-clock__hour path,.verification-clock__minute path{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round}.verification-clock__hour path{stroke-width:4.2}.verification-clock__minute path{stroke-width:3.2}.verification-clock__pin{fill:#fff}.human-check{display:flex;width:min(100%,370px);min-height:72px;align-items:center;gap:14px;margin-top:28px;padding:14px 16px;color:#21242a;font-size:17px;font-weight:680;line-height:1.3;text-align:left;background:#f7f8fc;border:1px solid rgba(39,45,72,.14);border-radius:18px;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.human-check:hover{border-color:#2f80ed6b}.human-check:active{transform:scale(.99)}.human-check input{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0)}.human-check__box{position:relative;display:grid;width:30px;height:30px;flex:0 0 auto;place-items:center;color:#fff;background:#fff;border:2px solid #858b96;border-radius:8px;transition:background .26s ease,border-color .26s ease,border-radius .32s cubic-bezier(.2,.8,.2,1),transform .26s ease}.human-check__box svg{width:25px;height:25px;fill:none;stroke:currentcolor;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;opacity:0;transform:scale(.55);transition:opacity .18s ease,transform .18s ease}.human-check input:focus-visible+.human-check__box{outline:3px solid rgba(47,128,237,.32);outline-offset:3px}.human-check input:checked+.human-check__box{background:#2f80ed;border-color:#2f80ed;border-radius:50%;transform:scale(1)}.human-check input:checked+.human-check__box svg{opacity:0;transform:scale(.55)}.human-check input:checked+.human-check__box:after{position:absolute;top:50%;left:50%;width:17px;height:17px;box-sizing:border-box;content:"";border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:human-check-spin .72s linear infinite}.join-canvas.is-human-confirmed .ticket-mascot--human{animation:ticket-active .52s ease-in-out infinite}.join-canvas.is-human-confirmed .verification-form-area{opacity:1;transform:translateY(0) scale(1)}.numeric-instruction{margin:7px 0 0;color:#6f7580;font-size:15px;font-weight:550}.numeric-form{display:flex;width:min(100%,330px);flex-direction:column;margin-top:13px}.join-canvas .captcha-image{width:100%;min-height:72px;background:#f8f9fc;border-color:#2d344e1a;border-radius:16px}.join-canvas .captcha-image img{width:min(100%,238px);height:66px}.numeric-action{display:grid;grid-template-columns:minmax(0,1fr) 72px;margin-top:12px;gap:9px}.join-canvas .code-input{height:50px;margin:0;color:#171a1d;font-size:19px;background:#fff;border:2px solid rgba(45,52,78,.15);border-radius:14px}.captcha-ok{min-width:68px;min-height:50px;padding:0 14px;color:#fff;font-size:17px;font-weight:780;background:#2f80ed;border:0;border-radius:14px;box-shadow:0 9px 20px #2f80ed38;cursor:pointer;transition:transform .18s ease,filter .18s ease}.captcha-ok:active{transform:translateY(1px) scale(.98)}.join-canvas .input-hint{margin-top:6px;font-size:12px;color:#828894}@keyframes human-check-spin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.join-canvas .field-error{color:#cf4a45}.join-canvas.is-submitting .verification-form-area{opacity:0;transform:translateY(24px) scale(.9)}.join-canvas.is-submitting .ticket-mascot--numeric{animation:ticket-active .44s ease-in-out infinite}.verifying-scene{isolation:isolate}.ticket-mascot--verifying{position:relative;z-index:2;width:min(255px,67vw);animation:ticket-verifying .92s ease-in-out infinite}.verification-orbit{position:absolute;z-index:1;width:min(330px,80vw);aspect-ratio:1;border:2px solid rgba(93,112,230,.17);border-top-color:#2f80edbf;border-radius:50%;box-shadow:0 0 0 18px #6980f50a,0 0 0 42px #6980f506;animation:verification-orbit 1.7s linear infinite}.verifying-scene p{position:relative;z-index:3;margin:28px 0 0;color:#373c48;font-size:22px;font-weight:740}.join-canvas--success{isolation:isolate}.join-canvas .success-view{position:relative;z-index:2;display:flex;width:100%;flex:1;flex-direction:column;align-items:center;justify-content:center;padding:18px 8px 0}.ticket-mascot--success{width:min(282px,72vw);opacity:0;animation:ticket-success .9s cubic-bezier(.18,.8,.22,1.22) forwards}.join-canvas .success-copy{margin-top:8px}.join-canvas .success-copy h1{opacity:0;transform:translateY(14px);animation:success-copy-reveal .46s .68s ease forwards}.join-canvas .success-copy p{margin-top:10px;color:#747b88;font-size:19px;opacity:0;transform:translateY(12px);animation:success-copy-reveal .46s .98s ease forwards}.join-canvas .success-close{width:min(100%,370px);margin-top:auto;opacity:0;transform:translateY(22px);animation:success-copy-reveal .48s 1.32s ease forwards}.join-canvas .confetti{position:absolute;z-index:1;inset:0;overflow:hidden;pointer-events:none}.join-canvas .confetti i{position:absolute;top:-24px;left:var(--x);width:8px;height:14px;background:var(--color);border-radius:2px;opacity:0;animation:ticket-confetti var(--duration) var(--delay) cubic-bezier(.24,.64,.42,1) 1 forwards}.ticket-mascot--closed,.ticket-mascot--error{width:min(180px,54vw);margin-bottom:10px;filter:grayscale(.55) saturate(.55) opacity(.72) drop-shadow(0 14px 16px rgba(69,79,112,.12))}.closed-scene .status-orb,.join-error-scene .status-orb{width:58px;height:58px;margin-bottom:18px;font-size:27px}.closed-scene h1,.join-error-scene h1{max-width:370px;font-size:clamp(28px,7vw,33px)}.join-error-scene p{margin:12px 0 0;color:#747b88;font-size:16px;line-height:1.45}.closed-scene .primary-button,.join-error-scene .primary-button{width:min(100%,370px);margin-top:auto}.ticket-mascot--subscription{width:min(145px,45vw);margin:-16px 0 -14px}.join-canvas--subscription{overflow-y:auto}.join-canvas--subscription .subscription-state{padding:14px 4px 4px}.join-canvas--subscription .channel-row{background:#f2f5ff}@keyframes ticket-intro{0%{opacity:0;transform:translateY(110px) rotate(-18deg) scale(.56)}42%{opacity:1;transform:translateY(5px) rotate(8deg) scale(1.04)}66%{transform:translateY(-8px) rotate(-5deg) scale(1)}to{opacity:1;transform:translateY(-78px) rotate(0) scale(.8)}}@keyframes ticket-settle{0%{opacity:0;transform:translateY(45px) rotate(-8deg) scale(.82)}to{opacity:1;transform:translateY(0) rotate(0) scale(1)}}@keyframes verification-form-reveal{to{opacity:1;transform:translateY(0)}}@keyframes ticket-float{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-8px) rotate(3deg)}}@keyframes ticket-active{0%,to{transform:translate(-3px) rotate(-8deg) scale(.98)}50%{transform:translate(4px) rotate(10deg) scale(1.03)}}@keyframes verification-minute-hand{to{transform:rotate(360deg)}}@keyframes verification-hour-hand{to{transform:rotate(360deg)}}@keyframes verification-orbit{to{transform:rotate(360deg)}}@keyframes ticket-verifying{0%,to{transform:translate(-9px) rotate(-9deg) scale(.98)}25%{transform:translateY(-13px) rotate(3deg) scale(1.03)}50%{transform:translate(10px) rotate(10deg) scale(.99)}75%{transform:translateY(8px) rotate(-2deg) scale(1.01)}}@keyframes ticket-success{0%{opacity:0;transform:translateY(72px) rotate(-12deg) scale(.58)}58%{opacity:1;transform:translateY(-16px) rotate(7deg) scale(1.07)}78%{transform:translateY(7px) rotate(-3deg) scale(.98)}to{opacity:1;transform:translateY(0) rotate(0) scale(1)}}@keyframes success-copy-reveal{to{opacity:1;transform:translateY(0)}}@keyframes ticket-confetti{0%{opacity:0;transform:translate3d(0,-12px,0) rotate(0)}8%{opacity:1}88%{opacity:1}to{opacity:0;transform:translate3d(var(--drift),780px,0) rotate(680deg)}}@media(max-width:559px){.join-page{padding:calc(11px + var(--safe-top)) calc(11px + var(--safe-right)) calc(11px + var(--safe-bottom)) calc(11px + var(--safe-left))}.join-canvas{min-height:calc(100svh - 22px - var(--safe-top) - var(--safe-bottom));padding:24px 20px;border-radius:26px}}@media(max-width:360px){.join-canvas{padding-right:16px;padding-left:16px}.ticket-mascot--human{width:188px}.ticket-mascot--numeric{width:174px}.verification-form-area h1{font-size:25px}.human-check{min-height:66px;font-size:16px}}@media(max-height:690px)and (orientation:portrait){.join-canvas{min-height:calc(100svh - 20px - var(--safe-top) - var(--safe-bottom));padding-top:16px;padding-bottom:16px}.ticket-mascot--human{width:160px;margin-top:-24px}.ticket-mascot--numeric{width:166px;margin-top:-18px}.verification-clock-wrap,.verification-clock{width:38px;height:38px}.verification-form-area h1{margin-top:8px;font-size:25px}.human-check{margin-top:18px}.numeric-form{margin-top:12px}.join-canvas .captcha-image{min-height:78px}.join-canvas .captcha-image img{height:74px}}@media(prefers-reduced-motion:reduce){.ticket-mascot--intro,.ticket-mascot--human,.ticket-mascot--numeric,.ticket-mascot--verifying,.ticket-mascot--success,.verification-form-area,.verification-clock__hour,.verification-clock__minute,.verification-orbit,.success-copy h1,.success-copy p,.success-close{opacity:1!important;transform:none!important;animation:none!important;transition:none!important}.join-canvas .confetti{display:none}}
