.app{max-width:960px;margin:0 auto;padding:24px 16px 48px;text-align:center;container-type:inline-size}.title{margin:0;padding-top:36px}.subtitle{display:block;width:20cqi;height:auto;margin:6px auto 20px}.gadget-wrap{user-select:none;-webkit-user-select:none}.gadget-svg{position:relative}.gadget-svg-static{display:block;width:100%;height:auto;pointer-events:none;user-select:none;-webkit-user-select:none}.gadget-svg-interactive,.gadget-hits{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.gadget-hit{position:absolute;pointer-events:auto;touch-action:none}.gadget-svg-interactive svg{vertical-align:top}.gadget-help-button{position:absolute;top:calc(12% - 36px);left:calc(100% * 10 / 211);z-index:3;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:#ffffffd9;box-shadow:0 2px 8px #0000001f;color:#8a8f98;font:inherit;font-size:.95rem;font-weight:700;line-height:28px;cursor:pointer;transition:background .2s ease,color .2s ease}.gadget-help-button:hover{background:#fff;color:#4a4f57}.gadget-help-button.on{background:#bce2e8;color:#4a4f57}.gadget-help-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;animation:gadget-help-in .2s ease-out}@keyframes gadget-help-in{0%{opacity:0}to{opacity:1}}.gadget-help-mask{display:block;width:100%;height:100%;overflow:visible}.gadget-help-dim{fill:#14161c9e}html.gadget-help-open{background-color:#65676c;background-color:color-mix(in srgb,rgb(20,22,28) 62%,#e8eaef)}html.gadget-help-open body{background-color:#e8eaef}.gadget-help-ring{fill:none;stroke:#bce2e8;stroke-width:1;animation:gadget-help-pulse 1.4s ease-in-out infinite}@keyframes gadget-help-pulse{0%,to{stroke-opacity:1;stroke-width:1}50%{stroke-opacity:.25;stroke-width:2.2}}.gadget-help-label{position:absolute;padding:1px 6px;border-radius:999px;background:#ffffffeb;color:#4a4f57;font-size:clamp(.62rem,1.4cqi,.75rem);font-weight:600;letter-spacing:.04em;line-height:1.4;white-space:nowrap}.gadget-help-label.below{transform:translate(-50%)}.gadget-help-label.left{transform:translate(-100%,-50%)}.gadget-help-label.primary{background:#bce2e8}.gadget-help-caption{position:absolute;left:7%;top:50%;width:36%;margin:0;transform:translateY(-50%);color:#fff;font-size:clamp(.62rem,1.8cqi,.95rem);line-height:1.55;text-align:left;word-break:auto-phrase;text-shadow:0 1px 3px rgba(0,0,0,.5)}.gadget-help-dismiss{font-size:.85em;opacity:.75}.legend{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px;margin-top:18px;font-size:.85rem;color:#b7bcc4}.legend .power-state{font-weight:600}.legend .power-state.on{color:#62d992}.legend .dim{width:100%;color:#6d727b;font-size:.78rem}.error{margin-top:14px;color:#e06060;font-size:.85rem}.silent-notice{position:fixed;left:16px;right:16px;bottom:24px;z-index:20;width:fit-content;max-width:360px;margin-inline:auto;padding:10px 16px;border-radius:12px;background:#4a4f57eb;color:#fff;font-size:.78rem;line-height:1.5;text-align:center;pointer-events:none;opacity:0;transform:translateY(6px);transition:opacity .25s ease,transform .25s ease}.silent-notice.show{opacity:1;transform:translateY(0)}.sleep-prevent-wrap{position:relative;display:inline-block;margin-top:20px}.sleep-prevent-notice{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,4px);padding:6px 12px;border-radius:8px;background:#4a4f57eb;color:#fff;font-size:.75rem;letter-spacing:.04em;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .2s ease,transform .2s ease}.sleep-prevent-notice.show{opacity:1;transform:translate(-50%)}.sleep-prevent{display:inline-flex;align-items:center;gap:12px;margin:0;padding:8px 14px 8px 16px;border:0;border-radius:999px;background:#ffffffb3;box-shadow:0 2px 10px #0000000f;color:#8a8f98;font:inherit;font-size:.85rem;letter-spacing:.04em;cursor:pointer;transition:background .2s ease,box-shadow .2s ease,color .2s ease}.sleep-prevent:hover{background:#ffffffe6;box-shadow:0 3px 14px #00000014}.sleep-prevent.on{color:#4a4f57}.sleep-prevent-label{line-height:1}.sleep-prevent-switch{position:relative;display:inline-block;width:36px;height:20px;border-radius:999px;background:#c8ccd2;transition:background .2s ease}.sleep-prevent.on .sleep-prevent-switch{background:#bce2e8}.sleep-prevent-thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0003;transition:transform .2s ease}.sleep-prevent.on .sleep-prevent-thumb{transform:translate(16px)}.sleep-prevent-state{min-width:2.2em;text-align:left;font-size:.75rem;font-weight:600;letter-spacing:.08em;color:#9aa0a8}.sleep-prevent.on .sleep-prevent-state{color:#96b4b9}.sleep-timer{margin:12px auto 0}.sleep-timer-pill{display:inline-flex;align-items:center;gap:10px;padding:6px 8px 6px 16px;border-radius:999px;background:#ffffffb3;box-shadow:0 2px 10px #0000000f;color:#8a8f98;font-size:.85rem;letter-spacing:.04em}.sleep-timer-label{line-height:1;white-space:nowrap}.sleep-timer-options{display:inline-flex;gap:2px}.sleep-timer-option{min-width:2.6em;padding:5px 8px;border:0;border-radius:999px;background:transparent;color:#9aa0a8;font:inherit;font-size:.75rem;font-weight:600;letter-spacing:.04em;cursor:pointer;transition:background .2s ease,color .2s ease}.sleep-timer-option:hover{background:#c8ccd259}.sleep-timer-option.on{background:#bce2e8;color:#4a4f57}.sleep-timer-meter{width:220px;max-width:70%;height:4px;margin:10px auto 0;border-radius:999px;background:#d5d8dd;overflow:hidden}.sleep-timer-meter-fill{width:100%;height:100%;border-radius:inherit;background:#b4b9c1;transform-origin:left center;transition:transform 1s linear,background .2s ease}.sleep-timer-meter.running .sleep-timer-meter-fill{background:#96c8d0}.sleep-timer-remaining{margin:6px 0 0;font-size:.75rem;letter-spacing:.04em;color:#9aa0a8;font-variant-numeric:tabular-nums}.about{box-sizing:border-box;width:calc(100% * 191 / 211);max-width:700px;margin:48px auto 0;padding:25px;border-radius:16px;background:#ffffff8c;box-shadow:0 2px 10px #0000000d;text-align:left}.about+.about{margin-top:16px}.about-heading{margin:0 0 14px;color:#96b4b9;font-size:1.1rem;font-weight:600;letter-spacing:.06em;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}.about-body{margin:0;color:#8a8f98;font-size:.95rem;line-height:1.8;letter-spacing:.02em;word-break:auto-phrase;white-space:pre-line}.about-body+.about-body{margin-top:8px}.about-list{padding-left:1.4em}.about-body.making-note{margin-top:4px;font-size:.8rem;line-height:1.6}.making-steps{margin:16px 0 0;padding:0;list-style:none}.making-step{display:flex;gap:14px;align-items:flex-start}.making-step+.making-step{margin-top:14px}.making-step-title{margin:4px 0 2px;color:#6f747d;font-size:.95rem;font-weight:600;letter-spacing:.02em}.making-play{flex:none;display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid rgb(150,180,185);border-radius:50%;background:transparent;color:#96b4b9;cursor:pointer;transition:background-color .15s,color .15s}.making-play[aria-pressed=true]{background:#96b4b9;color:#fff}.making-play svg{width:14px;height:14px;fill:currentColor}.making-step-subs{padding-left:48px}.making-subs{margin:8px 0 0;padding:0;list-style:none}.making-sub{display:flex;gap:10px;align-items:center}.making-sub+.making-sub{margin-top:6px}.making-sub-label{color:#8a8f98;font-size:.9rem;font-variant-numeric:tabular-nums}.making-play-small{width:28px;height:28px}.making-play-small svg{width:12px;height:12px}.footer{box-sizing:border-box;width:calc(100% * 191 / 211);max-width:700px;margin:56px auto 0;padding-top:20px;border-top:1px solid #8a8f98;text-align:left}.footer-copyright{margin:0;color:#8a8f98;font-size:.8rem;letter-spacing:.02em}.about-link{color:#96b4b9;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.output-device{position:fixed;top:16px;right:16px;z-index:10;text-align:left}.output-device-button{display:inline-flex;align-items:center;gap:8px;max-width:280px;padding:7px 14px 7px 12px;border:0;border-radius:999px;background:#ffffffb3;box-shadow:0 2px 10px #0000000f;color:#8a8f98;font:inherit;font-size:.8rem;letter-spacing:.04em;cursor:pointer;transition:background .2s ease,box-shadow .2s ease,color .2s ease}.output-device-button:hover,.output-device-button.open{background:#ffffffe6;box-shadow:0 3px 14px #00000014;color:#4a4f57}.output-device-icon{flex:none;width:16px;height:16px}.output-device-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.output-device-caret{flex:none;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;opacity:.7;transition:transform .2s ease}.output-device-button.open .output-device-caret{transform:rotate(180deg)}.output-device-menu{position:absolute;top:calc(100% + 6px);right:0;width:max-content;min-width:100%;max-width:min(340px,calc(100vw - 32px));padding:6px;border-radius:12px;background:#fffffff5;box-shadow:0 6px 24px #0000001f}.output-device-note{margin:4px 8px 6px;color:#8a8f98;font-size:.72rem;line-height:1.5}.output-device-menu ul{margin:0;padding:0;list-style:none}.output-device-menu li button{display:block;width:100%;padding:7px 10px;border:0;border-radius:8px;background:transparent;color:#4a4f57;font:inherit;font-size:.8rem;text-align:left;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.output-device-menu li button:hover{background:#c8ccd259}.output-device-menu li[aria-selected=true] button{background:#bce2e8}:root{font-family:system-ui,-apple-system,Hiragino Sans,Noto Sans JP,sans-serif;line-height:1.5;color:#e6e8eb;background-color:#e8eaef;color-scheme:dark;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-height:100vh;min-height:100dvh}
