/* Legal pages reuse the company design tokens; no separate colour palette. */
.legal-page{background:var(--fx-background);color:var(--fx-text);font-family:var(--fx-font)}
.legal-page .fl-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px var(--fx-content-padding);background:var(--fx-surface);border-bottom:1px solid var(--fx-border)}.legal-page .fl-brand{display:flex;align-items:center;gap:16px;text-decoration:none;min-width:0}.legal-page .fl-brand img{width:100px;height:64px;object-fit:contain}.legal-page .fl-brand strong{display:block;font:600 20px/1.4 var(--fx-brand-font)}.legal-page .fl-brand small{display:block;font-size:11px;letter-spacing:2px;color:var(--fx-muted)}.legal-page .fl-account{display:flex;align-items:center;margin-inline-start:auto}.legal-page .fl-account>a{display:inline-flex;align-items:center;justify-content:center;min-width:70px;min-height:44px;border:1px solid var(--fx-border);border-radius:var(--fx-control-radius);text-decoration:none;padding-inline:12px}
.legal-hero{border-bottom:1px solid var(--fx-border);background:linear-gradient(115deg,var(--fx-surface),var(--fx-primary-soft));padding:52px var(--fx-content-padding) 40px}
.legal-hero-content{max-width:1200px;margin:auto;border-inline-start:4px solid var(--fx-accent);padding-inline-start:24px}
.legal-eyebrow{font-size:14px;font-weight:600;color:var(--fx-accent);margin:0 0 12px}.legal-hero h1{font-size:clamp(27px,3vw,40px);line-height:1.5;margin:0;max-width:900px}.legal-operator{color:var(--fx-muted);font-size:16px;margin:12px 0 24px}
.legal-metadata{display:flex;flex-wrap:wrap;gap:16px 40px;margin:0}.legal-metadata>div{display:grid;gap:3px}.legal-metadata dt{font-size:12px;color:var(--fx-muted)}.legal-metadata dd{font-size:15px;font-weight:600;margin:0}
.legal-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-block-start:28px}.legal-page a{color:var(--fx-primary)}.legal-text-link{text-decoration:underline;text-underline-offset:4px;min-height:44px;display:inline-flex;align-items:center}
.legal-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:32px;max-width:1272px;margin:auto;padding:36px var(--fx-content-padding) 64px;align-items:start}
.legal-sidebar{position:sticky;top:20px;min-width:0}.legal-toc{background:var(--fx-surface);border:1px solid var(--fx-border);border-radius:var(--fx-radius);overflow:hidden}.legal-toc summary{padding:16px 18px;font-size:16px;font-weight:600;cursor:pointer;color:var(--fx-accent)}
.legal-toc nav{max-height:calc(100dvh - 170px);overflow-y:auto;overscroll-behavior:contain;padding:0 10px 12px}.legal-toc ol{list-style:none;margin:0;padding:0}.legal-toc a{display:block;padding:10px 8px;border-radius:var(--fx-control-radius);text-decoration:none;line-height:1.7;font-size:13px;min-height:44px}.legal-toc a:hover,.legal-toc a:focus-visible{background:var(--fx-primary-soft);color:var(--fx-primary-hover)}.legal-back-top{display:inline-flex;align-items:center;min-height:44px;margin:10px;font-size:13px;text-decoration:none}
.service-terms-page.legal-document{max-width:none;min-width:0;margin:0;padding:30px 36px;background:var(--fx-surface);border:1px solid var(--fx-border);border-radius:var(--fx-radius);line-height:1.95;font-family:var(--fx-font);font-size:16px}
.legal-document section{margin-block:0}.legal-document .legal-clause{padding-block:28px;border-bottom:1px solid var(--fx-border);scroll-margin-block-start:24px}.legal-document .legal-clause h2{font-size:20px;margin:0 0 14px;color:var(--fx-accent);text-align:start}.legal-document h2:focus{outline:none}
.legal-document .legal-clause p{margin:0;line-height:2;overflow-wrap:anywhere;text-wrap:pretty}html:lang(ar) .legal-document .legal-clause>p{text-align:justify;text-align-last:start;text-justify:inter-word}
.legal-account{padding:20px;border:1px solid var(--fx-border);border-radius:var(--fx-radius);background:var(--fx-surface-soft);scroll-margin-block-start:24px;margin-block:24px!important}.legal-account h2{font-size:18px;margin:0 0 10px}.legal-account p{margin:10px 0;font-size:14px}
.legal-document .legal-references ul{padding-inline-start:20px;margin:20px 0}.legal-references li{margin-block:14px;overflow-wrap:anywhere}.legal-references a{text-decoration:underline;text-underline-offset:4px}.legal-references small{display:block;color:var(--fx-muted);font-size:12px;margin-block-start:4px}
.legal-integrity{margin-block-start:20px;padding:14px;border:1px solid var(--fx-border);border-radius:var(--fx-control-radius);font-size:13px}.legal-integrity summary{cursor:pointer;color:var(--fx-muted)}
.legal-contact{padding-block:28px 8px}.legal-contact h2{font-size:20px;color:var(--fx-accent)}.legal-contact a{display:inline-flex;align-items:center;min-height:44px;margin-inline-end:24px;overflow-wrap:anywhere}
.legal-unavailable{max-width:800px;padding:64px var(--fx-content-padding);margin:auto;min-height:55vh}.legal-unavailable p{margin-block:24px}
.service-terms-meta{font-size:14px;color:var(--fx-muted)}.service-terms-warning,.service-consent-scope{padding:16px 20px;border-inline-start:3px solid var(--fx-accent);background:var(--fx-warning-soft);color:var(--fx-text);line-height:1.9;margin:0 0 20px}
.service-consent-dialog{background:var(--fx-surface);color:var(--fx-text);border:1px solid var(--fx-border);border-radius:var(--fx-radius);width:min(900px,94vw);max-height:92dvh;overflow:auto;padding:24px;line-height:1.9;font-family:var(--fx-font)}.service-consent-dialog::backdrop{background:var(--fx-overlay)}
.service-consent-header{display:flex;align-items:start;gap:16px;justify-content:space-between}.service-consent-header h2{font-size:22px}.service-consent-dialog button,.service-terms-page button{cursor:pointer;padding:10px 16px;margin:4px;border:1px solid var(--fx-primary);border-radius:var(--fx-control-radius);color:var(--fx-primary);background:var(--fx-surface);min-height:44px;font:inherit}.service-consent-dialog button[type=submit]{background:var(--fx-primary);color:var(--fx-surface)}.service-consent-dialog button:disabled{opacity:.6;cursor:default}.service-consent-actions{display:flex;gap:8px}.service-consent-dialog summary{padding:16px;cursor:pointer;font-weight:600}
.service-terms-text{max-height:38vh;overflow:auto;padding:20px;border:1px solid var(--fx-border);overscroll-behavior:contain;font-family:var(--fx-font)}.service-terms-text h3{font-size:18px;color:var(--fx-accent)}.service-terms-text p{line-height:2}.service-consent-check{display:flex;gap:12px;align-items:start;margin-block:20px}.service-consent-check input{width:22px;height:22px;flex-shrink:0;margin-top:6px;accent-color:var(--fx-primary)}.service-terms-error{color:var(--fx-danger)}.service-terms-history article{border:1px solid var(--fx-border);padding:16px;margin-block:16px;border-radius:var(--fx-radius);overflow-wrap:anywhere}.service-terms-hash{overflow-wrap:anywhere;font-size:12px;line-height:1.7;direction:ltr;text-align:start}
@media(max-width:1000px){.legal-layout{display:block;max-width:860px}.legal-sidebar{position:static;margin-block-end:20px}.legal-toc nav{max-height:45vh}.legal-back-top{display:none}}
@media(max-width:600px){.legal-hero{padding:30px 16px}.legal-hero-content{padding-inline-start:16px}.legal-operator{font-size:15px}.legal-metadata{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.legal-metadata dd{font-size:14px;overflow-wrap:anywhere}.legal-actions .cw-button{flex:1}.legal-layout{padding:20px 12px 36px}.service-terms-page.legal-document{padding:20px;font-size:16px}.legal-document .legal-clause{padding-block:24px}.legal-document .legal-clause h2{font-size:19px}html:lang(ar) .legal-document .legal-clause>p{text-align:start}.legal-account{padding:16px}.service-consent-header{display:block}.service-consent-dialog{padding:16px}.service-terms-text{max-height:32vh}.legal-actions{gap:8px}.legal-text-link{flex-basis:100%}}
@media print{@page{size:A4;margin:18mm}.legal-page{background:white;color:black;font-size:11pt}.legal-page .fl-header{padding:0 0 12px;border-bottom:1px solid #777}.legal-page .fl-account,.legal-sidebar,.legal-actions,.legal-footer,#service-terms-account,.service-consent-dialog,.service-terms-history{display:none!important}.legal-hero{background:none;padding:20px 0}.legal-hero-content{padding:0;border:0}.legal-hero h1{font-size:22pt}.legal-metadata{gap:12px 24px}.legal-layout{display:block;padding:0;max-width:none}.service-terms-page.legal-document{border:0;border-radius:0;padding:0;font-size:11pt}.legal-document .legal-clause{padding-block:14px;break-inside:auto}.legal-document .legal-clause h2{break-after:avoid;font-size:13pt}.legal-document p{orphans:3;widows:3}.legal-document .legal-clause p{text-align:justify}.legal-references a{overflow-wrap:anywhere}.legal-integrity{display:none}.service-terms-warning{background:none;border:1px solid #777}.legal-contact{break-inside:avoid}}
