*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none}body{font-family:Segoe UI,Apple SD Gothic Neo,Noto Sans KR,sans-serif;min-height:100vh;overflow:hidden;color:#fff}.sky{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;transition:background 4s ease}.stars-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none}.star{position:absolute;border-radius:50%;background:#fff;animation:starTwinkle var(--dur, 3s) ease-in-out infinite var(--del, 0s);opacity:var(--op, .3)}@keyframes starTwinkle{0%,to{opacity:var(--op);transform:scale(1)}40%{opacity:calc(var(--op) * .2);transform:scale(.5)}70%{opacity:calc(var(--op) * 2);transform:scale(1.6)}}.moon{position:fixed;top:7%;right:10%;z-index:1;pointer-events:none;filter:drop-shadow(0 0 18px rgba(200,220,255,.35));animation:moonFloat 8s ease-in-out infinite}@keyframes moonFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}.moon-crescent{width:52px;height:52px;border-radius:50%;background:#d8e8ff;box-shadow:0 0 0 2px #c8dcff26,0 0 30px 8px #b4d2ff40;position:relative}.moon-crescent:after{content:"";position:absolute;top:-4px;left:10px;width:48px;height:48px;border-radius:50%;background:#04060e;box-shadow:0 0 20px 4px #04060e}.sun{position:fixed;top:8%;right:12%;z-index:1;pointer-events:none}.sun-core{width:64px;height:64px;border-radius:50%;background:radial-gradient(circle,#fffde0 10%,#ffe840 50%,#ffb800 80%);box-shadow:0 0 0 14px #ffe83c1a,0 0 40px 20px #ffdc3c80,0 0 100px 50px #ffc81433;animation:sunPulse 5s ease-in-out infinite}@keyframes sunPulse{0%,to{box-shadow:0 0 0 14px #ffe83c1a,0 0 40px 20px #ffdc3c80,0 0 100px 50px #ffc81433}50%{box-shadow:0 0 0 20px #ffe83c12,0 0 60px 30px #ffdc3c99,0 0 140px 70px #ffc81440}}.root{position:relative;z-index:10;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:76px 16px}.card{width:100%;max-width:370px;background:#080a128c;backdrop-filter:blur(48px) saturate(160%);-webkit-backdrop-filter:blur(48px) saturate(160%);border:1px solid rgba(255,255,255,.12);border-radius:28px;padding:36px 32px;box-shadow:0 0 0 1px #ffffff0d inset,0 40px 80px #0009,0 8px 24px #0006;display:flex;flex-direction:column;align-items:center;gap:22px}.title-block{text-align:center}.card-title{font-size:1.4rem;font-weight:800;letter-spacing:6px;text-transform:uppercase;color:#fff}.card-sub{margin-top:6px;font-size:.72rem;color:#ffffff80;letter-spacing:1.5px}.fields{width:100%;display:flex;flex-direction:column;gap:14px}.field{display:flex;flex-direction:column;gap:7px;flex:1}.field label{font-size:.65rem;letter-spacing:2px;text-transform:uppercase;color:#ffffff73}.field-hint{font-size:.65rem;color:#ffffff40;letter-spacing:.5px;margin-top:2px}.input-wrap{position:relative}.input-prefix{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:1rem;color:#fff6;pointer-events:none}.input-wrap input{padding-left:32px}input{width:100%;background:#ffffff12;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:1rem;padding:12px 14px;outline:none;transition:border-color .2s,background .2s;font-family:inherit}input::placeholder{color:#ffffff40}input:focus{background:#ffffff1c;border-color:#ffffff38}input[type=time]{cursor:pointer;font-variant-numeric:tabular-nums}input[type=time]::-webkit-calendar-picker-indicator{filter:invert(.7);cursor:pointer}.field-row{display:flex;align-items:flex-end;gap:8px}.field-sep{color:#ffffff4d;padding-bottom:13px;flex-shrink:0}.btn-primary{width:100%;padding:14px;background:#4ade80;border:none;border-radius:12px;color:#041208;font-size:.9rem;font-weight:800;letter-spacing:3px;text-transform:uppercase;cursor:pointer;transition:opacity .15s,transform .1s}.btn-primary:hover{opacity:.88}.btn-primary:active{transform:scale(.98)}.level-badge{display:flex;align-items:center;gap:8px;padding:8px 20px;background:#0000004d;border:1.5px solid var(--lv-color, #fff);border-radius:999px;box-shadow:0 0 14px var(--lv-glow, transparent),0 0 0 4px #0003;transition:border-color .5s,box-shadow .5s}.level-badge.big{padding:10px 24px}.badge-emoji{font-size:1.3rem;line-height:1;display:inline-block}.badge-title{font-size:.85rem;font-weight:800;letter-spacing:1.5px;color:var(--lv-color, #fff);text-shadow:0 0 10px var(--lv-glow, transparent)}.sparkle{animation:trophySparkle 1.6s ease-in-out infinite;transform-origin:center}@keyframes trophySparkle{0%{filter:drop-shadow(0 0 2px gold);transform:scale(1) rotate(0)}20%{filter:drop-shadow(0 0 10px gold) drop-shadow(0 0 20px orange);transform:scale(1.2) rotate(-8deg)}40%{filter:drop-shadow(0 0 6px gold);transform:scale(.95) rotate(4deg)}60%{filter:drop-shadow(0 0 16px #ffe) drop-shadow(0 0 30px gold);transform:scale(1.25) rotate(-4deg)}80%{filter:drop-shadow(0 0 8px gold);transform:scale(1.05) rotate(6deg)}to{filter:drop-shadow(0 0 2px gold);transform:scale(1) rotate(0)}}.counter-wrap{display:flex;align-items:baseline;gap:3px;line-height:1}.counter-won{font-size:clamp(1.2rem,3.5vw,1.7rem);color:#ffffff73;font-weight:300}.counter-whole{font-size:clamp(3rem,10vw,5rem);font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-2px;color:#fff}.counter-frac{font-size:clamp(1rem,3vw,1.4rem);color:#fff6;font-variant-numeric:tabular-nums}.status-row{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:-10px}.pulse-dot{width:7px;height:7px;border-radius:50%;background:#4ade80;flex-shrink:0;animation:pulseDot 1.6s ease-in-out infinite}@keyframes pulseDot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.6)}}.status-text{font-size:.75rem;font-weight:700;letter-spacing:2px}.status-text.on{color:#4ade80}.status-text.off{color:#fff6}.session-time{font-size:.68rem;color:#ffffff4d;font-variant-numeric:tabular-nums;margin-left:4px}.comps{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;width:100%}.comp-item{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:56px}.comp-emoji{font-size:1.3rem}.comp-value{font-size:1rem;font-weight:700;font-variant-numeric:tabular-nums;color:#4ade80}.comp-label{font-size:.6rem;color:#fff6}.divider{width:100%;height:1px;background:#ffffff14}.remaining{font-size:.75rem;color:#ffffff73;letter-spacing:1px;margin-top:-8px}.remaining b{color:#ffffffbf;font-variant-numeric:tabular-nums}.btn-row{display:flex;gap:10px;width:100%}.btn-toggle{flex:1;padding:14px;border-radius:12px;font-size:.88rem;font-weight:800;letter-spacing:2px;cursor:pointer;transition:opacity .15s,transform .1s;border:none}.btn-toggle:active{transform:scale(.97)}.btn-toggle:hover{opacity:.85}.btn-toggle.start{background:#4ade80;color:#041208}.btn-toggle.stop{background:#f8717126;border:1.5px solid rgba(248,113,113,.3);color:#fca5a5}.btn-finish{padding:14px 18px;background:#ffffff12;border:1px solid rgba(255,255,255,.12);border-radius:12px;color:#ffffff8c;font-size:.75rem;letter-spacing:1px;cursor:pointer;transition:all .15s;white-space:nowrap}.btn-finish:hover{background:#ffffff1f;color:#fff}.shared-from{font-size:.72rem;color:#fff6;letter-spacing:1px}.result-eyebrow{font-size:1rem;font-weight:800;letter-spacing:4px;text-transform:uppercase;color:#fff}.result-amount{display:flex;align-items:baseline;gap:4px;line-height:1}.result-won{font-size:1.6rem;color:#fff6;font-weight:300}.result-number{font-size:clamp(2.8rem,10vw,4.2rem);font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-1px;color:#4ade80}.result-time-block{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 20px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:14px;width:100%}.result-time-label{font-size:.65rem;letter-spacing:3px;text-transform:uppercase;color:#ffffff80}.result-time-value{font-size:1.8rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:2px;color:#fff}.result-comps{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;width:100%}.result-comp{display:flex;flex-direction:column;align-items:center;gap:3px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:10px 14px;min-width:66px}.result-comp-val{font-size:1rem;font-weight:700;font-variant-numeric:tabular-nums;color:#4ade80}.result-comp-label{font-size:.6rem;color:#fff6}.result-btns{display:flex;flex-direction:column;gap:10px;width:100%}.btn-share{width:100%;padding:13px;background:#ffffff12;border:1px solid rgba(255,255,255,.14);border-radius:12px;color:#fff;font-size:.88rem;font-weight:700;letter-spacing:1px;cursor:pointer;transition:all .2s}.btn-share:hover{background:#ffffff1f;border-color:#ffffff38}.ad-top{position:fixed;top:0;left:0;right:0;z-index:5;display:flex;justify-content:center;padding:8px 16px;pointer-events:none}.ad-bottom{position:fixed;bottom:0;left:0;right:0;z-index:5;display:flex;justify-content:center;padding:8px 16px;pointer-events:none}.ad-inline{width:100%}.ad-skeleton{position:relative;overflow:hidden;border-radius:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center}.ad-top .ad-skeleton,.ad-bottom .ad-skeleton{width:100%;max-width:360px;height:52px}.ad-inline .ad-skeleton{height:80px}.ad-label{font-size:.6rem;letter-spacing:2px;color:#ffffff26;font-weight:700;position:relative;z-index:1}.ad-shimmer{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.04) 40%,rgba(255,255,255,.08) 50%,rgba(255,255,255,.04) 60%,transparent 100%);animation:adShimmer 2.4s ease-in-out infinite}@keyframes adShimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.toast{position:fixed;bottom:32px;left:50%;transform:translate(-50%);background:#040a08d9;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(74,222,128,.25);border-radius:999px;padding:10px 22px;font-size:.82rem;font-weight:700;color:#4ade80;white-space:nowrap;pointer-events:none;box-shadow:0 8px 32px #00000080,0 0 20px #4ade801a;z-index:100}
