/* Clock alarm dialogs (5.1.1): the Nexus 6 simulator draws the Clock app in lp-deskclock.js; only the alarm overlays of desk-clock.js (the
   ringing alarm, label, ringtone and delete dialogs) use these rules. The ringing alarm is still the shared dialog;
   docs/audit-plan-2026-10.md 4.5 lists rebuilding it per image. */
@font-face{font-family:AndroidClock;src:url('assets/AndroidClock.ttf') format('truetype');font-display:swap}
.desk-dialog{max-height:calc(100% - 32px);display:flex;flex-direction:column}
.desk-dialog-scroll{overflow:auto;min-height:0;overscroll-behavior:contain;touch-action:pan-y}
.desk-day{display:flex!important;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;margin:0!important;border-bottom:1px solid #ffffff25;font-size:16px}
.desk-day input{width:24px!important;height:24px;flex:none;accent-color:#33b5e5}
.desk-day input[type=checkbox]{appearance:none;border:0!important;padding:0!important;background:transparent url('assets/btn_check_off_holo_dark.png') center/contain no-repeat!important}
.desk-day input[type=checkbox]:checked{background-image:url('assets/btn_check_on_holo_dark.png')!important}
.desk-time-picker{display:flex;justify-content:center;align-items:center;gap:12px;padding:14px 0}
.desk-time-picker>div{width:70px;text-align:center}
.desk-time-picker button{display:block;width:100%;border:0;background:none;color:#aaa;font-size:24px;height:38px}
.desk-time-picker input{font-size:28px;text-align:center;padding:8px 2px!important;border:0!important;border-top:2px solid #33b5e5!important;border-bottom:2px solid #33b5e5!important;border-radius:0!important;background:none!important;appearance:textfield}
.desk-time-picker input::-webkit-inner-spin-button{appearance:none}
.desk-ringing-time{font-family:AndroidClock,Roboto,sans-serif;font-size:64px;text-align:center;padding:20px 0}
/* AlarmActivity (alarm_activity.xml, dp x 0.906): the hour's colour; the 24 sp bold label an action bar from the top and the
   88 sp thin clock (32 sp AM/PM); the row with the 256 dp white pulse behind the alarm button and the snooze (#FF4081) /
   dismiss (white) circles that grow from 0.7 as the alarm is dragged to them; the circular reveal and the alert text.
   AlarmAlertFullScreenTheme sets windowTranslucentStatus: the view runs under the semi-transparent status bar
   (#66000000) and stops at the navigation bar, which the activity leaves alone. */
.screen:has(>#overlay-root>.dcal-lp) #status-bar{z-index:42}
.screen:has(>#overlay-root>.dcal-lp) .status-button{background:#0006}
.screen:has(>#overlay-root>.dcal-lp) #nav-bar{background:#000}
.dcal-lp{position:absolute;inset:0 0 var(--nb);z-index:41;background:var(--hour);color:#fff;overflow:hidden;font-family:Roboto,sans-serif;--snooze:0;--dismiss:0;--alarm:0}
.dcal-lp-content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center}
.dcal-lp-title{max-width:100%;margin:50.74px 0 0;font:700 21.74px Roboto,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dcal-lp-clock{display:flex;align-items:baseline;font:79.73px/1.1 RobotoThin,Roboto,sans-serif;font-weight:100}
.dcal-lp-clock small{font-size:28.99px}
.dcal-lp-row{position:relative;flex:1;width:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;justify-items:center}
.dcal-lp-pulse{position:absolute;left:50%;top:50%;width:231.94px;height:231.94px;margin:-115.97px 0 0 -115.97px;border-radius:50%;background:#fff;animation:dcal-pulse 1s cubic-bezier(.4,0,.2,1) infinite}
.dcal-lp-held .dcal-lp-pulse{animation-iteration-count:1}
@keyframes dcal-pulse{from{transform:scale(0);opacity:1}to{transform:scale(1);opacity:0}}
.dcal-lp-side{position:relative;width:72.48px;height:72.48px;padding:0;border:0;border-radius:50%;cursor:pointer;display:grid;place-items:center}
.dcal-lp-snooze{background:rgb(255 64 129/var(--snooze));transform:scale(calc(.7 + .3*var(--snooze)))}
.dcal-lp-dismiss{background:rgb(255 255 255/var(--dismiss));transform:scale(calc(.7 + .3*var(--dismiss)))}
.dcal-lp-icon{width:100%;height:100%;background:#fff;-webkit-mask:var(--icon) center/100% no-repeat;mask:var(--icon) center/100% no-repeat}
.dcal-lp-snooze .dcal-lp-icon{opacity:calc(.647 + .353*var(--snooze))}
.dcal-lp-dismiss .dcal-lp-icon{opacity:calc(.647 + .353*var(--dismiss));background:color-mix(in srgb,var(--hour) calc(var(--dismiss)*100%),#fff)}
.dcal-lp-alarm{position:relative;padding:43.49px 14.5px;transform:scale(calc(1 - var(--alarm)));touch-action:none;cursor:grab}
.dcal-lp-alarm img{display:block;width:21.74px;height:21.74px}
.dcal-lp-hint{position:absolute;left:0;right:0;bottom:36.24px;margin:0;text-align:center;font-size:14.5px;opacity:0;transition:opacity .3s}
.dcal-lp-hint.shown{opacity:1}
.dcal-lp::after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:var(--reveal,#fff);clip-path:circle(0 at var(--rx,50%) var(--ry,50%))}
.dcal-lp-snoozed{--reveal:#ff4081}
.dcal-lp-reveal::after{animation:dcal-reveal .5s cubic-bezier(0,0,.2,1) forwards,dcal-fade .5s .5s forwards}
.dcal-lp-reveal .dcal-lp-content{visibility:hidden;transition:visibility 0s .5s}
.dcal-lp-reveal.dcal-lp-snoozed{background:#ff4081;transition:background 0s .5s}
@keyframes dcal-reveal{to{clip-path:circle(150% at var(--rx,50%) var(--ry,50%))}}
@keyframes dcal-fade{to{opacity:0}}
.dcal-lp-alert{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7.25px}
.dcal-lp-alert[hidden]{display:none}
.dcal-lp-alert-title,.dcal-lp-alert-info{margin:0;font:28.99px RobotoThin,Roboto,sans-serif;font-weight:100}
.dcal-lp-alert-info{font-weight:700!important}
