*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:#050506;color:#f5f5f6;font-family:Arial,sans-serif}
.legal-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:12px;background:#050506}
.legal-card{width:100%;max-width:760px;min-height:94vh;background:linear-gradient(180deg,#121214 0%,#0d0d0f 100%);border:2px solid #3b3b40;border-radius:30px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 22px 60px rgba(0,0,0,.55)}
.legal-head{position:relative;padding:34px 34px 20px;text-align:center;border-bottom:1px solid #2f2f33}
.legal-head h1{margin:8px 48px 10px;font-size:34px;line-height:1.15;font-weight:600}
.legal-head .brand{font-size:16px;color:#c7c7cb;font-weight:600}
.close-btn{position:absolute;right:-1px;top:-1px;width:66px;height:66px;border:0;border-radius:0 30px 0 36px;background:#fff;color:#1a1a1b;font-size:38px;line-height:1;cursor:pointer}
.legal-body{flex:1;padding:28px 34px 18px;overflow:auto;color:#dddde1;font-size:15px;line-height:1.62;white-space:pre-line}
.legal-body p{margin:0 0 15px}.legal-body strong{color:#fff}
.legal-actions{padding:20px 34px 26px;border-top:1px solid #2f2f33}
.check-row{display:flex;align-items:flex-start;gap:12px;max-width:680px;margin:0 auto 16px;color:#f0f0f2;font-size:15px;line-height:1.45}
.check-row input{width:21px;height:21px;flex:0 0 21px;margin:2px 0 0;accent-color:#fff}
.agree{display:block;width:100%;max-width:680px;margin:0 auto;min-height:54px;border:2px solid #fff;border-radius:28px;background:#fff;color:#111;font-size:18px;font-weight:700;cursor:pointer}
.agree:disabled{opacity:.35;cursor:not-allowed}.back{display:block;margin:13px auto 0;background:transparent;border:0;color:#bbb;font-size:14px;text-decoration:underline;cursor:pointer}
.message{text-align:center;min-height:20px;margin:0 auto 8px;color:#f0b7b7;font-size:13px}
@media(max-width:520px){.legal-page{padding:4px}.legal-card{min-height:100vh;border-radius:22px}.legal-head{padding:30px 20px 16px}.legal-head h1{font-size:29px;margin:10px 30px}.legal-head .brand{font-size:14px}.close-btn{width:58px;height:58px;border-radius:0 22px 0 31px;font-size:34px}.legal-body{padding:22px 20px 12px;font-size:14px}.legal-actions{padding:17px 20px 22px}.check-row{font-size:14px}}
