.analytics-consent[hidden] { display:none; }
.analytics-consent {
  position:fixed;
  z-index:50;
  left:24px;
  bottom:24px;
  width:min(580px, calc(100% - 48px));
  max-height:calc(100dvh - 48px);
  overflow:auto;
  padding:25px 28px 26px;
  border:1px solid #c7d2bd;
  border-radius:5px;
  background:#f4f1e7;
  color:#303c43;
  box-shadow:0 7px 30px #354d3820;
  font:14px/1.6 var(--sans,Arial,sans-serif);
}
.analytics-consent h2 {
  font:500 24px/1.2 var(--serif,Georgia,serif);
  letter-spacing:-.025em;
  margin:0 0 12px;
}
.analytics-consent p { margin:9px 0; }
.analytics-purpose { display:flex; align-items:flex-start; gap:12px; margin:16px 0; cursor:pointer; }
.analytics-purpose input { flex:none; width:20px; height:20px; margin:3px 0 0; accent-color:#3e713f; }
.analytics-purpose strong,.analytics-purpose span span { display:block; }
.analytics-purpose span span { margin-top:3px; }
.analytics-consent details { margin:12px 0 0; }
.analytics-consent summary { cursor:pointer; font-weight:600; color:#315a3e; }
.analytics-consent a { text-decoration:underline; text-underline-offset:3px; }
.analytics-consent .analytics-consent-status { font-size:12px; color:#56624f; margin-top:14px; }
.analytics-consent-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:16px; }
.analytics-consent-actions button {
  flex:1;
  min-height:46px;
  padding:11px 17px;
  border:1px solid #477745;
  border-radius:4px 5px 3px 4px;
  background:#3e713f;
  background-image:linear-gradient(110deg,#315f37ed,#37643fe8),url('assets/oldodo-szinmezok.webp');
  background-size:cover;
  color:#fffdf5;
  font:600 14px/1.4 var(--sans,Arial,sans-serif);
  cursor:pointer;
}
.analytics-consent-actions button:hover { filter:brightness(.93); }
.analytics-settings {
  min-height:44px;
  padding:6px 0;
  border:0;
  background:transparent;
  color:#52624f;
  font:500 12px/1.6 var(--sans,Arial,sans-serif);
  text-decoration:underline;
  text-underline-offset:4px;
  text-decoration-color:#c7d2bd;
  cursor:pointer;
}
.analytics-settings:hover { color:#315a3e; text-decoration-color:currentColor; }
.analytics-footer { padding:16px 24px; text-align:center; }
.analytics-consent button:focus-visible,.analytics-consent input:focus-visible,.analytics-consent a:focus-visible,.analytics-consent summary:focus-visible,.analytics-settings:focus-visible {
  outline:3px solid #365f9c;
  outline-offset:3px;
}
@media (max-width:600px) {
  .analytics-consent { left:12px; bottom:12px; width:calc(100% - 24px); padding:20px; max-height:calc(100dvh - 24px); }
  .analytics-consent-actions { flex-direction:column; }
}
@media print { .analytics-consent,.analytics-settings { display:none!important; } }
