.legal-notice { padding:18px 22px; background:#f7f4fa; border:1px solid #e7dfed; border-radius:14px; margin-bottom:24px; line-height:1.7; }
.legal-notice p { margin:8px 0 0; }
.legal-toolbar,.legal-actions { display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
.legal-toolbar { justify-content:space-between; margin-bottom:16px; }
.legal-toolbar select { min-width:230px; margin-left:12px; }
#legal-panel h2 { font-size:18px; margin:28px 0 14px; }
.legal-card { background:white; border:1px solid #e4e7ed; border-radius:14px; padding:20px; margin-bottom:12px; }
.legal-card h3 { margin:12px 0 8px; font-size:17px; }
.legal-badge { border-radius:20px; padding:5px 10px; font-size:12px; background:#f1edf5; color:#624b79; }
.legal-warning { color:#92501d; font-size:14px; }
.legal-dialog { border:1px solid #e4e7ed; border-radius:18px; width:min(1100px,94vw); max-height:90vh; padding:26px; color:#172e4a; }
.legal-dialog::backdrop { background:rgba(15,27,45,.4); }
.legal-fields { display:grid; grid-template-columns:1.4fr 1fr 1.2fr; gap:16px; margin:20px 0; }
.legal-dialog label { display:block; font-size:14px; line-height:1.7; }
.legal-dialog input:not([type=checkbox]),.legal-dialog textarea,.legal-toolbar select { display:block; width:100%; border:1px solid #d9dde5; border-radius:8px; padding:10px; background:white; color:inherit; font:inherit; box-sizing:border-box; }
.legal-dialog input[readonly],.legal-dialog textarea[readonly] { background:#f7f8fa; }
.legal-editor-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.legal-editor-grid textarea { min-height:420px; resize:vertical; line-height:1.8; }
.legal-preview { white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.9; font-size:14px; padding:20px; border:1px solid #e5e7ec; border-radius:10px; background:#fafbfc; max-height:500px; overflow:auto; }
.legal-actions { margin-top:16px; }
.legal-confirm { width:min(580px,90vw); line-height:1.8; }
@media(max-width:800px){.legal-fields,.legal-editor-grid{grid-template-columns:1fr;}.legal-toolbar select{margin:8px 0 0;}.legal-dialog{padding:16px;}}
