*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit}button,select,input{touch-action:manipulation}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.4}:focus-visible{outline-offset:3px;outline:3px solid #5686ff}.app{--bg:#f4f6fa;--surface:#fff;--ink:#202b40;--muted:#6d788b;--border:#e2e7f0;--accent:#365ce8;--soft:#edf1ff;background:var(--bg);min-height:100dvh;color:var(--ink);padding:0 24px}.app.theme-dark{--bg:#101623;--surface:#192232;--ink:#edf2ff;--muted:#a4b0c7;--border:#303c52;--accent:#94aaff;--soft:#263451}@media (prefers-color-scheme:dark){.app.theme-system{--bg:#101623;--surface:#192232;--ink:#edf2ff;--muted:#a4b0c7;--border:#303c52;--accent:#94aaff;--soft:#263451}}.site-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;max-width:1100px;height:88px;margin:auto;display:flex}a{color:inherit;text-decoration:none}.brand{color:var(--accent);align-items:center;gap:10px;font-size:32px;display:flex}.brand span{letter-spacing:2px;color:var(--ink);font-size:14px;font-weight:800}nav{color:var(--muted);gap:20px;font-size:13px;display:flex}nav a[aria-current]{color:var(--accent);font-weight:700}main{max-width:740px;margin:auto;padding:46px 0 24px}.heading{text-align:center;margin-bottom:28px}.eyebrow{color:var(--accent);letter-spacing:3px;font-size:11px;font-weight:700}h1{letter-spacing:-1px;margin:12px 0;font-size:30px}.heading>p:last-child{color:var(--muted);font-size:14px}.timer-card{background:var(--surface);border:1px solid var(--border);border-radius:24px;padding:30px 40px;box-shadow:0 12px 50px #17295508}.mode-tabs{background:var(--bg);border-radius:12px;max-width:340px;margin:auto;padding:5px;display:flex}.mode-tabs button{color:var(--muted);background:0 0;border:0;border-radius:8px;flex:1;padding:10px;font-size:14px}.mode-tabs button[aria-pressed=true]{background:var(--surface);color:var(--accent);font-weight:700;box-shadow:0 2px 6px #0000000a}.time-display{font-variant-numeric:tabular-nums;letter-spacing:-3px;text-align:center;overflow-wrap:anywhere;margin:38px 0 22px;font-size:clamp(30.4px,7.6vw,77.9px);font-weight:600}.rounds{text-align:center;color:var(--accent);margin:-8px 0 20px;font-size:16px}.rounds small{color:var(--muted);margin-top:8px;font-size:12px;display:block}.progress-area{color:var(--muted);align-items:center;gap:12px;font-size:11px;display:flex}progress{background:var(--bg);width:100%;height:6px;accent-color:var(--accent);direction:rtl;border:0;border-radius:20px}progress::-webkit-progress-bar{background:var(--bg);border-radius:20px}progress::-webkit-progress-value{background:var(--accent);border-radius:20px}progress::-moz-progress-bar{background:var(--accent);border-radius:20px}button{color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:11px 16px}button:hover:enabled{border-color:var(--accent)}button.primary{background:var(--accent);color:var(--surface);border-color:var(--accent);min-width:140px;padding:13px 32px;font-weight:700}.theme-dark button.primary{color:#101623}.main-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin:26px 0 30px;display:flex}.timer-display-area{display:flow-root;position:relative}.full-button{color:var(--muted);padding:6px 10px;font-size:22px;position:absolute;top:0;right:0}.configuration{border-top:1px solid var(--border);padding-top:24px}fieldset{border:0;margin:0;padding:0}legend,.section-label{color:var(--muted);margin-bottom:12px;font-size:12px}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select{color:var(--ink);background:var(--bg);border:1px solid var(--border);border-radius:8px}select{max-width:100%;padding:10px}input[type=checkbox],input[type=radio],input[type=range]{accent-color:var(--accent)}input[type=range]{width:100%}.presets{margin-top:24px}.preset-buttons{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.preset-buttons button{padding:10px 2px;font-size:13px}.extension-buttons{gap:8px}.extension-buttons button{color:var(--accent);background:var(--soft);flex:1}.comparison{grid-template-columns:1fr 1.5fr;gap:14px;margin-top:20px;display:grid}.comparison label{color:var(--muted);font-size:11px}.comparison select{width:100%;margin-top:8px;font-size:12px;display:block}.repeat-settings{flex-wrap:wrap;align-items:center;gap:14px;margin-top:22px;font-size:13px;display:flex}.repeat-settings input[type=number]{width:85px;margin-left:10px;padding:8px}.advanced{border:1px solid var(--border);background:var(--surface);border-radius:14px;margin-top:18px;padding:20px 24px}summary{cursor:pointer;color:var(--muted);font-size:14px}.settings-grid{grid-template-columns:1fr 1fr;gap:22px;margin-top:26px;display:grid}.settings-grid>label{flex-direction:column;gap:10px;font-size:13px;display:flex}.settings-grid label.check{flex-direction:row;align-items:center}.sound-actions{flex-wrap:wrap;gap:6px;display:flex}.sound-actions button{font-size:12px}.audio-files{border-top:1px solid var(--border);grid-column:1/-1;padding-top:18px}.upload{flex-direction:column;gap:12px;font-size:14px;display:flex}input[type=file]{max-width:100%;font-size:13px}.audio-files p,.browser-notice{color:var(--muted);font-size:12px;line-height:1.8}.audio-files ul{padding:0;list-style:none}.audio-files li{justify-content:space-between;align-items:center;gap:10px;margin-top:8px;font-size:13px;display:flex}.audio-files li span{overflow-wrap:anywhere}.browser-notice{text-align:center;margin:24px 10px 0}footer{text-align:center;max-width:1100px;color:var(--muted);letter-spacing:1px;margin:auto;padding:22px;font-size:11px}.status-message{background:var(--soft);border-radius:10px;padding:14px;font-size:13px;line-height:1.7}.status-message button{float:right;padding:2px 8px}.toast{background:var(--ink);color:var(--surface);z-index:20;text-align:center;border-radius:14px;max-width:90vw;padding:16px 24px;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.modal-backdrop{z-index:30;background:#0007;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.completion{background:var(--surface);border:1px solid var(--border);color:var(--ink);text-align:center;border-radius:24px;width:min(100%,380px);padding:36px}.completion-icon{color:var(--accent);font-size:40px}.completion p{color:var(--muted);font-variant-numeric:tabular-nums}.close-full{z-index:40;top:max(18px, env(safe-area-inset-top));right:max(18px, env(safe-area-inset-right));padding:3px 15px;font-size:26px;position:fixed}.is-fullscreen{z-index:10;padding:64px 20px 20px;position:fixed;inset:0;overflow:auto}.is-fullscreen .site-header,.is-fullscreen .heading,.is-fullscreen .configuration,.is-fullscreen .progress-area,.is-fullscreen .reset,.is-fullscreen .full-button,.is-fullscreen .advanced,.is-fullscreen .mode-tabs,.is-fullscreen .browser-notice,.is-fullscreen footer{display:none}.is-fullscreen main{flex-direction:column;justify-content:center;width:100%;max-width:none;min-height:calc(100dvh - 84px);padding:0;display:flex}.is-fullscreen .timer-card{box-shadow:none;background:0 0;border:0;padding:0}.is-fullscreen .time-display{letter-spacing:-.04em;margin:20px 0;font-size:clamp(34.2px,13.3vw,199.5px)}.is-fullscreen .main-actions{margin:24px 0}@media (width<=560px){.app{padding:0 14px}.site-header{height:68px}.brand span{font-size:11px}nav{gap:12px;font-size:12px}main{padding-top:28px}.timer-card{border-radius:18px;padding:24px 18px}.time-display{letter-spacing:-2px;margin-top:30px}.main-actions{gap:8px}button.primary{min-width:120px;padding:12px 20px}.main-actions button{padding:12px}.comparison,.settings-grid{grid-template-columns:1fr}.advanced{padding:18px}.preset-buttons{grid-template-columns:repeat(3,1fr)}.is-fullscreen{padding:64px 12px 16px}}@media (height<=500px) and (orientation:landscape){.is-fullscreen .time-display{margin:0;font-size:clamp(38px,19.95vh,104.5px)}.is-fullscreen .main-actions{margin:12px 0}.is-fullscreen .rounds{margin:0}}.time-display input[type=text]{color:inherit;font:inherit;font-variant-numeric:inherit;letter-spacing:inherit;text-align:center;opacity:1;-webkit-text-fill-color:currentColor;background:0 0;border:0;border-radius:0;padding:0}.time-display input:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
