/* WIAB Notices module — shared runtime styles */

.oso-notices-root {
  position: relative;
  z-index: 12000;
}

.oso-notice[hidden] {
  display: none !important;
}

.oso-notice--top_bar,
.oso-notice--bottom_banner {
  position: fixed;
  left: 0;
  right: 0;
  z-index: 12010;
}

.oso-notice--top_bar { top: 0; }
.oso-notice--bottom_banner { bottom: 0; }

.oso-notice--top_bar .oso-notice-overlay,
.oso-notice--bottom_banner .oso-notice-overlay,
.oso-notice--slide_in .oso-notice-overlay {
  display: none;
}

.oso-notice--top_bar .oso-notice-panel,
.oso-notice--bottom_banner .oso-notice-panel {
  width: 100%;
  max-width: none;
  border-radius: 0;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
}

.oso-notice--modal,
.oso-notice--takeover,
.oso-notice--bottom_sheet,
.oso-notice--exit_intent {
  position: fixed;
  inset: 0;
  z-index: 12020;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
}

.oso-notice--takeover .oso-notice-panel,
.oso-notice--takeover .oso-notice-overlay {
  border-radius: 0;
}

.oso-notice--bottom_sheet {
  align-items: flex-end;
  padding: 0;
}

.oso-notice--bottom_sheet .oso-notice-panel {
  width: 100%;
  max-width: none;
  border-radius: 16px 16px 0 0;
}

.oso-notice--slide_in {
  position: fixed;
  z-index: 12015;
  inset: auto 1rem 1rem auto;
  width: min(360px, calc(100vw - 2rem));
}

.oso-notice--slide_in.oso-notice--slide-bottom-left {
  inset: auto auto 1rem 1rem;
}

.oso-notice--slide_in .oso-notice-overlay {
  display: none;
}

.oso-notice-overlay {
  position: absolute;
  inset: 0;
  background: rgba(15, 26, 42, var(--notice-overlay, 0.75));
}

.oso-notice-panel {
  position: relative;
  z-index: 1;
  background: var(--notice-bg, #1B2A41);
  color: var(--notice-text, #F7F6F3);
  border: 1px solid color-mix(in srgb, var(--notice-accent, #FFC845) 35%, transparent);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28);
  padding: 1.25rem 1.35rem 1.35rem;
  width: min(100%, 560px);
}

.oso-notice--width-sm .oso-notice-panel { max-width: 420px; }
.oso-notice--width-md .oso-notice-panel { max-width: 560px; }
.oso-notice--width-lg .oso-notice-panel { max-width: 720px; }

.oso-notice--radius-sm .oso-notice-panel { border-radius: 6px; }
.oso-notice--radius-md .oso-notice-panel { border-radius: 10px; }
.oso-notice--radius-lg .oso-notice-panel { border-radius: 16px; }

.oso-notice--takeover .oso-notice-panel {
  width: 100%;
  max-width: none;
  min-height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.oso-notice-close {
  position: absolute;
  top: 0.65rem;
  right: 0.75rem;
  border: 0;
  background: transparent;
  color: inherit;
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
  opacity: 0.85;
}

.oso-notice-media img {
  display: block;
  width: 100%;
  max-height: 180px;
  object-fit: cover;
  border-radius: 6px;
  margin-bottom: 0.85rem;
}

.oso-notice-title {
  margin: 0 0 0.5rem;
  font-size: clamp(1.25rem, 2.5vw, 1.75rem);
  line-height: 1.2;
}

.oso-notice-text {
  margin: 0 0 0.85rem;
  line-height: 1.55;
  opacity: 0.92;
}

@media (min-width: 900px) {
  .oso-notice[data-notice-id="notice_992a88798b64"] .oso-notice-panel {
    width: max-content;
    max-width: calc(100vw - 2rem);
  }

  .oso-notice[data-notice-id="notice_992a88798b64"] .oso-notice-text {
    white-space: nowrap;
  }
}

.oso-notice-countdown {
  margin: 0.5rem 0 0.85rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: var(--notice-accent, #FFC845);
}

.oso-notice-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
}

.oso-notice-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.65rem 1rem;
  border-radius: 4px;
  font-weight: 700;
  text-decoration: none;
  border: 2px solid transparent;
  cursor: pointer;
}

.oso-notice-action--primary {
  background: var(--notice-accent, #FFC845);
  color: var(--notice-primary-fg, #0F1A2A);
  border-color: var(--notice-accent, #FFC845);
}

.oso-notice-action--secondary {
  background: transparent;
  color: inherit;
  border-color: color-mix(in srgb, var(--notice-text, #fff) 35%, transparent);
}

.oso-notice-action--dismiss {
  background: transparent;
  color: inherit;
  border-color: transparent;
  opacity: 0.85;
}

body.oso-notice-open {
  overflow: hidden;
}

@media (max-width: 640px) {
  .oso-notice--modal .oso-notice-panel {
    width: 100%;
    max-width: none;
  }
}
