.legal-document{font-family:system-ui,sans-serif;max-width:760px;margin:48px auto;padding:0 24px calc(48px + var(--cookie-banner-height,0px));color:#25251f;font-size:16px;line-height:1.75;overflow-wrap:anywhere}.legal-document h1{margin:28px 0 12px;font-size:28px;font-weight:600;line-height:1.3}.legal-document h2{margin:32px 0 12px;font-size:19px;font-weight:600;line-height:1.4}.legal-document p{margin:0 0 18px}.legal-document ul{padding-left:22px}.legal-document li{margin:8px 0}.legal-document a,.legal-links a{color:inherit;text-decoration:underline;text-underline-offset:3px}.legal-document .legal-revision{font-size:13px;color:#777368}.legal-draft{font-size:14px;color:#777368}
.legal-links{display:flex;flex-wrap:wrap;gap:10px 16px;font-family:system-ui,sans-serif;font-size:12px;line-height:1.5;margin-top:16px;max-width:100%}.legal-links button{background:none;color:inherit;border:0;padding:0;cursor:pointer;text-decoration:underline;font:inherit}.app-footer,.landing-footer{flex-wrap:wrap}.app-footer .legal-links,.landing-footer .legal-links{flex-basis:100%}.auth-panel-card>.legal-links{max-width:600px;margin:24px auto}.legal-checkbox{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px;font-size:13px;line-height:1.5;margin:14px 0}.legal-checkbox input{width:18px!important;min-width:18px;height:18px;padding:0;margin:3px 0;accent-color:#1b211a}.legal-checkbox a{color:inherit;text-decoration:underline}
/* A full-width notice with copy and actions on one row when space permits. */
.cookie-banner{position:fixed;z-index:10000;bottom:0;left:0;right:0;width:100%;box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 32px;align-items:center;padding:18px max(24px,calc((100vw - 1200px)/2));border-top:1px solid #dedbd3;background:#fffefa;color:#25251f;font-family:system-ui,sans-serif;font-size:13px;line-height:1.55}
.cookie-heading{display:flex;align-items:center;gap:16px}
.cookie-heading strong{font-size:14px;font-weight:600}
.cookie-heading a{font-size:12px;color:#777368;text-decoration:underline;text-underline-offset:3px}
.cookie-banner .cookie-copy{grid-column:1;margin:0;color:#706d63;font-size:13px;line-height:1.55}
.cookie-banner>.cookie-actions{grid-column:2;grid-row:1 / span 3;justify-content:flex-end}
.cookie-banner>.cookie-error{grid-column:1;margin:4px 0 0}
.cookie-banner a,.cookie-settings a{color:inherit}
.cookie-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.cookie-actions button{cursor:pointer;box-sizing:border-box;border:1px solid #d9d6ce;border-radius:6px;padding:9px 12px;background:transparent;color:#32342b;font:500 12px/1.35 system-ui,sans-serif;white-space:nowrap;transition:background .15s,border-color .15s}
.cookie-actions button:hover{background:#f0eee7;border-color:#aaa79d}
.cookie-actions button:focus-visible,.cookie-heading a:focus-visible{outline:2px solid #737d59;outline-offset:3px}
.cookie-actions button:disabled{opacity:.5;cursor:default}
.cookie-actions button:first-child{background:#272d21;border-color:#272d21;color:#fff}
.cookie-actions button:first-child:hover{background:#3a4231}
.cookie-banner .cookie-customize{padding:7px 2px;border:0;color:#777368;font-size:11px;background:transparent}
.cookie-banner .cookie-customize:hover{color:#25251f;text-decoration:underline}

.cookie-settings{width:min(560px,calc(100% - 32px));box-sizing:border-box;max-height:90vh;overflow:auto;border:1px solid #d8d9d2;border-radius:14px;padding:28px;font-family:system-ui,sans-serif;line-height:1.6;color:#171916;background:#fff}.cookie-settings::backdrop{background:#0006}.cookie-error{color:#a42b23}@media(max-width:800px){.cookie-banner{grid-template-columns:1fr;gap:8px;padding:16px 20px;max-height:60vh;overflow:auto}.cookie-banner>.cookie-actions{grid-column:1;grid-row:auto;justify-content:flex-start}.cookie-banner .cookie-actions button{flex:0 1 auto}.legal-document{padding-left:20px;padding-right:20px;margin-top:28px}.legal-document h1{font-size:24px}}
@media print{.cookie-banner,.cookie-settings,.legal-links{display:none!important}.legal-document{max-width:none;margin:0;padding:0;font-size:11pt;color:#000}.legal-document>a,.legal-document>p:last-of-type{display:none}}
