/* Sleep is a deliberate choice, followed by an in-scene visual and an explicit result. */
html body #gardenRestDialog{padding:0;margin:auto;width:min(420px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - max(24px,env(safe-area-inset-top)) - max(24px,env(safe-area-inset-bottom)));border:2px solid #fff4d8;border-radius:24px;background:#fffaf0;color:#293c37;overflow:auto;overscroll-behavior:contain;box-shadow:0 16px 50px #0008;font-family:inherit;}
html body #gardenRestDialog:not([open]){display:none!important}
html body #gardenRestDialog::backdrop{background:#142023b8}
#gardenRestDialog .garden-rest-card{position:relative;isolation:isolate;overflow:hidden;min-height:300px;border-radius:21px;}
#gardenRestDialog .garden-rest-room{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;opacity:.14;pointer-events:none}
#gardenRestDialog .garden-rest-content{position:relative;padding:18px clamp(16px,5vw,28px) 20px;text-align:center;}
html body #gardenRestDialog #gardenRestClose{position:absolute;right:10px;top:10px;--nm-choice-size:42px;--nm-choice-symbol-size:28px;z-index:2;}
#gardenRestDialog h2{margin:8px 0 14px;font-size:clamp(22px,6vw,28px);line-height:1.35;letter-spacing:.02em}
#gardenRestDialog p{margin:10px 0;font-size:clamp(14px,3.8vw,17px);line-height:1.6;overflow-wrap:anywhere}
#gardenRestDialog .garden-rest-current{font-size:14px;font-variant-numeric:tabular-nums}
#gardenRestDialog .garden-rest-wake{padding:9px 8px;border-radius:13px;background:#fffdf2d9;color:#284e43;font-size:clamp(18px,5vw,22px);font-weight:800;font-variant-numeric:tabular-nums;box-shadow:0 0 0 1px #bbbc98;}
#gardenRestDialog .garden-rest-wake:empty{display:none}
#gardenRestDialog #gardenRestRisk{font-size:13px;color:#674d37;line-height:1.7;}
#gardenRestDialog .garden-rest-art{position:relative;display:flex;justify-content:center;align-items:center;gap:16px;width:max-content;max-width:100%;height:92px;margin:10px auto 4px;}
#gardenRestDialog .garden-rest-bed{display:block;width:90px;height:90px;object-fit:contain;}
#gardenRestDialog .garden-rest-result-art{display:block;width:100%;height:auto;max-height:34dvh;object-fit:contain;margin:12px auto 4px;border-radius:12px;}
#gardenRestDialog .garden-rest-clock{position:relative;box-sizing:border-box;width:66px;height:66px;border:4px solid #668476;border-radius:50%;background:#fffaf0e6;box-shadow:0 3px 7px #0002;}
#gardenRestDialog .garden-rest-clock:after{content:'';position:absolute;left:calc(50% - 4px);top:calc(50% - 4px);width:8px;height:8px;background:#385d50;border-radius:50%;}
#gardenRestDialog .garden-rest-clock i{position:absolute;left:calc(50% - 2px);top:50%;width:4px;height:22px;transform-origin:2px 0;border-radius:3px;background:#385d50;transform:rotate(180deg)}
#gardenRestDialog .garden-rest-clock i+i{height:16px;transform:rotate(260deg);}
#gardenRestDialog .garden-rest-zzz{display:none;position:absolute;left:40px;top:0;font-weight:900;font-size:20px;color:#e1e7ff;text-shadow:0 2px 3px #27374b}
html body #gardenRestDialog .garden-rest-choices{display:flex;justify-content:center;gap:38px;margin-top:18px;}
#gardenRestDialog .garden-rest-choices>div{display:flex;flex-direction:column;align-items:center;gap:4px;font-weight:700;font-size:14px;}
html body #gardenRestDialog .garden-rest-choices[hidden],html body #gardenRestDialog [hidden]{display:none!important;}
html body #gardenRestDialog #gardenRestDismiss{display:block;width:100%;min-height:50px;margin-top:18px;padding:12px 18px;border:2px solid #7c8f64;border-radius:15px;background:#ffffffe8;color:#30483f;font-family:inherit;font-weight:700;font-size:16px;line-height:1.4;cursor:pointer;touch-action:manipulation;}
#gardenRestDialog .garden-rest-event{display:inline-block;margin:3px 0 0;padding:3px 16px;border-block:2px solid #e8cd77;color:#fff3b8;font-size:clamp(23px,7vw,30px);font-weight:900;letter-spacing:.12em;line-height:1.35;}
html body #gardenRestDialog[data-phase="sleeping"],html body #gardenRestDialog[data-phase="pending"]{background:#17283d;color:#fff8e9;}
#gardenRestDialog[data-phase="sleeping"] .garden-rest-room,#gardenRestDialog[data-phase="pending"] .garden-rest-room{opacity:.25;filter:brightness(.45)}
#gardenRestDialog[data-phase="sleeping"] .garden-rest-art{height:155px;margin:20px auto;}
#gardenRestDialog[data-phase="sleeping"] .garden-rest-zzz{display:block;animation:garden-rest-zzz 1.4s ease-in-out infinite}
#gardenRestDialog[data-phase="sleeping"] .garden-rest-clock i{animation:garden-rest-hands 1.1s linear infinite;}
#gardenRestDialog[data-phase="sleeping"] .garden-rest-clock i+i{animation-duration:3.1s;}
/* The 9:16 event illustration fills the game surface; only readable text chips cover it. */
html body #gardenRestDialog[data-overslept="true"][data-phase="result"]{position:fixed;inset:0;box-sizing:border-box;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;border:0;border-radius:0;padding:0;background:#251e18;color:#fff5df;overflow:hidden;box-shadow:none;}
#gardenRestDialog[data-overslept="true"][data-phase="result"] .garden-rest-card{box-sizing:border-box;width:100%;height:100%;min-height:0;border-radius:0;}
#gardenRestDialog[data-overslept="true"][data-phase="result"] .garden-rest-content{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;width:100%;height:100%;padding:max(18px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));}
#gardenRestDialog[data-overslept="true"][data-phase="result"] .garden-rest-room,#gardenRestDialog[data-overslept="true"][data-phase="result"] .garden-rest-art,#gardenRestDialog[data-overslept="true"][data-phase="result"] .garden-rest-current,#gardenRestDialog[data-overslept="true"][data-phase="result"] #gardenRestRisk{display:none;}
#gardenRestDialog[data-overslept="true"][data-phase="result"] .garden-rest-result-art{position:absolute;inset:0;z-index:-1;box-sizing:border-box;display:block;width:100%;height:100%;max-height:none;margin:0;border-radius:0;object-fit:cover;object-position:center;}
#gardenRestDialog[data-overslept="true"][data-phase="result"] .garden-rest-event{flex:none;max-width:100%;margin:0;padding:4px 15px;background:#261b16c4;border:1px solid #efd491c2;border-radius:9px;text-shadow:0 2px 4px #160b08;}
#gardenRestDialog[data-overslept="true"][data-phase="result"] h2{flex:none;max-width:100%;margin:7px 0 0;padding:4px 14px;border-radius:10px;background:#261b16bf;color:#ffe388;font-size:clamp(27px,7.5vw,36px);text-shadow:0 2px 0 #5d3928;animation:garden-rest-happening .55s ease-out;}
#gardenRestDialog[data-overslept="true"][data-phase="result"] .garden-rest-wake{flex:none;width:max-content;max-width:100%;box-sizing:border-box;margin:auto 0 0;padding:8px 14px;background:#261b16d1;border:1px solid #efd491b3;border-radius:11px;box-shadow:0 2px 9px #0004;color:#fff2bf;font-size:clamp(17px,4.9vw,23px);}
#gardenRestDialog[data-overslept="true"][data-phase="result"] #gardenRestDescription{flex:none;box-sizing:border-box;width:max-content;max-width:min(360px,100%);margin:8px 0 0;padding:7px 12px;border-radius:10px;background:#261b16c4;color:#fff5df;font-size:clamp(13px,3.6vw,16px);line-height:1.5;}
html body #gardenRestDialog[data-overslept="true"][data-phase="result"] #gardenRestDismiss{flex:none;width:200px;max-width:100%;min-height:47px;margin:10px 0 0;padding:10px 18px;border:1px solid #f4dfb4c9;background:#261b16cc;color:#fff5df;box-shadow:0 2px 9px #0004;}
@keyframes garden-rest-hands{to{transform:rotate(540deg)}}
@keyframes garden-rest-zzz{0%,100%{opacity:.4;transform:translate(0,4px)}50%{opacity:1;transform:translate(6px,-7px)}}
@keyframes garden-rest-happening{0%{transform:scale(.75);opacity:0}70%{transform:scale(1.08)}100%{transform:scale(1);opacity:1}}
@media(max-height:540px){#gardenRestDialog .garden-rest-content{padding:12px 22px}#gardenRestDialog .garden-rest-art{height:55px;margin:0 auto}#gardenRestDialog .garden-rest-bed{width:55px;height:55px}#gardenRestDialog .garden-rest-clock{width:48px;height:48px}#gardenRestDialog p{margin:5px 0;font-size:13px}#gardenRestDialog h2{margin:6px 0;font-size:21px}html body #gardenRestDialog .garden-rest-choices{margin-top:8px;gap:30px}#gardenRestDialog .garden-rest-choices button{--nm-choice-size:50px;--nm-choice-symbol-size:32px}}
@media(prefers-reduced-motion:reduce){#gardenRestDialog *,#gardenRestDialog *::before,#gardenRestDialog *::after{animation:none!important}}
