:root{color-scheme:light;--bg:#fff;--text:#222;--muted:#777;--line:#e8e8e8;--accent:#c52e56;--soft:#fafafa;--accent-soft:#fdf2f5;--control:#555;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}
:root[data-theme="dark"]{color-scheme:dark;--bg:#171819;--text:#ededed;--muted:#aaa;--line:#363638;--accent:#ed7899;--soft:#202123;--accent-soft:#302028;--control:#bbb}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:14px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}button{color:var(--text)}a:hover,button.text-button:hover,button.quiet-button:hover{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}button:focus-visible,select:focus-visible,input:focus-visible{outline-offset:3px}[hidden]{display:none!important}.skip-link{position:fixed;top:-100px;left:16px;padding:12px;background:var(--bg);z-index:10}.skip-link:focus{top:12px}.site-header{max-width:1120px;margin:0 auto;height:96px;padding:0 40px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:650;letter-spacing:1px}.brand-mark{width:17px;height:17px;border:2px solid var(--accent);border-radius:50%;position:relative}.brand-mark:after{content:"";position:absolute;left:6px;top:3px;width:4px;height:5px;border-left:1.5px solid var(--accent);border-bottom:1.5px solid var(--accent)}nav{display:flex;gap:28px;align-items:center;font-size:13px}nav [aria-current]{color:var(--accent)}.text-button,.quiet-button{padding:0;border:0;background:none}.text-button{font-size:13px}.quiet-button{color:var(--muted);font-size:12px}main{max-width:760px;margin:0 auto;padding:0 24px}.clock-section{text-align:center;padding:28px 0 41px}.clock-title{margin:0;font-size:28px;line-height:1.35;font-weight:600;letter-spacing:1px;color:var(--text)}.clock-description{margin:7px 0 0;font-size:13px;line-height:1.6;color:var(--muted)}.clock-wrap{position:relative;display:flex;justify-content:center;align-items:baseline;margin:16px 0 4px}.clock{font-family:"Arial",sans-serif;font-size:clamp(52px,10.8vw,120px);font-weight:600;line-height:1.18;font-variant-numeric:tabular-nums;letter-spacing:-5px;white-space:nowrap}.period{font-size:14px;color:var(--muted);margin-left:12px}.date{font-size:17px;letter-spacing:1px;margin:10px 0 7px}.timezone{font-size:12px;color:var(--muted);margin:0}.zone-separator{margin:0 9px}.clock-actions{display:flex;gap:16px;justify-content:center;align-items:center;margin-top:21px;color:var(--line)}.alarm-section{border-top:1px solid var(--line);padding-top:25px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:14px}.section-heading h2{font-size:18px;font-weight:600;margin:0;letter-spacing:.4px}.section-heading>span{font-size:12px;color:var(--muted)}.setup-row{display:flex;gap:38px;align-items:flex-start}.time-inputs{display:flex;align-items:flex-end;gap:12px;flex:0 0 260px}.field{display:flex;flex-direction:column;gap:8px}.field label{font-size:12px;color:var(--muted)}select{background:var(--bg);border:1px solid var(--line);border-radius:5px;padding:0 13px;height:52px;color:var(--text)}.time-inputs .field{flex:1;min-width:0}.time-inputs select{font-size:25px;font-family:Arial,sans-serif;font-variant-numeric:tabular-nums}.input-colon{height:52px;line-height:52px;font-size:25px;color:var(--muted)}.sound-field{flex:1;min-width:0}.sound-row{display:flex;gap:10px}.sound-row select{width:100%;min-width:0;flex:1}.outline-button{background:var(--bg);border:1px solid var(--line);border-radius:5px;min-height:44px;padding:10px 21px;font-size:13px;white-space:nowrap}.outline-button:hover{border-color:var(--accent);color:var(--accent)}.sound-row .outline-button{height:52px;padding:0 20px}.volume-row{display:flex;align-items:center;gap:16px;margin:22px 0 25px;color:var(--muted);font-size:12px}.volume-row input{accent-color:var(--accent);flex:1;height:22px;cursor:pointer}.volume-row output{width:36px;text-align:right;font-variant-numeric:tabular-nums}.primary-button{background:var(--accent);color:#fff;border:0;border-radius:5px;min-height:52px;font-size:15px;letter-spacing:1px;padding:12px 28px}.primary-button:hover{filter:brightness(.93)}:root[data-theme="dark"] .primary-button{color:#171819}.set-button{width:100%;display:flex;justify-content:center;align-items:center;gap:16px}.form-caption{color:var(--muted);font-size:12px;text-align:center;margin:10px 0 23px}.quick-times{display:flex;align-items:center;gap:18px}.quick-label{font-size:12px;color:var(--muted);white-space:nowrap}.quick-list{display:grid;grid-template-columns:repeat(8,1fr);width:100%;gap:4px}.quick-list button{border:0;background:none;border-radius:4px;padding:8px 3px;min-height:40px;font-size:13px;font-variant-numeric:tabular-nums}.quick-list button:hover,.quick-list button[aria-pressed="true"]{color:var(--accent);background:var(--accent-soft)}.wake-row{display:flex;gap:14px;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:19px;margin-top:24px;font-size:12px;color:var(--muted)}.wake-row label{display:flex;align-items:center;white-space:nowrap;color:var(--control);min-height:32px}.wake-row input{accent-color:var(--accent);margin:0 7px 0 0;width:14px;height:14px}.wake-row>span{text-align:right}.reliability-note{font-size:12px;color:var(--muted);line-height:1.9;margin:8px 0 0}.status{font-size:13px;color:var(--accent);margin:14px 0 0;line-height:1.8;overflow-wrap:anywhere}.status:empty{display:none}.guide-intro{margin-top:53px;padding-top:23px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted)}.guide-intro>a{color:var(--accent)}.guide{padding:8px 0 20px;line-height:1.95;color:var(--control)}.guide>section{margin-top:34px;scroll-margin-top:24px}.guide h2{font-size:19px;font-weight:600;color:var(--text);line-height:1.5;margin:0 0 13px}.guide p{margin:0 0 12px}.guide ol{padding-left:21px;margin:0}.guide li{padding-left:4px;margin-bottom:6px}.faq details{border-bottom:1px solid var(--line);padding:0}.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:16px 0}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-size:19px;color:var(--muted);font-weight:400}.faq details[open] summary:after{content:"−"}.faq h3{font-size:14px;color:var(--text);font-weight:500;margin:0}.faq details p{padding:0 22px 12px 0;font-size:13px}.tool-links{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.tool-links a{font-size:14px;color:var(--text);padding:12px 0}.tool-links a span{display:block;font-size:12px;color:var(--muted);margin-top:5px}.tool-links a:hover{color:var(--accent)}.site-footer{max-width:1120px;padding:28px 40px 36px;margin:28px auto 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}.site-footer>div{display:flex;gap:24px}.footer-dot{margin:0 10px}.running-panel{text-align:center;padding:7px 0 14px}.target-label{color:var(--muted);font-size:15px;margin:0}.target-label strong{color:var(--accent);font-size:22px;font-weight:550;font-variant-numeric:tabular-nums}.target-label>span{display:block;font-size:12px;margin-top:6px}.countdown-label{font-size:12px;color:var(--muted);margin:25px 0 6px}.countdown{font-size:46px;font-family:Arial,sans-serif;font-variant-numeric:tabular-nums;line-height:1.4;margin:0 0 24px;white-space:nowrap}.countdown span{font-size:12px;margin:0 12px 0 5px;font-family:inherit;color:var(--muted)}.running-actions{display:flex;justify-content:center;gap:28px;align-items:center}.audio-recovery{margin-top:25px;border-top:1px solid var(--line);padding-top:15px;font-size:12px;color:var(--accent)}.ringing-panel{text-align:center;border-top:3px solid var(--accent);background:var(--accent-soft);padding:26px 15px 30px}.ringing-kicker{color:var(--accent);font-size:14px;margin:0}.ringing-panel h2{font-size:26px;margin:9px 0}.ringing-panel p{color:var(--muted);font-size:13px}.ringing-panel .primary-button{min-width:220px;margin:8px 0}.snooze-actions{display:flex;justify-content:center;gap:26px;margin-top:10px}.snooze-actions button{background:none;border:0;min-height:44px;color:var(--accent);font-size:13px}.is-ringing .clock{color:var(--accent)}.clock-section:fullscreen{background:var(--bg);width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px}.clock-section:fullscreen .clock{font-size:clamp(54px,16vw,230px)}.clock-section:fullscreen .clock-actions{margin-top:30px}.clock-section:fullscreen .fullscreen-alert{color:var(--accent);font-size:18px;max-width:700px}.fullscreen-alert{margin-top:20px}.clock-section.fullscreen-fallback{position:fixed;inset:0;background:var(--bg);z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px}.clock-section.fullscreen-fallback .clock{font-size:clamp(52px,15vw,210px)}body.fullscreen-active{overflow:hidden}.prose-page{padding-top:44px;padding-bottom:35px}.prose-page h1{font-size:30px;font-weight:600;margin:0 0 8px}.prose-page .lead{color:var(--muted);font-size:14px}.prose-page section{border-top:1px solid var(--line);margin-top:30px;padding-top:25px}.prose-page h2{font-size:19px;margin:0 0 14px}.prose-page p{line-height:1.9;color:var(--control)}.duration-input{border:1px solid var(--line);border-radius:5px;padding:12px;width:95px;background:var(--bg);color:var(--text)}.tool-display{font:500 64px/1.4 Arial,sans-serif;font-variant-numeric:tabular-nums;margin:20px 0}.tool-buttons{display:flex;gap:12px;flex-wrap:wrap}.tool-description{font-size:13px;color:var(--muted)}
@media(max-width:700px){.site-header{padding:0 24px;height:78px}nav{gap:16px}nav a[aria-current]{display:none}.clock-section{padding:24px 0 32px}.clock{letter-spacing:-3px}.setup-row{gap:24px}.time-inputs{flex-basis:230px}.section-heading>span{font-size:11px}.quick-times{gap:10px}.quick-list{gap:2px}.quick-list button{font-size:12px}.site-footer{padding:24px}}
@media(max-width:480px){body{font-size:13px}.site-header{padding:0 20px;height:72px}.brand{font-size:16px;gap:8px}nav{gap:16px;font-size:12px}nav .text-button{font-size:12px}main{padding:0 22px}.clock-title{font-size:24px}.clock-description{font-size:12px;margin-top:6px}.clock-section{padding:20px 0 30px}.clock{font-size:clamp(48px,15vw,72px);letter-spacing:-2.5px}.clock-wrap{margin-top:18px}.period{font-size:11px;margin-left:6px}.date{font-size:14px;margin-top:12px}.timezone{font-size:10px;line-height:1.9}.zone-separator{margin:0 5px}.clock-actions{margin-top:17px}.section-heading{margin-bottom:21px}.section-heading h2{font-size:16px}.section-heading>span{max-width:140px;text-align:right;line-height:1.6}.setup-row{flex-direction:column;gap:17px}.time-inputs{width:100%;flex-basis:auto;gap:14px}.time-inputs select{font-size:25px}.sound-field{width:100%}.sound-row .outline-button{padding:0 22px}.volume-row{margin:19px 0 22px}.quick-times{align-items:flex-start;gap:12px}.quick-label{padding-top:10px}.quick-list{grid-template-columns:repeat(4,1fr);row-gap:2px}.quick-list button{font-size:13px}.form-caption{margin-bottom:18px}.wake-row{margin-top:22px;gap:12px;align-items:flex-start}.wake-row>span{max-width:165px;font-size:11px;padding-top:6px}.reliability-note{font-size:11px}.guide-intro{margin-top:38px}.guide h2{font-size:17px}.guide>section{margin-top:28px}.tool-links{grid-template-columns:1fr;gap:0}.tool-links a{border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:10px}.tool-links a span{margin:0}.site-footer{flex-direction:column;gap:12px;font-size:11px;margin-top:15px}.site-footer>div{gap:20px}.countdown{font-size:36px}.countdown span{font-size:11px;margin-right:7px;margin-left:3px}.ringing-panel h2{font-size:23px}.prose-page{padding-top:30px}.tool-display{font-size:48px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.field-label{font-size:12px;color:var(--muted)}.sound-toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;flex:1;height:52px;background:var(--bg);border:1px solid var(--line);border-radius:5px;padding:0 14px;text-align:left;font-size:14px}.sound-toggle:hover,.sound-toggle[aria-expanded="true"]{border-color:var(--accent)}.change-sound{font-size:11px;color:var(--muted);white-space:nowrap}.sound-panel{margin-top:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0 8px}.sound-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.sound-panel-heading h3{font-size:15px;font-weight:600;margin:0}.sound-panel-heading>span{font-size:11px;color:var(--muted)}.sound-categories{display:flex;flex-wrap:wrap;gap:5px;margin:12px 0}.sound-categories button{border:0;border-radius:3px;padding:8px 11px;min-height:40px;font-size:12px;background:transparent;color:var(--muted)}.sound-categories button[aria-pressed="true"]{color:var(--accent);background:var(--accent-soft)}.sound-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:26px}.sound-item{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line);min-width:0}.sound-choice{display:flex;flex:1;min-width:0;flex-direction:column;align-items:flex-start;gap:4px;padding:13px 0;border:0;background:none;text-align:left}.sound-name{font-size:13px;font-weight:500;color:var(--text)}.sound-note{font-size:11px;color:var(--muted);line-height:1.5}.sound-item.selected .sound-name{color:var(--accent)}.sound-item.selected .sound-name:after{content:" · 已选";font-size:11px;font-weight:400}.sound-audition{min-height:44px;min-width:44px;padding:8px 3px;border:0;background:none;color:var(--muted);font-size:12px;white-space:nowrap}.sound-audition:hover,.sound-audition[aria-pressed="true"]{color:var(--accent)}.close-sounds{display:block;min-height:44px;margin:4px auto 0}.sound-toggle:disabled{opacity:.6}
@media(max-width:480px){.sound-list{grid-template-columns:1fr}.sound-categories{gap:3px}.sound-categories button{padding:8px 10px}.sound-choice{padding:12px 0}.sound-panel-heading>span{font-size:10px}.sound-note{font-size:11px}.sound-row .outline-button{padding:0 16px}}
.fullscreen-alert{display:none}.clock-section:fullscreen .fullscreen-alert,.clock-section.fullscreen-fallback .fullscreen-alert{display:block}
