/* FLIPCLOCK TIMER — separate from the shared v13 navigation. */
:root{--timer-accent:#bb4c2c;--timer-accent-soft:#f6e7dc;--card-bg:#242527;--card-ink:#f8f6f0}
html[data-theme=dark]{--timer-accent:#f8ad86;--timer-accent-soft:#302923;--card-bg:#222630;--card-ink:#fff}
button{cursor:pointer}button:disabled{cursor:default;opacity:.4}[hidden]{display:none!important}
.timer-heading{display:flex;justify-content:space-between;gap:24px;align-items:end;margin:27px 0 26px}.timer-heading h1{font-size:clamp(30px,4vw,48px);font-weight:650;letter-spacing:-.045em;line-height:1.13;margin:9px 0 0}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:700;color:var(--muted)}.timer-heading>p{max-width:320px;text-align:end;color:var(--muted);font-size:16px;line-height:1.55;margin:0 0 3px}
.timer-stage{position:relative;border:1px solid var(--line2);border-radius:28px;background:var(--paper);box-shadow:0 15px 50px rgba(45,31,20,.04);padding:21px 28px 15px;min-height:444px;isolation:isolate}.stage-toolbar,.stage-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px}.stage-tools{display:flex;gap:5px}.tool-button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;border:1px solid transparent;background:transparent;border-radius:50%;color:var(--muted)}.tool-button:hover{border-color:var(--line);background:var(--btn);color:var(--text)}.tool-button svg,.text-button svg,.button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.status-pill{display:inline-flex;gap:9px;align-items:center;color:var(--muted);font-size:12px;font-weight:650;line-height:1.4}.status-pill:before{content:'';width:6px;height:6px;background:currentColor;border-radius:100%;flex-shrink:0}.timer-stage[data-status=running] .status-pill{color:var(--green)}.timer-stage[data-status=finished]{border-color:var(--timer-accent);background:color-mix(in srgb,var(--timer-accent-soft) 65%,var(--paper))}.timer-stage[data-status=finished] .status-pill{color:var(--timer-accent)}.timer-center{text-align:center;max-width:880px;margin:auto}.timer-task{min-height:24px;font-size:17px;font-weight:600;line-height:1.5;margin:8px 0 28px;overflow-wrap:anywhere}.clock-area{min-height:142px;display:flex;align-items:center;justify-content:center}.timer-fallback{font-size:clamp(64px,14vw,120px);font-weight:700;font-variant-numeric:tabular-nums;line-height:1.2}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;background:none;font-size:13px;font-weight:500;padding:9px 10px;border-radius:9px;color:var(--muted);min-height:40px}.text-button:hover{background:var(--btn);color:var(--text)}#edit-time{margin-top:18px}.progress-wrap{margin:22px auto 0;max-width:470px;height:4px}progress{display:block;appearance:none;-webkit-appearance:none;width:100%;height:4px;border:0;border-radius:3px;overflow:hidden;background:var(--line);color:var(--timer-accent)}progress::-webkit-progress-bar{background:var(--line)}progress::-webkit-progress-value{background:var(--timer-accent)}progress::-moz-progress-bar{background:var(--timer-accent)}.finish-at{font-size:12px;color:var(--muted);min-height:18px;margin:10px 0 19px;line-height:1.5}.timer-controls{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 20px;border-radius:12px;border:1px solid var(--line2);font-size:14px;font-weight:600;min-height:48px;line-height:1.4}.button-primary{background:var(--text);color:var(--bg);border-color:var(--text)}#start-timer{min-width:160px}.button-secondary{background:transparent}.button:hover{filter:brightness(.95)}.button:active{transform:translateY(1px)}.stage-bottom{margin-top:20px;font-size:11px;color:var(--muted);min-height:35px}.timer-notice{max-width:620px;text-align:center;font-size:13px;color:var(--timer-accent);line-height:1.6;margin:0 auto}.timer-notice:empty{display:none}.completion-message p{margin:18px 0 0;font-size:18px;font-weight:600;overflow-wrap:anywhere}.completion-message .text-button{margin-top:4px;color:var(--timer-accent)}
/* Original FlipClock 0.7.x renders the digits; only its presentation is adapted. */
#timer-clock{--digit-w:86px;--digit-h:128px;--digit-font:102px;display:flex;align-items:center;justify-content:center;gap:8px;width:auto;max-width:100%;margin:0;pointer-events:none;font-family:"Helvetica Neue",Arial,sans-serif;font-variant-numeric:tabular-nums}
#timer-clock:before,#timer-clock:after{display:none}#timer-clock ul{float:none;flex:0 0 var(--digit-w);margin:0;padding:0;width:var(--digit-w);height:var(--digit-h);line-height:var(--digit-h);border-radius:12px;background:var(--card-bg);box-shadow:0 5px 0 rgba(0,0,0,.08),0 14px 22px rgba(0,0,0,.12)}#timer-clock ul li{line-height:var(--digit-h)}#timer-clock ul li a div,#timer-clock ul li a div div.inn{font-size:var(--digit-font)}#timer-clock ul li a div div.inn{color:var(--card-ink);background:var(--card-bg);font-weight:600;text-shadow:0 1px 1px rgba(0,0,0,.25);border-radius:12px}#timer-clock ul li a div.up:after{top:auto;bottom:0;height:2px;background:rgba(0,0,0,.4)}#timer-clock ul li a div.down{border-radius:0 0 12px 12px}#timer-clock .flip-clock-divider{float:none;width:24px;flex:0 0 24px;height:var(--digit-h)}#timer-clock .flip-clock-divider:first-child{width:0;flex-basis:0;margin-inline-end:-8px}#timer-clock .flip-clock-dot{width:6px;height:6px;left:9px;background:var(--text);box-shadow:none;opacity:.5}#timer-clock .flip-clock-dot.top{top:35%}#timer-clock .flip-clock-dot.bottom{bottom:35%}#timer-clock .flip-clock-label{top:-22px;right:auto;left:100%;width:calc(var(--digit-w)*2 + 16px);font:500 10px/1.4 system-ui,sans-serif;color:var(--muted);text-align:center;white-space:nowrap}#timer-clock .flip-clock-divider:first-child .flip-clock-label{left:0}
.timer-stage.no-motion #timer-clock *{animation:none!important;-webkit-animation:none!important}.timer-stage.no-motion #timer-clock .shadow{display:none}
.presets{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:22px 0 10px}.presets>span{font-size:11px;color:var(--muted);margin-inline-end:6px}.presets button{border:1px solid var(--line);border-radius:10px;padding:9px 14px;background:var(--paper);font-size:12px;min-height:38px;white-space:nowrap}.presets button[aria-pressed=true]{background:var(--text);color:var(--bg);border-color:var(--text)}.timer-footnote{display:flex;justify-content:space-between;gap:32px;color:var(--soft);font-size:11px;line-height:1.6}.timer-footnote p{max-width:600px}.keyboard-hint{flex-shrink:0}
h2{font-size:clamp(24px,3vw,34px);font-weight:600;letter-spacing:-.035em;line-height:1.25}.how-section{padding:62px 0 55px}.how-section h2{max-width:600px;margin:12px 0 32px}.how-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.step-number{font-size:12px;color:var(--timer-accent);font-weight:600}.how-grid h3{font-size:18px;font-weight:600;margin:14px 0 10px;letter-spacing:-.02em}.how-grid p,.faq-section p{font-size:14px;color:var(--muted);line-height:1.8;margin:0}.faq-section{display:grid;grid-template-columns:1fr 1.6fr;gap:60px;padding:45px 0;border-top:1px solid var(--line)}.faq-section h2{margin:0;max-width:300px}.faq-section details{border-bottom:1px solid var(--line);padding:0 0 16px;margin-bottom:18px}.faq-section summary{display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;cursor:pointer;font-size:15px;font-weight:600}.faq-section summary::-webkit-details-marker{display:none}.faq-section summary span{font-size:23px;font-weight:300}.faq-section details[open] summary span{transform:rotate(45deg)}.faq-section p{margin-top:13px}.related-section{padding:24px 0 45px}.related-section h2{font-size:22px;margin:0 0 20px}.related-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.related-grid a{padding:25px;border:1px solid var(--line);border-radius:18px;background:var(--paper)}.related-grid a:hover{border-color:var(--line2)}.related-grid span{font-weight:650;font-size:16px}.related-grid p{font-size:13px;color:var(--muted);margin-bottom:0}
.timer-dialog{width:min(500px,calc(100% - 28px));max-height:calc(100dvh - 32px);overflow:auto;padding:26px;border:1px solid var(--line2);border-radius:20px;background:var(--bg);color:var(--text);box-shadow:var(--shadow);text-align:start}.timer-dialog::backdrop{background:rgba(0,0,0,.45);backdrop-filter:blur(5px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.dialog-heading h2{font-size:23px;margin:0}.dialog-heading .tool-button{background:var(--paper)}.time-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.time-inputs label{text-align:center;font-size:12px;color:var(--muted)}.timer-dialog input[type=text],.timer-dialog input[type=number],.timer-dialog select{background:var(--paper);border:1px solid var(--line2);border-radius:10px;padding:12px;width:100%;min-height:46px}.time-inputs input[type=number]{font-size:28px;font-weight:600;text-align:center;margin-top:8px;padding:10px 0}.field-label{display:block;font-size:13px;font-weight:600;margin:20px 0 9px}.field-hint{margin:12px 0 18px;font-size:12px;color:var(--muted);line-height:1.6}.form-error{font-size:13px;color:var(--red);line-height:1.5}.form-error:empty{display:none}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:26px}.sound-row{display:flex;gap:10px}.sound-row select{flex:1;min-width:0}.sound-row button{font-size:12px;max-width:48%;padding-inline:12px}#volume{width:100%;accent-color:var(--timer-accent)}#volume-value{float:inline-end;color:var(--muted)}.check-row{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:22px;font-size:14px}.check-row small{display:block;color:var(--muted);line-height:1.5;margin-top:6px;font-size:11px}.check-row input{width:20px;height:20px;flex-shrink:0;accent-color:var(--timer-accent)}.noscript-message{padding:20px;border:1px solid var(--red);border-radius:16px}
.timer-stage:fullscreen,.timer-stage.fullscreen-fallback{--digit-w:clamp(44px,9vw,142px);--digit-h:clamp(68px,13.4vw,214px);--digit-font:clamp(55px,10.5vw,168px);display:flex;flex-direction:column;justify-content:space-between;gap:16px;background:var(--bg);width:100%;height:100%;min-height:100%;padding:24px 36px;border:0;border-radius:0;overflow:auto}.timer-stage:fullscreen #timer-clock,.timer-stage.fullscreen-fallback #timer-clock{--digit-w:clamp(44px,9vw,142px);--digit-h:clamp(68px,13.4vw,214px);--digit-font:clamp(55px,10.5vw,168px)}.timer-stage:fullscreen .timer-center,.timer-stage.fullscreen-fallback .timer-center{width:100%;max-width:1200px;margin:auto}.timer-stage:fullscreen .stage-bottom,.timer-stage.fullscreen-fallback .stage-bottom{margin-top:0}.timer-stage.fullscreen-fallback{position:fixed;inset:0;z-index:150;height:100dvh;min-height:0}body.timer-fullscreen{overflow:hidden}.timer-stage:fullscreen .clock-area,.timer-stage.fullscreen-fallback .clock-area{min-height:0}.timer-stage:fullscreen #timer-task,.timer-stage.fullscreen-fallback #timer-task{font-size:clamp(17px,2vw,28px);margin-bottom:45px}
@media(max-width:760px){.timer-heading{margin:13px 0 24px;display:block}.timer-heading h1{font-size:32px}.timer-heading>p{text-align:start;font-size:13px;margin-top:9px;max-width:none}.timer-stage{padding:15px 16px 10px;border-radius:20px;min-height:400px}.timer-task{font-size:15px;margin-top:12px;margin-bottom:30px}#timer-clock{--digit-w:clamp(42px,13vw,78px);--digit-h:clamp(66px,19.5vw,118px);--digit-font:clamp(52px,15.5vw,94px);gap:5px}#timer-clock.has-hours{--digit-w:clamp(31px,8vw,64px);--digit-h:clamp(49px,12vw,96px);--digit-font:clamp(38px,9.5vw,76px)}#timer-clock .flip-clock-divider{width:16px;flex-basis:16px}#timer-clock .flip-clock-divider:first-child{margin-inline-end:-5px}#timer-clock .flip-clock-dot{width:5px;height:5px;left:5.5px}#timer-clock .flip-clock-label{width:calc(var(--digit-w)*2 + 10px);font-size:9px;top:-22px}.clock-area{min-height:100px}.timer-controls{gap:6px}.button{font-size:12px;padding:12px 14px;min-height:46px}#start-timer{min-width:120px}#reset-timer{padding-inline:12px}.timer-controls .button svg{width:16px;height:16px}.stage-toolbar{gap:6px}.status-pill{font-size:10px;max-width:55%}.tool-button{width:36px;height:36px}.stage-tools{gap:0}.presets{gap:7px;padding-top:18px}.presets>span{width:100%;text-align:center;margin:0 0 5px}.presets button{padding:8px 12px;flex:0 1 auto}.timer-footnote{display:block;text-align:center;padding-inline:7px}.keyboard-hint{display:none}.how-section{padding:40px 0 30px}.how-grid{grid-template-columns:1fr;gap:25px}.how-grid h3{margin-top:8px}.how-grid p{font-size:13px}.faq-section{display:block;padding:30px 0 8px}.faq-section h2{margin-bottom:25px}.related-grid{grid-template-columns:1fr}.related-grid a{padding:20px}.timer-dialog{padding:20px}.timer-stage:fullscreen,.timer-stage.fullscreen-fallback{padding:20px 16px}.timer-stage:fullscreen #timer-clock,.timer-stage.fullscreen-fallback #timer-clock{--digit-w:clamp(34px,13vw,100px);--digit-h:clamp(52px,19.5vw,150px);--digit-font:clamp(41px,15.5vw,118px)}.timer-stage:fullscreen #timer-clock.has-hours,.timer-stage.fullscreen-fallback #timer-clock.has-hours{--digit-w:clamp(31px,9.5vw,70px);--digit-h:clamp(49px,14.25vw,106px);--digit-font:clamp(38px,11vw,82px)}}
@media(max-width:370px){.page{width:calc(100% - 24px)}.timer-stage{padding-inline:10px}.timer-controls{gap:5px}#start-timer{min-width:105px}.timer-controls .button{padding-inline:10px;font-size:11px}.timer-controls .button svg{display:none}#timer-clock.has-hours{--digit-w:31px;--digit-h:49px;--digit-font:38px}}
@media(max-height:520px) and (min-width:600px){.timer-stage:fullscreen,.timer-stage.fullscreen-fallback{padding:12px 24px;gap:0}.timer-stage:fullscreen #timer-task,.timer-stage.fullscreen-fallback #timer-task{margin:0 0 22px;min-height:0}.timer-stage:fullscreen #timer-clock,.timer-stage.fullscreen-fallback #timer-clock{--digit-w:62px;--digit-h:92px;--digit-font:74px}.timer-stage:fullscreen #edit-time,.timer-stage.fullscreen-fallback #edit-time{margin-top:2px}.timer-stage:fullscreen .progress-wrap,.timer-stage.fullscreen-fallback .progress-wrap{margin-top:3px}.timer-stage:fullscreen .finish-at,.timer-stage.fullscreen-fallback .finish-at{margin:5px 0 8px}.timer-stage:fullscreen .stage-bottom,.timer-stage.fullscreen-fallback .stage-bottom{min-height:24px}}
@media(prefers-reduced-motion:reduce){#timer-clock *{animation:none!important;-webkit-animation:none!important}#timer-clock .shadow{display:none}.button:active{transform:none}}
/* v1.1: duration groups and local recent intervals. */
.preset-section{padding:24px 0 8px}.preset-heading{display:flex;align-items:center;justify-content:center;gap:22px}.preset-heading>span,.recent-heading>span{font-size:12px;color:var(--muted)}.preset-tabs{display:flex;gap:3px;padding:3px;border:1px solid var(--line);border-radius:11px;background:var(--btn)}.preset-tabs button{border:0;border-radius:8px;padding:8px 14px;background:transparent;color:var(--muted);font-size:12px;min-height:34px}.preset-tabs button[aria-selected=true]{background:var(--paper);color:var(--text);box-shadow:0 1px 4px rgba(0,0,0,.07)}.preset-section .presets{padding:15px 0 4px;min-height:57px}.presets button:hover:not(:disabled){border-color:var(--text)}.recent-section{max-width:700px;margin:17px auto 0;border-top:1px solid var(--line);padding-top:9px}.recent-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.recent-heading .text-button{font-size:11px;padding:5px 8px;min-height:32px}.recent-section .presets{justify-content:flex-start;padding-top:5px;min-height:0}.recent-presets button{font-variant-numeric:tabular-nums}.dialog-actions{flex-wrap:wrap}.dialog-actions .button{max-width:100%}#edit-time{border:1px solid var(--line);padding-inline:15px;color:var(--text)}
@media(max-width:760px){.preset-section{padding-top:20px}.preset-heading{flex-direction:column;gap:10px}.preset-tabs{max-width:100%}.preset-tabs button{padding-inline:12px;overflow-wrap:anywhere}.preset-section .presets{padding-top:13px}.recent-section{margin-top:14px}.recent-section .presets{padding-top:4px}.recent-heading>span{font-size:11px}.timer-dialog .dialog-actions .button{flex:1;min-width:0}}
@media(max-width:760px){.timer-controls{display:grid;align-items:stretch;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(0,.7fr)}.timer-controls .button,#reset-timer{min-width:0;padding-inline:8px;overflow-wrap:anywhere}#start-timer{min-width:0}.timer-controls .button span{min-width:0}.timer-task:empty{min-height:12px;margin-top:5px;margin-bottom:23px}}
