/* Digital1010 first-party cookie-consent banner. No external CMP, no third-party calls.
   CSP-safe: loaded as an external stylesheet; the controller is an external script (cookie-consent.js).
   Honors Global Privacy Control (GPC) and stores consent locally only. */

.mc-cc-banner, .mc-cc-modal-backdrop { box-sizing: border-box; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; }
.mc-cc-banner *, .mc-cc-modal * { box-sizing: border-box; }

.mc-cc-banner {
  position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 2147483646;
  max-width: 720px; margin: 0 auto; background: #11161d; color: #e8edf3;
  border: 1px solid #2a3442; border-radius: 12px; padding: 18px 20px;
  box-shadow: 0 12px 40px rgba(0,0,0,.45); font-size: 14px; line-height: 1.5;
}
.mc-cc-banner h2 { margin: 0 0 6px; font-size: 15px; font-weight: 600; color: #fff; }
.mc-cc-banner p { margin: 0 0 14px; color: #b9c4d0; }
.mc-cc-banner a { color: #6fb3ff; text-decoration: underline; }
.mc-cc-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.mc-cc-btn {
  appearance: none; border: 1px solid transparent; border-radius: 8px;
  padding: 9px 16px; font-size: 13px; font-weight: 600; cursor: pointer; flex: 1 1 auto; min-width: 120px;
}
.mc-cc-btn-primary { background: #2f7d32; color: #fff; }
.mc-cc-btn-primary:hover { background: #36913a; }
.mc-cc-btn-secondary { background: #1c2530; color: #e8edf3; border-color: #2a3442; }
.mc-cc-btn-secondary:hover { background: #232e3b; }
.mc-cc-btn-link { background: transparent; color: #b9c4d0; border-color: #2a3442; }

.mc-cc-modal-backdrop {
  position: fixed; inset: 0; z-index: 2147483647; background: rgba(0,0,0,.55);
  display: flex; align-items: center; justify-content: center; padding: 16px;
}
.mc-cc-modal {
  background: #11161d; color: #e8edf3; border: 1px solid #2a3442; border-radius: 14px;
  max-width: 560px; width: 100%; max-height: 88vh; overflow: auto; padding: 22px 24px;
  box-shadow: 0 16px 50px rgba(0,0,0,.55);
}
.mc-cc-modal h2 { margin: 0 0 4px; font-size: 17px; color: #fff; }
.mc-cc-modal > p { margin: 0 0 16px; color: #b9c4d0; font-size: 13px; }
.mc-cc-cat { border: 1px solid #2a3442; border-radius: 10px; padding: 12px 14px; margin-bottom: 10px; }
.mc-cc-cat-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.mc-cc-cat-head strong { font-size: 14px; color: #fff; }
.mc-cc-cat p { margin: 6px 0 0; font-size: 12.5px; color: #9fb0c0; }
.mc-cc-gpc-note { font-size: 12px; color: #ffcf6f; margin: 4px 0 0; }

/* toggle */
.mc-cc-switch { position: relative; width: 42px; height: 24px; flex: 0 0 auto; }
.mc-cc-switch input { opacity: 0; width: 0; height: 0; }
.mc-cc-slider { position: absolute; inset: 0; background: #3a4554; border-radius: 24px; transition: .15s; cursor: pointer; }
.mc-cc-slider::before { content: ""; position: absolute; height: 18px; width: 18px; left: 3px; top: 3px; background: #fff; border-radius: 50%; transition: .15s; }
.mc-cc-switch input:checked + .mc-cc-slider { background: #2f7d32; }
.mc-cc-switch input:checked + .mc-cc-slider::before { transform: translateX(18px); }
.mc-cc-switch input:disabled + .mc-cc-slider { background: #2f7d32; opacity: .6; cursor: not-allowed; }
.mc-cc-modal-actions { display: flex; gap: 10px; margin-top: 18px; }

/* persistent re-open trigger */
.mc-cc-reopen {
  position: fixed; left: 14px; bottom: 14px; z-index: 2147483640;
  background: #1c2530; color: #b9c4d0; border: 1px solid #2a3442; border-radius: 20px;
  padding: 7px 12px; font-size: 12px; cursor: pointer; font-family: inherit; display: none;
}
.mc-cc-reopen:hover { background: #232e3b; }
@media (max-width: 520px) { .mc-cc-btn { flex-basis: 100%; } }
