:root{--color-bg-primary:#0a0a1a;--color-bg-secondary:#1a1a3e;--color-accent-purple:#a855f7;--color-accent-indigo:#6366f1;--color-accent-pink:#ec4899;--color-text-primary:#fff;--color-text-secondary:#ffffffb3;--color-text-muted:#fff6;--color-glass-bg:#ffffff0d;--color-glass-border:#ffffff1a;--color-success:#4ade80;--color-warning:#fbbf24;--color-error:#f87171;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:linear-gradient(135deg, var(--color-bg-primary) 0%, var(--color-bg-secondary) 100%);min-height:100vh;color:var(--color-text-primary);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:400;line-height:1.5}#root{min-height:100vh}a{color:var(--color-accent-purple);text-decoration:none}a:hover{color:var(--color-accent-indigo)}::selection{background:var(--color-accent-purple);color:var(--color-text-primary)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--color-bg-primary)}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff40}:focus-visible{outline:2px solid var(--color-accent-purple);outline-offset:2px}button,input,select,textarea,a{transition:all .2s}.config-panel{width:100%;max-width:480px;margin:0 auto 1rem}.config-panel__toggle{color:#ffffffd9;cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:12px;justify-content:space-between;align-items:center;width:100%;padding:.75rem 1rem;font-size:.95rem;font-weight:600;transition:background .2s,border-color .2s;display:flex}.config-panel__toggle:hover{background:#ffffff1a;border-color:#ffffff2e}.config-panel__toggle-label{align-items:center;gap:.5rem;display:flex}.config-panel__chevron{font-size:.75rem;transition:transform .3s}.config-panel__chevron--open{transform:rotate(180deg)}.config-panel__body{opacity:0;max-height:0;transition:max-height .35s,opacity .3s;overflow:hidden}.config-panel__body--open{opacity:1;max-height:800px}.config-panel__content{-webkit-backdrop-filter:blur(16px);background:#ffffff0a;border:1px solid #ffffff14;border-radius:14px;margin-top:.75rem;padding:1.25rem}.config-panel__section{padding:.75rem 0}.config-panel__section+.config-panel__section{border-top:1px solid #ffffff14}.config-panel__section-title{color:#ffffff80;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.6rem;font-size:.8rem;font-weight:600}.config-panel__input{color:#fff;background:#ffffff14;border:1px solid #ffffff26;border-radius:8px;outline:none;width:100%;padding:.6rem .75rem;font-size:.9rem;transition:border-color .2s}.config-panel__input:focus{border-color:#6366f199}.config-panel__input::placeholder{color:#ffffff59}.config-panel__file-input{color:#ffffffb3;font-size:.85rem}.config-panel__file-input::file-selector-button{color:#fff;cursor:pointer;background:#6366f133;border:1px solid #6366f166;border-radius:6px;margin-right:.5rem;padding:.4rem .8rem;font-size:.8rem;font-weight:500;transition:background .15s}.config-panel__file-input::file-selector-button:hover{background:#6366f159}.config-panel__label{color:#ffffffa6;margin-bottom:.4rem;font-size:.85rem;display:block}.config-panel__row{align-items:center;gap:.5rem;display:flex}.config-panel__row .config-panel__input{text-align:center;width:80px}.config-panel__suffix{color:#ffffff80;font-size:.85rem}.config-panel__btn{color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;background:#6366f133;border:1px solid #6366f166;border-radius:8px;justify-content:center;align-items:center;padding:.5rem 1rem;font-size:.85rem;font-weight:600;transition:background .15s,transform .1s;display:inline-flex}.config-panel__btn:hover{background:#6366f159;transform:scale(1.02)}.config-panel__btn:active{transform:scale(.97)}.config-panel__btn--small{padding:.35rem .7rem;font-size:.8rem}.config-panel__btn--danger{color:#f87171;background:#ef444426;border-color:#ef444466}.config-panel__btn--danger:hover{background:#ef44444d}.config-panel__success{color:#4ade80;align-items:center;gap:.4rem;font-size:.85rem;display:flex}.config-panel__error{color:#f87171;margin-top:.4rem;font-size:.82rem;line-height:1.4}.config-panel__validation{margin-top:.4rem;font-size:.85rem}.config-panel__validation--valid{color:#4ade80}.config-panel__validation--invalid{color:#f87171}.config-panel__loaded-row{justify-content:space-between;align-items:center;display:flex}.config-panel__stack{flex-direction:column;gap:.5rem;display:flex}.config-panel__overlay{-webkit-backdrop-filter:blur(4px);z-index:1000;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.config-panel__dialog{text-align:center;-webkit-backdrop-filter:blur(16px);background:#1e1e32f2;border:1px solid #ffffff1f;border-radius:16px;width:90%;max-width:380px;padding:1.5rem 2rem}.config-panel__dialog-text{color:#ffffffd9;margin-bottom:1.25rem;font-size:.95rem;line-height:1.5}.config-panel__dialog-actions{justify-content:center;gap:.75rem;display:flex}.number-splash{-webkit-user-select:none;user-select:none;perspective:800px;flex-direction:column;justify-content:center;align-items:center;min-height:300px;padding:2rem 1rem;display:flex}.number-splash__number{-webkit-text-fill-color:transparent;text-shadow:none;font-variant-numeric:tabular-nums;text-align:center;background:linear-gradient(135deg,#a855f7,#6366f1,#ec4899);-webkit-background-clip:text;background-clip:text;min-width:3ch;font-size:clamp(6rem,12vw,12rem);font-weight:900;line-height:1;position:relative}.number-splash__number:after{content:attr(data-number);-webkit-text-fill-color:transparent;filter:blur(20px);opacity:.5;z-index:-1;background:linear-gradient(135deg,#a855f7,#6366f1,#ec4899);-webkit-background-clip:text;background-clip:text;position:absolute;inset:0}.number-splash__number--rolling{filter:blur(1px);animation:.15s ease-in-out infinite numberTumble}.number-splash__number--settled{animation:.8s cubic-bezier(.34,1.56,.64,1) forwards numberBounceIn}.number-splash__phrase{color:#ffffffbf;text-align:center;letter-spacing:.02em;opacity:0;max-width:600px;margin-top:1.5rem;font-size:clamp(1.2rem,2.5vw,1.8rem);font-weight:500;animation:.5s ease-out .6s forwards phraseAppear}.number-splash__placeholder{color:#ffffff26;text-align:center;font-size:clamp(4rem,8vw,8rem);font-weight:700}.number-splash__placeholder-text{color:#fff6;margin-top:1rem;font-size:1.2rem;font-weight:400}@keyframes numberTumble{0%{opacity:.8;transform:rotateX(0)rotateY(0)scale(.95)}25%{opacity:1;transform:rotateX(10deg)rotateY(-5deg)scale(1.02)}50%{opacity:.85;transform:rotateX(-5deg)rotateY(10deg)scale(.98)}75%{opacity:1;transform:rotateX(8deg)rotateY(-8deg)scale(1.01)}to{opacity:.8;transform:rotateX(0)rotateY(0)scale(.95)}}@keyframes numberBounceIn{0%{opacity:0;transform:scale(.3)rotateX(45deg)}20%{opacity:1;transform:scale(1.6)rotateX(-10deg)}40%{transform:scale(.85)rotateX(5deg)}60%{transform:scale(1.15)rotateX(-3deg)}80%{transform:scale(.95)rotateX(1deg)}to{opacity:1;transform:scale(1)rotateX(0)}}@keyframes phraseAppear{0%{opacity:0;transform:translateY(20px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}.number-splash__number--settled:after{animation:2s ease-in-out glowPulse}@keyframes glowPulse{0%{opacity:.9;filter:blur(30px)}30%{opacity:.7;filter:blur(40px)}60%{opacity:.5;filter:blur(25px)}to{opacity:.4;filter:blur(20px)}}.number-splash__number--settled:before{content:"";z-index:-2;background:radial-gradient(circle,#a855f766 0%,#0000 70%);border-radius:50%;animation:.8s ease-out forwards particleBurst;position:absolute;inset:-20px}@keyframes particleBurst{0%{opacity:1;transform:scale(.5)}to{opacity:0;transform:scale(2.5)}}.control-bar{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;padding:1rem;display:flex}.control-bar__btn{color:#fff;-webkit-backdrop-filter:blur(12px);cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffff14;border:1px solid #ffffff26;border-radius:12px;justify-content:center;align-items:center;gap:.4rem;padding:.6rem 1.2rem;font-size:.95rem;font-weight:600;transition:transform .15s,filter .15s,background .15s;display:inline-flex}.control-bar__btn:hover:not(:disabled){filter:brightness(1.2);background:#ffffff1f;transform:scale(1.05)}.control-bar__btn:active:not(:disabled){transform:scale(.97)}.control-bar__btn:disabled{opacity:.35;pointer-events:none}.control-bar__btn--primary{background:linear-gradient(135deg,#6366f1,#a855f7);border-color:#a382ff66}.control-bar__btn--primary:hover:not(:disabled){filter:brightness(1.1);background:linear-gradient(135deg,#7c7ff7,#b96cf7)}.control-bar__btn--pause{color:#fbbf24;background:#eab30826;border-color:#eab3084d}.control-bar__btn--pause:hover:not(:disabled){background:#eab30840}.control-bar__btn--danger{color:#f87171;background:#ef44441f;border-color:#ef44444d}.control-bar__btn--danger:hover:not(:disabled){background:#ef444438}.control-bar__btn--nav{min-width:2.5rem;padding:.6rem .8rem;font-size:1.1rem}.control-bar__overlay{-webkit-backdrop-filter:blur(4px);z-index:1000;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.control-bar__dialog{text-align:center;-webkit-backdrop-filter:blur(16px);background:#1e1e32f2;border:1px solid #ffffff1f;border-radius:16px;width:90%;max-width:360px;padding:1.5rem 2rem}.control-bar__dialog-text{color:#ffffffd9;margin-bottom:1.25rem;font-size:1rem;line-height:1.5}.control-bar__dialog-actions{justify-content:center;gap:.75rem;display:flex}.status-indicator{color:#fffc;align-items:center;gap:.75rem;padding:.4rem .75rem;font-size:.85rem;display:inline-flex}.status-indicator__status{align-items:center;gap:.4rem;display:inline-flex}.status-indicator__dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.status-indicator__dot--not-started{background:#ffffff80}.status-indicator__dot--running{background:#22c55e;animation:1.5s ease-in-out infinite statusPulse}.status-indicator__dot--paused{background:#eab308}.status-indicator__dot--complete{background:#a855f7}.status-indicator__dot--reviewing{background:#3b82f6}.status-indicator__label{white-space:nowrap;font-weight:500}.status-indicator__count{color:#ffffff80;white-space:nowrap;font-size:.8rem}.status-indicator__checkmark{font-size:.75rem}@keyframes statusPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}.caller-view{background:linear-gradient(135deg,#0f0c29 0%,#1a1a3e 40%,#24243e 100%);flex-direction:column;gap:1rem;max-width:900px;min-height:100vh;margin:0 auto;padding:1rem;display:flex}.caller-view__header{-webkit-backdrop-filter:blur(12px);background:#ffffff0f;border:1px solid #ffffff1a;border-radius:12px;justify-content:space-between;align-items:center;padding:.75rem 1.25rem;display:flex}.caller-view__title{color:#fff;letter-spacing:2px;margin:0;font-size:1.5rem;font-weight:700}.caller-view__header-right{align-items:center;gap:.75rem;display:flex}.caller-view__board-link{color:#a5b4fc;background:#6366f140;border:1px solid #6366f166;border-radius:20px;padding:.3rem .75rem;font-size:.85rem;font-weight:500;text-decoration:none;transition:background .2s,color .2s;display:inline-block}.caller-view__board-link:hover{color:#e0e7ff;background:#6366f166}.caller-view__settings-btn{color:#ffffffb3;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.2rem;transition:background .2s,transform .2s,color .2s;display:flex}.caller-view__settings-btn:hover{color:#fff;background:#ffffff26;transform:rotate(45deg)}.caller-view__settings-panel{animation:.3s ease-out slideDown}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.caller-view__splash-area{flex:1;justify-content:center;align-items:center;min-height:300px;display:flex}.number-board-view{background:linear-gradient(135deg,#0a0a1a 0%,#1a0a2e 50%,#0a0a1a 100%);flex-direction:column;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.number-board-view__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;width:100%;max-width:900px;margin-bottom:1.5rem;display:flex}.number-board-view__back{color:#ffffffb3;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;padding:.5rem 1rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:background .2s,color .2s,border-color .2s}.number-board-view__back:hover{color:#fff;background:#ffffff1a;border-color:#fff3}.number-board-view__title{-webkit-text-fill-color:transparent;background:linear-gradient(135deg,#a855f7,#6366f1);-webkit-background-clip:text;background-clip:text;font-size:clamp(1.4rem,3vw,1.8rem);font-weight:700}.number-board-view__count{color:#fff9;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:20px;padding:.4rem .8rem;font-size:.95rem;font-weight:500}.number-board-view__card{-webkit-backdrop-filter:blur(12px);background:#ffffff08;border:1px solid #ffffff14;border-radius:20px;width:100%;max-width:900px;padding:clamp(1rem,2vw,2rem);box-shadow:0 8px 32px #0000004d}.number-board-view__grid{grid-template-columns:repeat(10,minmax(0,1fr));gap:clamp(4px,.6vw,8px);display:grid}.number-board-view__cell{aspect-ratio:1;font-variant-numeric:tabular-nums;color:#ffffff4d;-webkit-user-select:none;user-select:none;background:#ffffff05;border:1px solid #ffffff0f;border-radius:10px;justify-content:center;align-items:center;font-size:clamp(.85rem,1.4vw,1.2rem);font-weight:600;transition:all .3s cubic-bezier(.34,1.56,.64,1);display:flex}.number-board-view__cell--called{color:#fff;background:linear-gradient(135deg,#a855f766,#6366f166);border-color:#a855f780;animation:.4s cubic-bezier(.34,1.56,.64,1) cellPopIn;box-shadow:0 0 12px #a855f740}.number-board-view__cell--latest{background:linear-gradient(135deg,#a855f799,#ec489980);border-color:#ec4899cc;animation:.4s cubic-bezier(.34,1.56,.64,1) cellPopIn,2s ease-in-out infinite latestPulse;box-shadow:0 0 20px #ec489966,0 0 40px #a855f733}@keyframes cellPopIn{0%{opacity:.5;transform:scale(.6)}60%{transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@keyframes latestPulse{0%,to{border-color:#ec4899cc;box-shadow:0 0 20px #ec489966,0 0 40px #a855f733}50%{border-color:#a855f7e6;box-shadow:0 0 30px #ec489999,0 0 60px #a855f74d}}@media (width<=768px){.number-board-view{padding:1rem}.number-board-view__header{text-align:center;justify-content:center}.number-board-view__cell{border-radius:6px;font-size:clamp(.7rem,2.5vw,.9rem)}.number-board-view__card{border-radius:14px;padding:.75rem}}@media (width>=1600px){.number-board-view__card{max-width:1000px}.number-board-view__cell{font-size:1.3rem}}
