.pt{position:relative}.pt-top{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pt-tabs{border-radius:var(--radius-pill);border:1px solid var(--line);background:var(--bg-soft);scrollbar-width:none;flex:1;gap:4px;min-width:0;padding:4px;display:flex;overflow-x:auto}.pt-tabs [role=tab]{border-radius:var(--radius-pill);min-height:42px;color:var(--ink-2);white-space:nowrap;cursor:pointer;background:0 0;border:0;flex:1 0 auto;padding:0 14px;font-size:.95rem;font-weight:600}.pt-tabs [role=tab][aria-selected=true]{background:var(--surface-2);color:var(--ink);box-shadow:0 0 0 1px var(--line-strong), 0 0 24px -8px #7cc4ff80}.pt-tabs [role=tab]:focus-visible,.pt button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.pt-icon-btn{border:1px solid var(--line-strong);background:var(--surface);width:46px;height:46px;color:var(--ink);cursor:pointer;border-radius:50%;flex:none;place-items:center;display:inline-grid}.pt-icon-btn:hover{border-color:var(--sky)}.pt-icon-btn svg{width:20px;height:20px}.pt-panel{gap:16px;display:grid}.pt-card{border-radius:var(--radius);background:var(--card);border:1px solid var(--line);min-width:0;box-shadow:var(--edge);align-content:start;gap:14px;padding:18px;display:grid}.pt-card h3{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.74rem;font-weight:400}.pt-stage{justify-items:center;gap:18px;padding:24px 18px;display:grid}.pt-ring{aspect-ratio:1;place-items:center;width:min(330px,78vw);display:grid;position:relative}.pt-ring svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible;transform:rotate(-90deg)}.pt-ring .track{fill:none;stroke:var(--line-strong);stroke-width:6px}.pt-ring .bar,.pt-ring .halo{fill:none;stroke:url(#pt-grad);stroke-width:8px;stroke-linecap:round;stroke-dasharray:1 1;transition:stroke-dashoffset .4s linear}.pt-ring .halo{stroke-width:18px;opacity:.45;filter:blur(10px)}.pt-ring.is-break .bar,.pt-ring.is-break .halo{stroke:url(#pt-grad-break)}.pt-ring.is-done .bar,.pt-ring.is-done .halo{animation:pt-pulse 1.4s var(--ease) 3}.pt-ring.is-idle .halo{opacity:.18}@keyframes pt-pulse{50%{opacity:.25}}.pt-face{text-align:center;justify-items:center;gap:4px;padding:0 12%;display:grid;position:relative}.pt-phase{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent-text);font-size:.76rem}.pt-digits{font-family:var(--font-display);letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--ink);font-size:clamp(3rem,2rem + 5vw,4.6rem);font-weight:650;line-height:1}.pt-digits small{letter-spacing:-.02em;color:var(--ink-2);font-size:.45em}.pt-sub{min-height:1.3em;color:var(--muted);font-size:.9rem}.pt-controls{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.pt-controls .btn{min-width:120px}.pt-go{min-width:150px!important}.pt-presets{flex-wrap:wrap;gap:8px;display:flex}.pt-presets .chip-btn{cursor:pointer;font-variant-numeric:tabular-nums}.pt-presets .chip-btn[aria-pressed=true]{background:var(--primary-soft);border-color:var(--sky)}.pt-row{flex-wrap:wrap;align-items:flex-end;gap:10px 14px;display:flex}.pt-field{color:var(--ink-2);gap:6px;font-size:.9rem;font-weight:600;display:grid}.pt input[type=number],.pt input[type=text]{border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--surface-2);height:44px;color:var(--ink);font:inherit;min-width:0;padding:0 12px}.pt input[type=number]{text-align:right;font-variant-numeric:tabular-nums;width:5.5em}.pt input:focus-visible{border-color:var(--sky);outline:none;box-shadow:0 0 0 4px #7cc4ff2e}.pt-checks{flex-wrap:wrap;gap:10px 22px;display:flex}.pt-note{color:var(--muted);margin:0;font-size:.85rem}.pt-keys{color:var(--muted);text-align:center;margin:0;font-size:.84rem}.pt kbd{border:1px solid var(--line-strong);background:var(--surface-2);min-width:1.8em;font-family:var(--font-mono);text-align:center;border-radius:6px;padding:1px 6px;font-size:.78rem;display:inline-block}.pt-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}@media (width<=860px){.pt-grid{grid-template-columns:1fr}}.pt.is-focus{z-index:80;background:var(--bg);align-content:center;padding:20px 16px;position:fixed;inset:0;overflow:auto}.pt.is-focus .pt-tabs,.pt.is-focus .pt-hide-focus,.pt.is-focus .pt-keys{display:none}.pt.is-focus .pt-top{position:absolute;top:16px;right:16px}.pt.is-focus .pt-grid{grid-template-columns:1fr}.pt.is-focus .pt-stage{box-shadow:none;background:0 0;border:0}.pt.is-focus .pt-ring{width:min(520px,82vw,62vh)}.pt.is-focus .pt-digits{font-size:clamp(3.4rem,2rem + 7vw,6.4rem)}@media (prefers-reduced-motion:reduce){.pt-ring .bar,.pt-ring .halo{transition:none}.pt-ring.is-done .bar,.pt-ring.is-done .halo{animation:none}}@media (width<=520px){.pt-stage{padding:18px 10px}.pt-controls .btn{flex:30%;min-width:0;padding:0 14px}}.pt-go svg{fill:currentColor}.pt-go .i-pause,.pt-go.is-on .i-play{display:none}.pt-go.is-on .i-pause{display:block}.pt-watch-ring .bar,.pt-watch-ring .halo{transition:none}.pt-defs{position:absolute}.pt-alerts summary{cursor:pointer;width:max-content;font-weight:650}.pt-vol{align-items:center;gap:10px;display:inline-flex}.pt-vol input{accent-color:var(--electric);width:140px}.pt-checks .chip-btn{cursor:pointer}@media (width<=420px){.pt-tabs [role=tab]{padding:0 10px;font-size:.88rem}}.pt-laps{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.pt-laps th,.pt-laps td{border-bottom:1px solid var(--line);text-align:right;padding:8px 10px}.pt-laps th:first-child,.pt-laps td:first-child{text-align:left}.pt-laps th{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:400}.pt-laps tr.best td{color:var(--success)}.pt-laps tr.worst td{color:var(--danger)}.pt-laps-wrap{max-height:340px;overflow:auto}.pt-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.pt-dots{justify-content:center;gap:8px;display:flex}.pt-dots span{border:1px solid var(--line-strong);background:0 0;border-radius:50%;width:12px;height:12px}.pt-dots span.on{background:var(--sky);border-color:var(--sky);box-shadow:0 0 12px #7cc4ffb3}.pt-dots span.now{border-color:var(--sky);border-width:2px}.pt-today{color:var(--ink-2);text-align:center;margin:0;font-weight:600}.pt-task-form{gap:8px;display:flex}.pt-task-form input{flex:1}.pt-tasks{gap:6px;margin:0;padding:0;list-style:none;display:grid}.pt-task{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--bg-soft);grid-template-columns:auto 1fr auto auto;align-items:center;gap:8px;min-height:46px;padding:4px 6px 4px 12px;display:grid}.pt-task.current{border-color:var(--sky);box-shadow:inset 0 0 0 1px var(--sky)}.pt-task input{width:18px;height:18px;accent-color:var(--electric)}.pt-task .name{min-width:0;color:var(--ink);text-align:left;font:inherit;overflow-wrap:anywhere;cursor:pointer;background:0 0;border:0;padding:6px 4px}.pt-task.done .name{color:var(--muted);text-decoration:line-through}.pt-task .count{font-family:var(--font-mono);color:var(--muted);font-size:.75rem}.pt-task .del{width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.pt-task .del:hover{color:var(--danger)}.pt-task .del svg{width:16px;height:16px}.pt-focus-task{text-align:center;max-width:34ch;color:var(--ink);overflow-wrap:anywhere;margin:0;font-weight:600}
