/* The document and optional settings use the game's warm, simple palette. */
.legal-page{margin:0;background:#fff8e9;color:#50351f;font-family:system-ui,-apple-system,"Hiragino Sans","Noto Sans CJK SC","Noto Sans CJK TC",sans-serif;line-height:1.8;-webkit-text-size-adjust:100%}
.legal-page *{box-sizing:border-box}
.legal-shell{max-width:820px;margin:0 auto;padding:24px 24px 60px;overflow-wrap:anywhere}
.legal-page a{color:#715025;text-decoration-thickness:1px;text-underline-offset:4px}
.legal-header{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:14px}
.legal-header>a{margin-right:auto}
.legal-header select{font:inherit;color:inherit;background:#fffdf7;border:1px solid #c7b28e;border-radius:12px;padding:8px}
.legal-game{margin:30px 0 4px;font-size:14px;font-weight:750;color:#8f672f}
.legal-page h1{font-size:clamp(25px,5vw,36px);line-height:1.4;margin:0 0 14px}
.legal-date{font-size:13px;color:#826d57}
.legal-nav{display:flex;gap:10px 18px;flex-wrap:wrap;padding:18px 0;font-size:14px}
.legal-document{margin-top:28px;scroll-margin-top:16px;background:#fffcf4;border:1px solid #e7d8bb;border-radius:20px;padding:22px}
.legal-document h2{font-size:23px;line-height:1.5;margin:0 0 24px}
.legal-document h3{font-size:17px;line-height:1.6;margin:24px 0 6px}
.legal-document p{margin:0 0 12px;font-size:15px}
.legal-contact{margin-top:30px;padding:20px 0;font-size:14px}
.legal-contact p{margin:8px 0}
.legal-contact button{font:inherit;font-weight:700;color:#50351f;border:2px solid #a98755;border-radius:14px;background:#ffdc71;padding:11px 16px;cursor:pointer;margin-top:12px}
.growth-dialog{box-sizing:border-box;color:#50351f;background:#fffcf4;border:2px solid #c6a36b;border-radius:22px;width:min(580px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 28px);margin:auto;padding:0;font:15px/1.6 system-ui,-apple-system,"Hiragino Sans","Noto Sans CJK SC","Noto Sans CJK TC",sans-serif;box-shadow:0 12px 48px #39291040;overflow:auto;overscroll-behavior:contain}
.growth-dialog::backdrop{background:#33210e80}
.growth-dialog *{box-sizing:border-box}
.growth-form{padding:24px;display:grid;gap:18px;text-align:left}
.growth-dialog h2{font-size:23px;line-height:1.4;margin:0;font-weight:800;color:#50351f}
.growth-dialog h3{font-size:15px;margin:0 0 8px}
.growth-dialog p{margin:0;font-size:14px;line-height:1.65;overflow-wrap:anywhere}
.growth-dialog a{color:#715025;text-decoration:underline;text-underline-offset:3px;font-weight:650}
.growth-choice{padding:16px;background:#fff8e6;border:1px solid #e6d4b3;border-radius:15px;display:grid;gap:8px}
.growth-choice label{display:flex;gap:10px;align-items:flex-start;font-size:16px;line-height:1.5;font-weight:800;cursor:pointer}
.growth-choice input[type=checkbox]{width:21px;height:21px;min-width:21px;margin:2px 0 0;accent-color:#946226;cursor:pointer}
.growth-choice input:disabled{cursor:default}
.growth-choice:has(input:disabled){background:#f7f1e7}
.growth-muted{color:#766351;font-size:13px!important}
.growth-history{font-size:13px;color:#766351}
.growth-history ol{padding-left:22px;margin:0}
.growth-history li{margin:6px 0;font-size:13px}
.growth-links{display:flex;gap:10px 20px;flex-wrap:wrap;font-size:13px}
.growth-actions{display:flex;gap:12px;justify-content:flex-end;position:sticky;bottom:-1px;background:#fffcf4;padding:12px 0 0}
.growth-actions button,.growth-login{min-height:44px;font:inherit;font-weight:750;border:2px solid #b3956d;background:#fff9ec;color:#50351f;border-radius:14px;padding:9px 18px;cursor:pointer;line-height:1.5;white-space:normal}
.growth-actions button[type=submit]{background:#ffdc71;border-color:#a98755}
.growth-actions button:disabled{opacity:.6;cursor:wait}
.growth-login{display:inline-block;text-align:center;text-decoration:none!important}
.growth-status:empty{display:none}
.growth-status{font-size:14px;border-radius:10px;background:#edf2df;color:#43562d;padding:10px 12px;overflow-wrap:anywhere}
.growth-status[data-error=true]{background:#fff0e4;color:#804324}
@media(max-width:420px){.legal-shell{padding:18px 16px 40px}.legal-header{font-size:12px}.legal-document{padding:18px 16px}.growth-form{padding:19px 16px;gap:15px}.growth-choice{padding:14px 12px}.growth-dialog h2{font-size:21px}.growth-actions button{padding:9px 14px}.legal-document h2{font-size:21px}}
