@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--bg-color:#0f172a;--bg-color-alt:#1e293b;--text-main:#f8fafc;--text-muted:#94a3b8;--accent:#3b82f6;--accent-hover:#2563eb;--danger:#ef4444;--danger-hover:#dc2626;--success:#10b981;--warning:#f59e0b;--border:#ffffff1a;--glass-bg:#1e293bb3;--glass-border:#ffffff0d;--input-bg:#0003;--bg-panel:#1e293b;--font-scale:1;font-family:Inter,system-ui,-apple-system,sans-serif;font-weight:400;line-height:1.5;font-size:calc(16px * var(--font-scale));--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text-main);background-color:var(--bg-color);background-image:radial-gradient(circle at 100% 0,#1e1b4b,#0000 40%),radial-gradient(circle at 0 100%,#0f172a,#0000 40%);background-size:cover;background-attachment:fixed}:root[data-theme=light]{--bg-color:#f1f5f9;--bg-color-alt:#e2e8f0;--text-main:#1e293b;--text-muted:#64748b;--border:#0000001a;--glass-bg:#ffffffd9;--glass-border:#0000000f;--input-bg:#0000000a;--bg-panel:#fff;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background-image:radial-gradient(circle at 100% 0,#dbeafe,#0000 40%),radial-gradient(circle at 0 100%,#f1f5f9,#0000 40%)}:root[data-theme=light] .glass-panel{box-shadow:0 4px 24px #00000014,0 1px 4px #0000000a}:root[data-theme=light] button:hover{background-color:#0000000a}:root[data-theme=light] button.primary:hover{background-color:var(--accent-hover)}:root[data-font-size=small]{--font-scale:.85}:root[data-font-size=medium]{--font-scale:1}:root[data-font-size=large]{--font-scale:1.15}body{min-height:100dvh;padding-bottom:env(safe-area-inset-bottom);place-items:center;margin:0;display:flex}#root{width:100%;max-width:600px;padding:1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px));box-sizing:border-box;margin:0 auto}*{box-sizing:border-box}::selection{color:inherit;background:#3b82f64d}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 4px #3b82f626}h1,h2,h3,h4{margin:0;font-weight:600}button{border:1px solid var(--border);background-color:var(--bg-color-alt);color:var(--text-main);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-width:44px;min-height:48px;padding:.6em 1.2em;font-family:inherit;font-size:1rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}button:hover{background-color:#ffffff1a;transform:translateY(-1px)}button:active{transition:transform .1s;transform:scale(.97)translateY(1px)}button.primary{background-color:var(--accent);border-color:var(--accent);color:#fff}button.primary:hover{background-color:var(--accent-hover);box-shadow:0 4px 16px #3b82f659}button.primary:active{background-color:#1d4ed8;transform:scale(.96);box-shadow:0 2px 8px #3b82f633}button.danger{background-color:var(--danger);border-color:var(--danger)}button.danger:hover{background-color:var(--danger-hover);box-shadow:0 4px 12px #ef44444d}button:disabled{opacity:.5;cursor:not-allowed;transform:none}button:disabled:active{transform:none}button.loading{pointer-events:none;opacity:.7}input[type=text],input[type=number],input[type=password]{background:var(--input-bg);border:1px solid var(--border);color:var(--text-main);-webkit-appearance:none;border-radius:12px;outline:none;width:100%;min-height:48px;padding:12px 16px;font-family:inherit;font-size:1rem;transition:border-color .2s,box-shadow .2s,background .2s}textarea{background:var(--input-bg);border:1px solid var(--border);color:var(--text-main);-webkit-appearance:none;border-radius:12px;outline:none;width:100%;padding:12px 16px;font-family:inherit;font-size:1rem;transition:border-color .2s,box-shadow .2s,background .2s}textarea:focus,input:focus{border-color:var(--accent);background:#3b82f608;box-shadow:0 0 0 3px #3b82f626}input::placeholder{color:var(--text-muted);opacity:.5;transition:opacity .2s}input:focus::placeholder{opacity:.3}input:disabled,textarea:disabled{opacity:.5;cursor:not-allowed;filter:grayscale(.3)}kbd{border:1px solid var(--border);box-shadow:0 1px 0 var(--border);background:#ffffff0f;border-radius:5px;padding:2px 8px;font-family:SF Mono,SFMono-Regular,Consolas,monospace;font-size:.75rem}:root[data-theme=light] kbd{background:#0000000a;box-shadow:0 1px #0000001a}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:20px;padding:24px;box-shadow:0 8px 32px #0000004d}.fade-in[style*=background]{transition:background .2s,transform .15s,box-shadow .2s}.fade-in[style*=background]:active{transform:scale(.98)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#fff3}:root[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#0003}.slide-in{animation:.3s cubic-bezier(.16,1,.3,1) forwards slideIn}.fade-in{animation:.2s forwards fadeIn}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes readyBounce{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@keyframes successPop{0%{opacity:0;transform:scale(.5)}50%{opacity:1;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes badgePulse{0%,to{transform:translate(14px)scale(1)}50%{transform:translate(14px)scale(1.2)}}@keyframes barGrow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.chart-bar{transform-origin:bottom;animation:.5s cubic-bezier(.16,1,.3,1) forwards barGrow}.bottom-nav{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--glass-border);padding:8px 0;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px));z-index:100;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav-item{color:var(--text-muted);opacity:.7;background:0 0;border:none;border-radius:8px;flex-direction:column;align-items:center;gap:2px;min-width:auto;min-height:auto;padding:6px 16px;font-size:.7rem;transition:color .2s,background .2s,transform .2s;display:flex}.bottom-nav-item:hover{background:#ffffff0d;transform:none}.bottom-nav-item:active{transform:scale(.92)}.bottom-nav-item.active{color:var(--accent);opacity:1;font-weight:600}.bottom-nav-item.active svg{filter:drop-shadow(0 0 4px #3b82f64d);transition:transform .2s;transform:scale(1.1)}.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:8px;width:calc(100% - 32px);max-width:400px;display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%)}.toast{-webkit-backdrop-filter:blur(16px);pointer-events:auto;border-radius:14px;align-items:center;gap:10px;padding:12px 16px;font-size:.9rem;font-weight:500;animation:.3s cubic-bezier(.16,1,.3,1) forwards toastIn;display:flex;box-shadow:0 8px 32px #0006,0 2px 8px #0003}.toast-success{color:var(--success);background:#10b98133;border:1px solid #10b98159}.toast-error{color:var(--danger);background:#ef444433;border:1px solid #ef444459}.toast-info{color:var(--accent);background:#3b82f633;border:1px solid #3b82f659}.toast span{flex:1}.toast-close{opacity:.6;background:0 0;border:none;min-width:auto;min-height:auto;padding:2px}.toast-close:hover{opacity:1;transform:none}@keyframes toastIn{0%{opacity:0;transform:translateY(-16px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toastProgress{0%{transform-origin:0;transform:scaleX(1)}to{transform-origin:0;transform:scaleX(0)}}.member-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8rem;font-weight:600;display:flex}.member-row{border-radius:10px;align-items:center;gap:10px;padding:8px 12px;transition:background .2s,transform .15s;display:flex}.member-row:active{transform:scale(.98)}.member-row.ready{background:#10b98114}.member-row.ready .member-avatar{animation:1.5s infinite readyBounce}.timer-ring-wrapper{justify-content:center;align-items:center;margin:.5rem auto;display:flex;position:relative}.timer-ring-text{flex-direction:column;align-items:center;gap:4px;display:flex;position:absolute}.empty-state{color:var(--text-muted);text-align:center;flex-direction:column;align-items:center;gap:12px;padding:3rem 1rem;display:flex}.empty-state svg{opacity:.2;width:48px;height:48px;animation:4s ease-in-out infinite float}.empty-state p:first-of-type{color:var(--text-main);opacity:.7;font-weight:500}.password-wrapper{width:100%;position:relative}.password-toggle{color:var(--text-muted);background:0 0;border:none;min-width:auto;min-height:auto;padding:6px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.password-toggle:hover{color:var(--text-main);transform:translateY(-50%)}.has-bottom-nav{padding-bottom:80px}.page-enter{animation:.25s cubic-bezier(.16,1,.3,1) forwards pageEnter}@keyframes pageEnter{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}.skeleton{background:linear-gradient(90deg,#ffffff08 0%,#ffffff0f 20%,#ffffff1f 50%,#ffffff0f 80%,#ffffff08 100%) 0 0/300% 100%;border-radius:8px;animation:2s ease-in-out infinite shimmer}:root[data-theme=light] .skeleton{background:linear-gradient(90deg,#0000000a 0%,#00000012 20%,#0000001f 50%,#00000012 80%,#0000000a 100%) 0 0/300% 100%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.scale-in{transition:transform .15s,box-shadow .2s;animation:.2s cubic-bezier(.16,1,.3,1) forwards scaleIn}.scale-in:active{transform:scale(.98)}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes celebrate{0%,to{transform:scale(1)}25%{transform:scale(1.1)}50%{transform:scale(.95)}75%{transform:scale(1.05)}}.celebrate{animation:.5s celebrate}.ripple{position:relative;overflow:hidden}.ripple:after{content:"";opacity:0;background:#ffffff26;border-radius:50%;width:0;height:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ripple:active:after{opacity:1;width:200%;padding-top:200%;transition:width .3s,padding-top .3s,opacity}.ripple:not(:active):after{transition:opacity .4s}:root[data-theme=light] .ripple:after{background:#00000014}@keyframes confetti-fall{0%{opacity:1;transform:translateY(-100vh)rotate(0)scale(1)}25%{opacity:1;transform:translateY(25vh)rotate(180deg)translate(20px)scale(.9)}50%{opacity:.8;transform:translateY(50vh)rotate(360deg)translate(-15px)scale(1.1)}75%{opacity:.4;transform:translateY(75vh)rotate(540deg)translate(10px)scale(.8)}to{opacity:0;transform:translateY(100vh)rotate(720deg)translate(-5px)scale(.6)}}@keyframes confetti-fall-alt{0%{opacity:1;transform:translateY(-100vh)rotate(0)scale(.8)}30%{opacity:1;transform:translateY(30vh)rotate(-200deg)translate(-25px)scale(1)}60%{opacity:.6;transform:translateY(60vh)rotate(-400deg)translate(20px)scale(.9)}to{opacity:0;transform:translateY(100vh)rotate(-720deg)translate(-10px)scale(.5)}}.confetti-container{pointer-events:none;z-index:9999;width:100%;height:100%;position:fixed;top:0;left:0;overflow:hidden}.confetti-piece{border-radius:2px;width:10px;height:10px;animation:3s ease-in forwards confetti-fall;position:absolute;top:-10px}.confetti-piece:nth-child(odd){border-radius:50%;animation-name:confetti-fall-alt}.confetti-piece:first-child{background:#ef4444;animation-duration:2.5s;animation-delay:0s;left:5%}.confetti-piece:nth-child(2){background:#3b82f6;width:8px;height:12px;animation-duration:2.8s;animation-delay:.1s;left:15%}.confetti-piece:nth-child(3){background:#facc15;animation-duration:3s;animation-delay:.2s;left:25%}.confetti-piece:nth-child(4){background:#10b981;width:12px;height:6px;animation-duration:2.6s;animation-delay:50ms;left:35%}.confetti-piece:nth-child(5){background:#ec4899;animation-duration:2.9s;animation-delay:.3s;left:45%}.confetti-piece:nth-child(6){background:#f59e0b;width:6px;height:14px;animation-duration:2.7s;animation-delay:.15s;left:55%}.confetti-piece:nth-child(7){background:#8b5cf6;animation-duration:3.1s;animation-delay:.25s;left:65%}.confetti-piece:nth-child(8){background:#06b6d4;width:14px;height:6px;animation-duration:2.4s;animation-delay:.1s;left:75%}.confetti-piece:nth-child(9){background:#ef4444;animation-duration:2.8s;animation-delay:.35s;left:85%}.confetti-piece:nth-child(10){background:#3b82f6;width:8px;height:12px;animation-duration:3.2s;animation-delay:.2s;left:95%}.confetti-piece:nth-child(11){background:#facc15;width:8px;height:12px;animation-duration:2.6s;animation-delay:.4s;left:10%}.confetti-piece:nth-child(12){background:#10b981;width:12px;height:8px;animation-duration:3s;animation-delay:.15s;left:30%}.confetti-piece:nth-child(13){background:#ec4899;animation-duration:2.5s;animation-delay:.3s;left:50%}.confetti-piece:nth-child(14){background:#8b5cf6;width:6px;height:14px;animation-duration:2.9s;animation-delay:50ms;left:70%}.confetti-piece:nth-child(15){background:#f59e0b;animation-duration:3.1s;animation-delay:.25s;left:90%}
