.guest-notifications { flex: 0 0 auto; min-height: 0; max-height: 30%; overflow: auto; }
.guest-notifications [hidden], .guest-notifications[hidden], .gn-settings[hidden] { display: none !important; }
.gn-settings { flex: 0 0 36px; width: 36px; height: 36px; border: 1px solid rgba(0,240,255,.24); border-radius: 50%; background: transparent; color: #b4f8ff; cursor: pointer; }
.gn-bell { width: 18px; height: 18px; vertical-align: middle; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.gn-invite-overlay[hidden], .gn-invite[hidden] { display: none !important; }
.gn-invite { color: #e7f8fc; font-size: .95rem; }
.gn-invite p { margin: 0 0 8px; line-height: 1.4; }
.gn-invite .gn-actions { width: 100%; flex-direction: column; }
.gn-invite .gn-button { width: 100%; min-height: 44px; font-size: .95rem; }
.gn-invite #gnNotNow { background: transparent; border-color: transparent; color: #b4cbd5; }
.gn-actions { display: flex; flex-wrap: wrap; gap: 6px; }
.gn-panel { position: absolute; z-index: 25; inset: 50px 8px 8px; overflow: auto; overscroll-behavior: contain; background: #0e2030; border: 1px solid #366174; border-radius: 12px; padding: 16px; color: #e7f8fc; text-align: start; box-shadow: 0 8px 30px rgba(0,0,0,.35); }
.gn-panel-header { display: flex; align-items: flex-start; gap: 12px; justify-content: space-between; }
.gn-panel h2 { font-family: inherit; font-weight: 700; font-size: 1.05rem; line-height: 1.4; margin: 0; }
.gn-panel h3 { margin: 0 0 8px; font-size: 1rem; }
.gn-hint, .gn-channel-status { color: #b4cbd5; font-size: .85rem; line-height: 1.5; overflow-wrap: anywhere; }
.gn-channel { padding-block: 14px; border-block-start: 1px solid #2c4657; }
.gn-channel form { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-block: 10px; }
.gn-channel label { flex-basis: 100%; font-size: .85rem; }
.gn-channel input { flex: 1 1 180px; width: 100%; min-width: 0; padding: 10px 12px; border: 1px solid #527687; border-radius: 8px; background: #081722; color: #fff; font: inherit; font-size: 16px; }
.gn-button { display: inline-block; min-height: 40px; max-width: 100%; padding: 9px 12px; margin: 2px 0; border: 1px solid #527687; border-radius: 8px; background: #193a48; color: #e7f8fc; font: inherit; font-size: .85rem; line-height: 1.4; text-align: center; text-decoration: none; overflow-wrap: anywhere; cursor: pointer; }
.gn-button:hover { background: #244e5d; }
.gn-button:disabled { opacity: .5; cursor: default; }
.gn-close { flex-shrink: 0; max-width: 45%; background: transparent; }
.gn-button:focus-visible, .gn-settings:focus-visible, .gn-channel input:focus-visible { outline: 2px solid #91f1fa; outline-offset: 3px; }
.gn-message { min-height: 1.4em; font-size: .85rem; line-height: 1.4; overflow-wrap: anywhere; }
.gn-message--error { color: #ffaaaa; }
.gn-channel-status[data-state="enabled"] { color: #a0edcb; }
@media (max-width: 380px) { .gn-panel { padding: 12px; } }
