/* ODM Rx shared feedback: opaque surfaces, clear status and reversible dismissal. */
.odm-feedback-stack{display:grid;gap:12px}
.odm-feedback{box-sizing:border-box;display:flex;align-items:flex-start;gap:14px;padding:18px 16px;margin:0;border:1px solid var(--odm-border);border-inline-start:3px solid var(--odm-accent-text);border-radius:10px;background:var(--odm-surface)!important;color:var(--odm-text)!important;box-shadow:none;font-family:inherit;overflow-wrap:anywhere}
.odm-feedback--error{border-inline-start-color:var(--odm-danger-text)}
.odm-feedback-icon,.odm-dialog-icon,.odm-toast-icon{flex:none;display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--odm-accent-border);border-radius:9px;background:var(--odm-accent-soft);color:var(--odm-accent-text)}
.odm-feedback-icon svg,.odm-dialog-icon svg,.odm-toast-icon svg{width:21px;height:21px}
.odm-feedback--error .odm-feedback-icon{background:var(--odm-danger-soft);color:var(--odm-danger-text);border-color:var(--odm-danger-border)}
.odm-feedback-copy{flex:1;min-width:0;padding:1px 0}
.odm-feedback-copy>strong{display:block;font-size:14px;font-weight:650;color:var(--odm-text);line-height:1.6}
.odm-feedback-copy>p{font-size:13px;color:var(--odm-muted);line-height:1.7;margin:5px 0 0}
.odm-feedback-close,.odm-report-modal .close{display:grid;place-items:center;float:none;flex:none;width:44px;height:44px;padding:0!important;margin:-4px -6px 0 0!important;border:1px solid transparent;border-radius:8px;background:transparent!important;color:var(--odm-muted)!important;opacity:1!important;text-shadow:none!important;font:400 27px/1 system-ui,sans-serif;cursor:pointer}
.odm-feedback-close:hover{background:var(--odm-surface-hover)!important;border-color:var(--odm-border);color:var(--odm-text)!important}
.odm-feedback-close:focus-visible,.odm-report-modal :is(button,select,textarea):focus-visible,.bt-announcement a:focus-visible,.bt-announcement button:focus-visible,.odm-event-summary a:focus-visible,#toast-container button:focus-visible{outline:3px solid var(--odm-focus);outline-offset:3px}
/* Bootstrap toasts and existing Toastr calls share the same presentation. */
#toast-container{position:fixed;z-index:12000;width:min(420px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:12px;padding:3px;pointer-events:none}
#toast-container:is(.top-right,.toast-top-right){inset:20px 20px auto auto}
#toast-container:is(.top-left,.toast-top-left){inset:20px auto auto 20px}
#toast-container:is(.top-center,.toast-top-center){inset:20px auto auto 50%;transform:translateX(-50%)}
#toast-container:is(.bottom-right,.toast-bottom-right){inset:auto 20px calc(var(--bt-nav-dock-height,0px) + env(safe-area-inset-bottom,0px) + 20px) auto}
#toast-container:is(.bottom-left,.toast-bottom-left){inset:auto auto calc(var(--bt-nav-dock-height,0px) + env(safe-area-inset-bottom,0px) + 20px) 20px}
#toast-container:is(.bottom-center,.toast-bottom-center){inset:auto auto calc(var(--bt-nav-dock-height,0px) + env(safe-area-inset-bottom,0px) + 20px) 50%;transform:translateX(-50%)}
#toast-container>.odm-toast,#toast-container>.odm-legacy-toast{box-sizing:border-box;flex:none;width:100%;max-width:none;margin:0!important;border:1px solid var(--odm-border)!important;border-inline-start:3px solid var(--odm-accent-text)!important;border-radius:12px;background:var(--odm-surface)!important;background-image:none!important;color:var(--odm-text)!important;box-shadow:0 8px 28px #0002!important;opacity:1;pointer-events:auto;font-family:inherit;overflow-wrap:anywhere}
#toast-container>.odm-toast[data-feedback-type=error],#toast-container>.toast-error{border-inline-start-color:var(--odm-danger-text)!important}
#toast-container .odm-toast .toast-header{display:flex;align-items:center;gap:12px;padding:16px 16px 0;border:0;background:transparent!important;color:var(--odm-text)!important}
#toast-container .odm-toast:has(.toast-body) .toast-header{padding-bottom:0}
#toast-container .odm-toast:not(:has(.toast-body)) .toast-header{padding-bottom:16px}
#toast-container .odm-toast-heading{flex:1;min-width:0}
#toast-container .odm-toast-heading strong{display:block;color:var(--odm-text);font-size:14px;line-height:1.6;font-weight:650}
#toast-container .odm-toast-heading small{display:block;font-size:11px;line-height:1.6;margin-top:3px;color:var(--odm-muted)}
#toast-container .odm-toast .toast-body{padding:10px 18px 18px 64px;font-size:13px;line-height:1.75;color:var(--odm-muted)}
#toast-container .odm-toast[data-feedback-type=error] .odm-toast-icon{color:var(--odm-danger-text);border-color:var(--odm-danger-border);background:var(--odm-danger-soft)}
#toast-container .odm-toast-image{width:32px;height:32px;border-radius:7px;object-fit:cover}
#toast-container .toast-body :is(a,strong){color:var(--odm-accent-text)}
#toast-container .odm-legacy-toast{padding:18px 54px 18px 18px!important}
#toast-container .odm-legacy-toast .toast-title{font-weight:650;font-size:14px;margin:0 0 5px;color:var(--odm-text)}
#toast-container .odm-legacy-toast .toast-message{font-size:13px;color:var(--odm-muted);line-height:1.7}
#toast-container .toast-close-button{position:absolute;inset:4px 4px auto auto;width:44px;height:44px;opacity:1;color:var(--odm-muted);text-shadow:none;float:none;font-size:24px;border-radius:8px}
#toast-container .toast-progress{background:var(--odm-accent-text);opacity:.6}
/* Report dialog retains the current endpoint and controls. */
#report-user-post .modal-dialog{width:calc(100% - 32px);max-width:600px;margin:24px auto;min-height:calc(100% - 48px)}
#report-user-post .modal-content{max-height:calc(100dvh - 48px);overflow:hidden;border:1px solid var(--odm-border);border-radius:16px;background:var(--odm-surface);color:var(--odm-text);box-shadow:0 24px 80px #0003}
#report-user-post .modal-header{align-items:flex-start;gap:12px;padding:28px 28px 20px;border-bottom:1px solid var(--odm-border)}
.odm-report-heading{display:flex;gap:14px;align-items:flex-start;min-width:0}
.odm-dialog-icon{width:44px;height:44px}
.odm-feedback-eyebrow{display:block;font-size:10px;color:var(--odm-accent-text);text-transform:uppercase;letter-spacing:.1em;font-weight:650;margin-bottom:8px;line-height:1.6}
#report-user-post .modal-title{font-size:23px;line-height:1.35;letter-spacing:-.025em;color:var(--odm-text);font-weight:600;margin:0}
#report-user-post .modal-body{padding:24px 28px;overflow-y:auto;overscroll-behavior:contain}
#report-user-post .modal-body>p{font-size:14px;line-height:1.8;color:var(--odm-muted);margin:0 0 24px}
#report-user-post .control-group+.control-group{margin-top:22px}
#report-user-post label{display:block;font-size:13px;line-height:1.7;color:var(--odm-text);font-weight:650;margin-bottom:9px}
#report-user-post label span{font-weight:400;color:var(--odm-muted)}
#report-user-post .form-control{box-sizing:border-box;width:100%;height:auto;min-height:48px;padding:12px 14px;border:1px solid var(--odm-border);border-radius:8px;background:var(--odm-surface);color:var(--odm-text);font-family:inherit;font-size:16px;line-height:1.6;box-shadow:none}
#report-user-post textarea{resize:vertical;min-height:130px;max-height:35dvh}
#report-user-post .form-control::placeholder{color:var(--odm-muted);opacity:1}
#report-user-post .modal-body>.odm-feedback-help{font-size:12px;margin:12px 0 0;line-height:1.8}
#report-user-post .modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 28px;border-top:1px solid var(--odm-border);margin:0}
#report-user-post .modal-footer>button{min-height:48px;padding:12px 20px;margin:0;border-radius:8px;font:600 13px/1.5 system-ui,sans-serif;border:1px solid var(--odm-border);cursor:pointer;box-shadow:none;background:var(--odm-surface);color:var(--odm-text)}
#report-user-post .modal-footer>.submit-report-button{border-color:transparent;background:var(--odm-action-background);color:var(--odm-action-text)}
#report-user-post .submit-report-button:disabled{cursor:wait;opacity:.7}
.odm-report-status{padding:14px;border:1px solid var(--odm-accent-border);border-radius:8px;background:var(--odm-accent-soft);color:var(--odm-accent-text);font-size:13px;line-height:1.7;margin-top:18px;overflow-wrap:anywhere}
.odm-report-status.is-error{border-color:var(--odm-danger-border);background:var(--odm-danger-soft);color:var(--odm-danger-text)}
.odm-report-status[hidden]{display:none!important}
/* Header and footer updates share the page palette, without flashing status dots. */
.odm-update-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:24px;height:24px;color:inherit}
.odm-update-icon svg{width:19px;height:19px}
body .bt-announcement{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;background:var(--odm-surface);color:var(--odm-text);border:0;border-bottom:1px solid var(--odm-border);padding:14px max(20px,calc((100vw - 1240px)/2));box-shadow:none}
body .bt-announcement-label{display:flex;align-items:center;gap:9px;color:var(--odm-accent-text);background:none;padding:0;font-size:11px;font-weight:650;letter-spacing:.025em;white-space:normal}
body .bt-announcement-content{font-size:13px;color:var(--odm-text);line-height:1.8;min-width:0;overflow-wrap:anywhere}
body .bt-announcement-content p{margin:0;font-size:inherit;line-height:inherit;color:inherit}
body .bt-announcement-content a{color:var(--odm-accent-text);text-decoration:underline;text-underline-offset:3px}
body .bt-announcement-dismiss{position:static;width:44px;height:44px;color:var(--odm-muted);background:transparent;border:1px solid var(--odm-border);border-radius:8px;flex:none}
body .bt-event-top-ticker,body .bt-home-event-rail{padding:16px max(24px,calc((100vw - 1240px)/2));border:0;border-bottom:1px solid var(--odm-accent-border);background:var(--odm-accent-soft);color:var(--odm-accent-text);box-shadow:none;animation:none}
body .bt-event-top-ticker :is(.bt-event-breaking-label,.bt-event-ticker-copy,.bt-event-ticker-copy strong,.bt-event-ticker-copy>span,.bt-event-ticker-meta,.bt-event-status),body .bt-home-event-rail :is(.bt-home-event-rail__label,.bt-home-event-item__copy,.bt-home-event-item__meta){color:var(--odm-accent-text);text-shadow:none;background:none;border-color:var(--odm-accent-border);animation:none}
body .bt-event-top-ticker .bt-event-breaking-label{display:flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.02em}
body .bt-event-top-ticker .bt-event-ticker-copy strong{font-size:14px;font-weight:650;letter-spacing:0}
body .bt-event-top-ticker .bt-event-ticker-copy>span{font-size:12px}
body .bt-event-top-ticker .bt-event-status{border:1px solid var(--odm-accent-border);padding:6px 10px;border-radius:6px;font-weight:600}
body .bt-home-event-item{background:var(--odm-surface);color:var(--odm-text);border:1px solid var(--odm-border);border-radius:8px;box-shadow:none}
body .bt-home-event-item :is(strong,span){color:var(--odm-text)!important}
body .bt-home-event-item .bt-home-event-item__meta{color:var(--odm-muted)!important}
.odm-footer-updates{width:min(1240px,calc(100% - 48px));margin:0 auto}
.odm-footer-updates:has(.bt-announcement),.odm-footer-updates:has(.odm-event-summary){padding:28px 0}
body .bt-announcement--footer{position:static;grid-template-columns:1fr auto;padding:24px;border:1px solid var(--odm-border);border-radius:12px;background:var(--odm-surface)}
body .bt-announcement--footer .bt-announcement-label{grid-column:1;grid-row:1;font-size:11px}
body .bt-announcement--footer .bt-announcement-content{grid-column:1;grid-row:2}
body .bt-announcement--footer .bt-announcement-dismiss{grid-column:2;grid-row:1/3}
.odm-event-summary{margin-top:18px;border:1px solid var(--odm-border);border-radius:12px;background:var(--odm-surface);color:var(--odm-text);overflow:hidden}
.odm-event-summary-label{display:flex;align-items:center;gap:10px;padding:18px 24px;border-bottom:1px solid var(--odm-border);color:var(--odm-accent-text);font-size:12px}
.odm-event-summary-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
.odm-event-summary-items>a{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px;min-width:0;color:var(--odm-text);text-decoration:none;border-inline-end:1px solid var(--odm-border)}
.odm-event-summary-items strong{font-size:13px;display:block;font-weight:650;line-height:1.6;color:var(--odm-text)}
.odm-event-summary-items small{display:block;margin-top:6px;color:var(--odm-muted);font-size:11px;line-height:1.7}
.odm-event-summary-state{color:var(--odm-accent-text);font-size:11px;text-align:end;line-height:1.7;flex-shrink:0;max-width:45%}
body .bt-mobile-update-rotator{background:var(--odm-surface);color:var(--odm-text);border:1px solid var(--odm-border);border-radius:10px;box-shadow:none;min-height:68px}
body .bt-mobile-update-rotator :is(.bt-mobile-update-rotator__label,.bt-mobile-update-rotator__counter,.bt-mobile-update-slide__copy,.bt-mobile-update-slide__copy strong,.bt-mobile-update-slide__meta){color:var(--odm-text);text-shadow:none}
body .bt-mobile-update-rotator__label{background:none;border:0;padding-inline:12px;gap:6px;display:flex;align-items:center}
body .bt-mobile-update-rotator__control,body .bt-mobile-update-slide__dismiss{width:44px;min-width:44px;height:44px;border-radius:8px;border:1px solid var(--odm-border);background:var(--odm-surface);color:var(--odm-accent-text);animation:none}
body .bt-mobile-update-slide__copy :is(p,a,span){font-size:12px;color:var(--odm-text)}
body .bt-mobile-update-slide__copy a{text-decoration:underline}
/* Existing verification feedback keeps its points, status and submission logic. */
.bt4 .bt4-thankyou{border:1px solid var(--odm-border)!important;border-radius:12px!important;background:var(--odm-surface)!important;color:var(--odm-text)!important;box-shadow:none!important;padding:24px!important;gap:18px!important}
.bt4 .bt4-thankyou :is(.bt4-ty-title,.bt4-ty-msg,.bt4-ty-status-line){color:var(--odm-text)!important;text-shadow:none!important}
.bt4 .bt4-thankyou .bt4-ty-title{font-size:18px!important;line-height:1.5!important;font-weight:600!important}
.bt4 .bt4-thankyou :is(.bt4-ty-msg,.bt4-ty-status-line){font-size:13px!important;line-height:1.8!important}
.bt4 .bt4-thankyou :is(.bt4-ty-check,.bt4-ty-status-chip){color:var(--odm-accent-text)!important;background:var(--odm-accent-soft)!important;border-color:var(--odm-accent-border)!important;box-shadow:none!important}
.bt4 .bt4-thankyou .bt4-ty-analyzing{background:var(--odm-surface-soft)!important;border:1px solid var(--odm-border)!important;box-shadow:none!important}
.bt4 .bt4-thankyou .bt4-ty-analyze-label{color:var(--odm-muted)!important;animation:none!important}
.bt4 .bt4-thankyou .bt4-ty-analyze-bar{background:var(--odm-border)!important}
.bt4 .bt4-thankyou .bt4-ty-analyze-fill{background:var(--odm-accent-text)!important}
.bt4 .bt4-form-errors{background:var(--odm-danger-soft)!important;border-color:var(--odm-danger-border)!important;color:var(--odm-danger-text)!important;border-radius:8px!important;font-size:13px!important;line-height:1.8!important}
@media(max-width:1199.98px){#toast-container{max-height:calc(100dvh - var(--bt-nav-dock-height,72px) - 40px)}body .bt-announcement:not(.bt-announcement--footer){padding:12px 20px}body.bt-mobile-updates-ready .bt-announcement[data-mobile-update-source]{display:none!important}body.bt-mobile-updates-ready :is(.bt-event-top-ticker,.bt-home-event-rail){display:none!important}}
@media(max-width:600px){.odm-feedback{gap:10px;padding:16px 12px}.odm-feedback-icon{width:30px;height:30px}.odm-feedback-copy>p{font-size:13px}.odm-footer-updates{width:calc(100% - 32px)}body .bt-announcement--footer{padding:18px;gap:12px}#report-user-post .modal-dialog{width:100%;max-width:none;margin:0;min-height:100dvh;align-items:flex-end}#report-user-post .modal-content{max-height:calc(100dvh - 20px);border-radius:18px 18px 0 0;margin:0}#report-user-post .modal-header{padding:24px 20px 18px}#report-user-post .modal-body{padding:20px}#report-user-post .modal-footer{padding:16px 20px calc(16px + env(safe-area-inset-bottom,0px));display:grid;grid-template-columns:1fr 1fr}#report-user-post .modal-title{font-size:21px}#report-user-post .odm-dialog-icon{display:none}.odm-event-summary-items>a{padding:20px}.odm-feedback-copy>strong{font-size:14px}#toast-container:is(.top-right,.top-left,.top-center,.toast-top-right,.toast-top-left,.toast-top-center){inset:12px 12px auto 12px;width:auto;transform:none}#toast-container .odm-toast .toast-header{padding:14px 12px 0;gap:10px}#toast-container .odm-toast .toast-body{padding:10px 16px 18px 58px}body .bt-mobile-update-rotator{grid-template-columns:1fr auto auto;gap:6px;padding:10px}body .bt-mobile-update-rotator__label{grid-column:1;grid-row:1;padding:0;font-size:10px;white-space:normal}body .bt-mobile-update-rotator__viewport{grid-column:1/-1;grid-row:2;min-height:56px}body .bt-mobile-update-rotator__counter{display:none}body .bt-mobile-update-rotator__control{grid-row:1}.bt4 .bt4-thankyou{padding:18px!important;display:block!important}.bt4 .bt4-thankyou .bt4-ty-check{margin-bottom:14px}}
@media(prefers-reduced-motion:reduce){.odm-toast,.odm-toast *,.bt-announcement *,.bt-event-top-ticker *, .bt-home-event-rail *, .bt-mobile-update-rotator *, .bt4 .bt4-thankyou *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.bt4 .bt4-thankyou .bt4-ty-analyze-bar{display:none!important}
/* The mobile update rail owns its measured header space; its controls never overlap the page. */
@media(min-width:601px) and (max-width:1199.98px){body.bt-mobile-updates-ready{padding-top:140px!important}body .bt-mobile-update-rotator{height:76px;min-height:76px;padding:8px 12px;grid-template-columns:minmax(0,1fr) auto 44px 44px;border-radius:0}body .bt-mobile-update-rotator__label{display:none}body .bt-mobile-update-rotator__viewport,body .bt-mobile-update-rotator__track,body .bt-mobile-update-slide{height:60px}}
@media(max-width:600px){body.bt-mobile-updates-ready{padding-top:176px!important}body .bt-mobile-update-rotator{height:112px;min-height:112px;padding:6px 10px;gap:4px;grid-template-columns:minmax(0,1fr) 44px 44px;border-radius:0}body .bt-mobile-update-rotator__viewport{height:48px;min-height:48px}body .bt-mobile-update-rotator__track,body .bt-mobile-update-slide{height:48px}body .bt-mobile-update-slide__copy>*,body .bt-mobile-update-slide__meta>*{white-space:normal}body .bt-mobile-update-slide__copy{max-height:48px;overflow:hidden}body .bt-mobile-update-slide__copy p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}body .bt-mobile-update-slide__meta{max-height:48px;overflow:hidden;flex:none}}
#toast-container .toast-close-button{background:transparent!important;border:0!important;color:var(--odm-muted)!important;font-weight:400;line-height:1;cursor:pointer}
/* Shared confirmations use the same visual hierarchy as reports. */
.odm-message-modal,#report-user-post{z-index:1060}
.odm-message-modal .modal-dialog{width:calc(100% - 32px);max-width:540px;margin:24px auto;min-height:calc(100% - 48px)}
.odm-message-modal .modal-content{max-height:calc(100dvh - 48px);overflow:hidden;background:var(--odm-surface);color:var(--odm-text);border:1px solid var(--odm-border);border-radius:16px;box-shadow:0 24px 80px #0003}
.odm-message-modal .modal-header{padding:28px;gap:16px;border-bottom:1px solid var(--odm-border);align-items:flex-start;background:var(--odm-surface)}
.odm-message-modal .modal-title{font-size:24px;line-height:1.35;letter-spacing:-.025em;color:var(--odm-text);font-weight:600;margin:0}
.odm-message-modal .modal-body{display:flex;gap:18px;padding:28px;overflow-y:auto}
.odm-message-modal .modal-body p{color:var(--odm-muted);font-size:14px;line-height:1.8;margin:0;overflow-wrap:anywhere}
.odm-message-modal .modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 28px;border-top:1px solid var(--odm-border);background:var(--odm-surface)}
.odm-message-modal .modal-footer>button{margin:0;min-height:48px;padding:12px 18px;box-shadow:none;border:1px solid var(--odm-border);border-radius:8px;color:var(--odm-text);background:var(--odm-surface);font:600 13px/1.6 system-ui,sans-serif;cursor:pointer}
.odm-message-modal .modal-footer>.odm-dialog-confirm{color:var(--odm-action-text);background:var(--odm-action-background);border-color:transparent}
.odm-message-modal button:focus-visible{outline:3px solid var(--odm-focus);outline-offset:3px}
@media(max-width:600px){.odm-message-modal .modal-dialog{width:100%;max-width:none;min-height:100dvh;margin:0;align-items:flex-end}.odm-message-modal .modal-content{max-height:calc(100dvh - 20px);border-radius:18px 18px 0 0}.odm-message-modal .modal-header{padding:24px 20px}.odm-message-modal .modal-body{padding:24px 20px;gap:12px}.odm-message-modal .modal-body .odm-dialog-icon{width:32px;height:32px}.odm-message-modal .modal-footer{padding:18px 20px calc(18px + env(safe-area-inset-bottom,0px));display:grid;grid-template-columns:1fr 1fr}.odm-message-modal .modal-footer>button{width:100%}.odm-message-modal .modal-title{font-size:22px}}
/* A received-feedback check remains visible when motion is reduced or disabled. */
.bt4 .bt4-thankyou .bt4-ty-check{display:grid!important;place-items:center!important;width:44px!important;height:44px!important;flex:none!important;animation:none!important}
.bt4 .bt4-thankyou .bt4-ty-svg{display:block!important;width:30px!important;height:30px!important;overflow:visible!important;animation:none!important}
.bt4 .bt4-thankyou .bt4-ty-svg :is(circle,polyline){stroke-dashoffset:0!important;stroke-dasharray:none!important;animation:none!important;opacity:1!important}
/* The dialog body scrolls on short screens; the page behind it stays fixed. */
html:has(#report-user-post.show),html:has(.odm-message-modal.show){overflow:hidden!important}
#report-user-post,.odm-message-modal{overflow-y:hidden}
/* Account-page inheritance must not replace the foreground of a filled action. */
.odm-message-modal .modal-footer>.odm-dialog-confirm{color:var(--odm-action-text)!important}
#odm-settings .odm-message-modal .odm-feedback-eyebrow,#odm-settings .odm-message-modal .odm-dialog-icon{color:var(--odm-accent-text)}
#odm-settings .odm-message-modal .modal-body p{color:var(--odm-muted)}
