:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--accent:#a9c0dc;--glow:#a9c0dc1f;--base:#16181c;--work:#c6f24e}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--base);color:#e8edf2;-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;overflow-x:hidden}button{-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;font-family:inherit}.app{min-height:100vh;min-height:100dvh;padding:12px 20px 30px;padding-bottom:max(30px, env(safe-area-inset-bottom));flex-direction:column;display:flex;position:relative;overflow-x:hidden}.app:before{content:"";z-index:0;pointer-events:none;background-color:var(--glow);transition:background-color .24s;position:fixed;top:0;bottom:0;left:0;right:0;-webkit-mask-image:radial-gradient(118% 64% at 50% 27%,#000 0%,#0000 74%);mask-image:radial-gradient(118% 64% at 50% 27%,#000 0%,#0000 74%)}.topbar,.stage,.bottom{z-index:1;position:relative}.topbar{align-items:center;min-height:48px;display:flex}.mute{color:#ffffff9e;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff12;border-radius:14px;place-items:center;width:48px;height:48px;padding:0;transition:transform .12s,color .16s,background-color .16s;display:grid}.mute:active{background:#ffffff17;transform:scale(.94)}.mute[aria-pressed=false]{color:#ffffff42}.stage{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;padding:12px 0 4px;display:flex}.ring{cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:min(84vw,330px);height:min(84vw,330px);padding:0;transition:transform .14s;display:grid;position:relative}.app.is-compact .ring{width:min(63vw,244px);height:min(63vw,244px)}.ring[data-holding=true]{transform:scale(.972)}.ring-glow{background:radial-gradient(circle at 50% 50%, var(--glow) 0%, #16181c00 70%);pointer-events:none;border-radius:50%;animation:3.8s ease-in-out infinite breathe;position:absolute;top:13%;bottom:13%;left:13%;right:13%}@keyframes breathe{0%,to{opacity:.68;transform:scale(.97)}50%{opacity:1;transform:scale(1.03)}}.ring-svg{width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.ring-track{fill:none;stroke:#ffffff12;stroke-width:11px}.ring-progress{fill:none;stroke:var(--accent);stroke-width:11px;stroke-linecap:round;transition:stroke .2s linear}.ring-svg.is-refilling .ring-progress{transition:stroke-dashoffset .48s cubic-bezier(.22,.8,.25,1),stroke .2s linear}.ring-face{pointer-events:none;flex-direction:column;align-items:center;gap:10px;display:flex;position:relative}.phase-word{letter-spacing:.24em;text-indent:.24em;text-transform:uppercase;color:var(--accent);opacity:.9;font-size:14px;font-weight:700;line-height:18px}.clock{letter-spacing:-.03em;color:var(--accent);font-variant-numeric:tabular-nums;font-size:clamp(58px,21vw,84px);font-weight:700;line-height:1.08}.app.is-compact .clock{font-size:clamp(46px,16vw,64px)}.round-line{letter-spacing:.18em;text-indent:.18em;text-transform:uppercase;color:#ffffff75;font-variant-numeric:tabular-nums;font-size:13px;font-weight:600;line-height:18px}.app.is-compact .phase-word{letter-spacing:.2em;text-indent:.2em;font-size:12px}.app.is-compact .round-line{letter-spacing:.13em;text-indent:.13em;font-size:11px}.pips{flex-wrap:wrap;justify-content:center;gap:7px;min-height:9px;display:flex}.pip{background:#ffffff24;border-radius:50%;width:9px;height:9px;transition:background-color .2s,box-shadow .2s}.pip.is-done{background:var(--accent)}.pip.is-active{box-shadow:inset 0 0 0 2px var(--accent);background:0 0}.bottom{flex-direction:column;gap:10px;display:flex}.fadeable{transition:opacity .26s}.app[data-active=true] .fadeable{opacity:.1;pointer-events:none}.chips{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.chip{color:#e8edf2;cursor:pointer;background:#ffffff0b;border:1px solid #ffffff12;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:58px;padding:8px 4px;transition:transform .12s,background-color .16s,border-color .16s;display:flex}.chip:active{background:#ffffff1a;transform:scale(.96)}.chip[aria-pressed=true]{background:#c6f24e1f;border-color:#c6f24e73}.chip[aria-pressed=true] .chip-name{color:var(--work)}.chip-name{font-size:14px;font-weight:700;line-height:18px}.chip-detail{color:#ffffff6b;font-variant-numeric:tabular-nums;font-size:11px;font-weight:500;line-height:15px}.custom-panel{background:#ffffff09;border:1px solid #ffffff0f;border-radius:18px;flex-direction:column;gap:7px;padding:9px 12px;display:flex}.stepper-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.stepper-label{letter-spacing:.16em;text-transform:uppercase;color:#ffffff7a;font-size:12px;font-weight:700;line-height:16px}.stepper{align-items:center;gap:6px;display:flex}.step-btn{color:#e8edf2;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff17;border-radius:14px;width:48px;height:48px;padding:0;font-size:22px;font-weight:600;line-height:24px;transition:transform .12s,background-color .16s}.step-btn:active{background:#ffffff1f;transform:scale(.94)}.step-btn:disabled{opacity:.28;cursor:default}.step-value{text-align:center;font-variant-numeric:tabular-nums;min-width:68px;font-size:20px;font-weight:700;line-height:26px}.again{background:var(--work);color:#16181c;letter-spacing:.09em;text-transform:uppercase;cursor:pointer;border:0;border-radius:18px;width:100%;min-height:58px;padding:0;font-size:17px;font-weight:800;line-height:22px;transition:transform .12s,background-color .16s}.again:active{background:#b7e63d;transform:scale(.985)}.hint{text-align:center;color:#ffffff57;min-height:19px;margin:0;font-size:13px;font-weight:500;line-height:19px}.sessions{text-align:center;letter-spacing:.14em;text-indent:.14em;text-transform:uppercase;color:#ffffff38;margin:0;font-size:11px;font-weight:700;line-height:16px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
