:root {
  --pastel-mint: #dcf7e9;
  --pastel-mint-border: #9bdcbc;
  --pastel-mint-ink: #075b43;
  --pastel-sky: #e1f2ff;
  --pastel-sky-border: #9bd2f4;
  --pastel-sky-ink: #075985;
  --pastel-peach: #fff0e5;
  --pastel-peach-border: #f3b98d;
  --pastel-peach-ink: #8a3d12;
  --pastel-lavender: #f1eaff;
  --pastel-lavender-border: #cbb8ef;
  --pastel-lavender-ink: #5b3a8f;
  --pastel-cream: #fff8d9;
  --pastel-cream-border: #e7d27a;
  --pastel-cream-ink: #6b5400;
  --pastel-shadow: 0 14px 34px rgba(50, 85, 103, .11);
}

.pastel-mint { --pastel-bg: var(--pastel-mint); --pastel-border: var(--pastel-mint-border); --pastel-ink: var(--pastel-mint-ink); }
.pastel-sky { --pastel-bg: var(--pastel-sky); --pastel-border: var(--pastel-sky-border); --pastel-ink: var(--pastel-sky-ink); }
.pastel-peach { --pastel-bg: var(--pastel-peach); --pastel-border: var(--pastel-peach-border); --pastel-ink: var(--pastel-peach-ink); }
.pastel-lavender { --pastel-bg: var(--pastel-lavender); --pastel-border: var(--pastel-lavender-border); --pastel-ink: var(--pastel-lavender-ink); }
.pastel-cream { --pastel-bg: var(--pastel-cream); --pastel-border: var(--pastel-cream-border); --pastel-ink: var(--pastel-cream-ink); }

.urgent-announcement-root[hidden], .quick-actions[hidden] { display: none !important; }
.urgent-announcement-root { position: fixed; z-index: 1001; top: 0; right: 0; left: 0; width: 100%; padding: 6px clamp(12px, 3vw, 36px); background: rgba(248,251,252,.96); backdrop-filter: blur(12px); }
.urgent-announcement { max-width: 1440px; min-height: 46px; margin: 0 auto; padding: 7px 10px 7px 16px; display: flex; align-items: center; gap: 14px; border: 1px solid var(--pastel-border); border-left: 5px solid var(--pastel-ink); border-radius: 14px; background: linear-gradient(105deg, var(--pastel-bg), rgba(255,255,255,.94)); color: var(--pastel-ink); box-shadow: 0 8px 24px rgba(50,85,103,.10); }
.urgent-announcement.severity-emergency { --pastel-bg: #ffe7e7; --pastel-border: #f0aaaa; --pastel-ink: #9b1c1c; }
.urgent-announcement-content { min-width: 0; flex: 1; display: flex; align-items: baseline; gap: 12px; }
.urgent-announcement-content strong { flex: 0 0 auto; color: inherit; font-size: .98rem; }
.urgent-announcement-content span { color: #334155; font-size: .88rem; line-height: 1.5; }
.urgent-announcement-link { flex: 0 0 auto; min-height: 40px; display: inline-flex; align-items: center; padding: 8px 15px; border-radius: 999px; background: var(--pastel-ink); color: #fff; font-size: .84rem; font-weight: 800; }
.urgent-announcement-link:hover { color: #fff; filter: brightness(.92); transform: translateY(-1px); }
.urgent-announcement-close { flex: 0 0 auto; width: 40px; height: 40px; border: 1px solid color-mix(in srgb, var(--pastel-ink) 25%, transparent); border-radius: 50%; background: rgba(255,255,255,.72); color: var(--pastel-ink); font: 700 1.4rem/1 sans-serif; }

.quick-actions { position: relative; z-index: 21; width: 100%; padding: 0 20px 22px; margin-top: 18px; isolation: isolate; }
.quick-actions::before { content: ''; position: absolute; z-index: -1; inset: 22% 8% 0; border-radius: 30px; background: linear-gradient(100deg, rgba(220,247,233,.42), rgba(225,242,255,.50), rgba(241,234,255,.38)); filter: blur(18px); }
.quick-actions-title { width: min(1180px, 100%); margin: 0 auto 8px; text-align: center; font-size: clamp(.92rem, 1.6vw, 1.08rem); color: #123f3a; }
.quick-actions-grid { width: min(1180px, 100%); margin: 0 auto; padding: 10px; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 280px)); justify-content: center; gap: 10px; border: 1px solid rgba(148,163,184,.2); border-radius: 20px; background: rgba(255,255,255,.90); box-shadow: 0 12px 30px rgba(50,85,103,.10); backdrop-filter: blur(14px); }
.quick-action-card { min-height: 74px; padding: 11px 13px; display: flex; align-items: center; gap: 11px; border: 1px solid var(--pastel-border); border-radius: 15px; background: linear-gradient(145deg, rgba(255,255,255,.92), var(--pastel-bg)); color: var(--pastel-ink); box-shadow: 0 5px 14px color-mix(in srgb, var(--pastel-border) 22%, transparent); }
.quick-action-card:hover { color: var(--pastel-ink); border-color: var(--pastel-ink); transform: translateY(-3px); box-shadow: 0 12px 24px color-mix(in srgb, var(--pastel-border) 42%, transparent); }
.quick-action-icon { width: 48px; height: 48px; flex: 0 0 48px; display: grid; place-items: center; border-radius: 15px; background: rgba(255,255,255,.82); border: 1px solid var(--pastel-border); }
.quick-action-icon svg { width: 25px; height: 25px; }
.quick-action-copy { min-width: 0; display: grid; gap: 3px; }
.quick-action-copy strong { color: inherit; font-size: .94rem; line-height: 1.35; }
.quick-action-copy small { color: #536578; font-size: .76rem; line-height: 1.35; }

.hero-slider-toggle { min-width: 72px; height: 34px; padding: 0 12px; border: 1px solid rgba(37,99,235,.22); border-radius: 999px; background: rgba(255,255,255,.9); color: var(--brand-blue); font: 700 .8rem/1 var(--font-body); box-shadow: 0 4px 12px rgba(15,23,42,.08); }
.hero-slider-toggle[hidden] { display: none !important; }

.urgent-announcement a:focus-visible,
.urgent-announcement button:focus-visible,
.quick-action-card:focus-visible,
.hero-slider-controls button:focus-visible { outline: 3px solid #1d4ed8; outline-offset: 3px; }

@media (max-width: 900px) {
  .quick-actions-grid { grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr)); }
  .urgent-announcement-content { display: grid; gap: 2px; }
}

@media (max-width: 560px) {
  .urgent-announcement-root { padding: 7px; }
  .urgent-announcement { align-items: flex-start; flex-wrap: wrap; gap: 8px; padding: 10px 9px 10px 13px; border-radius: 13px; }
  .urgent-announcement-content { flex-basis: calc(100% - 50px); }
  .urgent-announcement-link { margin-left: 0; }
  .urgent-announcement-close { margin-left: auto; }
  .quick-actions { padding: 0 10px 18px; margin-top: 12px; }
  .quick-actions-grid { grid-template-columns: 1fr; gap: 9px; padding: 9px; border-radius: 18px; }
  .quick-action-card { min-height: 78px; }
}

@media (prefers-reduced-motion: reduce) {
  .urgent-announcement-link, .quick-action-card, .hero-slider-toggle { transition: none !important; transform: none !important; }
}

@media print {
  .urgent-announcement-root, .quick-actions, .hero-slider-controls { display: none !important; }
}
