/* CES.ro – caseta de consimțământ cookie-uri. Izolată sub #ces-consent; nu modifică designul site-ului. */
#ces-consent { --cc-bg:#ffffff; --cc-text:#1f2a33; --cc-muted:#5b6b78; --cc-accent:#0057B7; --cc-accent-2:#003f85; --cc-border:#d9e1e8; --cc-radius:12px; font-family: inherit; font-size: 15px; line-height: 1.5; color: var(--cc-text); }
#ces-consent [hidden] { display: none !important; }
.ces-consent__banner { position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 99990; background: var(--cc-bg); border: 1px solid var(--cc-border); border-radius: var(--cc-radius); box-shadow: 0 10px 40px rgba(0,0,0,.18); padding: 18px 20px; max-width: 1140px; margin: 0 auto; display: flex; gap: 20px; align-items: center; flex-wrap: wrap; }
.ces-consent__text { flex: 1 1 420px; min-width: 260px; }
.ces-consent__text p { margin: 0 0 6px; }
.ces-consent__text a { color: var(--cc-accent); text-decoration: underline; }
.ces-consent__title { font-weight: 700; font-size: 16px; margin: 0 0 4px; }
.ces-consent__actions { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.ces-consent__btn { appearance: none; border: 1px solid var(--cc-accent); background: var(--cc-accent); color: #fff; font: inherit; font-weight: 600; padding: 10px 18px; border-radius: 8px; cursor: pointer; min-height: 44px; }
.ces-consent__btn:hover { background: var(--cc-accent-2); border-color: var(--cc-accent-2); }
.ces-consent__btn--secondary { background: #fff; color: var(--cc-accent); }
.ces-consent__btn--secondary:hover { background: #eef4fb; }
.ces-consent__btn--link { background: transparent; border-color: transparent; color: var(--cc-accent); text-decoration: underline; padding: 10px 8px; }
.ces-consent__btn:focus-visible, .ces-consent__close:focus-visible, .ces-consent__switch input:focus-visible + span { outline: 3px solid #ffbf47; outline-offset: 2px; }
html.ces-consent-open body { padding-bottom: 150px; }
@media (max-width: 640px) {
  .ces-consent__banner { left: 8px; right: 8px; bottom: 8px; padding: 14px; }
  .ces-consent__actions { width: 100%; }
  .ces-consent__btn { flex: 1 1 100%; text-align: center; }
  html.ces-consent-open body { padding-bottom: 300px; }
}
/* modal */
.ces-consent__modal { position: fixed; inset: 0; z-index: 99991; display: flex; align-items: center; justify-content: center; padding: 16px; background: rgba(15,23,32,.55); }
.ces-consent__dialog { background: var(--cc-bg); color: var(--cc-text); border-radius: var(--cc-radius); max-width: 640px; width: 100%; max-height: 92vh; overflow: auto; box-shadow: 0 20px 60px rgba(0,0,0,.35); position: relative; padding: 24px; }
.ces-consent__dialog h2 { font-size: 20px; margin: 0 40px 10px 0; color: var(--cc-text); }
.ces-consent__dialog p { margin: 0 0 12px; color: var(--cc-muted); }
.ces-consent__close { position: absolute; top: 12px; right: 12px; width: 40px; height: 40px; border: 0; background: transparent; font-size: 26px; line-height: 1; cursor: pointer; color: var(--cc-muted); border-radius: 8px; }
.ces-consent__close:hover { background: #f0f3f6; color: var(--cc-text); }
.ces-consent__cat { display: flex; gap: 14px; align-items: flex-start; border: 1px solid var(--cc-border); border-radius: 10px; padding: 14px; margin-bottom: 10px; }
.ces-consent__cat h3 { font-size: 15px; margin: 0 0 4px; color: var(--cc-text); }
.ces-consent__cat p { margin: 0; font-size: 14px; }
.ces-consent__cat .ces-consent__body { flex: 1; }
.ces-consent__switch { position: relative; flex: 0 0 auto; margin-top: 2px; }
.ces-consent__switch input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.ces-consent__switch span { display: inline-block; width: 46px; height: 26px; border-radius: 13px; background: #c2ccd6; position: relative; transition: background .15s; }
.ces-consent__switch span::after { content: ""; position: absolute; top: 3px; left: 3px; width: 20px; height: 20px; border-radius: 50%; background: #fff; transition: left .15s; box-shadow: 0 1px 3px rgba(0,0,0,.3); }
.ces-consent__switch input:checked + span { background: var(--cc-accent); }
.ces-consent__switch input:checked + span::after { left: 23px; }
.ces-consent__switch input:disabled + span { background: #8fa3b5; cursor: not-allowed; }
.ces-consent__footer { display: flex; gap: 10px; flex-wrap: wrap; justify-content: flex-end; margin-top: 16px; }
.ces-consent__footer a { align-self: center; margin-right: auto; color: var(--cc-accent); font-size: 14px; }
/* placeholder conținut extern (hartă) */
.ces-ext-placeholder { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; min-height: 320px; background: #eef2f6; color: var(--cc-text, #1f2a33); text-align: center; padding: 24px; }
.ces-ext-placeholder p { max-width: 560px; margin: 0; }
.ces-ext-placeholder .ces-consent__btn { min-height: 44px; }
@media (prefers-reduced-motion: reduce) { .ces-consent__switch span, .ces-consent__switch span::after { transition: none; } }
