
/* 高田クロック Web アラーム */
.alarm-panel{background:#101010;color:#eee;border:1px solid #3b2222;border-radius:14px;padding:18px;margin:18px auto;max-width:960px;width:calc(100% - 20px);font-family:system-ui,sans-serif}
.alarm-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.alarm-heading h2{font-size:1.2rem;color:#f44}.alarm-note{font-size:.78rem;color:#aaa;margin-bottom:12px;line-height:1.6}.alarm-slots{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:10px}.alarm-slot{background:#191919;border:1px solid #393939;border-radius:10px;padding:12px}.alarm-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.alarm-top strong{color:#ff5555}.alarm-time{color:#fff;background:#080808;border:1px solid #666;border-radius:6px;padding:7px;font-size:1.35rem;max-width:140px;color-scheme:dark}.alarm-slot select{background:#111;color:white;border:1px solid #555;border-radius:5px;padding:6px;max-width:100%}.alarm-repeat{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px;align-items:center}.alarm-repeat label{font-size:.75rem;border:1px solid #444;border-radius:5px;padding:4px 6px;cursor:pointer}.alarm-repeat input{accent-color:#e22}.alarm-slot button,.alarm-heading button{border:1px solid #a33;background:#2b1111;color:white;border-radius:7px;padding:7px 10px;cursor:pointer}.alarm-status{font-size:.8rem;color:#aaa;margin-top:10px;min-height:1em}.alarm-overlay[hidden]{display:none!important}.alarm-overlay{position:fixed;inset:0;background:rgba(0,0,0,.94);z-index:99999;display:grid;place-items:center;padding:20px}.alarm-dialog{width:min(440px,100%);border:2px solid #d22;border-radius:18px;background:#151515;color:white;text-align:center;padding:30px 20px;box-shadow:0 0 35px #8a1010}.alarm-dialog h2{font-size:2rem;color:#f55}.alarm-ring{font-size:4rem;color:#f55;animation:alarm-pulse .8s infinite alternate}.alarm-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:26px}.alarm-actions button{padding:14px 16px;border:0;border-radius:9px;font-size:1rem;font-weight:700;cursor:pointer}.alarm-actions button:first-child{background:#e2a72d;color:#111}.alarm-actions button:last-child{background:#cf2929;color:white}@keyframes alarm-pulse{to{transform:scale(1.2);opacity:.5}}@media(max-width:600px){.alarm-panel{margin:12px auto;padding:12px}.alarm-slots{grid-template-columns:1fr}}

#alarmBack{background:#211;color:#fff;border:1px solid #a33;border-radius:8px;padding:10px 16px;margin-bottom:16px;cursor:pointer}
.alarm-panel:not([hidden]){margin:24px auto}
/* 音声選択・音量・大きなスヌーズ・スワイプ解除 */
.alarm-middle{margin-top:8px}
.alarm-sound-row{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:14px;flex-wrap:wrap;font-size:.9rem}
.alarm-sound-row label{display:flex;align-items:center;gap:8px}
.alarm-sound-row select{padding:9px;font-size:1rem}
.alarm-volume-row{display:flex;align-items:center;gap:12px;margin-top:12px;font-size:.9rem}
.alarm-volume-row span{min-width:70px}
.alarm-volume-row input{flex:1;accent-color:#e33;min-width:80px}
.alarm-actions{display:flex;flex-direction:column;align-items:stretch}
.alarm-actions #alarmSnooze{min-height:110px;width:100%;font-size:1.7rem;border-radius:18px;background:#e2a72d;color:#111}
.alarm-actions #alarmDismiss{min-height:78px;width:100%;font-size:1.1rem;border:2px solid #f44;border-radius:40px;background:linear-gradient(90deg,#571111,#190808);color:white;touch-action:pan-y;user-select:none;cursor:grab}
.alarm-actions #alarmDismiss:active{background:#a22}
