.tool-section{min-height:100dvh;background-color:var(--tool-bg);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:56px 56px 40px;transition:background-color .35s ease;position:relative;gap:0}.brand{position:absolute;top:20px;left:20px;font-family:var(--font-ui);font-size:12px;font-weight:500;letter-spacing:.06em;color:var(--label-color);text-decoration:none;transition:color .35s}.brand span{opacity:.45}.dial-outer,.dial-frame{display:flex;align-items:center;justify-content:center;position:relative}.dial-scale-ctrl{display:flex;align-items:center;justify-content:center;gap:4px;margin-bottom:8px;user-select:none;position:relative;z-index:25;pointer-events:auto}.btn-scale{background:none;border:none;padding:2px 6px;min-width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-ui);font-size:15px;font-weight:600;color:var(--label-color);border-radius:6px;cursor:pointer;transition:color .15s ease,background .15s ease,transform .1s ease;line-height:1}.btn-scale:hover:not(:disabled){color:var(--time-color);background:#8080801f}.btn-scale:active:not(:disabled){transform:scale(.92)}.btn-scale:disabled{opacity:.22;cursor:default}.scale-val-label{background:none;border:none;font-family:var(--font-ui);font-size:11px;font-weight:500;letter-spacing:.08em;color:var(--label-color);opacity:.75;font-variant-numeric:tabular-nums;cursor:pointer;padding:3px 6px;border-radius:6px;transition:opacity .15s ease,color .15s ease,background .15s ease;line-height:1}.scale-val-label:hover{opacity:1;color:var(--time-color);background:#8080801a}.dial-svg{width:min(var(--dial-size, 380px),94vw);height:min(var(--dial-size, 380px),94vw);overflow:visible;transition:width .22s cubic-bezier(.16,1,.3,1),height .22s cubic-bezier(.16,1,.3,1)}.svg-time{font-family:var(--font-display);font-size:52px;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;fill:var(--time-color);font-weight:400;letter-spacing:-.01em;transition:fill .35s ease}.svg-sublabel{font-family:var(--font-ui);font-size:11.5px;font-weight:500;fill:var(--label-color);letter-spacing:.1em;text-transform:uppercase;transition:fill .35s ease}.svg-subtime{font-family:var(--font-display);font-size:18px;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;fill:var(--label-color);transition:fill .35s ease}[data-face=midnight] #sw-arc{filter:drop-shadow(0 0 10px rgba(14,114,237,.65))}[data-face=midnight] #sw-dot{filter:drop-shadow(0 0 5px rgba(239,68,68,.9))}[data-face=gold] #sw-arc{filter:drop-shadow(0 0 7px rgba(212,168,67,.6))}[data-face=garmin] #sw-arc{filter:drop-shadow(0 0 10px rgba(0,180,216,.75))}[data-face=garmin] #sw-dot{filter:drop-shadow(0 0 6px rgba(56,189,248,.9))}.controls{display:flex;align-items:center;gap:28px;margin-top:18px}.btn-main{width:66px;height:66px;border-radius:50%;background:var(--accent);color:#fff;border:none;font-family:var(--font-ui);font-size:12px;font-weight:600;letter-spacing:.12em;cursor:pointer;transition:transform .12s ease,background-color .35s ease,box-shadow .12s ease;box-shadow:0 4px 16px #00000026}.btn-main:hover{transform:scale(1.06);box-shadow:0 6px 20px #0003}.btn-main:active{transform:scale(.95)}.btn-ghost{min-width:54px;font-family:var(--font-ui);font-size:11px;font-weight:500;letter-spacing:.1em;color:var(--label-color);background:none;border:none;cursor:pointer;transition:color .15s,transform .12s;text-transform:uppercase;padding:8px 4px}.btn-ghost:hover:not(:disabled){color:var(--time-color)}.btn-ghost:disabled{opacity:.28;cursor:default}.btn-ghost.btn-reset-confirm{color:#ef4444!important;font-weight:700!important;letter-spacing:.12em;animation:pulse-reset-confirm 1.2s infinite ease-in-out}@keyframes pulse-reset-confirm{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.08)}}.laps-container{width:min(340px,84vw);display:flex;flex-direction:column;margin-top:14px}.session-meta-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding-bottom:6px;border-bottom:1px dashed rgba(128,128,128,.22);margin-bottom:2px}.session-title-input{background:transparent;border:1px solid transparent;color:var(--time-color);font-family:var(--font-ui);font-size:11px;font-weight:600;letter-spacing:.02em;padding:3px 6px;border-radius:5px;flex:1;min-width:0;transition:all .15s ease;outline:none}.session-title-input::placeholder{color:var(--label-color);opacity:.75;font-weight:400}.session-title-input:hover{border-color:#80808040;background:#80808014}.session-title-input:focus{border-color:var(--arc-color);background:var(--dial-bg);box-shadow:0 0 0 1px var(--arc-color)}.session-time-badge{font-family:var(--font-ui);font-size:11px;color:var(--label-color);opacity:.95;white-space:nowrap}.lap-tod{font-family:var(--font-ui);font-size:10px;color:var(--label-color);opacity:.88;white-space:nowrap;letter-spacing:.02em}.laps-header{display:flex;justify-content:space-between;align-items:center;padding:6px 0 4px;border-bottom:1px solid rgba(128,128,128,.22)}.laps-toggle-btn{display:inline-flex;align-items:center;gap:6px;background:#80808024;border:1px solid rgba(128,128,128,.24);padding:3px 8px;margin-left:-2px;border-radius:6px;cursor:pointer;color:var(--time-color);transition:all .15s ease}.laps-toggle-btn:hover{background:#80808038;border-color:#80808061;color:var(--time-color);transform:translateY(-.5px)}.laps-toggle-btn:active{transform:scale(.96)}.laps-toggle-chevron{transition:transform .2s ease;opacity:.85;color:var(--arc-color)}.laps-toggle-btn:hover .laps-toggle-chevron{opacity:1}.laps-container.is-collapsed .session-meta-row,.laps-container.is-collapsed .laps-cols-header,.laps-container.is-collapsed .laps-list,.laps-container.is-collapsed .laps-footer{display:none!important}.laps-container.is-collapsed{align-items:center}.laps-container.is-collapsed .laps-header{border-bottom:none;justify-content:center;padding:4px 0;width:100%}.laps-container.is-collapsed .laps-toggle-btn{margin-left:0;background:#80808029;border:1px solid rgba(128,128,128,.28);padding:5px 14px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.laps-container.is-collapsed .laps-toggle-btn:hover{background:#80808042;border-color:#80808073;color:var(--time-color)}.laps-container.is-collapsed .laps-toggle-chevron{transform:rotate(180deg)}.laps-count{font-family:var(--font-ui);font-size:10px;font-weight:600;letter-spacing:.08em;color:inherit;text-transform:uppercase}.laps-cols-header{display:flex;align-items:center;gap:14px}.col-lbl-split{min-width:56px;text-align:right;font-family:var(--font-ui);font-size:10px;font-weight:600;letter-spacing:.12em;color:var(--label-color);text-transform:uppercase;opacity:.75}.col-lbl-total{min-width:64px;text-align:right;font-family:var(--font-ui);font-size:10px;font-weight:600;letter-spacing:.12em;color:var(--label-color);text-transform:uppercase;opacity:.75}.laps-footer{display:flex;justify-content:space-between;align-items:center;padding:10px 0 4px;border-top:1px solid rgba(128,128,128,.22);margin-top:4px}.laps-summary-label{font-family:var(--font-ui);font-size:11px;font-weight:600;color:var(--time-color);opacity:.88;letter-spacing:.03em}.laps-actions{display:flex;align-items:center;gap:6px}.lap-action-btn{display:inline-flex;align-items:center;gap:5px;background:#8080801f;border:1px solid rgba(128,128,128,.18);color:var(--time-color);font-family:var(--font-ui);font-size:11px;font-weight:500;letter-spacing:.04em;padding:4px 9px;border-radius:6px;cursor:pointer;transition:all .15s ease;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.lap-action-btn:hover{background:#80808038;border-color:#80808040}.lap-action-btn:active{transform:scale(.95)}.lap-action-btn.is-success{background:#10b98133!important;color:#10b981!important;border-color:#10b98166!important}.laps-list{width:100%;display:flex;flex-direction:column}.lap-item{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-ui);font-size:12px;color:var(--label-color);padding:6px 0;border-bottom:1px solid rgba(128,128,128,.22);transition:background .15s}.lap-item:first-child{border-top:none}.lap-n-wrap{display:flex;align-items:center;gap:6px;min-width:0;flex:1}.lap-n{opacity:.92;font-size:12px;white-space:nowrap}.lap-note-input{background:transparent;border:1px solid transparent;color:var(--time-color);font-family:var(--font-ui);font-size:11px;padding:1px 5px;border-radius:4px;width:68px;transition:all .15s ease;outline:none}.lap-note-input::placeholder{color:var(--label-color);opacity:.8}.lap-note-input:hover{border-color:#80808040;background:#80808014}.lap-note-input:focus{border-color:var(--arc-color);background:var(--dial-bg);width:96px;box-shadow:0 0 0 1px var(--arc-color)}.lap-times-wrap{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-shrink:0}.lap-t{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:13px;color:var(--time-color);font-weight:350;min-width:56px;text-align:right;transition:color .15s ease}.lap-total{opacity:.65;font-size:12px;font-family:var(--font-display);font-variant-numeric:tabular-nums;color:var(--time-color);min-width:64px;text-align:right}.lap-fastest .lap-t{color:#10b981!important;font-weight:350}.lap-slowest .lap-t{color:#ef4444!important;font-weight:350}.stopwatch-widget{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%}.top-actions{position:fixed;top:16px;right:16px;display:flex;align-items:center;gap:8px;z-index:200}.action-btn{width:38px;height:38px;border-radius:10px;background:#80808024;color:var(--time-color);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:200;transition:background .15s,transform .12s,color .35s;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.action-btn:hover{background:#8080803d}.action-btn:active{transform:scale(.93)}.action-btn[aria-expanded=true]{background:#80808047}.pip-placeholder{display:none;align-items:center;justify-content:center;padding:40px 20px;text-align:center}.pip-placeholder-card{background:var(--dial-bg);border:1px solid var(--bezel-stroke);border-radius:20px;padding:36px 32px;max-width:320px;display:flex;flex-direction:column;align-items:center;box-shadow:0 12px 36px #0000002e;transition:background .35s,border-color .35s}.pip-placeholder-icon{color:var(--arc-color);margin-bottom:14px}.pip-placeholder-title{font-family:var(--font-ui);font-size:16px;font-weight:600;color:var(--time-color);margin:0 0 6px}.pip-placeholder-sub{font-family:var(--font-ui);font-size:12px;color:var(--label-color);margin:0}.btn-restore-pip{margin-top:18px;background:var(--accent);color:#fff;border:none;border-radius:9999px;padding:10px 22px;font-family:var(--font-ui);font-size:13px;font-weight:600;cursor:pointer;transition:transform .12s ease,opacity .15s ease,box-shadow .15s ease;box-shadow:0 4px 14px #0000002e;white-space:nowrap}.btn-restore-pip:hover{transform:scale(1.04);box-shadow:0 6px 20px #00000040}.btn-restore-pip:active{transform:scale(.97)}body.pip-mode{margin:0;padding:12px 10px;background-color:var(--tool-bg);min-height:100vh;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow-x:hidden;font-family:var(--font-ui)}body.pip-mode .dial-svg{width:min(290px,86vw);height:min(290px,86vw)}body.pip-mode .controls{margin-top:14px;gap:20px}body.pip-mode .btn-main{width:60px;height:60px;border-radius:50%;font-size:12px}body.pip-mode .btn-ghost{min-width:50px;width:auto;height:auto;font-size:11px;padding:8px 4px}body.pip-mode .laps-list{max-height:120px;overflow-y:auto}:fullscreen .content-section,:fullscreen .site-footer,html.is-fullscreen .content-section,html.is-fullscreen .site-footer{display:none!important}:fullscreen .tool-section,html.is-fullscreen .tool-section{min-height:100vh;min-height:100dvh;padding:24px;justify-content:center}:fullscreen .dial-scale-ctrl,html.is-fullscreen .dial-scale-ctrl{display:flex!important;margin-bottom:12px;gap:6px;background:#8080801a;padding:3px 10px;border-radius:9999px;border:1px solid var(--bezel-stroke);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}:fullscreen .dial-svg,html.is-fullscreen .dial-svg{width:min(var(--dial-size, 380px),92vw,68vh);height:min(var(--dial-size, 380px),92vw,68vh);max-width:92vw;max-height:68vh}:fullscreen .controls,html.is-fullscreen .controls{margin-top:20px;gap:32px}:fullscreen .btn-main,html.is-fullscreen .btn-main{width:72px;height:72px;border-radius:50%;aspect-ratio:1 / 1;font-size:13px;flex-shrink:0}:fullscreen .btn-ghost,html.is-fullscreen .btn-ghost{min-width:60px;width:auto;height:auto;font-size:12px;padding:10px 8px}:fullscreen .laps-list,html.is-fullscreen .laps-list{max-width:440px}.settings-panel{position:fixed;top:62px;right:16px;z-index:200;background:var(--dial-bg);border:1px solid var(--bezel-stroke);border-radius:14px;padding:8px 6px;min-width:180px;max-width:220px;box-shadow:0 12px 40px #00000038,0 2px 8px #0000001f;transform-origin:top right;transition:opacity .15s ease,transform .15s ease}.settings-panel[aria-hidden=true]{opacity:0;transform:scale(.92) translateY(-6px);pointer-events:none}.settings-panel[aria-hidden=false]{opacity:1;transform:scale(1) translateY(0)}.settings-title{font-family:var(--font-ui);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--label-color);margin:4px 10px 6px}.face-row{display:flex;align-items:center;gap:10px;width:100%;padding:7px 10px;border:none;border-radius:8px;background:none;cursor:pointer;font-family:var(--font-ui);font-size:13px;font-weight:400;color:var(--time-color);text-align:left;transition:background .12s}.face-row:hover{background:#8080801f}.face-row.active{background:#80808029;font-weight:600}.face-dot{width:13px;height:13px;border-radius:50%;border:2px solid transparent;flex-shrink:0;display:inline-block}.face-dot-custom{box-shadow:0 0 3px #0000004d}.custom-color-panel{margin:6px 4px 10px;padding:9px 8px;background:#80808012;border:1px solid var(--bezel-stroke);border-radius:10px;animation:drawer-slide-down .16s ease-out}@keyframes drawer-slide-down{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.custom-color-group{display:flex;flex-direction:column;gap:6px}.custom-color-header{display:flex;align-items:center;justify-content:space-between}.custom-color-label{font-family:var(--font-ui);font-size:9.5px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--label-color)}.custom-color-picker-wrap{display:flex;align-items:center;gap:5px}.custom-color-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:17px;height:17px;padding:0;border:1px solid rgba(128,128,128,.4);border-radius:50%;cursor:pointer;background:transparent;overflow:hidden;vertical-align:middle}.custom-color-input::-webkit-color-swatch-wrapper{padding:0}.custom-color-input::-webkit-color-swatch{border:none;border-radius:50%}.custom-color-input::-moz-color-swatch{border:none;border-radius:50%}.custom-color-hex{font-family:var(--font-display);font-size:10px;color:var(--time-color);opacity:.85}.custom-swatches-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.swatch-btn{width:100%;height:18px;border-radius:4px;border:1px solid rgba(128,128,128,.25);cursor:pointer;transition:transform .1s ease,box-shadow .1s ease;padding:0}.swatch-btn:hover{transform:scale(1.1);box-shadow:0 2px 5px #00000040;z-index:1}.swatch-btn.active{box-shadow:0 0 0 2px var(--accent, #3b82f6);transform:scale(1.06)}.settings-divider{height:1px;background:var(--bezel-stroke);margin:6px 10px;opacity:.5}.layout-icon{width:13px;height:13px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;opacity:.85;color:var(--time-color)}.time-center,.pulse-disc,.pulse-group,[data-layout=clean] .bezel-ring,[data-layout=clean] .tick-group,[data-layout=clean] .sub-dial-ring,[data-layout=clean] .time-watch{display:none}[data-layout=clean] .time-center{display:block}[data-layout=clean] .arc-track,[data-layout=clean] #sw-arc{stroke-width:15}[data-layout=pulse] .bezel-ring,[data-layout=pulse] .tick-group,[data-layout=pulse] .arc-track,[data-layout=pulse] #sw-arc,[data-layout=pulse] .arc-dot,[data-layout=pulse] .dial-center-disc,[data-layout=pulse] .sub-dial-ring,[data-layout=pulse] .time-watch{display:none}[data-layout=pulse] .pulse-disc,[data-layout=pulse] .pulse-group,[data-layout=pulse] .time-center{display:block}.home-games-container{max-width:1040px;margin:54px auto 48px;padding:36px 0 32px;border-top:1px solid var(--surface-border);border-bottom:1px solid var(--surface-border)}.home-games-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:22px;flex-wrap:wrap;gap:12px}.home-games-title{font-family:Lora,Georgia,serif;font-size:clamp(22px,3.5vw,28px);font-weight:700;color:var(--page-text);margin:0;line-height:1.2}.home-games-all-link{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-ui);font-size:13.5px;font-weight:600;color:var(--accent);text-decoration:none;transition:gap .15s ease,opacity .15s ease}.home-games-all-link:hover{gap:8px;opacity:.85}.home-challenges-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;width:100%}@media(max-width:960px){.home-challenges-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:580px){.home-challenges-grid{grid-template-columns:1fr}}.home-game-link{display:flex;align-items:center;gap:14px;background:var(--surface-card);border:1px solid var(--surface-border);border-radius:12px;padding:14px 16px;text-decoration:none;transition:all .16s ease}.home-game-link:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 6px 20px #0000001f}.game-link-icon{font-size:24px;line-height:1;flex-shrink:0;width:42px;height:42px;display:flex;align-items:center;justify-content:center;background:var(--surface-card-sub);border-radius:10px}.game-link-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex-grow:1}.game-link-title{font-family:var(--font-ui);font-size:14.5px;font-weight:700;color:var(--page-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.game-link-sub{font-family:var(--font-ui);font-size:12px;color:var(--page-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.game-link-arrow{color:var(--page-text-muted);flex-shrink:0;transition:transform .16s ease,color .16s ease}.home-game-link:hover .game-link-arrow{transform:translate(3px);color:var(--accent)}.content-section{background:var(--page-bg);padding:72px 24px 80px;transition:background-color .35s ease}.content-inner{max-width:640px;margin:0 auto}.content-inner h1{font-family:Lora,Georgia,serif;font-size:clamp(28px,5vw,42px);font-weight:700;color:var(--page-text);margin:0 0 18px;line-height:1.15}.content-inner .intro{font-family:DM Sans,system-ui,sans-serif;font-size:18px;line-height:1.65;color:var(--page-intro);margin:0 0 48px}.content-inner h2{font-family:Lora,Georgia,serif;font-size:clamp(20px,3vw,26px);font-weight:600;color:var(--page-text);margin:52px 0 14px;line-height:1.25}.content-inner p,.content-inner li{font-family:DM Sans,system-ui,sans-serif;font-size:16px;line-height:1.75;color:var(--page-text-muted)}.content-inner p{margin:0 0 16px}.content-inner ol,.content-inner ul{padding-left:22px;margin:0 0 16px}.content-inner li{margin-bottom:8px}.content-inner strong{color:var(--page-text)}.content-inner code{font-family:DM Mono,monospace;font-size:14px;background:var(--table-code-bg);padding:1px 5px;border-radius:3px;color:var(--page-text)}.content-inner kbd{font-family:DM Mono,monospace;font-size:13px;background:var(--kbd-bg);border:1px solid var(--kbd-border);box-shadow:0 1px #0000001f;padding:2px 7px;border-radius:4px;color:var(--kbd-text);font-weight:500}.btn-copy-trigger{display:inline-flex;align-items:center;gap:6px;background:var(--surface-light, rgba(128,128,128,.08));border:1px solid var(--border, rgba(128,128,128,.22));color:var(--page-text);font-family:var(--font-ui, system-ui, sans-serif);font-size:13.5px;font-weight:600;padding:2px 10px;border-radius:6px;cursor:pointer;vertical-align:middle;line-height:1.4;margin-right:4px;box-shadow:0 1px 2px #0000000d;transition:all .15s ease}.btn-copy-trigger:hover{background:var(--surface, #ffffff);border-color:var(--accent);color:var(--accent);transform:translateY(-1px);box-shadow:0 3px 8px #0000001f}.btn-copy-trigger:active{transform:translateY(0);box-shadow:0 1px 2px #0000000f}.btn-copy-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.trigger-dot{width:11px;height:11px;border-radius:50%;border:1.5px solid transparent;display:inline-block;flex-shrink:0;box-sizing:border-box}.faq{margin-top:8px}.faq details{border-bottom:1px solid var(--surface-border)}.faq details:first-child{border-top:1px solid var(--surface-border)}.faq summary{font-family:DM Sans,system-ui,sans-serif;font-size:16px;font-weight:600;color:var(--page-text);cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;padding:16px 0;user-select:none}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-size:22px;font-weight:300;color:var(--accent);line-height:1;flex-shrink:0}.faq details[open]>summary:after{content:"−"}.faq details p{margin:0 0 16px;padding-left:0}.site-footer{background:var(--footer-bg);border-top:1px solid var(--footer-border);color:var(--footer-text);padding:28px 24px;transition:background-color .35s ease,border-color .35s ease}.footer-inner{max-width:640px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;font-family:DM Sans,system-ui,sans-serif;font-size:13px;gap:16px;flex-wrap:wrap}.footer-inner strong{color:var(--footer-text);font-weight:500}.footer-links{display:flex;gap:16px}.footer-links a{color:var(--footer-text);text-decoration:none;transition:color .15s}.footer-links a:hover{color:var(--footer-text-hover)}
