/* A tiny brass alarm and an indignant letter from the afterlife. */
#rattle-feedback{position:fixed;top:118px;left:50%;transform:translateX(-50%);width:min(338px,calc(100vw - 26px));z-index:6;pointer-events:none;color:#f5dfb6;font-family:'DM Sans',sans-serif}
#rattle-feedback [hidden]{display:none!important}
.rattle-warning{position:relative;display:flex;align-items:center;gap:12px;padding:13px 15px 13px 12px;background:#332a29ed;border:1px solid #dc9c61;border-radius:3px 14px 3px 3px;box-shadow:3px 4px 0 #13242c,0 0 23px #e98f3e25}
.rattle-warning:before,.rattle-warning:after{content:'';position:absolute;width:4px;height:4px;border:1px solid #d7a76a;border-radius:50%;top:5px}.rattle-warning:before{left:5px}.rattle-warning:after{right:6px}
.rattle-warning-seal{position:relative;flex:none;display:grid;place-items:center;width:31px;height:35px;color:#392d29;background:#e6af6c;border:3px double #44382c;transform:rotate(-7deg);font:29px/1 'Libre Caslon Display',Georgia,serif;box-shadow:2px 2px 0 #171f27}
.rattle-warning-copy{flex:1;min-width:0}.rattle-warning-name{display:block;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;letter-spacing:.25px;color:#d5b98a;line-height:1.5}.rattle-warning-copy strong{display:block;font:21px/1.1 'Libre Caslon Display',Georgia,serif;color:#ffe8bb;margin:2px 0 7px;white-space:nowrap}.rattle-countdown{align-self:flex-start;flex:none;font:10px/1.5 'DM Sans',sans-serif;color:#e6b172;min-width:18px;text-align:right;tab-size:4;font-variant-numeric:tabular-nums}
.rattle-fuse{height:3px;background:#80614260;border-radius:3px;overflow:hidden}.rattle-fuse i{display:block;width:100%;height:100%;background:#efae60;transform-origin:left center;box-shadow:0 0 8px #e0a45b}
.rattle-receipt{position:relative;display:flex;gap:12px;align-items:center;background:#e7c9a1;color:#453a36;padding:15px 15px 14px 13px;border:1px solid #be8a63;border-left:5px solid #ac644b;border-radius:2px 2px 13px 2px;box-shadow:4px 5px 0 #172a30;transform:rotate(-1.6deg);margin-top:12px}
.rattle-receipt:before{content:'DEPARTMENT OF BRUISED EGOS';position:absolute;top:-8px;left:36px;padding:2px 7px;background:#c5956b;color:#352e2b;font:6px/1.4 'DM Sans',sans-serif;letter-spacing:1.1px;transform:rotate(2deg)}
.rattle-deduction{flex:none;font:33px/.9 'Libre Caslon Display',Georgia,serif;letter-spacing:-1px;color:#8a3e30;border-right:1px dashed #95694d7d;padding-right:11px;text-shadow:1px 1px #f2dab8}.rattle-deduction:after{content:'ESSENCE';display:block;font:6px/1.8 'DM Sans',sans-serif;letter-spacing:.9px;margin-top:4px;color:#78583f}
.rattle-receipt>div{flex:1;min-width:0}.rattle-insult{display:block;font:10px/1.35 'DM Sans',sans-serif;color:#7f4c3c;margin-bottom:4px}.rattle-quip{display:block;font:20px/1.05 'Libre Caslon Display',Georgia,serif;font-weight:400;letter-spacing:-.2px}.rattle-receipt-mark{flex:none;display:grid;place-items:center;align-content:center;border:2px double #925d4870;border-radius:50%;width:34px;height:34px;color:#9a5745;font:7px/1.2 'DM Sans',sans-serif;letter-spacing:.6px;transform:rotate(13deg)}
.rattle-receipt.just-hit{animation:rattle-letter-in .44s ease-out}.rattle-receipt[data-reaction=emotional] .rattle-receipt-mark{color:#74516b;border-color:#74516b70}.rattle-receipt[data-reaction=emotional]{border-left-color:#866881}
@keyframes rattle-letter-in{0%{opacity:0;transform:translateY(-7px) rotate(6deg)}30%{opacity:1;transform:translateY(2px) rotate(-4deg)}100%{transform:rotate(-1.6deg)}}
.compact-ui #rattle-feedback{top:calc(186px + var(--safe-top,0px));width:min(310px,calc(100vw - 26px))}.compact-ui .rattle-warning{padding:9px 11px;gap:9px}.compact-ui .rattle-warning-copy strong{font-size:20px;margin:2px 0 6px}.compact-ui .rattle-warning-name{font-size:8px}.compact-ui .rattle-warning-seal{width:27px;height:31px;font-size:26px}.compact-ui .rattle-receipt{padding:12px 11px;gap:9px}.compact-ui .rattle-quip{font-size:19px}.compact-ui .rattle-deduction{font-size:29px}.compact-ui .rattle-receipt-mark{width:29px;height:29px;font-size:6px}
body.in-tutorial #rattle-feedback,body.in-activity #rattle-feedback{display:none}
@media(max-width:350px){.compact-ui #rattle-feedback{width:calc(100vw - 24px);top:calc(178px + var(--safe-top,0px))}.compact-ui .rattle-warning-copy strong{font-size:19px}.compact-ui .rattle-receipt-mark{display:none}.compact-ui .rattle-quip{font-size:18px}}
@media(max-height:500px) and (orientation:landscape){.compact-ui #rattle-feedback{top:calc(67px + var(--safe-top,0px));left:calc(50% + 24px);width:min(284px,calc(100vw - 208px))}.compact-ui .rattle-warning{padding:8px 9px;gap:7px}.compact-ui .rattle-warning-copy strong{font-size:18px}.compact-ui .rattle-warning-name{font-size:8px}.compact-ui .rattle-countdown{font-size:9px}.compact-ui .rattle-warning-seal{width:24px;height:28px;font-size:23px}.compact-ui .rattle-receipt{padding:11px 9px;gap:8px}.compact-ui .rattle-quip{font-size:18px}.compact-ui .rattle-receipt-mark{display:none}.compact-ui .rattle-deduction{font-size:27px}.compact-ui .rattle-insult{font-size:9px}}
@media(prefers-reduced-motion:reduce){#rattle-feedback *,#rattle-feedback *:before,#rattle-feedback *:after{animation:none!important;transition:none!important}.rattle-receipt{transform:none}}

/* Let the last theatrical rattle finish before the end-of-night letter appears. */
body.last-rattle header,body.last-rattle .status,body.last-rattle .journal,body.last-rattle .bottom,body.last-rattle #prompt,body.last-rattle #coven-hud{pointer-events:none}
