/* Draft documents, separate form consent and browser preferences. */
.form-consent { min-height:var(--touch-target); display:flex; align-items:start; gap:var(--space-3); margin-block:var(--space-4); font-size:var(--text-xs); line-height:1.5; }
.form-consent input,.cookie-option input { flex-shrink:0; width:var(--space-5); height:var(--space-5); accent-color:var(--color-ink); margin:0; }
.form-consent input { outline-offset:var(--space-1); }
.form-consent a { text-underline-offset:.2em; }
.form-policy { margin:0 0 var(--space-4); font-size:var(--text-xs); color:var(--color-muted); }
.footer-legal { display:flex; flex-wrap:wrap; align-items:center; gap:var(--space-2) var(--space-6); padding-block:var(--space-6); font-size:var(--text-xs); color:var(--color-on-dark-muted); }
.footer-legal a,.footer-legal button { min-height:var(--touch-target); display:inline-flex; align-items:center; }
.footer-legal button,.cookie-banner p button { border:0; background:none; padding:0; color:inherit; font:inherit; text-decoration:underline; cursor:pointer; }
.developer-credit { margin-left:auto; }
.cookie-banner[hidden] { display:none; }
.cookie-banner { position:fixed; bottom:var(--space-4); left:var(--layout-gutter); z-index:var(--cookie-banner-layer); width:min(var(--cookie-banner-width),calc(100% - 2 * var(--layout-gutter))); display:flex; align-items:center; gap:var(--space-4); padding:var(--space-4); background:var(--color-surface); border:var(--size-1) solid var(--color-line-strong); }
.cookie-banner p { margin:0; font-size:var(--text-xs); line-height:1.6; }
.cookie-banner .button { min-height:var(--touch-target); padding:var(--space-2) var(--space-4); }
.cookie-banner p button { min-height:var(--touch-target); }
.cookie-dialog { width:min(var(--cookie-dialog-width),calc(100% - var(--space-8))); padding:var(--panel-inset); color:var(--color-ink); background:var(--color-canvas); }
.cookie-dialog h2 { margin:0 var(--space-8) var(--space-6) 0; font-size:var(--text-form-title); line-height:1.2; }
.cookie-dialog p { font-size:var(--text-sm); line-height:1.5; }
.cookie-option { display:flex; align-items:start; gap:var(--space-4); margin-block:var(--space-6); cursor:pointer; }
.cookie-option strong,.cookie-option small { display:block; font-size:var(--text-sm); }
.cookie-option small { color:var(--color-muted); line-height:1.5; margin-top:var(--space-2); }
.top-button { bottom:calc(var(--space-6) + env(safe-area-inset-bottom) + var(--cookie-banner-height)); }
.legal-document { max-width:var(--legal-reading-width); margin:var(--space-8) auto var(--section-inset); overflow-wrap:anywhere; }
.legal-document h1 { font-size:var(--seo-title-size); line-height:1.1; letter-spacing:-.04em; margin:var(--space-6) 0; }
.legal-document h2 { font-size:var(--text-lg); margin:var(--space-8) 0 var(--space-4); line-height:1.35; }
.legal-document p,.legal-document li { font-size:var(--text-base); line-height:1.65; }
.legal-document p { margin:0 0 var(--space-4); }
.legal-document ul { margin:0 0 var(--space-4); padding-left:var(--space-5); }
.legal-document li+li { margin-top:var(--space-3); }
.legal-notice { padding:var(--space-4); border:var(--size-1) solid var(--color-line-strong); background:var(--color-surface); }
.legal-field { font-size:var(--text-sm); color:var(--color-muted); }
.legal-table { overflow-x:auto; max-width:100%; }
.legal-table table { border-collapse:collapse; font-size:var(--text-sm); min-width:var(--legal-table-width); }
.legal-table td,.legal-table th { text-align:left; vertical-align:top; border:var(--size-1) solid var(--color-line); padding:var(--space-3); }
.legal-related { display:flex; flex-wrap:wrap; gap:var(--space-4); margin-top:var(--space-8); }
.legal-related a { display:inline-flex; align-items:center; min-height:var(--touch-target); font-size:var(--text-sm); }
@media(max-width:700px) {
 .legal-document h1 { font-size:var(--text-mobile-heading); }
 .developer-credit { margin-left:0; }
 .cookie-banner { bottom:var(--space-3); }
}
