.auth-overlay{position:fixed;inset:0;background:#f5f5f0f7;display:flex;align-items:center;justify-content:center;z-index:1000}.auth-overlay[hidden]{display:none!important}.auth-card{background:#fff;padding:48px 40px;border-radius:12px;width:100%;max-width:360px;text-align:center;box-shadow:0 4px 24px #0000000f}.auth-card h2{font-size:1.2rem;color:var(--color-green);margin-bottom:8px}.auth-sub{font-size:.85rem;color:var(--color-text-light);margin-bottom:24px}.auth-card input{width:100%;padding:12px 16px;border:2px solid var(--color-border);border-radius:8px;font-size:1rem;text-align:center;font-family:inherit}.auth-card input:focus{outline:none;border-color:var(--color-green)}.auth-card button{width:100%;padding:12px;margin-top:12px;background:var(--color-green);color:#fff;border:none;border-radius:8px;font-size:.95rem;cursor:pointer;font-family:inherit}.auth-card button:hover{opacity:.85}.auth-card button:disabled{opacity:.5;cursor:wait}.auth-error{color:#c0392b;font-size:.85rem;margin-top:12px;min-height:1.2em}.auth-hint{font-size:.75rem;color:var(--color-text-light);margin-top:16px;line-height:1.5}.editor-shell{max-width:1100px;margin:0 auto;padding:32px 24px 80px}.editor-shell[hidden]{display:none!important}.editor-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--color-border)}.editor-header h1{font-size:1.5rem;font-weight:600}.editor-actions{display:flex;align-items:center;gap:12px}.save-status{font-size:.825rem;color:var(--color-text-light);margin-right:8px}.drafts-modal{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1200}.drafts-modal[hidden]{display:none}.drafts-card{background:#fff;border-radius:10px;width:100%;max-width:520px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0003}.drafts-card header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--color-border)}.drafts-card h3{font-size:1rem;font-weight:600;color:var(--color-text)}.drafts-close{background:transparent;border:none;font-size:1.5rem;line-height:1;color:var(--color-text-light);cursor:pointer;padding:4px 8px}.drafts-close:hover{color:var(--color-text)}.drafts-list{overflow-y:auto;padding:8px}.drafts-empty{text-align:center;padding:32px 16px;color:var(--color-text-light);font-size:.9rem}.drafts-item{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;text-align:left;padding:12px 16px;background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;font-family:inherit}.drafts-item:hover{background:#f9f9f5;border-color:var(--color-border)}.drafts-item-title{font-size:.95rem;color:var(--color-text);font-weight:500}.drafts-item-preview{font-size:.82rem;color:#666;line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.drafts-item-meta{font-size:.78rem;color:var(--color-text-light)}.drafts-section{font-size:.78rem;font-weight:500;text-transform:uppercase;color:var(--color-text-light);margin:12px 8px 6px;letter-spacing:.04em}.drafts-section:first-child{margin-top:4px}.kind-tag{display:inline-block;font-size:.7rem;padding:2px 7px;border-radius:3px;margin-right:6px;vertical-align:middle;font-weight:500}.kind-draft{background:#fdf6e3;color:#b86a00}.kind-published{background:#e8f4ec;color:#0a7c3a}.drafts-row{display:flex;align-items:stretch;gap:4px;margin-bottom:2px}.drafts-row .drafts-item{flex:1 1 auto;margin:0}.drafts-delete{flex:0 0 auto;background:transparent;border:1px solid transparent;border-radius:6px;padding:0 12px;font-size:1rem;color:var(--color-text-light);cursor:pointer}.drafts-delete:hover{background:#fdf0f0;border-color:#e6c0c0;color:#c0392b}.stat-display{font-size:.825rem;color:var(--color-text-light);margin-right:12px}.stat-display:empty{display:none}.multi-select-status{font-size:.825rem;color:var(--color-green);font-weight:500;margin-right:12px;padding:2px 8px;background:#043d2014;border-radius:4px}.multi-select-status[hidden]{display:none!important}.editor-actions button{padding:8px 18px;background:#fff;color:var(--color-text);border:1px solid var(--color-border);border-radius:6px;font-size:.9rem;cursor:pointer;font-family:inherit}.editor-actions button.primary{background:var(--color-green);color:#fff;border-color:var(--color-green)}.editor-actions button:hover{opacity:.85}.editor-actions button:disabled{opacity:.5;cursor:wait}.meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;margin-bottom:32px}.meta-grid .field{display:flex;flex-direction:column;gap:6px}.meta-grid .field.full{grid-column:1 / -1}.meta-grid .field span{font-size:.825rem;color:var(--color-text-light)}.meta-grid input{padding:10px 14px;border:1px solid var(--color-border);border-radius:6px;font-size:.95rem;font-family:inherit}.meta-grid input:focus{outline:none;border-color:var(--color-green)}.meta-grid .field-label{font-size:.825rem;color:var(--color-text-light);display:block;margin-bottom:6px}.slug-row{display:flex;align-items:center;border:1px solid var(--color-border);border-radius:6px;overflow:hidden}.slug-row:focus-within{border-color:var(--color-green)}.slug-prefix{padding:10px 4px 10px 14px;font-size:.95rem;color:var(--color-text-light);background:#f9f9f5;user-select:none;white-space:nowrap}.slug-row input[type=text]{flex:1;border:none!important;padding:10px 14px 10px 0!important;font-size:.95rem;font-family:inherit;background:transparent}.slug-row input[type=text]:focus{outline:none}.cover-picker{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.cover-pick-btn,.cover-clear-btn{padding:9px 16px;border:1px solid var(--color-border);border-radius:6px;background:#fff;color:var(--color-text);font-family:inherit;font-size:.9rem;cursor:pointer}.cover-pick-btn:hover,.cover-clear-btn:hover{background:#f6f6f1}.cover-pick-btn:disabled{opacity:.5;cursor:wait}.cover-clear-btn{color:#c0392b;border-color:#e6c0c0}.cover-clear-btn:hover{background:#fdf0f0}.cover-preview{max-width:160px;max-height:100px;width:auto;height:auto;object-fit:contain;border-radius:6px;border:1px solid var(--color-border);background:#f4f4ee}.cover-preview[hidden]{display:none}.lang-tabs{display:flex;gap:4px;border-bottom:1px solid var(--color-border);margin-bottom:16px}.lang-tab{background:transparent;border:none;padding:10px 20px;font-size:.95rem;cursor:pointer;color:var(--color-text-light);border-bottom:2px solid transparent;margin-bottom:-1px;font-family:inherit}.lang-tab.active{color:var(--color-green);border-bottom-color:var(--color-green);font-weight:500}.editor-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:2px;padding:6px 10px;background:#fafaf6;border:1px solid var(--color-border);border-bottom:none;border-radius:8px 8px 0 0}.editor-toolbar button{background:transparent;border:1px solid transparent;border-radius:4px;padding:5px 9px;font-size:.85rem;font-family:inherit;color:var(--color-text);cursor:pointer;min-width:28px;transition:background .12s,border-color .12s}.editor-toolbar button:hover{background:#fff;border-color:var(--color-border)}.editor-toolbar button code{background:none;padding:0;font-size:.75rem}.editor-toolbar button.toolbar-icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:5px 8px}.editor-toolbar button.toolbar-icon-btn svg{display:block}.editor-toolbar select.toolbar-select{background:transparent;border:1px solid transparent;border-radius:4px;padding:5px 6px;font-size:.85rem;font-family:inherit;color:var(--color-text);cursor:pointer;transition:background .12s,border-color .12s}.editor-toolbar select.toolbar-select:hover{background:#fff;border-color:var(--color-border)}.editor-toolbar select.toolbar-select:focus{outline:none;background:#fff;border-color:var(--color-green)}.toolbar-sep{width:1px;height:18px;background:var(--color-border);margin:0 4px}.editor-toolbar+.tiptap-editor{border-top-left-radius:0;border-top-right-radius:0}.tiptap-editor{border:1px solid var(--color-border);border-radius:8px;min-height:480px;background:#fff;position:relative}.tiptap-editor[hidden]{display:none!important}.tiptap-editor .ProseMirror{padding:28px 32px;min-height:480px;outline:none;font-family:var(--font-sans);font-size:1.05rem;line-height:1.65;color:var(--color-text)}.tiptap-editor .ProseMirror p{margin:0 0 .4em}.tiptap-editor .ProseMirror h1{font-size:1.8rem;font-weight:600;margin:.8em 0 .35em;line-height:1.3}.tiptap-editor .ProseMirror h2{font-size:1.45rem;font-weight:600;margin:.8em 0 .3em;line-height:1.3}.tiptap-editor .ProseMirror h3{font-size:1.2rem;font-weight:600;margin:.7em 0 .25em;line-height:1.4}.tiptap-editor .ProseMirror ul,.tiptap-editor .ProseMirror ol{margin:0 0 .5em;padding-left:1.5em}.tiptap-editor .ProseMirror ul li{list-style:disc;margin-bottom:.3em}.tiptap-editor .ProseMirror ol li{list-style:decimal;margin-bottom:.3em}.tiptap-editor .ProseMirror a{color:var(--color-green);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.tiptap-editor .ProseMirror strong{font-weight:600}.tiptap-editor .ProseMirror em{font-style:italic}.tiptap-editor .ProseMirror code{background:#f4f4ee;padding:2px 6px;border-radius:4px;font-family:SF Mono,Consolas,monospace;font-size:.9em}.tiptap-editor .ProseMirror pre{background:#f4f4ee;padding:16px 20px;border-radius:6px;overflow-x:auto;margin:0 0 1em}.tiptap-editor .ProseMirror pre code{background:none;padding:0;font-size:.875rem}.tiptap-editor .ProseMirror blockquote{border-left:3px solid var(--color-green);padding-left:20px;margin:0 0 1em;color:var(--color-text-light);font-style:italic}.tiptap-editor .ProseMirror img{max-width:100%;height:auto;border-radius:6px;display:block}.tiptap-editor .ProseMirror .note-youtube,.tiptap-editor .ProseMirror div[data-youtube-video]{position:relative;width:70%;max-width:720px;aspect-ratio:16/9;margin:1.5em auto;border-radius:6px;overflow:hidden;background:#000}.tiptap-editor .ProseMirror .note-youtube iframe,.tiptap-editor .ProseMirror div[data-youtube-video] iframe{position:absolute;inset:0;width:100%;height:100%;border:0;pointer-events:none;display:block}.tiptap-editor .ProseMirror .ProseMirror-selectednode.note-youtube,.tiptap-editor .ProseMirror .ProseMirror-selectednode[data-youtube-video]{outline:2px solid var(--color-green);outline-offset:2px}.tiptap-editor .ProseMirror figure.note-figure{margin:.6em 0;display:block;max-width:100%;position:relative}.tiptap-editor .ProseMirror figure.note-figure[data-resizing=true] img{outline:2px solid var(--color-green);outline-offset:2px}.tiptap-editor .ProseMirror figure.note-figure .img-resize-handle{position:absolute;width:12px;height:12px;background:var(--color-green);border:2px solid #fff;border-radius:50%;opacity:0;pointer-events:none;transition:opacity .12s;z-index:5}.tiptap-editor .ProseMirror figure.note-figure:hover .img-resize-handle,.tiptap-editor .ProseMirror figure.note-figure.is-selected .img-resize-handle,.tiptap-editor .ProseMirror figure.note-figure[data-resizing=true] .img-resize-handle{opacity:1}.tiptap-editor .ProseMirror figure.note-figure:hover .img-resize-handle,.tiptap-editor .ProseMirror figure.note-figure[data-resizing=true] .img-resize-handle{pointer-events:auto}.tiptap-editor .ProseMirror figure.note-figure.is-selected img{outline:2px solid var(--color-green);outline-offset:2px}.tiptap-editor .ProseMirror figure.note-figure[data-snapped=true]{outline:2px dashed var(--color-green);outline-offset:4px}.img-resize-guide-line{position:fixed;pointer-events:none;z-index:1000;opacity:.85}.img-resize-guide-line[data-orient=v]{width:0;border-left:2px dashed var(--color-green)}.img-resize-guide-line[data-orient=h]{height:0;border-top:2px dashed var(--color-green)}.img-resize-tooltip{position:absolute;top:-32px;right:0;background:var(--color-green);color:#fff;padding:3px 10px;border-radius:4px;font-size:.75rem;font-family:SF Mono,Consolas,monospace;font-variant-numeric:tabular-nums;pointer-events:none;z-index:10;white-space:nowrap;user-select:none}.tiptap-editor .ProseMirror figure.note-figure .img-resize-nw{top:0;left:0;transform:translate(-50%,-50%);cursor:nwse-resize}.tiptap-editor .ProseMirror figure.note-figure .img-resize-ne{top:0;right:0;transform:translate(50%,-50%);cursor:nesw-resize}.tiptap-editor .ProseMirror figure.note-figure .img-resize-sw{bottom:0;left:0;transform:translate(-50%,50%);cursor:nesw-resize}.tiptap-editor .ProseMirror figure.note-figure .img-resize-se{bottom:0;right:0;transform:translate(50%,50%);cursor:nwse-resize}.tiptap-editor .ProseMirror figure.note-figure img{display:block;width:100%;height:auto;margin:0;border-radius:6px}.tiptap-editor .ProseMirror figure.align-left{margin-right:auto;margin-left:0}.tiptap-editor .ProseMirror figure.align-center{margin-left:auto;margin-right:auto}.tiptap-editor .ProseMirror figure.align-right{margin-left:auto;margin-right:0}.tiptap-editor .ProseMirror figure.align-wide{margin-left:-32px;margin-right:-32px;max-width:none;width:calc(100% + 64px)}.tiptap-editor .ProseMirror figure.note-figure figcaption{font-size:.875rem;color:var(--color-text-light);margin-top:6px;line-height:1.5;font-style:italic;text-align:center}.tiptap-editor .ProseMirror .image-row{margin:.5em 0}.tiptap-editor .ProseMirror .image-row[data-layout=row],.tiptap-editor .ProseMirror .image-row:not([data-layout]){display:flex;flex-wrap:nowrap;gap:8px;align-items:flex-start}.tiptap-editor .ProseMirror .image-row[data-row-align=left]{justify-content:flex-start}.tiptap-editor .ProseMirror .image-row[data-row-align=center]{justify-content:center}.tiptap-editor .ProseMirror .image-row[data-row-align=right]{justify-content:flex-end}.tiptap-editor .ProseMirror .image-row[data-layout=collage]{position:relative;display:block}.tiptap-editor .ProseMirror .image-row[data-layout=collage] figure.note-figure{margin:0}.tiptap-editor .ProseMirror .image-row[data-layout=collage] figure.note-figure img{width:100%;height:100%;object-fit:cover}.tiptap-editor .ProseMirror .image-row[data-layout=collage] figure.note-figure .img-resize-handle{display:none!important}.tiptap-editor .ProseMirror .image-row figure.note-figure{flex:0 0 auto;min-width:0;margin:0}.tiptap-editor .ProseMirror .image-row figure.note-figure:not([style*=width]){flex:1 1 0}.tiptap-editor .ProseMirror .image-row figure.note-figure figcaption{display:none}.tiptap-editor .ProseMirror .img-resizable{position:relative;display:inline-block;max-width:100%;margin:.5em 0;line-height:0}.tiptap-editor .ProseMirror .img-resizable img{max-width:100%;height:auto;border-radius:6px;display:block;margin:0}.img-resize-handle{position:absolute;width:12px;height:12px;background:var(--color-green);border:2px solid #fff;border-radius:50%;opacity:0;transition:opacity .15s ease;pointer-events:none;z-index:2}.img-resizable.is-hover .img-resize-handle,.img-resizable.is-resizing .img-resize-handle{opacity:1;pointer-events:auto}.img-resize-nw{top:-6px;left:-6px;cursor:nwse-resize}.img-resize-ne{top:-6px;right:-6px;cursor:nesw-resize}.img-resize-sw{bottom:-6px;left:-6px;cursor:nesw-resize}.img-resize-se{bottom:-6px;right:-6px;cursor:nwse-resize}.img-resizable.is-hover img,.img-resizable.is-resizing img{outline:2px solid var(--color-green);outline-offset:2px}.tiptap-editor .ProseMirror hr{border:none;border-top:1px solid var(--color-border);margin:2em 0}.tiptap-editor .ProseMirror u{text-decoration:underline}.tiptap-editor .ProseMirror s{text-decoration:line-through;color:var(--color-text-light)}.tiptap-editor .ProseMirror ul[data-type=taskList]{list-style:none;padding-left:0}.tiptap-editor .ProseMirror ul[data-type=taskList] li{display:flex;align-items:flex-start;gap:8px;list-style:none;margin-bottom:.3em}.tiptap-editor .ProseMirror ul[data-type=taskList] li>label{flex:0 0 auto;margin-top:6px;user-select:none}.tiptap-editor .ProseMirror ul[data-type=taskList] li>div{flex:1 1 auto}.tiptap-editor .ProseMirror ul[data-type=taskList] li>div>p{margin:0}.tiptap-editor .ProseMirror table{border-collapse:collapse;margin:0 0 1em;overflow:hidden;width:100%;table-layout:fixed}.tiptap-editor .ProseMirror table td,.tiptap-editor .ProseMirror table th{border:1px solid var(--color-border);padding:8px 12px;vertical-align:top;min-width:60px;position:relative}.tiptap-editor .ProseMirror table th{background:#fafaf6;font-weight:600;text-align:left}.tiptap-editor .ProseMirror table .selectedCell:after{background:#043d2014;content:"";inset:0;pointer-events:none;position:absolute}.tiptap-editor .ProseMirror table .column-resize-handle{position:absolute;right:-2px;top:0;bottom:-2px;width:4px;background-color:var(--color-green);pointer-events:none;z-index:20}.tiptap-editor .ProseMirror table:hover td:not(:last-child):after,.tiptap-editor .ProseMirror table:hover th:not(:last-child):after{content:"";position:absolute;right:-2px;top:6px;bottom:6px;width:3px;background:var(--color-green);opacity:.15;pointer-events:none;border-radius:2px;transition:opacity .12s}.tiptap-editor .ProseMirror table td:not(:last-child):hover:after,.tiptap-editor .ProseMirror table th:not(:last-child):hover:after{opacity:.55}.tiptap-editor .ProseMirror.resize-cursor{cursor:col-resize}.tiptap-editor .ProseMirror .tableWrapper{overflow-x:auto;margin:.5em 0}.tiptap-editor .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--color-text-light);pointer-events:none;height:0}.editor-toolbar button.is-active{background:#e7f1ec;color:var(--color-green);border-color:#c7e0d2}.editor-toolbar button.is-active:hover{background:#d8e8de}.tiptap-editor .ProseMirror [style*="text-align: center"]{text-align:center}.tiptap-editor .ProseMirror [style*="text-align: right"]{text-align:right}.tiptap-editor .ProseMirror [style*="text-align: justify"]{text-align:justify}.tiptap-editor .ProseMirror mark{background:#fff59d;color:inherit;padding:0 2px;border-radius:2px}.link-hover-popup{position:fixed;z-index:1050;transform:translate(-50%);background:#fff;border:1px solid var(--color-border);border-radius:6px;box-shadow:0 4px 12px #00000024;padding:4px 10px;max-width:min(420px,80vw)}.link-hover-popup[hidden]{display:none}.link-hover-popup a{display:inline-block;font-size:.82rem;color:var(--color-green);text-decoration:none;word-break:break-all;line-height:1.4}.link-hover-popup a:hover{text-decoration:underline}.link-popup{position:fixed;z-index:1100;transform:translate(-50%,-100%);background:#fff;border:1px solid var(--color-border);border-radius:8px;box-shadow:0 4px 14px #0000002e;padding:6px;display:flex;align-items:center;gap:4px;max-width:90vw}.link-popup[hidden]{display:none}.link-popup input[type=url]{border:1px solid var(--color-border);border-radius:4px;padding:5px 8px;font-size:.88rem;font-family:inherit;width:320px;max-width:60vw;outline:none;color:var(--color-text)}.link-popup input[type=url]:focus{border-color:var(--color-green)}.link-popup button{background:transparent;border:1px solid transparent;border-radius:4px;padding:5px 9px;font-size:.85rem;font-family:inherit;color:var(--color-text);cursor:pointer;min-width:32px}.link-popup button:hover{background:#f3f3ee;border-color:var(--color-border)}.link-popup button#link-popup-apply{background:var(--color-green);color:#fff;border-color:var(--color-green)}.link-popup button#link-popup-apply:hover{filter:brightness(1.08)}.tiptap-bubble-menu{background:#fff;border:1px solid var(--color-border);border-radius:6px;padding:4px;display:flex;gap:2px;box-shadow:0 4px 14px #0000001f;z-index:900;visibility:hidden;opacity:0;transition:opacity .12s;width:max-content}.tiptap-bubble-menu button{background:transparent;border:1px solid transparent;border-radius:4px;padding:4px 8px;font-size:.85rem;font-family:inherit;color:var(--color-text);cursor:pointer;min-width:28px;transition:background .12s,border-color .12s}.tiptap-bubble-menu button:hover{background:#f4f4ee;border-color:var(--color-border)}.tiptap-bubble-menu select.bubble-select{background:transparent;border:1px solid transparent;border-radius:4px;padding:4px;font-size:.8rem;font-family:inherit;color:var(--color-text);cursor:pointer;transition:background .12s,border-color .12s}.tiptap-bubble-menu select.bubble-select:hover{background:#f4f4ee;border-color:var(--color-border)}.tiptap-bubble-menu select.bubble-select:focus{outline:none;background:#fff;border-color:var(--color-green)}.tiptap-image-bubble-menu{background:#fff;border:1px solid var(--color-border);border-radius:6px;padding:4px;display:flex;align-items:center;gap:4px;box-shadow:0 4px 14px #0000001f;z-index:900;visibility:hidden;opacity:0;transition:opacity .12s;width:max-content;max-width:560px}.tiptap-image-bubble-menu select[data-ib=size]{background:#fafaf6;border:1px solid var(--color-border);border-radius:4px;padding:4px 6px;font-family:inherit;font-size:.85rem;color:var(--color-text);cursor:pointer}.tiptap-image-bubble-menu select[data-ib=size]:hover{background:#fff}.tiptap-image-bubble-menu button{background:transparent;border:1px solid transparent;border-radius:4px;padding:4px 8px;font-size:.9rem;font-family:inherit;color:var(--color-text);cursor:pointer;min-width:28px;transition:background .12s,border-color .12s,color .12s}.tiptap-image-bubble-menu button:hover{background:#f4f4ee;border-color:var(--color-border)}.tiptap-image-bubble-menu button.is-active{background:#e7f1ec;color:var(--color-green);border-color:#c7e0d2}.tiptap-image-bubble-sep{width:1px;height:20px;background:var(--color-border);margin:0 2px}.tiptap-image-bubble-menu input[data-ib=caption]{flex:1 1 200px;min-width:180px;padding:5px 10px;font-size:.85rem;font-family:inherit;border:1px solid var(--color-border);border-radius:4px;outline:none;background:#fafaf6}.tiptap-image-bubble-menu input[data-ib=caption]:focus{background:#fff;border-color:var(--color-green)}.tiptap-editor .ProseMirror .multi-selected,.tiptap-editor .ProseMirror figure.note-figure.multi-selected{outline:3px solid var(--color-green);outline-offset:2px;border-radius:4px}.tiptap-editor .ProseMirror img.multi-selected{outline:3px solid var(--color-green);outline-offset:2px}.tiptap-editor .ProseMirror .ProseMirror-selectednode{outline:2px solid var(--color-green);outline-offset:2px;border-radius:4px}.tiptap-editor .ProseMirror p.ProseMirror-selectednode,.tiptap-editor .ProseMirror h1.ProseMirror-selectednode,.tiptap-editor .ProseMirror h2.ProseMirror-selectednode,.tiptap-editor .ProseMirror h3.ProseMirror-selectednode,.tiptap-editor .ProseMirror blockquote.ProseMirror-selectednode,.tiptap-editor .ProseMirror ul.ProseMirror-selectednode,.tiptap-editor .ProseMirror ol.ProseMirror-selectednode{background:#043d200f}.tiptap-editor .ProseMirror .image-row.is-selected{outline:2px solid var(--color-green);outline-offset:4px;border-radius:4px}.tiptap-drag-handle{color:#b8b8b0;font-size:1rem;line-height:1;padding:4px 6px;cursor:grab;user-select:none;transition:color .15s,background .15s;border-radius:4px;display:flex;align-items:center;height:1.6em}.tiptap-drag-handle:hover{color:var(--color-green);background:#f4f4ee}.tiptap-drag-handle:active{cursor:grabbing}.table-picker{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1100}.table-picker[hidden]{display:none!important}.table-picker-card{background:#fff;padding:24px 28px 20px;border-radius:12px;text-align:center;box-shadow:0 8px 40px #0000002e}.table-picker-card h3{margin:0 0 16px;font-size:1rem;font-weight:600;color:var(--color-text)}.table-picker-grid{display:grid;gap:3px;margin:0 auto 12px;width:max-content;max-width:80vw;max-height:60vh;overflow:auto}.table-picker-cell{width:22px;height:22px;background:#fafaf6;border:1px solid var(--color-border);border-radius:2px;cursor:pointer;transition:background .08s,border-color .08s}.table-picker-cell.is-hover{background:var(--color-green);border-color:var(--color-green)}.table-picker-label{font-size:.9rem;color:var(--color-text);font-variant-numeric:tabular-nums;margin:0 0 12px}.table-picker-cancel{background:transparent;border:none;color:var(--color-text-light);cursor:pointer;font-size:.85rem;padding:4px 12px;font-family:inherit}.table-picker-cancel:hover{color:var(--color-text)}.table-picker-custom{margin:4px 0 12px;font-size:.825rem;color:var(--color-text-light)}.table-picker-custom summary{cursor:pointer;text-align:center;padding:4px 0;user-select:none}.table-picker-custom summary:hover{color:var(--color-text)}.table-picker-custom-form{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 0 4px}.table-picker-custom-form input[type=number]{width:56px;padding:4px 8px;border:1px solid var(--color-border);border-radius:4px;font-family:inherit;font-size:.85rem;text-align:center}.table-picker-custom-form button{padding:4px 12px;background:var(--color-green);color:#fff;border:none;border-radius:4px;font-family:inherit;font-size:.85rem;cursor:pointer}.table-picker-custom-form button:hover{opacity:.85}.tiptap-row-bubble-menu{background:#fff;border:1px solid var(--color-border);border-radius:6px;padding:4px;display:flex;align-items:center;gap:4px;box-shadow:0 4px 14px #0000001f;z-index:900;visibility:hidden;opacity:0;transition:opacity .12s;width:max-content}.tiptap-row-bubble-menu button{background:transparent;border:1px solid transparent;border-radius:4px;padding:4px 8px;font-size:.9rem;font-family:inherit;color:var(--color-text);cursor:pointer;min-width:28px;transition:background .12s,border-color .12s,color .12s}.tiptap-row-bubble-menu button:hover{background:#f4f4ee;border-color:var(--color-border)}.tiptap-row-bubble-menu button.is-active{background:#e7f1ec;color:var(--color-green);border-color:#c7e0d2}.tiptap-row-bubble-menu button[data-rb=delete-row]:hover{background:#fce4e0;border-color:#c0392b;color:#c0392b}.tiptap-table-bubble-menu{background:#fff;border:1px solid var(--color-border);border-radius:6px;padding:4px;display:flex;align-items:center;gap:4px;box-shadow:0 4px 14px #0000001f;z-index:900;visibility:hidden;opacity:0;transition:opacity .12s;width:max-content}.tiptap-table-bubble-menu button{background:transparent;border:1px solid transparent;border-radius:4px;padding:4px 8px;font-size:.82rem;font-family:inherit;color:var(--color-text);cursor:pointer;min-width:28px;transition:background .12s,border-color .12s,color .12s}.tiptap-table-bubble-menu button:hover{background:#f4f4ee;border-color:var(--color-border)}.tiptap-table-bubble-menu button[data-tb=deleteTable]:hover{background:#fce4e0;border-color:#c0392b;color:#c0392b}.image-layout-modal{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1100;padding:32px}.image-layout-modal[hidden]{display:none!important}.image-layout-card{background:#fff;padding:32px 28px 24px;border-radius:12px;width:100%;max-width:420px;box-shadow:0 8px 40px #0000002e;text-align:center}.image-layout-card h3{font-size:1.1rem;font-weight:600;margin:0 0 8px;color:var(--color-text)}.image-layout-sub{font-size:.875rem;color:var(--color-text-light);margin:0 0 24px;line-height:1.5}.image-layout-buttons{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.image-layout-buttons button{padding:14px 16px;border:1px solid var(--color-border);border-radius:8px;background:#fff;font-size:.95rem;cursor:pointer;font-family:inherit;color:var(--color-text);transition:background .12s,border-color .12s}.image-layout-buttons button:hover{background:#fafaf6;border-color:var(--color-green);color:var(--color-green)}.image-layout-cancel{background:transparent!important;border:none!important;color:var(--color-text-light)!important;cursor:pointer;font-size:.85rem;padding:4px 12px;font-family:inherit}.image-layout-cancel:hover{color:var(--color-text)!important;background:transparent!important}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);padding:12px 24px;border-radius:8px;background:var(--color-green);color:#fff;font-size:.9rem;box-shadow:0 4px 12px #00000026;z-index:1200}.toast[hidden]{display:none!important}.toast-error{background:#c0392b}.toast-success{background:#1a7f3e}@media(max-width:768px){.meta-grid{grid-template-columns:1fr}.editor-shell{padding:16px}.editor-header{flex-direction:column;align-items:flex-start;gap:12px}.editor-toolbar{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.editor-toolbar>*{flex-shrink:0}.link-popup input[type=url]{width:220px}}
