.notification-shortcut{width:100%;max-width:none;margin:16px auto;padding:20px;border-radius:24px}
.notification-entry-heading{display:flex;gap:12px;align-items:center;margin-bottom:15px}
.notification-entry-icon{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:16px;background:#eee7ff;font-size:23px}
.notification-entry-heading strong{font-size:17px;letter-spacing:-.025em}
.notification-entry-heading p{margin:5px 0 0;color:#696176;font-size:12px;line-height:1.5}
.notification-choose-button{display:flex;align-items:center;justify-content:center;width:100%;max-width:420px;margin:0 auto;min-height:50px;border-radius:16px;font-size:14px;font-weight:750}
.notification-entry-state{text-align:center;margin:10px 0 0;color:#79638e;font-size:11px;line-height:1.5}
.notification-entry-state.is-active{color:#08744c}
#notificationSettingsSheet{left:12px;right:12px;bottom:calc(12px + var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)));max-width:620px;margin:0 auto;padding:0;max-height:calc(100dvh - var(--safe-area-inset-top,env(safe-area-inset-top,0px)) - var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)) - 24px);height:min(850px,calc(100dvh - var(--safe-area-inset-top,env(safe-area-inset-top,0px)) - var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)) - 24px));overflow:hidden;border-radius:28px;background:#faf8ff;display:flex;flex-direction:column}
#notificationSettingsSheet{transform:translateY(calc(100% + 30px))}
#notificationSettingsSheet.open{transform:translateY(0)}
#notificationSettingsSheet[hidden]{display:none}
.notification-preferences-header{flex:0 0 auto;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:22px 20px 16px;border-bottom:1px solid #e7e0f0;background:#faf8ff}
.notification-preferences-header h2{font-size:24px;letter-spacing:-.04em;line-height:1.12;margin:4px 0 8px}
.notification-preferences-header p:not(.eyebrow){font-size:12px;line-height:1.5;color:#6b6077;margin:0;max-width:420px}
.notification-preferences-header .round-icon{flex:0 0 40px;width:40px;height:40px}
.notification-preferences-body{min-height:0;flex:1 1 auto;overflow:auto;overscroll-behavior:contain;padding:18px 20px 24px;scroll-padding:16px;touch-action:pan-y}
.notification-preferences-body .notification-device-card{display:flex;align-items:flex-start;gap:12px;margin:0 0 22px;padding:14px;border:1px solid #e2d8f0;background:#f1ebfb;border-radius:18px}
.notification-preferences-body .notification-device-card>div{flex:1}
.notification-preferences-body .notification-device-card .tiny{margin-bottom:0;line-height:1.5}
.notification-preferences-body .notification-device-card button{max-width:150px;white-space:normal;padding:10px 12px;font-size:11px}
.notification-choice-section{border:0;border-bottom:1px solid #e9e2ef;padding:0 0 22px;margin:0 0 22px;min-width:0}
.notification-choice-section legend{font-size:15px;line-height:1.5;font-weight:800;padding:0;margin-bottom:12px}
.notification-kind{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:12px 0;cursor:pointer}
.notification-kind span{min-width:0}
.notification-kind strong{display:block;font-size:13px;line-height:1.5}
.notification-kind small{display:block;margin-top:3px;color:#776d80;font-size:11px;line-height:1.5}
.notification-kind input{flex:0 0 22px;width:22px;height:22px;accent-color:#6e2ede;cursor:pointer}
.notification-preferences-body #npGames{display:flex;flex-wrap:wrap;gap:8px}
.notification-preferences-body #npGames button{min-height:40px;padding:9px 13px;border:1px solid #d9cce9;background:#fff;border-radius:24px;font-size:12px}
.notification-preferences-body #npGames button.active{background:#e9ddff;border-color:#8e64b9;color:#4e1d80;box-shadow:inset 0 0 0 1px #8e64b9}
.notification-text-button,.notification-save-only{border:0;background:none;color:#693695;font-size:12px;text-decoration:underline;text-underline-offset:3px;padding:12px 4px;min-height:40px}
.notification-preferences-body .notification-location-card{background:transparent;border-radius:0}
.notification-preferences-body .notification-location-modes{display:flex;gap:8px;margin-bottom:14px}
.notification-preferences-body .notification-location-modes button{flex:1;min-height:44px;padding:9px 12px;border:1px solid #d9cce9;border-radius:14px;font-size:12px;background:white;color:#675d73}
.notification-preferences-body .notification-location-modes button.active{background:#7135dd;color:white;border-color:#7135dd}
.notification-preferences-body label.field-label{display:block;font-size:11px;font-weight:750;line-height:1.5;margin:16px 0 7px}
.notification-preferences-body .glass-field{width:100%;min-height:48px;padding:12px 14px;background:#fff;border:1px solid #e1d7ed;border-radius:14px;font-size:14px}
.notification-preferences-body .location-autocomplete{position:relative}
.notification-preferences-body .location-suggestions{position:relative;inset:auto;max-height:220px;overflow:auto;box-shadow:none;border-radius:14px;background:#fff;margin-top:6px}
.notification-preferences-body .location-suggestions button{display:block;min-height:44px;text-align:left;width:100%;padding:12px;border:0;background:none;font-size:12px}
.notification-preferences-body .location-suggestions button+button{border-top:1px solid #eee5f6}
.notification-preferences-body .location-suggestions button:hover{background:#f2eafa}
.notification-preferences-body [hidden]{display:none!important}
.notification-scope-note{line-height:1.6;margin-bottom:0}
.notification-advanced summary{font-size:14px;font-weight:750;cursor:pointer;min-height:40px;line-height:1.5}
.notification-advanced .two-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.notification-advanced .two-fields label{min-width:0;font-size:12px}
.notification-advanced .two-fields input{margin-top:6px;min-width:0}
.notification-preferences-footer{flex:0 0 auto;padding:12px 20px 14px;border-top:1px solid #ded3eb;background:#fff;box-shadow:0 -8px 24px rgba(70,35,100,.04)}
.notification-preferences-footer .primary-action{display:block;width:100%;min-height:48px;border-radius:16px;font-size:14px}
.notification-preferences-footer .notification-save-only{display:block;margin:3px auto 0;padding:7px 4px;min-height:32px;font-size:11px}
#notificationSettingsMessage{font-size:12px;line-height:1.5;margin:0 0 10px;color:#655470}
#notificationSettingsMessage:empty{display:none}
#notificationSettingsMessage[data-kind=error]{color:#ac2440}
#notificationSettingsMessage[data-kind=warning]{color:#8e5a06}
#notificationSettingsMessage[data-kind=success]{color:#08744c}
.notification-preferences-body [aria-invalid=true]{border-color:#b33251;outline:2px solid #b3325126}
.notification-preferences-body :focus-visible,.notification-preferences-footer :focus-visible,.notification-choose-button:focus-visible{outline:3px solid #a47be5;outline-offset:3px}
html.native-app .views{top:var(--safe-area-inset-top,env(safe-area-inset-top,0px));overflow:hidden}
html.native-app .page-scroll{padding-top:24px!important}
html.native-app .map-top{padding-top:8px!important}
html.native-app .map-actions,html.native-app .map-info-stack{top:106px!important}
html.native-app .sheet{bottom:calc(8px + var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)))}
@media(max-width:380px){.notification-preferences-header{padding:17px 15px 13px}.notification-preferences-header h2{font-size:21px}.notification-preferences-body{padding:15px}.notification-preferences-footer{padding:10px 15px 12px}.notification-preferences-body .notification-device-card{flex-direction:column}.notification-shortcut{padding:16px}.notification-entry-heading strong{font-size:15px}}
@media(prefers-reduced-motion:reduce){#notificationSettingsSheet{transition:none}}

