*,:after,:before{box-sizing:border-box}:root{--bg:#000;--fg:#fff;--muted:hsla(0,0%,100%,.55);--btn-border:hsla(0,0%,100%,.24);--btn-hover-bg:hsla(0,0%,100%,.08);--btn-hover-border:hsla(0,0%,100%,.6);--header-btn-bg:hsla(0,0%,100%,.06);--header-btn-hover-bg:hsla(0,0%,100%,.12);--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px)}[data-theme=light]{--bg:#f8f8f8;--fg:#111;--muted:rgba(0,0,0,.5);--btn-border:rgba(0,0,0,.18);--btn-hover-bg:rgba(0,0,0,.06);--btn-hover-border:rgba(0,0,0,.45);--header-btn-bg:rgba(0,0,0,.05);--header-btn-hover-bg:rgba(0,0,0,.1)}body,html{height:100%;height:100dvh;width:100%;overflow:hidden;position:fixed;top:0;left:0;right:0;bottom:0}html{background:var(--bg);color-scheme:dark light}[data-theme=light]{color-scheme:light}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none;touch-action:none}button{font:inherit;color:inherit;-webkit-tap-highlight-color:transparent}.page-shell{height:100%;height:100dvh;max-height:100dvh;width:100%;overflow:hidden;display:flex;flex-direction:column;background:var(--bg);box-sizing:border-box;padding:calc(12px + var(--safe-top)) calc(16px + var(--safe-right)) calc(16px + var(--safe-bottom)) calc(16px + var(--safe-left))}.app-header{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:960px;margin:0 auto;flex-shrink:0}.header-btn{border:1px solid var(--btn-border);border-radius:999px;background:var(--header-btn-bg);padding:.55rem 1.1rem;font-size:.875rem;font-weight:500;letter-spacing:.02em;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .15s ease}.header-btn:focus-visible,.header-btn:hover{background:var(--header-btn-hover-bg);border-color:var(--btn-hover-border);outline:none}.header-btn:active{transform:scale(.97)}.menu-wrap{position:relative}.menu-btn{width:42px;height:42px;border:1px solid var(--btn-border);border-radius:50%;background:var(--header-btn-bg);cursor:pointer;display:grid;place-items:center;transition:background .2s ease,border-color .2s ease,transform .15s ease}.menu-btn:focus-visible,.menu-btn:hover{background:var(--header-btn-hover-bg);border-color:var(--btn-hover-border);outline:none}.menu-btn:active{transform:scale(.97)}.menu-dots{display:flex;flex-direction:column;align-items:center;gap:4px}.menu-dots span{display:block;width:4px;height:4px;border-radius:50%;background:var(--fg)}.menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;z-index:50;min-width:180px;padding:.375rem;border:1px solid var(--btn-border);border-radius:12px;background:var(--bg);box-shadow:0 12px 32px rgba(0,0,0,.35)}.menu-item{display:block;width:100%;border:none;border-radius:8px;background:transparent;padding:.625rem .75rem;font-size:.875rem;font-weight:500;text-align:left;cursor:pointer;transition:background .15s ease}.menu-item:focus-visible,.menu-item:hover{background:var(--header-btn-hover-bg);outline:none}.menu-item--active{color:var(--fg);font-weight:600}.menu-item--active:before{content:"✓ ";opacity:.7}.menu-divider{height:1px;margin:.25rem .5rem;background:var(--btn-border)}.display-name{padding:clamp(.5rem,2vh,1.5rem) 0;text-align:center;font-size:clamp(2.5rem,8vw,4rem);font-weight:800;letter-spacing:.04em;color:var(--fg);-webkit-user-select:none;-moz-user-select:none;user-select:none}.counter-page,.display-name{width:100%;max-width:960px;margin:0 auto}.counter-page{flex:1 1;min-height:0;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:clamp(1rem,4vw,2.5rem);padding:0 clamp(.5rem,3vw,1.25rem)}.counter-btn{flex-shrink:0;width:clamp(72px,14vw,96px);height:clamp(72px,14vw,96px);border:1px solid var(--btn-border);border-radius:50%;background:transparent;font-size:clamp(2.5rem,8vw,3.5rem);font-weight:300;line-height:1;cursor:pointer;display:grid;place-items:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background .2s ease,transform .15s ease,border-color .2s ease}.counter-btn:focus-visible,.counter-btn:hover{background:var(--btn-hover-bg);border-color:var(--btn-hover-border);outline:none}.counter-btn:active{transform:scale(.94)}.counter-display{flex:1 1;min-width:0;text-align:center;font-size:clamp(5rem,22vw,12rem);font-weight:200;letter-spacing:-.04em;line-height:1;color:var(--fg);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;-webkit-user-select:none;-moz-user-select:none;user-select:none}@media (orientation:portrait){.counter-page{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr auto;align-items:center;justify-items:center;grid-gap:clamp(1.5rem,6vh,3rem) clamp(1rem,8vw,4rem);gap:clamp(1.5rem,6vh,3rem) clamp(1rem,8vw,4rem);padding-bottom:clamp(1rem,4vh,2rem)}.counter-display{grid-column:1/-1;grid-row:1;align-self:center;font-size:clamp(6rem,28vw,10rem)}.counter-btn--minus{grid-column:1;grid-row:2;justify-self:start}.counter-btn--plus{grid-column:2;grid-row:2;justify-self:end}.counter-btn{width:clamp(80px,22vw,112px);height:clamp(80px,22vw,112px);font-size:clamp(2.75rem,10vw,4rem)}}@media (orientation:landscape){.counter-page{flex-direction:row}.counter-display{font-size:clamp(5rem,18vw,11rem)}.counter-btn{width:clamp(72px,12vh,96px);height:clamp(72px,12vh,96px)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.dialog-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:1.5rem;background:rgba(0,0,0,.72);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}[data-theme=light] .dialog-backdrop{background:rgba(0,0,0,.4)}.dialog{width:min(100%,340px);padding:1.5rem;border:1px solid var(--btn-border);border-radius:16px;background:var(--bg);color:var(--fg);box-shadow:0 24px 48px rgba(0,0,0,.35)}.dialog-title{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;letter-spacing:-.01em}.dialog-desc{margin:0 0 1.25rem;font-size:.9375rem;color:var(--muted);line-height:1.5}.dialog-label{display:block;margin-bottom:.5rem;font-size:.8125rem;font-weight:500;color:var(--muted)}.dialog-input{width:100%;margin-bottom:1.25rem;border:1px solid var(--btn-border);border-radius:10px;background:var(--header-btn-bg);color:var(--fg);padding:.75rem .875rem;font-size:1rem;outline:none;transition:border-color .2s ease}.dialog-input:focus{border-color:var(--btn-hover-border)}.dialog-input::placeholder{color:var(--muted)}.dialog-actions{display:flex;justify-content:flex-end;gap:.625rem}.dialog-btn{border:1px solid var(--btn-border);border-radius:999px;background:var(--header-btn-bg);padding:.55rem 1.1rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .15s ease}.dialog-btn:focus-visible,.dialog-btn:hover{background:var(--header-btn-hover-bg);border-color:var(--btn-hover-border);outline:none}.dialog-btn:active{transform:scale(.97)}.dialog-btn--confirm{background:var(--fg);color:var(--bg);border-color:transparent}.dialog-btn--confirm:focus-visible,.dialog-btn--confirm:hover{opacity:.88;background:var(--fg);border-color:transparent}.menu-item--reminder{display:flex;align-items:center;justify-content:space-between}.reminder-badge{background:#22c55e;color:#000;font-size:.6875rem;font-weight:700;padding:.15rem .45rem;border-radius:999px;letter-spacing:.04em;line-height:1}.toggle-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.toggle-switch{position:relative;width:46px;height:26px;border-radius:999px;border:1px solid var(--btn-border);background:var(--header-btn-bg);cursor:pointer;padding:2px;transition:background .25s ease,border-color .25s ease}.toggle-switch--active{background:#22c55e;border-color:#22c55e}.toggle-slider{display:block;width:20px;height:20px;border-radius:50%;background:var(--fg);transition:transform .25s ease,background .25s ease}.toggle-switch--active .toggle-slider{transform:translateX(20px);background:#fff}.form-group{margin-bottom:1.25rem}.interval-row,.sound-select-row{display:flex;gap:.5rem;align-items:center}.dialog-select{width:100%;border:1px solid var(--btn-border);border-radius:10px;background:var(--header-btn-bg);color:var(--fg);font-size:.9375rem;outline:none;cursor:pointer;transition:border-color .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding:.75rem 2.25rem .75rem .875rem}[data-theme=light] .dialog-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E")}.dialog-select option{background:var(--bg);color:var(--fg)}.dialog-select:focus{border-color:var(--btn-hover-border)}.preview-btn{width:44px;height:44px;flex-shrink:0;border:1px solid var(--btn-border);border-radius:10px;background:var(--header-btn-bg);color:var(--fg);font-size:.875rem;cursor:pointer;display:grid;place-items:center;transition:background .2s ease,border-color .2s ease,transform .15s ease}.preview-btn:focus-visible,.preview-btn:hover{background:var(--header-btn-hover-bg);border-color:var(--btn-hover-border);outline:none}.preview-btn:active{transform:scale(.95)}.interval-input{flex:1 1;margin-bottom:0}.interval-unit-select{flex:1.2 1}