/* MapCoords consent dialog. Accept and reject have identical styling (no "dark patterns"). */
.mc-cc {
  position: fixed;
  inset: auto 0 0 0;
  z-index: 100000;
  display: flex;
  justify-content: center;
  padding: 12px;
  pointer-events: none;
  font-family: var(--wp--preset--font-family--plex-sans, system-ui, sans-serif);
}
.mc-cc__box {
  pointer-events: auto;
  width: 100%;
  max-width: 720px;
  max-height: calc(100vh - 24px);
  overflow: auto;
  background: var(--mc-elev, #fff);
  color: var(--wp--preset--color--contrast, #12222f);
  border: 1px solid var(--mc-line, #dcd8cf);
  border-radius: 16px;
  box-shadow: 0 12px 40px rgb(18 34 47 / 0.22);
  padding: 20px 22px;
  font-size: 15px;
  line-height: 1.55;
}
.mc-cc h2 { font-size: 18px; margin: 0 0 8px; font-weight: 650; letter-spacing: -0.01em; }
.mc-cc p { margin: 0 0 10px; }
.mc-cc__links a { color: var(--wp--preset--color--accent-1, #0d5c63); text-decoration: underline; }
.mc-cc__cats { display: grid; gap: 10px; margin: 12px 0; }
.mc-cc__cat { border: 1px solid var(--mc-line, #dcd8cf); border-radius: 12px; padding: 10px 14px; }
.mc-cc__cat p { margin: 4px 0 0; font-size: 14px; color: var(--wp--preset--color--accent-4, #5f6e7a); }
.mc-cc__cat-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.mc-cc__cat-head label { font-weight: 600; }
.mc-cc__always { font-size: 13px; font-weight: 600; color: #166534; }
.mc-cc__switch input { width: 42px; height: 24px; appearance: none; -webkit-appearance: none; background: #c3beb2; border-radius: 999px; position: relative; cursor: pointer; transition: background 0.15s; margin: 0; }
.mc-cc__switch input::after { content: ""; position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; transition: transform 0.15s; }
.mc-cc__switch input:checked { background: var(--wp--preset--color--accent-1, #0d5c63); }
.mc-cc__switch input:checked::after { transform: translateX(18px); }
.mc-cc__switch input:focus-visible { outline: 2px solid #2563eb; outline-offset: 2px; }
.mc-cc__actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.mc-cc__btn {
  flex: 1 1 160px;
  border: 1.5px solid var(--wp--preset--color--accent-1, #0d5c63);
  background: var(--wp--preset--color--accent-1, #0d5c63);
  color: #fff;
  border-radius: 12px;
  padding: 11px 16px;
  font: inherit;
  font-weight: 600;
  cursor: pointer;
}
.mc-cc__btn:hover { filter: brightness(0.92); }
.mc-cc__btn--ghost { background: transparent; color: var(--wp--preset--color--accent-1, #0d5c63); }
.mc-cc__btn:focus-visible { outline: 2px solid #2563eb; outline-offset: 2px; }
[data-theme="dark"] .mc-cc__btn { color: #062227; }
[data-theme="dark"] .mc-cc__btn--ghost { color: var(--wp--preset--color--accent-1); }
.mc-cookie-table { width: 100%; font-size: 0.9rem; }
@media (prefers-reduced-motion: reduce) { .mc-cc__switch input, .mc-cc__switch input::after { transition: none; } }
.mc-cc__inuse { font-size: 12.5px !important; font-style: italic; }
.mc-cc--detailed .mc-cc__box { max-width: 760px; }

/* Blocked external media placeholder */
.mc-embed { position: relative; }
.mc-embed iframe[data-mc-src] { visibility: hidden; }
.mc-embed__ph {
  position: absolute;
  inset: 0;
  min-height: 180px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 4px;
  padding: 20px;
  text-align: center;
  background: var(--wp--preset--color--accent-5, #eeece6);
  border: 1px dashed var(--mc-line, #c3beb2);
  border-radius: 12px;
  font-size: 14px;
}
.mc-embed:not(:has(iframe)) .mc-embed__ph, .mc-embed .mc-embed__ph:only-child { position: static; }
.mc-embed__ph p { margin: 0 0 8px; max-width: 34rem; }
.mc-embed__btn { border: 1.5px solid var(--wp--preset--color--accent-1, #0d5c63); background: var(--wp--preset--color--accent-1, #0d5c63); color: #fff; border-radius: 10px; padding: 8px 14px; font: inherit; font-weight: 600; cursor: pointer; margin: 2px; }
.mc-embed__btn--ghost { background: transparent; color: var(--wp--preset--color--accent-1, #0d5c63); }
.wp-block-embed__wrapper > .mc-embed { position: absolute; inset: 0; }
.wp-block-embed__wrapper > .mc-embed iframe { width: 100%; height: 100%; }
@media (min-width: 760px) {
  .mc-cc--detailed .mc-cc__box { max-width: 900px; }
  .mc-cc--detailed .mc-cc__cats { grid-template-columns: 1fr 1fr; }
  .mc-cc--detailed .mc-cc__cat:first-child { grid-column: 1 / -1; }
}
