.room-notification-bell{position:relative;display:grid;place-items:center;width:40px;height:40px;flex-shrink:0;border:1px solid #dce5ef;border-radius:50%;background:#fff;color:#264d91;cursor:pointer;padding:0;font:inherit}
.site-header .room-notification-bell{order:9}
.room-notification-bell:hover,.room-notification-bell[aria-expanded=true]{background:#edf3ff;border-color:#a7c2f6}
.room-notification-bell[hidden],.room-notification-count[hidden],.room-notifications-dialog [hidden]{display:none!important}
.room-notification-count{position:absolute;inset-inline-end:-6px;top:-5px;min-width:19px;height:19px;padding:1px 5px;display:grid;place-items:center;background:#e34256;color:#fff;border:2px solid #fff;border-radius:999px;font-size:10px;font-weight:800;line-height:1}
.room-notifications-dialog{position:fixed;inset:auto;margin:0;box-sizing:border-box;width:min(432px,calc(100vw - 24px));border:1px solid #dce5ef;border-radius:20px;padding:0;background:#fff;color:#152844;box-shadow:0 18px 60px #102d4f29,0 3px 12px #102d4f0d;font:14px Manrope,Arial,sans-serif;overflow:hidden}
.room-notifications-dialog[open]{display:flex;flex-direction:column;animation:room-notification-appear .16s ease-out}
.room-notifications-dialog::backdrop{background:#132d4c1f}
.room-notifications-dialog header{display:flex;align-items:center;gap:13px;padding:22px 22px 18px;flex-shrink:0}
.room-notification-heading-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:#edf3ff;color:#215be8;flex-shrink:0}
.room-notification-heading-copy{flex:1;min-width:0}
.room-notifications-dialog h2{font-size:20px;font-weight:800;letter-spacing:-.025em;margin:0;line-height:1.4}
.room-notifications-dialog header p{margin:3px 0 0;color:#73859e;font-size:12px}
.room-notifications-dialog button,.room-notifications-dialog a{font:inherit;cursor:pointer}
.room-notifications-close{display:grid;place-items:center;flex-shrink:0;border:1px solid #e4eaf1;border-radius:50%;background:#fff;color:#73839a;width:32px;height:32px;padding:0;transition:background .15s,color .15s}
.room-notifications-close:hover{background:#f0f4fa;color:#173454}
.room-notification-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 20px;background:#f8fafd;border-block:1px solid #e9eef5;flex-shrink:0}
.room-notification-tools button{display:flex;align-items:center;gap:6px;border:0;background:transparent;padding:4px 0;color:#2357bd;font-size:11px;font-weight:600;line-height:1.5;text-align:start}
.room-notification-tools svg{width:15px;height:15px;flex:none}
.room-notification-tools [data-notification-refresh]{flex-shrink:0}
.room-notifications-dialog button:disabled{opacity:.4;cursor:default}
.room-notifications-dialog :focus-visible,.room-notification-bell:focus-visible{outline:3px solid #8ab2ff;outline-offset:2px}
.room-notification-content{overflow:auto;overscroll-behavior:contain;min-height:0;scrollbar-width:thin;scrollbar-color:#d3ddeb transparent}
.room-notifications-dialog ul{padding:0;margin:0;list-style:none}
.room-notification-item{display:flex;gap:12px;padding:20px;border-bottom:1px solid #edf1f6}
.room-notification-item:last-child{border-bottom:0}
.room-notification-item.is-unread{background:#f4f8ff}
.room-notification-copy{flex:1;min-width:0}
.room-notification-kind{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#edf3ff;color:#245deb;flex-shrink:0}
.room-notification-item.is-accepted .room-notification-kind{background:#e6f5ef;color:#16826a}
.room-notification-item.is-declined .room-notification-kind{background:#fff0eb;color:#b26b37}
.room-notification-item-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}
.room-notification-item-heading strong{font-size:13px;font-weight:750;line-height:1.6}
.room-notification-dot{width:7px;height:7px;background:#245deb;border-radius:50%;flex-shrink:0}
.room-notification-item p{font-size:13px;line-height:1.6;color:#536b88;margin:4px 0;overflow-wrap:anywhere}
.room-notification-item time{display:block;color:#8493a9;font-size:10px;line-height:1.6}
.room-notification-actions{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;justify-content:space-between;margin-top:12px}
.room-notification-actions a{color:#235bd5;text-decoration:none;font-size:11px;font-weight:700}
.room-notification-actions a:hover{text-decoration:underline}
.room-notification-actions button{border:0;background:transparent;padding:3px 0;color:#6a7e98;font-size:10px;text-align:start}
.room-notification-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;text-align:center;padding:34px 24px 38px;color:#73859e}
.room-notification-empty-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#f1f5fc;color:#91a9ca;box-shadow:0 0 0 8px #fafbfe}
.room-notification-empty-icon svg{width:28px;height:28px;stroke-width:1.3}
.room-notification-empty p{margin:0;font-size:13px;line-height:1.6}
.room-notification-loading{display:flex;align-items:center;justify-content:center;gap:10px;text-align:center;padding:32px 20px;color:#73859e;line-height:1.7}
.room-notification-spinner{width:16px;height:16px;border:2px solid #e3ebf7;border-top-color:#245deb;border-radius:50%;animation:room-notification-spin .7s linear infinite}
.room-notification-message,.room-notification-new{margin:14px 20px;padding:12px;border-radius:10px;background:#f0f5fd;color:#526781;font-size:12px;line-height:1.7}
.room-notification-message{background:#fff3ec;color:#98572f}
.room-notification-more,.room-notification-recover{display:block;margin:16px auto;border:1px solid #dce5ef;border-radius:10px;background:#fff;color:#235bd5;padding:10px 16px;font-size:12px!important}
.stay-booking-card.is-notification-target{border-color:#1959f0;box-shadow:0 0 0 3px #1959f018;scroll-margin-top:24px}
@keyframes room-notification-appear{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@keyframes room-notification-spin{to{transform:rotate(360deg)}}
@media(max-width:480px){.room-notification-bell{width:34px;height:34px}.room-notifications-dialog header{padding:18px 16px 16px}.room-notification-tools{padding:10px 16px;gap:10px}.room-notification-item{padding:18px 16px;gap:10px}.room-notifications-dialog h2{font-size:18px}.room-notification-tools button{font-size:10px}}
@media(prefers-reduced-motion:reduce){.room-notifications-dialog[open],.room-notification-spinner{animation:none}}
.room-notification-note{white-space:pre-wrap;overflow-wrap:anywhere}.room-notification-note strong{font-size:11px;font-weight:700;color:#576d8d}
