.page-edit-form { max-width:1050px; border:1px solid #e1e9f4; background:#fff; border-radius:14px; }
.page-edit-details, .page-content-field { padding:26px 30px; }
.page-edit-details label { margin-top:0; }
.page-slug-input { display:flex; align-items:center; border:1px solid #dce4ef; border-radius:7px; overflow:hidden; }
.page-slug-input > span { padding-left:13px; color:#738095; font-size:12px; }
.page-slug-input input { border:0; border-radius:0; padding-left:3px; }
.page-slug-input:focus-within { outline:2px solid #086bff; outline-offset:1px; }
.page-slug-input input:focus { outline:none; }
.page-visibility { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:25px; padding:18px; border:1px solid #e3ebf6; background:#f8fbff; border-radius:9px; }
.page-visibility strong { font-size:12px; font-weight:600; }
.page-visibility p { margin:4px 0 0; color:#738095; font-size:11px; line-height:1.7; }
.admin-form .page-switch { position:relative; flex:0 0 42px; width:42px; height:24px; margin:0; }
.page-switch input { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; z-index:1; }
.page-switch span { display:block; height:24px; background:#c3cfdd; border-radius:15px; transition:background .15s; }
.page-switch span::after { content:''; position:absolute; width:18px; height:18px; top:3px; left:3px; border-radius:50%; background:white; transition:transform .15s; }
.page-switch input:checked + span { background:#086bff; }
.page-switch input:checked + span::after { transform:translateX(18px); }
.page-switch input:focus-visible + span { outline:3px solid #086bff; outline-offset:3px; }
.page-content-field { border-top:1px solid #e9edf4; padding-top:22px; }
.page-content-field > label { margin-top:0; }
.page-content-field > textarea { width:100%; min-height:340px; padding:16px; border:1px solid #dce4ef; border-radius:8px; font:inherit; }
.page-content-field [hidden] { display:none; }
.page-content-field .ql-toolbar { margin-top:16px; border-color:#dce4ef; border-radius:8px 8px 0 0; background:#f8fafd; font-family:Poppins,Arial,sans-serif; }
.page-content-field .ql-container { border-color:#dce4ef; border-radius:0 0 8px 8px; font-family:Poppins,Arial,sans-serif; font-size:14px; }
.page-content-field .ql-editor { min-height:360px; line-height:1.9; padding:20px; color:#33495d; }
.page-content-field .ql-editor.ql-blank::before { font-style:normal; color:#92a0ae; }
.page-content-field .ql-editor strong { font-weight:700; }
.page-content-field .ql-editor h2 { font-size:24px; }
.page-content-field .ql-editor h3 { font-size:19px; }
.page-content-field .ql-snow .ql-tooltip { z-index:5; max-width:calc(100vw - 60px); white-space:normal; border:1px solid #dce4ef; border-radius:8px; box-shadow:0 6px 22px #092e4615; padding:12px; }
.page-content-field .ql-snow .ql-tooltip input[type=text] { display:inline-block; width:170px; height:32px; min-width:0; padding:6px; font-size:12px; }
.page-content-field .ql-snow .ql-tooltip a { cursor:pointer; }
.content-page .page { display:flex; flex-direction:column; min-height:100svh; }
.public-page-main { flex:1; padding-block:48px 80px; }
.public-page-article { max-width:860px; margin-inline:auto; }
.public-page-footer { padding-block:20px; border-top:1px solid #e1e9f4; text-align:center; }
.public-page-footer p { margin:0; color:#738095; font-size:12px; overflow-wrap:anywhere; }
.public-page-heading { padding-bottom:28px; border-bottom:1px solid #e1e9f4; margin-bottom:32px; }
.public-page-heading > a, .public-page-heading > span { font-size:11px; color:#738095; margin-right:10px; }
.public-page-heading > a:hover { color:var(--blue); }
.public-page-heading h1 { font-size:clamp(28px,4vw,42px); line-height:1.25; margin:24px 0 12px; overflow-wrap:anywhere; }
.public-page-heading p { margin:0; color:#738095; font-size:12px; }
.page-prose { color:#46596b; font-size:16px; line-height:1.95; overflow-wrap:anywhere; }
.legal-contact { margin-top:40px; padding:4px 24px 12px; border:1px solid #dbe7f6; border-radius:12px; background:#f5f9ff; }
.page-prose h2 { font-size:24px; line-height:1.4; margin:32px 0 14px; }
.page-prose h3 { font-size:19px; line-height:1.5; margin:26px 0 12px; }
.page-prose p { margin:0 0 18px; }
.page-prose strong, .page-prose b { font-weight:700; }
.page-prose a { color:var(--blue); text-decoration:underline; text-underline-offset:3px; }
.page-prose ul, .page-prose ol { padding-left:26px; margin:16px 0 24px; }
.page-prose li { margin-bottom:7px; }
.page-prose blockquote { margin:24px 0; border-left:3px solid var(--blue); padding:12px 20px; background:#f5f9ff; }
.page-preview-banner { max-width:860px; margin:0 auto 30px; padding:14px 18px; border:1px solid #cfe0fa; border-radius:8px; background:#f1f7ff; font-size:12px; color:#365a88; display:flex; flex-wrap:wrap; gap:10px; justify-content:space-between; }
.page-preview-banner a { color:var(--blue); text-decoration:underline; }
.page-empty-preview { padding:30px; background:#f7f9fc; color:#738095; border-radius:10px; font-size:14px; }
@media(max-width:600px) {
    .page-edit-details, .page-content-field { padding:20px; }
    .page-content-field .ql-editor { padding:16px; min-height:320px; }
    .page-content-field .ql-toolbar .ql-formats { margin-right:6px; }
    .page-edit-form input, .page-content-field .ql-editor { font-size:16px; }
    .public-page-main { padding-block:28px 50px; }
    .page-prose { font-size:16px; }
}
@media(prefers-reduced-motion:reduce) { .page-switch span, .page-switch span::after { transition:none; } }
