*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{color:#cdd6f4;background:#1e1e2e;justify-content:center;align-items:center;min-width:320px;min-height:100svh;font-family:Inter,system-ui,sans-serif;display:flex;overflow-x:hidden}#app{flex-direction:column;align-items:center;gap:24px;display:flex}#wheel-wrap{justify-content:center;align-items:center;display:flex;position:relative}canvas{display:block}#hub-btn{cursor:pointer;filter:drop-shadow(0 4px 14px #11111b99);background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:transform .1s,filter .2s;display:flex;position:absolute}#hub-btn svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}#hub-btn path{fill:#11111b;stroke:#fff;stroke-width:6px}#hub-btn span{letter-spacing:.06em;color:#fff;pointer-events:none;font-weight:800;position:relative}#hub-btn:hover{filter:drop-shadow(0 4px 14px #11111b99)drop-shadow(0 0 10px #fff6)}#hub-btn:active{transform:scale(.94)}#hub-btn:disabled{cursor:not-allowed}#btn-row{align-items:center;gap:12px;display:flex}#edit-btn{letter-spacing:.04em;color:#cdd6f4;cursor:pointer;background:0 0;border:2px solid #cdd6f466;border-radius:999px;padding:12px 40px;font-family:Inter,system-ui,sans-serif;font-size:16px;font-weight:700;transition:background .2s,border-color .2s,transform .1s}#edit-btn:hover{background:#cba6f71f;border-color:#cba6f7}#edit-btn:active{transform:scale(.96)}#edit-btn:disabled{cursor:not-allowed;opacity:.5}#edit-dialog{color:#cdd6f4;background:#181825;border:1px solid #313244;border-radius:16px;width:min(480px,100vw);margin:auto;padding:28px;box-shadow:0 8px 40px #11111bb3}#edit-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#11111ba6}#edit-dialog h2{margin-bottom:6px;font-size:18px;font-weight:700}#edit-dialog #edit-help{color:#a6adc8;margin-bottom:12px;font-size:13px}@media (width<=480px){#edit-dialog{border-left:none;border-right:none;border-radius:0;width:100vw;max-width:100vw;min-height:100dvh;margin:0}}#options-input{color:#cdd6f4;resize:vertical;background:#1e1e2e;border:1px solid #45475a;border-radius:8px;outline:none;width:100%;padding:10px 12px;font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:14px;line-height:1.6;transition:border-color .2s}#options-input:focus{border-color:#cba6f7}#edit-error{color:#f38ba8;min-height:1.4em;margin-top:8px;font-size:13px}#dialog-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}#dialog-actions button{cursor:pointer;border-radius:999px;padding:10px 28px;font-family:Inter,system-ui,sans-serif;font-size:15px;font-weight:700;transition:background .2s,transform .1s}#dialog-actions button:active{transform:scale(.96)}#cancel-btn{color:#cdd6f4;background:0 0;border:2px solid #45475a}#cancel-btn:hover{background:#313244;border-color:#585b70}#save-btn{color:#11111b;background:#cba6f7;border:2px solid #cba6f7}#save-btn:hover{background:#b4befe;border-color:#b4befe}#spin-btn{letter-spacing:.04em;color:#11111b;cursor:pointer;background:#cba6f7;border:none;border-radius:999px;padding:12px 40px;font-family:Inter,system-ui,sans-serif;font-size:16px;font-weight:700;transition:background .2s,transform .1s}#spin-btn:hover{background:#b4befe}#spin-btn:active{transform:scale(.96)}#spin-btn:disabled{cursor:not-allowed;opacity:.5}#winner{z-index:60;background:linear-gradient(160deg,#313244f2,#181825f2);border:1px solid #cba6f740;border-radius:20px;flex-direction:column;align-items:center;gap:8px;min-width:260px;padding:28px 28px 20px;display:none;position:fixed;bottom:max(24px,4vh);left:50%;box-shadow:0 12px 40px #11111b80}#winner.show{animation:.55s cubic-bezier(.34,1.56,.64,1) forwards winner-pop;display:flex}#winner-close{color:#a6adc8;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:18px;line-height:1;transition:background .15s,color .15s;display:flex;position:absolute;top:8px;right:10px}#winner-close:hover{color:#cdd6f4;background:#cdd6f41f}#winner-close:active{transform:scale(.9)}@keyframes winner-pop{0%{opacity:0;transform:translate(-50%)scale(.7)translateY(14px)}60%{opacity:1;transform:translate(-50%)scale(1.08)translateY(-4px)}to{opacity:1;transform:translate(-50%)scale(1)translateY(0)}}#winner-label{letter-spacing:.12em;text-transform:uppercase;color:#a6adc8;font-size:13px;font-weight:700}#winner-name{text-align:center;color:#0000;background:linear-gradient(135deg,#f5c2e7,#cba6f7 45%,#89b4fa);-webkit-background-clip:text;background-clip:text;font-size:28px;font-weight:800}#winner-actions{flex-direction:column;align-items:center;gap:6px;margin-top:4px;display:flex}#copy-btn{letter-spacing:.03em;color:#11111b;cursor:pointer;background:#a6e3a1;border:none;border-radius:999px;padding:8px 20px;font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:700;transition:background .2s,transform .1s}#copy-btn:hover{background:#94e2d5}#copy-btn:active{transform:scale(.95)}#copy-status{color:#a6adc8;min-height:1.2em;font-size:12px}#confetti-canvas{pointer-events:none;z-index:50;position:fixed;inset:0}
