/* The document is the editor: shared reader typography, contextual block controls. */
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
body.editing{--bg:#191a17;--panel:#1e201b;--line:#363930;background:var(--bg)}
body.editing .book-header{background:#191a17f5}body.editing .book-layout{grid-template-columns:264px minmax(0,1fr);max-width:1800px}body.editing .book-sidebar{background:#191a17}body.editing main{padding:0 36px 24px;min-width:0}
.edit-commandbar{position:sticky;top:78px;z-index:5;background:#191a17f5;backdrop-filter:blur(12px);border-bottom:1px solid var(--line);padding:14px 0;display:flex;align-items:center;gap:16px;justify-content:space-between}.edit-commandbar #draft-status{font-size:11px;color:var(--muted)}.edit-commandbar .editor-actions{display:flex;gap:7px;flex-wrap:wrap}.edit-commandbar button{font-size:12px;padding:7px 11px}.document-canvas{max-width:850px;margin:50px auto 45px;padding-left:25px;min-height:500px}
body.editing #metadata{display:block;margin:0 0 32px;padding:0;border:0}#metadata .page-title-label,#metadata .page-description-label{display:block}#metadata #edit-title{padding:0;background:transparent;border:0;box-shadow:none;color:var(--ink);font-size:40px;font-weight:700;letter-spacing:-1.3px;line-height:1.3;width:100%;border-radius:0}#metadata #edit-description{padding:12px 0;background:transparent;border:0;box-shadow:none;color:var(--muted);font-size:16px;width:100%;border-radius:0}#metadata #edit-title:focus,#metadata #edit-description:focus{outline:0}#metadata #edit-title::placeholder{color:#818779}#metadata #page-properties{background:#20241d;border:1px solid var(--line);border-radius:8px;padding:16px;margin:14px 0;display:grid;grid-template-columns:1fr 1.3fr 110px;gap:16px}#page-properties label{display:block;font-size:11px;color:var(--muted)}#page-properties input{max-width:100%;font-size:13px;margin-top:7px}
.rz-editor{outline:0;min-height:180px;font-size:16px;line-height:1.7;position:relative}.rz-editor:focus{outline:0}.rz-editor>:first-child{margin-top:0}.rz-editor p{margin:10px 0;min-height:1.7em}.rz-editor p.is-empty:before{content:attr(data-placeholder);float:left;color:#737b6c;pointer-events:none;height:0}.rz-editor h1{font-size:34px}.rz-editor h2{font-size:28px}.rz-editor h3{font-size:22px}.rz-editor h4{font-size:18px}.rz-editor blockquote{border-left:3px solid var(--gold);padding:5px 20px;margin-left:0}.rz-editor .ProseMirror-selectednode{outline:2px solid #bca878;outline-offset:3px;border-radius:4px}.rz-editor .ProseMirror-gapcursor{border-top:1px solid var(--gold)}.rz-editor .ProseMirror-dropcursor{background:var(--gold)!important}.rz-editor img,.prose figure img{display:block;max-width:100%;height:auto;border-radius:7px}.prose figure{margin:24px 0}.prose figcaption{color:var(--muted);text-align:center;font-size:12px}.prose mark{background:#b99b5145;color:#f0d392;border-radius:2px;padding:1px 2px}.rz-editor a{color:var(--gold);text-decoration:underline}.rz-editor pre{white-space:pre-wrap;overflow-wrap:anywhere}.rz-editor table{display:table;width:100%;table-layout:fixed;border-collapse:collapse;border-radius:0}.rz-editor th,.rz-editor td{min-width:60px;border:1px solid #464c3d;padding:8px;vertical-align:top;position:relative}.rz-editor .selectedCell:after{background:#d4b67c30;position:absolute;inset:0;content:'';pointer-events:none}.rz-editor ul[data-type=taskList],.rule-checklist{list-style:none;padding-left:0}.rz-editor li[data-type=taskItem],.rule-checklist>li{display:flex;gap:12px;align-items:baseline}.rz-editor li[data-type=taskItem]>div,.rule-checklist>li>div{flex:1;min-width:0}.rz-editor li[data-type=taskItem]>label{user-select:none}.rz-editor li[data-type=taskItem] input{accent-color:var(--gold)}
.quick-insert{display:flex;gap:7px;flex-wrap:wrap;margin-top:20px;opacity:.8}.quick-insert:hover{opacity:1}.quick-insert button{border:0;border-radius:18px;background:#272a22;font-size:11px;color:#adb4a2;padding:6px 10px}.quick-insert #insert-block{color:var(--gold);background:#d4b67c10}.canvas-footer{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);margin-top:36px;padding-top:18px;color:#7f8778;font-size:11px}.canvas-footer kbd{font:inherit;border:1px solid var(--line);border-radius:4px;padding:1px 5px}body.editing .editor-bottom{border-top:1px solid var(--line);padding-top:18px;font-size:11px;max-width:1000px;margin:auto}body.editing .editor-bottom p{max-width:65%}
.block-handle{display:flex;gap:0;align-items:center;z-index:7}.block-handle button{border:0;background:transparent;padding:2px;width:24px;height:28px;color:#828a78;font-size:20px;border-radius:5px}.block-handle button:hover{background:#34382b;color:#e6d3a6}.block-grip{cursor:grab}.block-grip:active{cursor:grabbing}.format-bubble{background:#262922;border:1px solid #4c5142;box-shadow:0 5px 25px #0007;border-radius:8px;display:flex;padding:4px;gap:2px;z-index:30}.format-bubble button{border:0;background:transparent;min-width:32px;padding:5px 8px;font-size:14px}.format-bubble button.active{color:var(--gold);background:#d4b67c20}.format-bubble .bold{font-weight:bold}.format-bubble .italic{font-style:italic}.format-bubble .underline{text-decoration:underline}.format-bubble .strike{text-decoration:line-through}
.insert-menu{position:fixed;z-index:40;background:#22241f;border:1px solid #4a4d43;border-radius:10px;width:min(320px,calc(100vw - 24px));box-shadow:0 12px 45px #0009;overflow:hidden}.insert-menu>input{border:0!important;border-bottom:1px solid #414439!important;border-radius:0;background:transparent;width:100%;padding:14px 16px;color:var(--ink);font-size:13px}.insert-options{max-height:min(330px,calc(100dvh - 210px));overflow:auto;padding:6px}.insert-option{display:flex;gap:12px;align-items:center;width:100%;background:transparent;border:0;text-align:left;padding:9px 10px;border-radius:5px}.insert-option.selected,.insert-option:hover{background:#373a30}.insert-icon{width:32px;height:32px;flex-shrink:0;display:grid;place-items:center;border:1px solid #4a4f40;border-radius:5px;font-size:17px;color:#c3c9b9}.insert-option strong{display:block;font-size:13px;font-weight:500}.insert-option small{display:block;color:#8f9885;font-size:11px;margin-top:2px}.insert-foot{border-top:1px solid #414439;padding:8px 16px;color:#7f8875;font-size:10px}
.rz-block{position:relative;border:1px solid #414737;border-radius:8px;padding:14px 18px;margin:20px 0;background:#20251c}.rz-block-head{display:flex;align-items:center;gap:8px;margin-bottom:7px;min-width:0}.rz-block-head .block-title{border:0;background:transparent;padding:3px 0;font:600 15px Arial;color:#e0e6d7;min-width:0;width:100%}.rz-block-head .block-title:focus{outline:0;border-bottom:1px solid var(--gold)}.rz-block-head button{font-size:12px;padding:2px 8px;white-space:nowrap;background:transparent;border-color:#434a38}.rz-block-head select{background:#252c20;color:#a3b58e;border:0;padding:4px;font-size:11px;border-radius:4px;max-width:135px}.rz-block-head .block-remove{margin-left:auto;opacity:0;border:0;color:#bfae9a}.rz-block:hover>.rz-block-head>.block-remove,.rz-block:focus-within>.rz-block-head>.block-remove{opacity:1}.rz-block-body>:first-child{margin-top:0}.rz-block-body>:last-child{margin-bottom:0}.block-kind{font-size:12px;color:#9ba98b;margin-right:auto}.ruleHint{border-left:3px solid #809d93;background:#1d2b27}.ruleHint[data-tone=warning]{border-left-color:#d4b67c;background:#302b1e}.ruleHint[data-tone=success]{border-left-color:#97b96e;background:#242e1e}.ruleHint[data-tone=danger]{border-left-color:#cf8277;background:#31221f}.ruleDetails{background:transparent}.ruleTabs>.rz-block-body{display:flex;flex-direction:column;gap:12px}.ruleTab{margin:0;background:#1a1f17}.ruleTab>.rz-block-head{border-bottom:1px solid #46503b;padding-bottom:9px}.ruleCards>.rz-block-body,.ruleColumns>.rz-block-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.ruleCard,.ruleColumn{margin:0;min-width:0;background:#1a1f17;padding:12px}.ruleColumns,.ruleCards,.ruleSteps{background:transparent}.ruleColumn{border-style:dashed}.ruleSteps>.rz-block-body{counter-reset:editor-steps}.ruleStep{background:transparent;margin:12px 0;border:0;border-left:2px solid #666743;border-radius:0;counter-increment:editor-steps}.ruleStep>.rz-block-head:before{content:counter(editor-steps);border:1px solid #69734f;border-radius:50%;font-size:12px;padding:1px 7px;color:var(--gold)}
.rule-tabs{margin:24px 0;border:1px solid #424b38;border-radius:8px;overflow:hidden}.rule-tabs>[role=tablist]{display:flex;overflow-x:auto;background:#1d2519;border-bottom:1px solid #424b38;padding:0 12px;gap:10px}.rule-tabs [role=tab]{background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;padding:12px 15px;color:#9ca88e;white-space:nowrap}.rule-tabs [aria-selected=true]{border-bottom-color:var(--gold);color:var(--gold)}.rule-tabs>[role=tabpanel]{padding:20px}.rule-tabs>[role=tabpanel]>:first-child{margin-top:0}.rule-tabs>[role=tabpanel]>:last-child{margin-bottom:0}.rule-cards,.rule-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0}.rule-card{border:1px solid #424b38;background:#182013;border-radius:8px;padding:20px}.rule-card h3{margin-top:0;font-size:18px}.rule-card h3 a{color:var(--gold)}.rule-card:hover{border-color:#8c865e}.rule-card p{font-size:14px}.rule-columns>div{min-width:0}.rule-steps{counter-reset:step;margin:25px 0}.rule-step{counter-increment:step;position:relative;margin-left:15px;padding:0 0 20px 30px;border-left:1px solid #515b42}.rule-step:before{content:counter(step);position:absolute;left:-15px;top:0;width:29px;height:29px;display:grid;place-items:center;border:1px solid #515b42;border-radius:50%;background:#27301d;color:var(--gold);font-size:13px}.rule-step h3{margin:0 0 12px;font-size:19px}.rule-step:last-child{border-color:transparent}.table-tools{position:sticky;top:141px;z-index:4;background:#262d20;border:1px solid #515b42;border-radius:6px;padding:5px;display:flex;gap:4px;flex-wrap:wrap}.table-tools button{font-size:11px;padding:4px 8px;background:transparent;border:0}.editor-dialog{max-width:480px;width:calc(100vw - 32px)}.editor-dialog>button{display:block;width:100%;margin:8px 0;text-align:left}.editor-dialog label{display:block;color:var(--muted);font-size:12px}.editor-dialog input{display:block;width:100%;margin-top:10px;padding:10px;background:#141b10;border:1px solid #515b42;border-radius:5px;color:var(--ink)}.page-link-list{display:grid;gap:8px;max-height:350px;overflow:auto}.field-error{color:#df9681;font-size:12px}#page-description{color:var(--muted);font-size:17px;margin:6px 0 20px}
@media(max-width:1100px){body.editing .book-layout{grid-template-columns:220px minmax(0,1fr)}.edit-commandbar{align-items:flex-start;flex-direction:column;gap:6px}.document-canvas{margin-top:30px}.table-tools{top:175px}}
@media(max-width:760px){body.editing .book-layout{display:block}body.editing main{padding:0 18px 20px}.edit-commandbar{top:65px;margin:0 -18px;padding:10px 16px}.edit-commandbar .editor-actions{gap:4px}.edit-commandbar button{font-size:11px;padding:6px 8px}.document-canvas{padding-left:14px;margin-top:28px}.block-handle button{width:18px;font-size:17px}.block-handle{transform:translateX(12px)}#metadata #edit-title{font-size:31px}#metadata #page-properties{grid-template-columns:1fr}.rz-editor{font-size:15px}.rz-block{padding:12px}.rz-block-head{flex-wrap:wrap}.rz-block-head .block-title{width:auto;flex:1;min-width:80px}.ruleCards>.rz-block-body,.ruleColumns>.rz-block-body,.rule-cards,.rule-columns{grid-template-columns:1fr}.canvas-footer{flex-direction:column}body.editing .editor-bottom p{max-width:100%}.format-bubble button{padding:4px;min-width:28px}.table-tools{top:166px}}

.ProseMirror{white-space:pre-wrap;word-wrap:break-word}.ProseMirror .ProseMirror-gapcursor{display:none;pointer-events:none;position:absolute;margin:0}.ProseMirror-focused .ProseMirror-gapcursor{display:block}.ProseMirror-gapcursor:after{content:"";display:block;position:absolute;top:-2px;width:20px;border-top:1px solid var(--gold)}.rz-block-head{white-space:normal}

/* Consistent centering and an explicit per-block alignment control. */
.book-label,.sidebar-title,.sidebar-footer,.chapter-group h2,.chapter-group a,.book-outline,.document-heading,.document-footer,.editor-bottom,.canvas-footer{text-align:center}.chapter-group a{justify-content:center}.chapter-group a small{margin-left:8px}.chapter-group h2{padding-left:0}.document-icon{margin-left:auto;margin-right:auto}.breadcrumb{justify-content:center}.book-outline #toc a{text-align:center}.document-footer,.canvas-footer{justify-content:center;gap:24px}.header-actions button,.editor-actions button,.quick-insert button,.dialog-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:34px}.quick-insert{justify-content:center}.prose{text-align:center}.prose pre{text-align:left}.prose .align-left{text-align:left}.prose .align-center{text-align:center}.prose .align-right{text-align:right}.prose .align-justify{text-align:justify}#metadata #edit-title,#metadata #edit-description,#metadata label,#metadata input{text-align:center}.rz-block-head .block-title{text-align:center;flex:1;width:0;min-width:80px}.rz-block-head{justify-content:center}.block-kind{margin:0 auto}.insert-option>span:last-child{flex:1;text-align:center}.insert-option{min-height:58px}.insert-menu>input,.insert-foot{text-align:center}.rule-card h3,.rule-step h3,.rule-tabs [role=tab],.prose th,.prose td{text-align:center}.alignment-tools{display:flex;justify-content:center;gap:4px;margin:0 auto 26px;flex-wrap:wrap}.alignment-tools button{font-size:11px;padding:5px 10px;border-color:transparent;background:transparent;color:#929b86;min-height:30px}.alignment-tools button.active,.alignment-tools button:hover{background:#363a2c;color:#d8c593;border-color:#535940}.format-bubble{max-width:calc(100vw - 24px);flex-wrap:wrap;justify-content:center}.editor-actions{align-items:center}.prose ul,.prose ol{list-style-position:inside}.prose li>p:first-child{display:inline}.prose .rule-checklist>li>div>p,.rz-editor li[data-type=taskItem]>div>p{display:block}

.rz-editor img,.prose figure img{margin-left:auto;margin-right:auto}.editor-dialog h2,.editor-dialog label,.editor-dialog input,.page-link-list button{text-align:center}.rule-tabs>[role=tablist]{justify-content:center}
