:root{--paper: #f6f1e6;--paper2: #efe6d6;--ink: #1f1b16;--muted: rgba(31, 27, 22, .56);--line: rgba(31, 27, 22, .14);--jade: #2f6f5e;--jade2: #1f5a4b;--danger: #c43d32;--surface: rgba(255, 255, 255, .66);--surface2: rgba(255, 255, 255, .78);--shadow: 0 18px 40px rgba(31, 27, 22, .18);--shadowSoft: 0 10px 26px rgba(31, 27, 22, .14);--ring: 0 0 0 3px rgba(47, 111, 94, .22);--radiusSm: 12px;--radiusMd: 16px;--radiusLg: 18px}*{box-sizing:border-box}html,body{height:100%}body{margin:0;color:var(--ink);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;line-height:1.55;letter-spacing:.01em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(900px 700px at 18% 0%,rgba(47,111,94,.07),transparent 62%),radial-gradient(900px 700px at 88% 32%,rgba(31,90,75,.055),transparent 58%),linear-gradient(180deg,var(--paper),var(--paper2))}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}kbd{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.92em;padding:.12em .42em;border-radius:10px;border:1px solid var(--line);background:#ffffff9e}.app{min-height:100vh;min-height:100svh;min-height:100dvh;max-width:420px;margin:0 auto;display:flex;flex-direction:column;padding:calc(clamp(14px,2.8vh,20px) + env(safe-area-inset-top)) 16px calc(clamp(14px,2.8vh,20px) + env(safe-area-inset-bottom))}.content{min-height:0;display:flex;flex-direction:column;flex:1;gap:14px}.counter{padding-top:6px;text-align:center}.counterLabel{color:var(--muted);font-size:12.5px;letter-spacing:.18em}.counterValue{margin-top:10px;font-size:clamp(56px,16vw,72px);font-weight:760;letter-spacing:-.04em;line-height:1;word-break:break-all;font-family:ui-serif,Songti SC,STSong,"Noto Serif CJK SC",serif}.circleWrap{flex:1;display:grid;place-items:center;padding:14px 0 6px;min-height:0}.btnCircle{width:clamp(152px,44vw,176px);height:clamp(152px,44vw,176px);border-radius:999px;border:1px solid rgba(31,27,22,.12);background:radial-gradient(130px 120px at 28% 22%,rgba(255,255,255,.26),transparent 60%),radial-gradient(180px 180px at 70% 85%,rgba(255,255,255,.1),transparent 62%),linear-gradient(180deg,var(--jade),var(--jade2));color:#fffffff5;font-size:clamp(26px,7vw,30px);font-weight:820;touch-action:manipulation;box-shadow:var(--shadow),0 1px #ffffff3d inset;transition:transform .16s ease,box-shadow .2s ease,filter .2s ease}.btnCircle:hover{filter:brightness(1.03);box-shadow:0 20px 44px #1f1b1633,0 1px #ffffff3d inset}.btnCircle:active{transform:scale(.985)}.btnReset{height:46px;border-radius:var(--radiusMd);border:1px solid var(--line);background:var(--surface);font-weight:740;touch-action:manipulation;box-shadow:0 1px #ffffff59 inset;transition:transform .16s ease,background .2s ease,box-shadow .2s ease}.btnReset:hover{background:#ffffffb8;box-shadow:0 12px 22px #1f1b161a,0 1px #ffffff59 inset}.btnReset:active{transform:scale(.99)}.helper{text-align:center;color:var(--muted);font-size:13px;line-height:1.4}.dialog{border:none;padding:0;background:transparent}.dialog::backdrop{background:#1f1b1642;animation:backdrop-fade .18s ease-out}@supports (backdrop-filter: blur(6px)){.dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}}.dialogInner{width:min(360px,calc(100vw - 32px));border-radius:var(--radiusLg);background:var(--surface2);border:1px solid rgba(31,27,22,.14);padding:14px;color:var(--ink);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadowSoft);transform-origin:50% 60%}.dialog[open] .dialogInner{animation:dialog-pop .2s cubic-bezier(.2,.9,.22,1)}.dialogTitle{font-weight:820}.dialogBody{margin-top:6px;color:var(--muted);font-size:13px;line-height:1.4}.dialogActions{margin-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.btnGhost{height:44px;border-radius:var(--radiusMd);border:1px solid rgba(31,27,22,.14);background:#fff9;font-weight:740;box-shadow:0 1px #ffffff59 inset;transition:transform .16s ease,background .2s ease,box-shadow .2s ease}.btnGhost:hover{background:#ffffffb8;box-shadow:0 12px 22px #1f1b161a,0 1px #ffffff59 inset}.btnGhost:active{transform:scale(.99)}.btnDanger{height:44px;border-radius:var(--radiusMd);border:1px solid rgba(196,61,50,.26);background:#c43d3214;color:var(--danger);font-weight:820;box-shadow:0 1px #ffffff59 inset;transition:transform .16s ease,background .2s ease,box-shadow .2s ease}.btnDanger:hover{background:#c43d321c;box-shadow:0 12px 22px #1f1b161a,0 1px #ffffff59 inset}.btnDanger:active{transform:scale(.99)}.toast{position:fixed;left:50%;bottom:calc(14px + env(safe-area-inset-bottom));transform:translate(-50%);padding:10px 12px;border-radius:999px;border:1px solid rgba(31,27,22,.14);background:#fffc;color:var(--ink);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:13px;box-shadow:0 10px 24px #1f1b161f;animation:toast-in .16s ease-out}button:focus-visible{outline:none;box-shadow:var(--ring)}@media (max-width: 360px){.btnCircle{width:156px;height:156px}.counterValue{font-size:60px}}@media (max-height: 700px){.content{gap:10px}.counter{padding-top:2px}.counterValue{margin-top:8px;font-size:56px}.circleWrap{padding:10px 0 4px}.btnCircle{width:152px;height:152px}.btnReset{height:44px}.helper{font-size:12px}}@media (max-height: 620px){.helper{display:none}}@media (prefers-reduced-motion: reduce){.btnCircle,.btnReset,.btnGhost,.btnDanger{transition:none}.dialog::backdrop,.dialog[open] .dialogInner,.toast{animation:none}}@keyframes dialog-pop{0%{transform:translateY(6px) scale(.985);opacity:.001}to{transform:translateY(0) scale(1);opacity:1}}@keyframes backdrop-fade{0%{opacity:.001}to{opacity:1}}@keyframes toast-in{0%{transform:translate(-50%) translateY(6px);opacity:.001}to{transform:translate(-50%) translateY(0);opacity:1}}
