.timer-stack{align-items:center}.timer-dial{position:relative;width:280px;height:280px;display:flex;align-items:center;justify-content:center}.timer-svg{position:absolute;inset:0;transform:rotate(-90deg)}.timer-track{fill:var(--bg-elevated);stroke:var(--bg-subtle);stroke-width:12}.timer-progress{fill:none;stroke:#e08600;stroke-width:12;stroke-linecap:round;filter:drop-shadow(0 1px 3px rgba(224,134,0,0.35))}.timer-display{position:relative;z-index:1;font-size:56px;font-weight:200;letter-spacing:0.01em;font-variant-numeric:tabular-nums;color:var(--text)}.timer-keypad{display:flex;flex-direction:column;gap:10px;transition:opacity 0.3s var(--ease)}.keypad-row{display:flex;justify-content:center;gap:12px}.keypad-key{width:76px;height:54px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:16px;background:var(--bg-subtle);color:var(--text);font:inherit;font-size:23px;font-weight:500;font-variant-numeric:tabular-nums;cursor:pointer;transition:transform 0.12s var(--ease),background 0.2s var(--ease),box-shadow 0.2s var(--ease);box-shadow:0 1px 2px rgba(0,0,0,0.06)}.keypad-key:hover{background:#ececf0}.keypad-key:active{transform:scale(0.94);background:#e2e2e7}.keypad-key--ghost{background:transparent;box-shadow:none;font-size:15px;font-weight:500;color:var(--text-secondary)}.keypad-key--ghost:hover{background:var(--bg-subtle)}.keypad-key--ghost:active{transform:scale(0.94);background:#ececf0}.timer-display.is-dimmed{color:var(--text-tertiary)}.stopwatch-progress{fill:none;stroke:#0a84ff;stroke-width:12;stroke-linecap:round;filter:drop-shadow(0 1px 3px rgba(10,132,255,0.35))}.lap-panel{width:100%;max-width:420px;align-self:center;background:var(--bg-elevated);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-tile);padding:6px 0;max-height:300px;overflow-y:auto}.lap-head{display:grid;grid-template-columns:1fr 1fr 1fr;padding:10px 20px 6px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:0.04em;color:var(--text-tertiary);border-bottom:1px solid var(--border)}.lap-head span:nth-child(2){text-align:center}.lap-head span:nth-child(3){text-align:right}.lap-list{margin:0;padding:0;list-style:none}.lap-list li{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:baseline;padding:10px 20px;border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums}.lap-list li:last-child{border-bottom:0}.lap-list span{font-size:14px;color:var(--text-secondary)}.lap-list b{font-size:16px;font-weight:600;text-align:center}.lap-list li span:last-child{text-align:right}.timer-actions{display:flex;gap:14px;align-items:center}.btn-timer-start{min-width:150px;background:#157f39;color:#ffffff;font-weight:600}.btn-timer-start:hover{background:#106e30;color:#ffffff}.btn-timer-start.is-running{background:#b25e00}.btn-timer-start.is-running:hover{background:#9d5300}.btn-stop-blue{color:#0071e3}.btn-stop-blue:hover{color:#0060c0;text-decoration:none}