@import"https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable-dynamic-subset.min.css";:root{font-family:Pretendard Variable,Pretendard,system-ui,sans-serif;color:#f7f8f8;background:#111315;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input{font:inherit}button{cursor:pointer}.page{min-height:100vh;display:grid;place-items:center;padding:24px}.registration{background:radial-gradient(circle at 50% 10%,#16332b 0,#111315 46%)}.registration-card{width:min(820px,100%);text-align:center;display:flex;flex-direction:column;align-items:center;gap:20px}.brand-mark{width:62px;height:62px;border-radius:18px;display:grid;place-items:center;font-weight:900;font-size:34px;color:#09241b;background:#00ffa3;box-shadow:0 0 40px #00ffa344}h1,h2,p{margin:0}h1{font-size:clamp(34px,6vw,62px);line-height:1.08}h2{font-size:22px}.eyebrow{color:#00ffa3;letter-spacing:.16em;font-size:12px;font-weight:800}.muted{color:#a9b0b0;line-height:1.65}.small{font-size:13px}.channel-form{display:flex;width:100%;gap:10px;margin-top:14px}input{border:1px solid #ffffff22;background:#1a1d20;color:#fff;border-radius:10px;padding:15px 16px;min-width:0}.channel-form input{flex:1}.error,.notice{color:#ff7d7d}.fairness-note{display:flex;flex-direction:column;gap:5px;margin-top:18px;padding:18px 22px;color:#b8ffdf;border:1px solid #00ffa355;border-radius:14px;background:#00ffa30a;font-size:14px}.fairness-note span{color:#a9b0b0}.primary,.secondary,.text-button{border:0;border-radius:10px;padding:14px 20px;font-weight:800;transition:.2s ease}.primary{color:#072319;background:#00ffa3}.secondary{color:#00ffa3;background:transparent;border:1px solid #00ffa3}.text-button{color:#a9b0b0;padding:8px;background:transparent}button:hover{transform:translateY(-1px);filter:brightness(1.06)}button:disabled{cursor:wait;opacity:.65}.large{min-height:54px}header{border-bottom:1px solid #ffffff12;background:#141719cc;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.header-inner{max-width:1440px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 24px}.header-inner h1{margin-top:5px;font-size:27px}.channel{display:flex;align-items:center;gap:12px}.channel img,.channel-placeholder{width:42px;height:42px;border-radius:50%;background:#272c2f;object-fit:cover}.channel span{display:block;color:#a9b0b0;font-size:12px;margin-top:3px}.content{max-width:1440px;margin:0 auto;padding:24px}.card{border:1px solid #ffffff12;border-radius:16px;background:#181b1e;box-shadow:0 18px 42px #00000020}.toolbar{padding:18px}.toolbar-buttons{display:flex;gap:10px}.toolbar-buttons button{flex:1}.option-grid{display:flex;flex-wrap:wrap;gap:18px 28px;align-items:center;margin-top:18px}.toggle{display:inline-flex;align-items:center;gap:9px;color:#d8dddd;font-size:14px;cursor:pointer}.toggle input{display:none}.toggle-control{position:relative;width:42px;height:23px;border-radius:99px;background:#373d40;transition:.2s}.toggle-control:after{content:"";position:absolute;top:3px;left:3px;width:17px;height:17px;border-radius:50%;background:#fff;transition:.2s}.toggle input:checked+.toggle-control{background:#00bd7a}.toggle input:checked+.toggle-control:after{transform:translate(19px)}.timer-option,.timer-option label{display:flex;align-items:center;gap:8px}.timer-option input{width:80px;padding:8px}.timer{position:sticky;top:15px;z-index:2;width:max-content;margin:16px auto 0;padding:8px 18px;border-radius:99px;color:#08231a;background:#00ffa3;font-weight:900}.notice{margin:16px 0 0;padding:14px 16px;border-radius:10px;background:#ff4c4c18}.participant-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;margin-top:18px}.participants-card{min-height:460px;overflow:hidden}.section-title{display:flex;justify-content:space-between;gap:16px;padding:20px;border-bottom:1px solid #ffffff12}.section-title .muted{margin-top:7px;font-size:13px}.status{height:fit-content;white-space:nowrap;border-radius:99px;padding:6px 10px;color:#a9b0b0;background:#ffffff0d;font-size:12px;font-weight:800}.status.connected{color:#00ffa3;background:#00ffa315}.status.error{color:#ff7d7d;background:#ff4c4c18}.participants{min-height:340px;max-height:560px;overflow-y:auto;display:flex;flex-wrap:wrap;align-content:flex-start;gap:8px;padding:18px}.empty{width:100%;align-self:center;color:#727a7a;text-align:center}.viewer-chip{display:inline-flex;align-items:center;gap:6px;height:fit-content;padding:9px 11px;border:1px solid #ffffff13;border-radius:9px;background:#202428;font-size:14px}.viewer-chip.inactive{opacity:.28;text-decoration:line-through}.viewer-chip img{width:18px;height:18px;object-fit:contain}.viewer-chip b{color:#00ffa3;font-size:10px}.participant-footer{display:flex;justify-content:space-between;padding:15px 18px;color:#a9b0b0;border-top:1px solid #ffffff12;font-size:13px}.fairness-card{padding:20px}.fairness-card h2{margin-top:9px}.fairness-card ol{padding-left:20px;color:#cbd0d0;font-size:14px;line-height:1.75}.history{margin-top:18px;padding:20px}.winner-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:grid;place-items:center;padding:20px;background:#000000b5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.slot-modal{width:min(620px,100%);min-height:320px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:20px;padding:30px;border:1px solid #00ffa344;border-radius:20px;background:#171b1d;box-shadow:0 0 80px #00ffa31e;text-align:center;overflow:hidden}.slot-window{width:min(440px,100%);height:82px;overflow:hidden;border-block:2px solid #00ffa3;background:#0e1113}.slot-track{animation:slot-spin 2.8s cubic-bezier(.12,.72,.12,1) forwards}.slot-row{height:78px;display:grid;place-items:center;font-size:25px;font-weight:900}.winner{display:flex;flex-direction:column;gap:16px;align-items:center;animation:winner-in .45s ease both}.winner h2{color:#00ffa3;font-size:clamp(36px,8vw,62px)}.winner p{color:#a9b0b0}@keyframes slot-spin{0%{transform:translateY(0)}to{transform:translateY(calc(-100% + 78px))}}@keyframes winner-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@media(max-width:850px){.participant-layout{grid-template-columns:1fr}.header-inner{align-items:flex-start;flex-direction:column}.channel{width:100%}.channel .text-button{margin-left:auto}}@media(max-width:560px){.content,.header-inner{padding-inline:14px}.channel-form,.toolbar-buttons{flex-direction:column}.registration-card{gap:16px}.section-title{flex-direction:column}.status{width:fit-content}}
