.q-consents{display:flex;flex-direction:column;gap:var(--space-16);margin-top:var(--space-24);padding:var(--space-16);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-surface)}.q-consents__title{margin:0;font-family:var(--font-heading);font-size:var(--text-xl);line-height:1.2;color:var(--text-primary)}.q-consents__eho{padding:var(--space-12);border-left:3px solid var(--accent-primary);border-radius:var(--radius-sm);background:var(--bg-elevated)}.q-consents__eho p{margin:0;font-size:var(--text-sm);line-height:1.6;color:var(--text-secondary)}.q-consents__eho strong{color:var(--text-primary)}.q-consents__group{display:flex;flex-direction:column;gap:var(--space-10);margin:0;padding:0;border:0}.q-consents__legend{padding:0;font-family:var(--font-heading);font-size:var(--text-md);color:var(--text-primary)}.q-consent{display:grid;grid-template-columns:auto 1fr;gap:var(--space-10);align-items:start}.q-consent__input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--accent-primary);cursor:pointer;flex-shrink:0}.q-consent__label{cursor:pointer;font-size:var(--text-sm);line-height:1.6;color:var(--text-secondary)}.q-consent__lead{font-weight:600}.q-consent__body strong,.q-consent__lead{color:var(--text-primary)}.q-consent__input:focus-visible+.q-consent__label{outline:2px solid var(--border-focus);outline-offset:var(--space-4);border-radius:var(--radius-xs)}.q-consents__fine{margin:0;font-size:var(--text-sm);line-height:1.6;color:var(--text-muted)}.q-consents__fine strong,.q-consents__note{color:var(--text-secondary)}.q-consents__note{margin:0;padding:var(--space-8) var(--space-10);border-radius:var(--radius-sm);background:var(--bg-elevated);font-size:var(--text-sm);line-height:1.5}.q-consents__disclaimer{padding-top:var(--space-12);border-top:1px solid var(--border-subtle)}.q-consents__disclaimer p{margin:0;font-size:var(--text-sm);line-height:1.65;color:var(--text-muted)}.q-consents__disclaimer strong{color:var(--text-secondary)}.q-consents a{color:var(--accent-primary);text-underline-offset:var(--space-2)}.q-consents a:hover{color:var(--accent-hover)}.q-consent--standalone{margin-top:var(--space-16)}.q-consent__body a{color:var(--accent-primary);text-underline-offset:var(--space-2)}.q-consent__body a:hover{color:var(--accent-hover)}@media (max-width:768px){.q-consent{grid-template-columns:1fr;gap:var(--space-6)}.q-consent__input{width:24px;height:24px;margin:0}}