[contenteditable=true]{outline:0!important}.builder-block:hover{background-color:var(--bg-hover)!important;outline:1px solid var(--border-strong)!important}.builder-block.selected{background-color:var(--bg-active)!important;outline:1px solid var(--border-strong)!important}[contenteditable=true]:not(.builder-block):hover{background-color:var(--bg-hover)!important;outline:1px solid var(--border-strong)!important}[contenteditable=true]:not(.builder-block):focus{background-color:var(--bg-active)!important;outline:1px solid var(--border-strong)!important}.builder-block.selected table th,.builder-block:hover table th{background-color:transparent}.table-controls-row{display:none;gap:1em;justify-content:center;align-items:center}.table-controls-row.button-row{flex-wrap:wrap}.table-controls-group{display:flex;align-items:center;gap:.25em}.table-controls-label{font-size:12px;color:var(--text-secondary);margin-right:.25em}.table-control-btn{width:32px;height:32px;border:1px solid var(--border-light);background:var(--bg-primary);color:rgba(0,0,0,.7);cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;padding:0;margin:0}.table-control-btn[data-action^=add-],.table-control-btn[data-action^=delete-]{width:auto;padding:0 8px;font-size:11px}html.dark-mode .table-control-btn{color:rgba(255,255,255,.7)}.table-control-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-medium);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.table-control-btn:active:not(:disabled){background:var(--bg-active);transform:translateY(0);box-shadow:inset 0 1px 2px var(--border-light)}#article-editor.preview-mode .table-controls{display:none!important}figure img[style*="display: none"]{display:none!important}[type=math]{cursor:text;min-height:2em}[type=math] mjx-container{pointer-events:none}[type=math].selected{display:flex;align-items:center;justify-content:center;padding:.75em .5em;line-height:1.5;text-align:center}[type=code] pre{min-height:1.8em}[type=code] pre code{min-height:1.2em}[type=code] .code-language{white-space:nowrap;overflow:hidden}.selection-toolbar{position:fixed;background:var(--bg-primary);border:1px solid var(--border-light);box-shadow:0 2px 8px rgba(0,0,0,.15);padding:2px;display:none;z-index:1000;font-family:-apple-system,BlinkMacSystemFont,sans-serif}.selection-toolbar button{background:0 0;border:none;color:rgba(0,0,0,.7);cursor:pointer;padding:6px 8px;font-size:14px;font-weight:400;margin:0;min-width:28px;font-family:-apple-system,BlinkMacSystemFont,sans-serif}html.dark-mode .selection-toolbar button{color:rgba(255,255,255,.7)}.selection-toolbar button:hover{background:var(--bg-active)}.selection-toolbar button:active{background:var(--bg-active)}.selection-toolbar button strong{font-weight:700}.selection-toolbar button em{font-style:italic}.selection-toolbar button s{text-decoration:line-through}.selection-toolbar button u{text-decoration:underline}.preview-mode [contenteditable=true]:hover{background-color:transparent!important;box-shadow:none!important}.preview-mode [contenteditable=true]:focus{background-color:transparent!important;box-shadow:none!important;outline:0!important}.preview-mode .builder-block.selected{background-color:transparent!important;outline:0!important}#save-btn:disabled{opacity:.6;cursor:not-allowed}#save-btn{min-width:85px}#save-btn.save-error,#save-btn.save-saved,#save-btn.save-saving,#save-btn.save-unsaved{border:none}#save-btn.save-unsaved{background:#e8944a;color:#fff}#save-btn.save-unsaved:hover:not(:disabled){background:#d4833c;color:#fff}#save-btn.save-saved{background:#27ae60;color:#fff}#save-btn.save-saved:hover:not(:disabled){background:#1e8e4e;color:#fff}#save-btn.save-saving{background:rgba(0,0,0,.75);color:#fff}html.dark-mode #save-btn.save-saving{background:rgba(255,255,255,.75);color:#1a1a1a}#save-btn.save-error{background:rgba(231,76,60,.4);color:#fff}#save-btn.save-error:hover:not(:disabled){background:rgba(231,76,60,.6);color:#fff}#preview-btn{min-width:80px!important;width:80px!important}#article-editor.preview-mode .builder-block.selected{outline:0!important}#article-editor.preview-mode .builder-block:hover{outline:0!important}#article-editor.preview-mode .selection-toolbar{display:none!important}#article-editor.preview-mode .article-top-navigation{pointer-events:none}#article-editor.preview-mode .article-chapter[contenteditable],#article-editor.preview-mode h1[contenteditable]{cursor:default}#markdown-display{flex:1;width:100%;min-height:400px;padding:1em;border:1px solid var(--border-light);font-family:monospace;font-size:14px;resize:none;margin-bottom:1em;box-sizing:border-box;white-space:pre-wrap;word-wrap:break-word;overflow-x:hidden;background:var(--input-bg);color:var(--text-primary)}.image-upload-btn{width:100%;padding:2em 1.5em;border:1px solid var(--border-light);background:var(--bg-secondary);color:var(--text-secondary);font-size:14px;font-family:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.5em}.image-upload-btn:hover{background-color:var(--bg-hover)}.image-upload-btn .upload-icon{font-size:24px;opacity:.5}.image-upload-btn.error{border-color:#d32f2f;background:rgba(211,47,47,.06);color:#d32f2f}.image-upload-btn.uploading{opacity:.7;cursor:wait}.image-upload-modal{width:650px;max-width:90%}.image-upload-modal h2{border:none;padding-bottom:0;margin-bottom:1.5em}.url-input-row{margin:0;display:flex;gap:.5em;align-items:stretch}#image-url-input{flex:1;padding:.8em;border:1px solid var(--border-light);font-size:14px;background:var(--input-bg);color:var(--text-primary);box-sizing:border-box}#image-url-input:focus{outline:0;border-color:var(--border-strong)}.url-input-row .btn{align-self:stretch;display:flex;align-items:center;justify-content:center}.image-preview-section{display:none;margin-top:1.5em;border:1px solid var(--border-light);background:var(--bg-tertiary)}.image-preview-section h3{margin:0;padding:.75em 1em;font-size:.9em;font-weight:600;color:rgba(0,0,0,.7);text-align:left;background:var(--bg-tertiary);border-bottom:1px solid var(--border-light)}html.dark-mode .image-preview-section h3{color:rgba(255,255,255,.7)}.image-cropper-wrapper{margin:1em;background:var(--bg-secondary)}#image-preview{width:100%;display:block}.cropper-bg{background-image:none!important;background:var(--bg-secondary)!important}.cropper-modal{background:rgba(0,0,0,.3)!important}.image-crop-toolbar{display:flex;gap:.5em;justify-content:center;align-items:center;padding:.75em 0}.image-crop-hint{font-size:12px;color:var(--text-secondary)}#insert-image-btn:disabled{cursor:not-allowed;pointer-events:none;background:var(--input-disabled-bg);color:var(--input-disabled-text);border-color:var(--border-light)}#published-container{display:contents}#published-warning{display:none;background:var(--warning-bg);padding:1em;margin:0 0 .5em 0;text-align:center;border:1px solid var(--warning-border)}#published-warning.show{display:block}#published-warning p{margin:0;color:var(--text-primary);font-size:1.05em;text-align:center}#published-warning span{font-size:.95em}.block-buttons{display:flex;flex-direction:column;gap:.5em;margin:1.5em 0 1.5em 0;padding:.75em;background:var(--accent-blue);border:1px solid var(--accent-blue-border);position:relative}.block-buttons.control-buttons{margin-top:0}.button-row{display:flex;flex-wrap:wrap;gap:.25em;justify-content:center}.button-row-controls{align-items:center}.button-row-controls .block-btn{width:auto;padding:0 1em;height:32px;font-size:14px}#info-btn{width:32px;padding:0}.button-row-controls .mode-btn.active{background:var(--bg-hover);color:var(--text-primary);font-weight:600}.button-row-controls .clear-btn{border-color:var(--danger);color:var(--danger)}.button-row-controls .clear-btn:hover:not(:disabled){background:var(--danger-bg);border-color:var(--danger);color:var(--danger)}.block-btn{min-width:32px;height:32px;box-sizing:border-box;border:1px solid var(--border-light);background:var(--bg-primary);color:rgba(0,0,0,.7);cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;padding:0 8px;margin:0;white-space:nowrap}html.dark-mode .block-btn{color:rgba(255,255,255,.7)}.block-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-medium);transform:translateY(-1px);box-shadow:var(--shadow-sm)}html.dark-mode .block-btn:hover:not(:disabled){background:var(--bg-active);border-color:var(--border-strong)}.block-btn:active:not(:disabled){background:var(--bg-active);transform:translateY(0);box-shadow:inset 0 1px 2px var(--border-light)}.block-btn:focus{outline:2px solid var(--border-strong)}.delete-btn{border-color:var(--danger);color:var(--danger)}.delete-btn:hover:not(:disabled){background:var(--danger);border-color:var(--danger);color:#fff;transform:translateY(-1px);box-shadow:0 2px 4px rgba(231,76,60,.3)}.delete-btn:active:not(:disabled){background:var(--danger-bg);transform:translateY(0);box-shadow:inset 0 1px 2px rgba(231,76,60,.2)}.block-btn:not(.active){opacity:.3;cursor:not-allowed;pointer-events:none}.block-btn.active{opacity:1;cursor:pointer}.builder-block li>ol,.builder-block li>ul{cursor:default}[contenteditable=true]:empty:before{content:attr(data-placeholder);color:var(--text-hint);font-style:italic;pointer-events:none}code[contenteditable=true]:empty:before{content:attr(data-placeholder);color:var(--text-hint);font-style:italic;pointer-events:none;display:inline-block}.table-controls{display:none;padding:.5em;background-color:var(--bg-hover);border:1px solid var(--border-strong);border-top:none;width:100%;box-sizing:border-box;gap:.75em;flex-wrap:wrap;justify-content:center}.builder-block.selected .table-controls{display:flex}@media (max-width:768px){.block-buttons{padding:.5em;margin:1em 0}.button-row{gap:.2em}.block-btn{min-width:28px;height:28px;font-size:12px;padding:0 6px}.button-row-controls .block-btn{height:28px;font-size:12px;padding:0 .6em}#save-btn{min-width:60px}#preview-btn{min-width:60px!important;width:60px!important}.table-controls{gap:.5em;padding:.4em}.table-control-btn{width:28px;height:28px;font-size:12px}.table-controls-label{font-size:11px}#markdown-display{min-height:250px;font-size:12px}.modal-buttons .btn{padding:.5em 1em;font-size:13px}.url-input-row{flex-direction:column}.selection-toolbar{max-width:calc(100vw - 2em)}.selection-toolbar button{padding:8px 8px;font-size:13px;min-width:32px;min-height:36px}#published-warning{padding:.75em}#published-warning p{font-size:.95em}}.builder-block[type=footnotes] .footnotes li{outline:0;position:relative;min-height:1.2em;padding:2px 4px;padding-right:26px}.builder-block[type=footnotes] .footnotes li:focus{background:rgba(0,0,0,.04)}.builder-block[type=footnotes] .fn-delete-btn{position:absolute;right:2px;top:50%;transform:translateY(-50%);width:18px;height:18px;border:none;background:0 0;color:var(--text-secondary,#888);font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s;padding:0}.builder-block[type=footnotes] .footnotes li:hover .fn-delete-btn{opacity:.6}.builder-block[type=footnotes] .fn-delete-btn:hover{opacity:1!important;background:rgba(229,62,62,.1);color:#e53e3e}#markdown-output .footnote-ref{cursor:default;user-select:all}#markdown-output .footnote-ref a{pointer-events:none}#markdown-output a.inline-link{color:var(--link-color);text-decoration:underline;pointer-events:none;cursor:default}@media (max-width:480px){.block-buttons{padding:.4em;margin:.75em 0}.block-btn{min-width:26px;height:26px;font-size:11px}.button-row-controls .block-btn{height:26px;font-size:11px}#markdown-display{min-height:200px}.custom-block-field{flex-direction:column;gap:.3em}.custom-block-field label{min-width:0}.selection-toolbar{max-width:calc(100vw - 1em)}.image-upload-modal{max-width:95%}}.custom-blocks-row .block-btn svg{width:16px;height:16px}.builder-block[type=custom]{padding:0;margin:0;border:none;background:0 0}.builder-block[type=custom].selected{padding:1em;border:1px solid var(--border-light);background:var(--bg-secondary)}.custom-block-header{display:flex;align-items:center;gap:.5em;margin-bottom:.75em;font-size:.85em;color:var(--text-secondary)}.custom-block-header svg{width:20px;height:20px;opacity:.6}.custom-block-header strong{font-weight:600}.custom-block-fields{display:flex;flex-direction:column;gap:.5em}.custom-block-field{display:flex;align-items:baseline;gap:.5em}.custom-block-field label{font-size:.85em;font-weight:600;color:var(--text-secondary);min-width:120px;flex-shrink:0}.custom-block-field input,.custom-block-field select,.custom-block-field textarea{flex:1;padding:.4em .5em;border:1px solid var(--border-light);background:0 0;color:var(--text-primary);font-family:inherit;font-size:1em}.custom-block-field input:focus,.custom-block-field select:focus,.custom-block-field textarea:focus{outline:0;border-color:var(--border-strong);background:var(--bg-primary)}.custom-block-field textarea{resize:none;overflow:hidden;min-height:1.6em}.custom-block-entry{position:relative;padding:.5em 0;border-bottom:1px dashed var(--border-light)}.custom-block-entry:last-of-type{border-bottom:none}.custom-block-entry-fields{display:flex;flex-direction:column;gap:.5em}.custom-block-remove-entry{position:absolute;top:.5em;right:0;width:20px;height:20px;border:none;background:0 0;color:var(--text-hint);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;opacity:0;transition:opacity .15s}.custom-block-entry:hover .custom-block-remove-entry{opacity:.6}.custom-block-remove-entry:hover{opacity:1!important;color:var(--danger)}.custom-block-add-entry{display:flex;align-items:center;justify-content:center;gap:.3em;padding:.4em;margin-top:.5em;border:1px dashed var(--border-medium);background:0 0;color:var(--text-secondary);font-size:.85em;cursor:pointer;width:100%}.custom-block-add-entry:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-strong)}.custom-block-field select{padding:.4em .5em;border:1px solid var(--border-light);background:0 0;color:var(--text-primary);font-family:inherit;font-size:1em;cursor:pointer}.slash-menu{position:fixed;z-index:10000;background:var(--bg-primary);border:1px solid var(--border-medium);box-shadow:var(--shadow-md);max-height:240px;overflow-y:auto;min-width:180px}.slash-menu-item{display:flex;align-items:center;gap:.6em;padding:.5em .75em;cursor:pointer;font-size:.9em}.slash-menu-item.active,.slash-menu-item:hover{background:var(--bg-hover)}.slash-menu-item-icon{width:24px;text-align:center;color:var(--text-secondary);font-size:.85em}.slash-menu-item-label{color:var(--text-primary)}