/* Shared styles for the Privacy Policy and Terms pages. Brand tokens and fonts come from the built site stylesheet. */

body{background:var(--color-cream); color:var(--color-ink); font-family:var(--font-sans)}

.legal-header{background:var(--color-night); padding:1.25rem 0}
.legal-header .legal-wrap{display:flex; align-items:center; justify-content:space-between; gap:1rem}
.legal-header img{width:140px; height:auto}
.legal-header a.back{color:var(--color-cream); font-weight:700; font-size:.9rem; opacity:.8}
.legal-header a.back:hover{opacity:1; color:var(--color-teal)}

.legal-wrap{width:100%; max-width:46rem; margin-inline:auto; padding-inline:1rem}
@media (min-width:640px){ .legal-wrap{padding-inline:1.5rem} }

.legal{padding:3rem 0 4rem}
.legal h1{font-size:clamp(2rem, 5vw, 2.75rem); font-weight:800; line-height:1.1; color:var(--color-night)}
.legal .updated{margin-top:.75rem; font-size:.9rem; color:var(--color-ink); opacity:.7}
.legal h2{margin-top:2.75rem; font-size:1.35rem; font-weight:800; line-height:1.25; color:var(--color-night); scroll-margin-top:1.5rem}
.legal h3{margin-top:1.5rem; font-size:1.05rem; font-weight:700; color:var(--color-night)}
.legal p, .legal ul, .legal table{margin-top:.85rem; line-height:1.65}
.legal ul{padding-left:1.25rem; list-style:disc}
.legal li{margin-top:.4rem}
.legal li::marker{color:var(--color-teal)}
.legal a{color:var(--color-teal-dark); text-decoration:underline; text-underline-offset:2px}
.legal a:hover{color:var(--color-teal)}
.legal strong{font-weight:700; color:var(--color-night)}

.legal .summary{margin-top:2rem; padding:1.25rem 1.5rem; background:var(--color-card); border-radius:1.25rem; border:1px solid rgb(15 46 56 / .1)}
.legal .summary h2{margin-top:0; font-size:1.1rem}

.legal .toc{margin-top:2rem; padding:1.25rem 1.5rem; border-radius:1.25rem; border:1px solid rgb(15 46 56 / .12)}
.legal .toc p{margin-top:0; font-weight:700; color:var(--color-night)}
.legal .toc ol{margin-top:.5rem; padding-left:1.25rem; list-style:decimal; line-height:1.6; columns:2 14rem}
.legal .toc li{margin-top:0; padding-bottom:.35rem; break-inside:avoid}
.legal .toc a{text-decoration:none}
.legal .toc a:hover{text-decoration:underline}

.legal .table-scroll{overflow-x:auto}
.legal table{width:100%; border-collapse:collapse; font-size:.92rem}
.legal th, .legal td{text-align:left; vertical-align:top; padding:.6rem .75rem; border-bottom:1px solid rgb(15 46 56 / .12)}
.legal th{font-weight:700; color:var(--color-night); background:var(--color-card)}

.legal-footer{background:var(--color-night); color:var(--color-cream); padding:2rem 0; font-size:.85rem}
.legal-footer .legal-wrap{display:flex; flex-wrap:wrap; gap:.75rem 1.5rem; justify-content:space-between}
.legal-footer nav{display:flex; gap:1.25rem; font-weight:700}
.legal-footer a{opacity:.8}
.legal-footer a:hover{opacity:1; color:var(--color-teal)}
.legal-footer p{opacity:.5}

.legal ol.steps{margin-top:.85rem; padding-left:1.25rem; list-style:decimal; line-height:1.65}
.legal ol.steps li::marker{color:var(--color-teal-dark); font-weight:700}
.legal a.request{margin-top:.5rem; text-decoration:none; color:var(--color-white)}
.legal a.request:hover{color:var(--color-white)}
.legal-footer nav{flex-wrap:wrap}

/* Self-service account deletion form */
.legal .delete-flow{margin-top:1.25rem; padding:1.5rem; background:var(--color-card); border-radius:1.25rem; border:1px solid rgb(15 46 56 / .1)}
.legal .flow-step{display:grid; gap:.75rem}
.legal .flow-step[hidden]{display:none}
.legal .flow-step p{margin-top:0}
.legal .flow-step label{font-weight:700; color:var(--color-night)}
.legal .flow-step input{width:100%; max-width:24rem; padding:.75rem 1rem; border-radius:.75rem; border:1.5px solid rgb(15 46 56 / .25); background:var(--color-white); color:var(--color-ink); font:inherit}
.legal .flow-step input:focus{outline:2px solid var(--color-teal); outline-offset:1px; border-color:var(--color-teal)}
.legal .flow-step .btn{justify-self:start}
.legal .flow-step .btn:disabled{opacity:.5; cursor:not-allowed}
.legal .flow-error{color:#b3123f; font-weight:700}
.legal .flow-links{font-size:.92rem}
.legal .link-btn{color:var(--color-teal-dark); text-decoration:underline; text-underline-offset:2px; font-weight:700; cursor:pointer}
.legal .link-btn:disabled{opacity:.5}
.legal .flow-done-title{font-size:1.15rem; font-weight:800; color:var(--color-night)}
.legal .flow-step:focus{outline:none}
