.public-page{min-height:100vh;background:linear-gradient(135deg,#fbfcf7 0%,#f3faee 55%,#eefaf8 100%)}
.public-header{height:72px;display:flex;align-items:center;border-bottom:1px solid var(--line);background:rgba(255,255,255,.86);backdrop-filter:blur(12px)}
.public-header>a{display:flex;flex-direction:column;width:min(880px,calc(100% - 40px));margin:auto;line-height:1.1}
.public-header strong{font-size:18px;letter-spacing:.04em}
.public-header span{font-size:10px;color:var(--ink-soft);letter-spacing:.06em}
.legal-document{width:min(880px,calc(100% - 40px));margin:48px auto 64px;padding:42px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.94);box-shadow:0 18px 60px rgba(27,64,51,.08)}
.legal-document h1{margin:0 0 16px;font-size:34px;line-height:1.3;letter-spacing:-.04em}
.legal-document h2{margin:0 0 8px;font-size:17px}
.legal-document section{padding:22px 0;border-top:1px solid var(--line)}
.legal-document section:first-of-type{margin-top:30px}
.legal-document p,.legal-document li{color:var(--ink-soft)}
.legal-document a:not(.button){color:#236e54;text-decoration:underline;text-underline-offset:3px}
.legal-document ul{margin:8px 0 0;padding-left:1.4em}
.legal-kicker{margin:0 0 8px!important;color:#477466!important;font-size:11px;font-weight:700;letter-spacing:.14em}
.legal-lead{font-size:16px;line-height:1.9}
.legal-date{text-align:right;font-size:12px}
.legal-result{margin:28px 0;padding:22px;border-radius:12px}
.legal-result.success{border:1px solid #bfe5cd;background:#effbf2}
.legal-result strong{font-size:19px}
.legal-result p{margin-bottom:0}
.legal-details{display:grid;gap:0;margin:24px 0;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.legal-details div{display:grid;grid-template-columns:130px 1fr}
.legal-details div+div{border-top:1px solid var(--line)}
.legal-details dt,.legal-details dd{padding:12px;margin:0}
.legal-details dt{background:var(--surface-soft);font-weight:700}
.legal-details dd{overflow-wrap:anywhere}
.public-footer{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;padding:24px;color:var(--ink-soft);font-size:12px}
.public-footer a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:640px){
  .legal-document{width:calc(100% - 24px);margin:20px auto 36px;padding:24px 18px}
  .legal-document h1{font-size:27px}
  .legal-details div{grid-template-columns:1fr}
  .legal-details dd{padding-top:0;background:var(--surface-soft)}
}
