*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--tg-theme-bg-color, #1a1a2e);color:var(--tg-theme-text-color, #ffffff);min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}.app-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px}.join-flow{width:100%;max-width:400px}.step-container{position:relative}.step,.card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:32px 24px;background:var(--tg-theme-secondary-bg-color, rgba(255, 255, 255, .06));border-radius:20px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.error-card .error-icon{font-size:48px;margin-bottom:16px}.error-card h2{margin-bottom:8px}.lottie-container{margin-bottom:20px}.step-text{font-size:16px;color:var(--tg-theme-hint-color, rgba(255, 255, 255, .6));margin-top:8px}.step-title{font-size:22px;font-weight:700;margin-bottom:8px}.step-subtitle{font-size:14px;color:var(--tg-theme-hint-color, rgba(255, 255, 255, .6));margin-bottom:20px;line-height:1.4}.success-title{color:#4caf50}.error-title{color:#f44336}.participants-count{font-size:16px;color:var(--tg-theme-hint-color, rgba(255, 255, 255, .6));margin-top:4px;margin-bottom:16px}.channel-list{width:100%;margin-bottom:20px}.channel-item{display:flex;align-items:center;width:100%;padding:14px 16px;background:var(--tg-theme-bg-color, rgba(255, 255, 255, .04));border:none;border-radius:12px;margin-bottom:8px;text-decoration:none;color:var(--tg-theme-text-color, #ffffff);font-family:inherit;font-size:inherit;cursor:pointer;transition:transform .15s ease,background .15s ease}.channel-item:active{transform:scale(.98);background:var(--tg-theme-bg-color, rgba(255, 255, 255, .08))}.channel-icon{font-size:20px;margin-right:12px;flex-shrink:0}.channel-name{flex:1;font-size:15px;font-weight:500;text-align:left}.channel-arrow{font-size:16px;color:var(--tg-theme-hint-color, rgba(255, 255, 255, .4));flex-shrink:0}.btn{display:block;width:100%;padding:14px 24px;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .15s ease,opacity .15s ease;margin-top:12px}.btn:active{transform:scale(.97);opacity:.9}.btn-primary{background:var(--tg-theme-button-color, #3390ec);color:var(--tg-theme-button-text-color, #ffffff)}.btn-secondary{background:var(--tg-theme-secondary-bg-color, rgba(255, 255, 255, .1));color:var(--tg-theme-text-color, #ffffff)}.spinner{width:48px;height:48px;border:4px solid var(--tg-theme-hint-color, rgba(255, 255, 255, .2));border-top-color:var(--tg-theme-button-color, #3390ec);border-radius:50%;animation:spin .8s linear infinite}.result-screen{position:relative;overflow:hidden}.confetti-wrapper{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}.result-screen>*:not(.confetti-wrapper){position:relative;z-index:1}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.fade-in{animation:fadeIn .35s ease-out}.stats-page{padding:16px 16px 40px;max-width:500px;margin:0 auto;min-height:100vh}.stats-page-title{font-size:24px;font-weight:700;text-align:center;margin-bottom:16px;padding-top:8px}.stats-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}.stats-card{background:var(--tg-theme-secondary-bg-color, rgba(255, 255, 255, .06));border-radius:14px;padding:16px;text-align:center}.stats-card-value{font-size:28px;font-weight:700;color:var(--tg-theme-button-color, #3390ec)}.stats-card-label{font-size:13px;color:var(--tg-theme-hint-color, rgba(255, 255, 255, .6));margin-top:4px}.stats-section{margin-bottom:20px}.stats-section-title{font-size:16px;font-weight:600;margin-bottom:10px;padding-left:4px}.stats-chart-container{background:var(--tg-theme-secondary-bg-color, rgba(255, 255, 255, .06));border-radius:14px;padding:16px 8px 8px 0;overflow:hidden}.create-page{padding:12px 16px 40px;max-width:500px;margin:0 auto;min-height:100vh}.step-progress{display:flex;justify-content:center;gap:6px;padding:8px 0 14px}.step-dot{width:8px;height:8px;border-radius:50%;background:var(--tg-theme-hint-color, rgba(255, 255, 255, .15));transition:all .3s ease}.step-dot-active{width:24px;border-radius:4px;background:var(--tg-theme-button-color, #3390ec)}.step-dot-done{background:var(--tg-theme-button-color, #3390ec);opacity:.4}.create-card{background:var(--tg-theme-secondary-bg-color, rgba(255, 255, 255, .06));border-radius:16px;padding:20px 18px}.create-card-center{display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px 24px}.section-header{text-align:center;margin-bottom:18px}.section-icon{font-size:32px;margin-bottom:8px}.section-title{font-size:20px;font-weight:700;margin-bottom:4px}.section-subtitle{font-size:13px;color:var(--tg-theme-hint-color, rgba(255, 255, 255, .5));line-height:1.4}.form-error{background:#f443361f;color:#ef5350;padding:10px 16px;border-radius:12px;font-size:14px;margin-bottom:12px;text-align:center}.create-list{margin-bottom:12px}.create-list-item{display:flex;align-items:center;width:100%;padding:13px 14px;background:var(--tg-theme-bg-color, rgba(255, 255, 255, .04));border:2px solid transparent;border-radius:12px;margin-bottom:6px;color:var(--tg-theme-text-color, #fff);font-family:inherit;font-size:15px;cursor:pointer;transition:all .15s ease;text-align:left}.create-list-item:active{transform:scale(.98)}.create-list-item.active{border-color:var(--tg-theme-button-color, #3390ec);background:#3390ec14}.create-list-icon{font-size:18px;margin-right:10px;flex-shrink:0}.create-list-text{flex:1;font-weight:500}.create-list-check{color:var(--tg-theme-button-color, #3390ec);font-weight:700;font-size:18px;flex-shrink:0}.create-input,.create-textarea{width:100%;padding:13px 14px;border:1.5px solid var(--tg-theme-hint-color, rgba(255, 255, 255, .12));border-radius:12px;background:var(--tg-theme-bg-color, rgba(255, 255, 255, .04));color:var(--tg-theme-text-color, #fff);font-size:16px;font-family:inherit;outline:none;transition:border-color .2s;margin-bottom:10px}.create-textarea{resize:vertical;min-height:110px}.create-input:focus,.create-textarea:focus{border-color:var(--tg-theme-button-color, #3390ec)}.create-number-row{display:flex;align-items:center;gap:12px;justify-content:center;margin-bottom:12px}.create-number-btn{width:48px;height:48px;border-radius:14px;border:1.5px solid var(--tg-theme-hint-color, rgba(255, 255, 255, .12));background:var(--tg-theme-bg-color, rgba(255, 255, 255, .04));color:var(--tg-theme-text-color, #fff);font-size:22px;font-weight:600;cursor:pointer;transition:all .12s ease}.create-number-btn:active{transform:scale(.93);background:var(--tg-theme-button-color, rgba(51, 144, 236, .15))}.create-number-input{width:72px;text-align:center;padding:12px 8px;border:1.5px solid var(--tg-theme-hint-color, rgba(255, 255, 255, .12));border-radius:14px;background:var(--tg-theme-bg-color, rgba(255, 255, 255, .04));color:var(--tg-theme-text-color, #fff);font-size:24px;font-weight:700;font-family:inherit;outline:none;-moz-appearance:textfield}.create-number-input::-webkit-inner-spin-button,.create-number-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.create-toggle{margin-bottom:12px}.create-toggle-label{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--tg-theme-bg-color, rgba(255, 255, 255, .04));border-radius:12px;cursor:pointer;font-size:15px}.create-toggle-switch{position:relative;width:44px;height:26px;flex-shrink:0}.create-toggle-switch input{opacity:0;width:0;height:0}.create-toggle-slider{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:13px;background:var(--tg-theme-hint-color, rgba(255, 255, 255, .2));transition:background .2s}.create-toggle-slider:before{content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;border-radius:50%;background:#fff;transition:transform .2s}.create-toggle-switch input:checked+.create-toggle-slider{background:var(--tg-theme-button-color, #3390ec)}.create-toggle-switch input:checked+.create-toggle-slider:before{transform:translate(18px)}.create-upload-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:14px;border:2px dashed var(--tg-theme-hint-color, rgba(255, 255, 255, .15));border-radius:12px;background:transparent;color:var(--tg-theme-text-color, #fff);font-family:inherit;font-size:15px;cursor:pointer;transition:border-color .2s;margin-bottom:8px}.create-upload-btn:active{border-color:var(--tg-theme-button-color, #3390ec)}.create-link-btn{background:none;border:none;color:var(--tg-theme-hint-color, rgba(255, 255, 255, .5));font-family:inherit;font-size:14px;cursor:pointer;padding:6px 0;text-decoration:underline;margin-bottom:4px}.create-media-preview{width:100%;max-height:200px;border-radius:12px;overflow:hidden;margin-bottom:12px}.create-media-preview img{width:100%;height:200px;object-fit:cover}.create-file-badge{padding:10px 14px;background:var(--tg-theme-bg-color, rgba(255, 255, 255, .04));border-radius:10px;font-size:14px;margin-bottom:12px;word-break:break-all}.create-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.create-option-btn{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 10px;border:2px solid var(--tg-theme-hint-color, rgba(255, 255, 255, .1));border-radius:14px;background:var(--tg-theme-bg-color, rgba(255, 255, 255, .03));color:var(--tg-theme-text-color, #fff);font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;text-align:center}.create-option-btn:active{transform:scale(.96)}.create-option-btn.active{border-color:var(--tg-theme-button-color, #3390ec);background:#3390ec1a}.create-option-icon{font-size:24px}.create-hint{font-size:14px;color:var(--tg-theme-hint-color, rgba(255, 255, 255, .5));margin-top:10px;line-height:1.4}.create-hint-small{font-size:12px;color:var(--tg-theme-hint-color, rgba(255, 255, 255, .4));margin-top:4px;margin-bottom:14px;padding-left:2px}.result-emoji{font-size:56px;margin-bottom:12px}.result-id{font-size:15px;color:var(--tg-theme-hint-color, rgba(255, 255, 255, .5));margin-bottom:16px}.preview-row{display:flex;align-items:center;padding:12px 14px;background:var(--tg-theme-bg-color, rgba(255, 255, 255, .04));border-radius:12px;margin-bottom:6px;cursor:pointer;transition:background .12s}.preview-row:active{background:#ffffff12}.preview-row-label{font-size:13px;color:var(--tg-theme-hint-color, rgba(255, 255, 255, .55));min-width:90px;flex-shrink:0}.preview-row-value{flex:1;font-size:14px;font-weight:500;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-row-arrow{font-size:18px;color:var(--tg-theme-hint-color, rgba(255, 255, 255, .3));margin-left:8px;flex-shrink:0}.preview-prizes-list{padding:4px 14px 10px}.preview-prize-line{font-size:13px;color:var(--tg-theme-hint-color, rgba(255, 255, 255, .6));padding:2px 0}.preview-divider{height:1px;background:var(--tg-theme-hint-color, rgba(255, 255, 255, .08));margin:12px 0}.create-drop-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;min-height:100px;padding:24px 14px;border:2px dashed var(--tg-theme-hint-color, rgba(255, 255, 255, .15));border-radius:14px;background:transparent;cursor:pointer;transition:all .2s ease;margin-bottom:8px}.create-drop-zone.dragging{border-color:var(--tg-theme-button-color, #3390ec);background:#3390ec0f}.create-drop-zone:active{border-color:var(--tg-theme-button-color, #3390ec)}.create-drop-icon{font-size:28px}.create-drop-text{font-size:14px;color:var(--tg-theme-hint-color, rgba(255, 255, 255, .5));text-align:center}.create-draft-section{text-align:center;margin-bottom:8px}.create-draft-badge{font-size:13px;color:#4caf50;padding:6px 12px;background:#4caf501a;border-radius:8px;margin-bottom:8px;text-align:center;font-weight:500}.create-draft-preview{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.create-draft-text{font-size:14px;color:var(--tg-theme-text-color, #fff);opacity:.8;padding:12px;background:var(--tg-theme-secondary-bg-color, rgba(255, 255, 255, .06));border-radius:10px;white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto;line-height:1.4}.create-link-btn.polling{color:var(--tg-theme-button-color, #3390ec);opacity:.8}.create-time-presets{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.create-time-chip{padding:8px 14px;border-radius:20px;border:1.5px solid var(--tg-theme-hint-color, rgba(255, 255, 255, .12));background:var(--tg-theme-bg-color, rgba(255, 255, 255, .04));color:var(--tg-theme-text-color, #fff);font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.create-time-chip:active{transform:scale(.95);border-color:var(--tg-theme-button-color, #3390ec);background:#3390ec1a}.btn-accent{margin-top:16px;font-size:17px;padding:16px}.captcha-btn{display:flex;align-items:center;width:100%;padding:16px 18px;border:2px solid var(--tg-theme-hint-color, rgba(255, 255, 255, .1));border-radius:14px;background:var(--tg-theme-bg-color, rgba(255, 255, 255, .03));cursor:pointer;transition:all .2s ease;font-family:inherit;color:var(--tg-theme-text-color, #fff);gap:14px}.captcha-btn:active{transform:scale(.97);border-color:var(--tg-theme-button-color, #3390ec);background:#3390ec0f}.captcha-btn-check{flex-shrink:0}.captcha-btn-box{display:block;width:24px;height:24px;border:2.5px solid var(--tg-theme-hint-color, rgba(255, 255, 255, .3));border-radius:6px;transition:all .2s ease}.captcha-btn:active .captcha-btn-box{border-color:var(--tg-theme-button-color, #3390ec);background:#3390ec1a}.captcha-btn-text{flex:1;font-size:16px;font-weight:600;text-align:left}.captcha-btn-badge{flex-shrink:0;color:var(--tg-theme-hint-color, rgba(255, 255, 255, .35));display:flex;align-items:center}.captcha-track{position:relative;width:100%;height:52px;border-radius:26px;background:var(--tg-theme-bg-color, rgba(255, 255, 255, .04));border:2px solid var(--tg-theme-hint-color, rgba(255, 255, 255, .08));overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;margin-top:4px}.captcha-track-fill{position:absolute;left:0;top:0;height:100%;background:var(--tg-theme-button-color, #3390ec);border-radius:26px;pointer-events:none}.captcha-track-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:2px;color:var(--tg-theme-hint-color, rgba(255, 255, 255, .5));pointer-events:none}.captcha-thumb{position:absolute;left:0;top:0;width:48px;height:48px;border-radius:50%;background:var(--tg-theme-button-color, #3390ec);display:flex;align-items:center;justify-content:center;cursor:grab;touch-action:none;z-index:2;box-shadow:0 2px 12px #3390ec66}.captcha-thumb:active{cursor:grabbing;box-shadow:0 2px 16px #3390ec99}.captcha-done{display:flex;flex-direction:column;align-items:center;gap:12px}.captcha-done-circle{width:64px;height:64px;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.captcha-done-ring{animation:captchaRing .5s ease-out forwards}.captcha-done-check{stroke-dasharray:30;stroke-dashoffset:30;animation:captchaCheck .4s .25s ease-out forwards}@keyframes captchaRing{0%{stroke-dasharray:107;stroke-dashoffset:107}to{stroke-dashoffset:0}}@keyframes captchaCheck{to{stroke-dashoffset:0}}.winners-page{padding:16px 16px 40px;max-width:500px;margin:0 auto;min-height:100vh}.winners-header{text-align:center;padding:24px 0 20px}.winners-trophy{font-size:48px;margin-bottom:8px}.winners-title{font-size:22px;font-weight:700;margin-bottom:4px}.winners-subtitle{font-size:14px;color:var(--tg-theme-hint-color, rgba(255, 255, 255, .6))}.winners-list{display:flex;flex-direction:column;gap:8px;margin-bottom:24px}.winner-card{display:flex;align-items:center;padding:14px 16px;background:var(--tg-theme-secondary-bg-color, rgba(255, 255, 255, .06));border-radius:14px;gap:14px}.winner-place{font-size:24px;flex-shrink:0;min-width:36px;text-align:center}.winner-info{display:flex;flex-direction:column;gap:2px;min-width:0}.winner-name{font-size:15px;font-weight:600;color:var(--tg-theme-link-color, #3390ec);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.winner-name.no-link{color:var(--tg-theme-text-color, #ffffff)}.winner-prize{font-size:13px;color:var(--tg-theme-hint-color, rgba(255, 255, 255, .6))}.winners-empty{text-align:center;padding:32px 0;color:var(--tg-theme-hint-color, rgba(255, 255, 255, .5));font-size:15px}.winners-close-btn{margin-top:8px}
