/* Consent is a local component; vendors load only after a positive choice. */
body { padding-bottom:var(--consent-space,0px); }
.consent-banner { position:fixed; inset:auto 0 0; z-index:80; border-top:3px solid var(--ink); background:var(--paper); padding:24px 0 max(24px,env(safe-area-inset-bottom)); box-shadow:0 -4px 20px #00000008; max-height:82dvh; overflow-y:auto; }
.consent-inner { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:40px; }
.consent-copy { min-width:0; }
.consent-copy h2 { font:600 var(--text-meta)/1.5 var(--sans); letter-spacing:.08em; margin:0 0 10px; }
.consent-copy>p { font-size:var(--text-control); line-height:1.7; margin:0; }
.consent-copy a { text-decoration:underline; text-underline-offset:4px; margin-left:8px; }
.consent-copy .consent-status { font-size:var(--text-meta); line-height:1.7; margin-top:8px; color:var(--muted); }
.consent-actions { display:flex; align-items:center; flex-wrap:wrap; gap:14px; }
.consent-actions .button { font-size:var(--text-control); min-height:52px; padding:12px 24px; justify-content:center; border-radius:0; }
.consent-actions .text-link { font-size:var(--text-control); padding:10px 0; }
.footer-bottom>div { flex-wrap:wrap; }
#studio-analytics h3 { font:500 var(--text-card)/1.35 var(--serif); margin:30px 0 18px; }
#studio-analytics .form-hint { font-size:var(--text-meta); }
.analytics-event-list { padding-left:24px; font-size:var(--text-control); line-height:1.8; }
.analytics-event-list li { margin-bottom:12px; }
.analytics-config-status { margin-block:24px; }
#studio-analytics .check-label { display:flex; flex-direction:row; align-items:flex-start; gap:14px; }
#studio-analytics .check-label input { width:22px; height:22px; flex-shrink:0; margin-top:4px; accent-color:var(--ink); }
@media(max-width:900px) {
  .consent-inner { grid-template-columns:minmax(0,1fr); gap:18px; }
  .consent-actions { justify-content:flex-start; }
}
@media(max-width:639px) {
  .consent-banner { padding-block:20px max(20px,env(safe-area-inset-bottom)); }
  .consent-actions .button { flex:1 1 120px; }
  .consent-actions .text-link { flex-basis:100%; }
}
