.editor-shell{flex-direction:column;height:100vh}.editor,.editor-shell{display:flex;width:100%;overflow:hidden}.editor{flex:1;min-height:0;background:var(--color-app-bg)}.ephemeral-notice{flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:12px;padding:6px 16px;background:var(--color-warning-bg);border-bottom:1px solid var(--color-warning-border);color:var(--color-warning-title);font-family:var(--font-body);font-size:12px}.ephemeral-download{flex:0 0 auto;color:#fff;background:var(--color-ink);border-radius:6px;padding:3px 10px;text-decoration:none;font-weight:500}.ephemeral-download:hover{background:#013640}.editor-left{flex:0 0 var(--left-w,420px);width:var(--left-w,420px);height:100%;overflow-y:auto;background:var(--color-paper);border-right:1px solid var(--color-rule);padding:20px;font-family:var(--font-body);color:var(--color-ink-text)}.editor-section{margin-bottom:24px}.editor-section-title{font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:var(--color-ink);margin:0 0 10px}.editor-field{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.editor-field label{font-size:11px;color:var(--color-muted)}.editor-field input,.editor-field textarea{font-family:var(--font-body);font-size:13px;color:var(--color-ink-text);padding:7px 9px;border:1px solid var(--color-rule-strong);border-radius:8px;background:var(--color-paper);outline:none}.editor-field input:focus,.editor-field textarea:focus{border-color:var(--color-ink)}.editor-help{margin:2px 0 0;font-size:10px;line-height:1.4;color:var(--color-muted)}.editor-nav-item{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;text-align:left;font-family:var(--font-body);font-size:13px;color:var(--color-ink-text);padding:8px 10px;border:1px solid transparent;border-radius:8px;background:transparent;cursor:pointer}.editor-nav-item.active,.editor-nav-item:hover{background:var(--color-hover-bg)}.editor-nav-item.active{border-color:var(--color-ink);font-weight:600;color:var(--color-ink)}.editor-nav-item .nav-meta{font-family:var(--font-mono);font-size:10px;color:var(--color-muted)}.editor-steplist{margin:4px 0 8px 12px;padding-left:8px;border-left:1px solid var(--color-rule);display:flex;flex-direction:column;gap:2px}.editor-step-item{font-size:12px;padding:6px 8px}.editor-resizer{flex:0 0 6px;cursor:col-resize;background:var(--color-rule);position:relative;touch-action:none}.editor-resizer:active,.editor-resizer:hover{background:var(--color-ink)}.editor-right{flex:1 1 auto;display:flex;flex-direction:column;height:100%;min-width:0;position:relative}.preview-toolbar{flex:0 0 auto;display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--color-paper);border-bottom:1px solid var(--color-rule);color:var(--color-ink-text)}.preview-toolbar,.preview-toolbar button{font-family:var(--font-body);font-size:13px}.preview-toolbar button{color:var(--color-ink);background:transparent;border:1px solid var(--color-rule-strong);border-radius:8px;padding:6px 12px;cursor:pointer}.preview-toolbar button:hover:not(:disabled){background:var(--color-hover-bg)}.preview-toolbar button:disabled{opacity:.4;cursor:default}.preview-toolbar .page-indicator{font-family:var(--font-mono);font-size:12px;color:var(--color-muted)}.preview-toolbar .spacer{flex:1 1 auto}.preview-toolbar a{font-family:var(--font-body);font-size:13px;color:var(--color-ink);background:transparent;border:1px solid var(--color-rule-strong);border-radius:8px;padding:6px 12px;cursor:pointer;text-decoration:none}.preview-toolbar a:hover{background:var(--color-hover-bg)}.preview-toolbar .print-link{text-decoration:none;color:#fff;background:var(--color-ink);border-color:var(--color-ink)}.preview-toolbar .print-link:hover{background:#013640}.preview-toolbar .save-status{font-family:var(--font-mono);font-size:11px;color:var(--color-muted)}.preview-toolbar .save-status.saved{color:var(--color-ink)}.preview-toolbar .save-status.error{color:var(--color-danger-text)}.preview-toolbar .overflow-warn,.status-pill{display:inline-block;font-family:var(--font-mono);font-size:11px;font-weight:500;color:var(--color-warn-title);background:var(--color-warn-bg);border:1px solid var(--color-warn-border);border-radius:6px;padding:3px 8px}.preview-scroll{flex:1 1 auto;overflow:auto;padding:16px 0 32px}.preview-sizer{position:relative;width:100%}.preview-scaler{position:absolute;top:0;left:0;right:0;transform-origin:top center}.preview-scaler .page.page--active{outline:3px solid var(--color-ink);outline-offset:4px}.nav-label{flex:1 1 auto;text-align:left;background:transparent;border:none;cursor:pointer;font-family:var(--font-body);font-size:inherit;color:inherit;padding:0}.mini-btns{display:flex;gap:2px;flex:0 0 auto}.mini-btn{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-rule-strong);border-radius:7px;background:var(--color-paper);color:var(--color-ink);font-size:12px;line-height:1;cursor:pointer}.mini-btn:hover:not(:disabled){background:var(--color-hover-bg)}.mini-btn:disabled{opacity:.3;cursor:default}.mini-btn.danger{color:var(--color-danger-text);border-color:color-mix(in srgb,var(--color-danger-text) 13%,transparent)}.add-btn:focus-visible,.callout-item input:focus-visible,.callout-item select:focus-visible,.callout-item textarea:focus-visible,.ctrl-row select:focus-visible,.mini-btn:focus-visible,.seg-btn:focus-visible,.stepper button:focus-visible,.toast-x:focus-visible{outline:1px solid var(--color-ink);outline-offset:2px}.btn-outline-danger:focus-visible,.mini-btn.danger:focus-visible{outline:1px solid var(--color-danger-text);outline-offset:2px}.btn-outline-danger{display:inline-block;padding:5px 10px;border:1px solid color-mix(in srgb,var(--swatch-red-stroke) 40%,transparent);border-radius:7px;background:var(--color-paper);color:var(--color-danger-text);font-family:var(--font-body);font-size:12px;font-weight:500;white-space:nowrap;cursor:pointer}.btn-outline-danger:hover{background:var(--swatch-red-fill);border-color:var(--swatch-red-stroke)}.add-btn{width:100%;margin-top:8px;padding:8px;border:1px dashed var(--color-rule-strong);border-radius:8px;background:transparent;color:var(--color-ink);font-family:var(--font-body);font-size:12px;cursor:pointer}.add-btn:hover{background:var(--color-hover-bg)}.editor-subtitle{font-family:var(--font-body);font-size:12px;font-weight:600;color:var(--color-ink);margin:14px 0 6px}.chapter-detail{margin:6px 0 10px 8px;padding:10px;border-left:2px solid var(--color-rule);background:#fafbfb;border-radius:0 8px 8px 0}.editor-field select{font-family:var(--font-body);font-size:13px;color:var(--color-ink-text);padding:6px 8px;border:1px solid var(--color-rule-strong);border-radius:8px;background:var(--color-paper)}.rows-outline{display:flex;flex-direction:column;gap:8px}.row-card{border:1px solid var(--color-rule);border-radius:9px;background:var(--color-paper);overflow:hidden}.row-card.selected{border-color:var(--color-ink);box-shadow:0 0 0 1px var(--color-ink)}.row-card-head{display:flex;align-items:center;gap:10px;padding:8px 10px;cursor:pointer}.row-card-head:hover{background:#f6f9f9}.row-card-meta{flex:1 1 auto;display:flex;flex-direction:column;min-width:0}.row-card-title{font-size:12px;font-weight:600;color:var(--color-ink)}.row-card-sub{font-family:var(--font-mono);font-size:10px;color:var(--color-muted)}.row-controls{padding:10px;border-top:1px solid var(--color-rule);display:flex;flex-direction:column;gap:10px}.ctrl-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.ctrl-label{font-size:12px;color:var(--color-muted)}.ctrl-row select{font-family:var(--font-body);font-size:12px;line-height:1.2;padding:5px 8px;border:1px solid var(--color-rule-strong);border-radius:8px;background:var(--color-paper);color:var(--color-ink-text);max-width:160px}.ctrl-checks{display:flex;flex-wrap:wrap;gap:12px}.ctrl-check{align-items:center;gap:6px;font-size:12px;color:var(--color-ink-text);cursor:pointer}.ctrl-check,.seg{display:inline-flex}.seg{border:1px solid var(--color-rule-strong);border-radius:8px;overflow:visible}.seg-btn{padding:5px 12px;border:none;background:var(--color-paper);color:var(--color-ink-text);font-family:var(--font-body);font-size:12px;cursor:pointer}.seg-btn:first-child{border-radius:7px 0 0 7px}.seg-btn:last-child{border-radius:0 7px 7px 0}.seg-btn+.seg-btn{border-left:1px solid var(--color-rule-strong)}.seg-btn.active{background:var(--color-ink);color:#fff}.stepper{display:inline-flex;align-items:center;gap:8px}.stepper button{width:24px;height:24px;border:1px solid var(--color-rule-strong);border-radius:7px;background:var(--color-paper);color:var(--color-ink);font-size:14px;cursor:pointer}.stepper span{font-family:var(--font-mono);font-size:13px;min-width:16px;text-align:center}.disclosure{align-self:flex-start;background:transparent;border:none;color:var(--color-muted);font-family:var(--font-body);font-size:12px;cursor:pointer;padding:0}.callout-editor{padding:8px;border:1px solid var(--color-rule);border-radius:8px;background:#fafbfb}.callout-editor,.callout-list{display:flex;flex-direction:column;gap:8px}.callout-item{display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid var(--color-rule);border-radius:8px;background:var(--color-paper)}.callout-item-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.callout-item input,.callout-item select,.callout-item textarea{font-family:var(--font-body);font-size:12px;color:var(--color-ink-text);padding:6px 8px;border:1px solid var(--color-rule-strong);border-radius:7px;background:var(--color-paper);outline:none}.editor-foot{display:flex;gap:8px;align-items:center;margin-top:8px;padding-top:12px;border-top:1px solid var(--color-rule);font-size:11px;color:var(--color-muted)}.editor-foot a{color:var(--color-muted);text-decoration:none}.editor-foot a:hover{color:var(--color-ink);text-decoration:underline}.rta{display:flex;flex-direction:column}.rta-toolbar{display:flex;gap:4px;margin-bottom:4px}.rta-toolbar button{width:26px;height:24px;border:1px solid var(--color-rule-strong);border-radius:7px;background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:12px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.rta-toolbar button:hover{background:var(--color-hover-bg)}.rta textarea{font-family:var(--font-body);font-size:13px;color:var(--color-ink-text);padding:7px 9px;border:1px solid var(--color-rule-strong);border-radius:8px;background:var(--color-paper);outline:none;resize:vertical}.rta textarea:focus{border-color:var(--color-ink)}.preview-anno{z-index:5;pointer-events:auto;overflow:visible}.preview-anno-handle{fill:#fff;stroke:var(--color-ink);stroke-width:2;cursor:grab;pointer-events:auto}.preview-anno-handle.resize{fill:var(--color-ink);cursor:nwse-resize}.preview-anno-handle.label{fill:var(--color-accent,#658995);stroke:#fff;cursor:move}.preview-anno-handle:active{cursor:grabbing}.preview-anno-hit{fill:transparent;stroke:transparent;cursor:pointer}.preview-chapter-image{z-index:5;pointer-events:none;overflow:visible}.anno-text.editing{outline:1.5px solid var(--color-accent,#658995);outline-offset:2px;background:rgba(255,255,255,.92);border-radius:3px;cursor:text;white-space:pre-wrap}.anno-editwrap{width:100%;height:100%;box-sizing:border-box}.anno-editwrap.centered{display:flex;align-items:center}.anno-editwrap.centered>.anno-text.editing{width:auto;height:auto;max-width:100%}.preview-anno-snap{fill:var(--color-ink);opacity:.5;pointer-events:none}.preview-anno-textframe{fill:none;stroke:var(--color-accent,#658995);stroke-width:1;stroke-dasharray:4 3}.preview-anno-wp{fill:#fff;stroke:var(--color-ink);stroke-width:2;cursor:grab;pointer-events:auto}.preview-anno-wp:active{cursor:grabbing}.preview-anno-seg{fill:#fff;stroke:var(--color-accent,#658995);stroke-width:2;pointer-events:auto}.preview-anno-seg.h{cursor:ns-resize}.preview-anno-seg.v{cursor:ew-resize}.preview-anno-seg:active{cursor:grabbing}.preview-anno-dir{fill:#fff;stroke:var(--color-accent,#658995);stroke-width:2;cursor:grab;pointer-events:auto}.preview-anno-dir:active{cursor:grabbing}.preview-anno-dir-stem{stroke:var(--color-accent,#658995);stroke-width:1.5;pointer-events:none;opacity:.6}.preview-anno-guide{stroke:#e5484d;stroke-width:1;pointer-events:none;shape-rendering:crispEdges}.preview-anno-distguide line{stroke:#c026d3;stroke-width:1;pointer-events:none;shape-rendering:crispEdges}.preview-anno-draft{fill:rgba(2,68,80,.06);stroke:#024450;stroke-width:1.5;stroke-dasharray:4 3;pointer-events:none}.anno-canvas-wrap{width:100%;display:flex;justify-content:center;margin:0 0 8px}.anno-canvas{display:block;border:1px solid var(--color-rule-strong);border-radius:8px;background:var(--color-cream);touch-action:none;user-select:none}.anno-handle{fill:#fff;stroke:var(--color-ink);stroke-width:1.5;cursor:grab}.anno-handle.resize{fill:var(--color-ink);cursor:nwse-resize}.anno-handle:active{cursor:grabbing}.anno-snap-dot{fill:var(--color-ink);opacity:.45}.anno-w{width:44px;font-size:12px;padding:4px 6px;border:1px solid var(--color-rule-strong);border-radius:6px}.anno-text-ctrls{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.anno-text-ctrls .anno-num{width:64px}.anno-text-ctrls select{font-size:12px;padding:4px 6px;border:1px solid var(--color-rule-strong);border-radius:6px}.anno-num{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:10px;color:var(--color-muted)}.anno-num input{width:100%;min-width:0;box-sizing:border-box;font-size:12px;padding:4px 6px;border:1px solid var(--color-rule-strong);border-radius:6px}.anno-endpoint{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:3px 7px;border:1px solid #dbe2e2;border-radius:8px;background:#f7fafa}.anno-eplabel{font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#3f6168;margin-right:2px}.anno-endpoint select{font-size:11px;padding:4px 6px;border:1px solid var(--color-rule-strong);border-radius:6px;background:var(--color-paper)}.anno-endpoint .anno-num{width:48px}.border-fields{display:grid;grid-template-columns:1fr 70px 70px;gap:8px}.border-controls{gap:8px}.border-controls,.theme-row{display:flex;flex-direction:column}.theme-row{gap:4px;margin-bottom:8px}.theme-row-label{font-size:11px;color:var(--color-muted)}.theme-row-controls{display:flex;gap:6px;align-items:center}.theme-row-controls select{flex:1 1 auto;background:var(--color-paper)}.theme-row-controls select,.theme-size{font-family:var(--font-body);font-size:12px;padding:6px 8px;border:1px solid var(--color-rule-strong);border-radius:8px}.theme-size{width:64px}.theme-color{width:32px;height:32px;padding:0;border:1px solid var(--color-rule-strong);border-radius:8px;background:var(--color-paper)}.wm-icon-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.wm-icon-preview{width:28px;height:28px;object-fit:contain;border:1px solid var(--color-rule);border-radius:4px;background:var(--color-cream)}.img-picker{position:relative;display:flex;flex-direction:column;gap:4px}.img-picker-label{font-size:11px;color:var(--color-muted)}.img-picker-trigger{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--color-rule-strong);border-radius:8px;background:var(--color-paper);cursor:pointer;text-align:left}.img-picker-thumb{width:28px;height:28px;object-fit:cover;border-radius:4px;border:1px solid var(--color-rule);flex:0 0 auto;background:var(--color-cream)}.img-picker-thumb.empty{display:inline-block}.img-picker-name{flex:1 1 auto;font-family:var(--font-mono);font-size:11px;color:var(--color-ink-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.img-picker-caret{color:var(--color-muted);font-size:10px}.img-picker-panel{position:absolute;top:100%;left:0;right:0;z-index:20;margin-top:4px;padding:8px;background:var(--color-paper);border:1px solid var(--color-rule-strong);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.12);max-height:280px;overflow:auto}.img-picker-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.img-tile{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px;border:1px solid var(--color-rule);border-radius:8px;background:var(--color-paper);cursor:pointer}.img-tile:hover{background:var(--color-hover-bg)}.img-tile.selected{border-color:var(--color-ink);box-shadow:0 0 0 1px var(--color-ink)}.img-tile img{width:100%;height:56px;object-fit:cover;border-radius:4px;background:var(--color-cream)}.img-tile-name{font-family:var(--font-mono);font-size:9px;color:var(--color-muted);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.img-tile.upload{justify-content:center;border-style:dashed;color:var(--color-ink)}.img-tile-plus{font-size:22px;line-height:1}.img-picker-hint{font-size:11px;margin:8px 2px 0;color:var(--color-muted)}.skel{flex:0 0 auto}.skel-side{display:flex;align-items:flex-start;gap:4px}.skel-below{display:flex;flex-direction:column;gap:3px}.skel-screens{display:flex;align-items:center;gap:3px}.skel-box{width:16px;height:27px;border:1.5px solid var(--color-ink);border-radius:3px;background:#eef4f4;display:inline-block}.skel-box.wide{width:34px;height:27px}.skel-arrow{color:var(--color-ink);font-size:11px;opacity:.6}.skel-callouts.side{display:flex;flex-direction:column;gap:2px}.skel-callouts.below{display:grid;grid-template-columns:repeat(var(--cols,2),1fr);gap:2px}.skel-cell{width:10px;height:7px;border:1px solid var(--color-rule-strong);border-radius:2px;background:var(--color-hover-bg)}.skel-callouts.below .skel-cell{width:auto}.preview-cell-float,.preview-grid-resize,.preview-grid-select{z-index:4}.preview-grid-resize{pointer-events:none;overflow:visible}.grid-divider{stroke:transparent;stroke-width:10;pointer-events:stroke}.grid-divider-row{cursor:row-resize}.grid-divider-col{cursor:col-resize}.grid-divider:hover{stroke:#3b82f6;stroke-width:2}.grid-readout{fill:var(--color-ink);font-size:11px;font-family:var(--font-body,sans-serif);paint-order:stroke;stroke:#fff;stroke-width:3;pointer-events:none}.preview-scaler .grid-cell{outline:1.5px dashed rgba(59,130,246,.6);outline-offset:-2px;background:rgba(59,130,246,.05)}.preview-scaler.chrome-hidden .grid-cell{outline:none;background:none}.grid-guide-line{stroke:#3b82f6;stroke-opacity:.6;stroke-width:2;pointer-events:none}.grid-struct-cell-row,.grid-struct-row-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:var(--color-ink-text);padding:4px 0}.grid-canvas-btn{pointer-events:all;cursor:pointer}.grid-canvas-btn circle{fill:#fff;stroke:#3b82f6;stroke-width:1.5}.grid-canvas-btn text{fill:#3b82f6;font-size:12px;font-family:var(--font-body,sans-serif);pointer-events:none;user-select:none}.grid-canvas-btn.danger circle{stroke:var(--color-danger-text)}.grid-canvas-btn.danger text{fill:var(--color-danger-text)}.grid-canvas-btn:hover circle{fill:#eef4ff}.preview-grid-select .grid-cell-select{background:transparent;border:none;padding:0;cursor:pointer}.preview-grid-select .grid-cell-select.selected{outline:2px solid #2563eb;outline-offset:-2px;background:rgba(37,99,235,.06)}.preview-grid-select .grid-cell-select.drop{outline:2px dashed #2563eb;outline-offset:-2px;background:rgba(37,99,235,.12)}.preview-grid-select .grid-cell-select.drop-error{outline:2px solid #dc2626;outline-offset:-2px;background:rgba(220,38,38,.08)}.preview-cell-float .cell-float-hit{cursor:grab;border-radius:4px}.preview-cell-float .cell-float-hit.floating{outline:1.5px dashed rgba(37,99,235,.5);outline-offset:1px}.preview-cell-float .cell-float-hit.selected{outline:2px solid #2563eb;outline-offset:1px;background:rgba(37,99,235,.06)}.preview-cell-float .cell-float-resize{width:12px;height:12px;border-radius:50%;background:var(--color-paper);border:2px solid #2563eb;cursor:ew-resize}.cell-editor .callout-item.selected{outline:2px solid var(--color-selection);outline-offset:2px;border-radius:6px}.cell-editor .block-label{font-family:var(--font-heading,inherit);font-size:12px;font-weight:600;color:var(--ink,inherit)}.cell-editor .cell-add-row{display:flex;gap:8px}.cell-editor .cell-add-row .add-btn{flex:1}.annotation-palette{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);z-index:30;display:flex;flex-direction:column;gap:8px;padding:8px 10px;max-width:min(92%,900px);background:var(--color-paper);border:1px solid #d7dede;border-radius:12px;box-shadow:0 6px 18px rgba(2,68,80,.18)}.ap-main-row{display:flex;align-items:center;gap:6px}.anno-context{display:flex;flex-direction:column;gap:6px;padding-top:8px;border-top:1px solid #e8eded}.anno-context-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.anno-context input[type=color]{width:30px;height:30px;padding:0;border:1px solid #dbe2e2;border-radius:7px;background:var(--color-paper);cursor:pointer}.anno-context .anno-num input,.anno-context .anno-w,.anno-context select{height:28px;border:1px solid #dbe2e2;border-radius:7px;background:var(--color-paper);color:#024450;font-size:12px;padding:0 4px}.ap-tool{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:#f2f4f4;color:#024450;cursor:pointer}.ap-tool:hover{background:#e6ecec}.ap-tool.active{background:#024450;color:#fff}.ap-div{width:1px;height:26px;background:#dbe3e3;margin:0 2px}.ap-color{position:relative;width:40px;height:40px;border-radius:8px;overflow:hidden;cursor:pointer;display:inline-flex}.ap-color .ap-chip{position:absolute;inset:6px;border-radius:6px;box-shadow:inset 0 0 0 1.5px #cdd6d6}.ap-color input[type=color]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.ap-swatch{width:24px;height:24px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1.5px #cdd6d6;cursor:pointer;padding:0}.ap-swatch.active{box-shadow:0 0 0 2px #fff,0 0 0 4px #024450}.ap-width{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:1px solid #dbe3e3;border-radius:8px;background:#f2f4f4;cursor:pointer;padding:0}.ap-width:hover{background:#e6ecec}.ap-width.active{border-color:#024450;box-shadow:0 0 0 1px #024450}.ap-width-bar{width:18px;background:#024450;border-radius:2px}.anno-popover{position:absolute;z-index:40;display:flex;flex-direction:column;gap:6px;padding:8px 10px;background:var(--color-paper);border:1px solid #e8eded;border-radius:9px;box-shadow:0 1px 3px rgba(2,68,80,.06),0 8px 32px rgba(2,68,80,.12)}.anno-popover-row{display:flex;align-items:center;gap:6px}.anno-popover-grip{display:flex;align-items:center;justify-content:center;padding:0 4px;color:#8fa3a3;font-size:13px;line-height:1;cursor:grab;user-select:none;touch-action:none}.anno-popover-grip:active{cursor:grabbing}.anno-popover select{height:28px;border:1px solid #dbe2e2;border-radius:7px;background:var(--color-paper);color:#024450;font-size:12px;padding:0 4px;cursor:pointer}.toast-stack{position:fixed;left:16px;bottom:16px;z-index:60;display:flex;flex-direction:column-reverse;gap:8px;max-width:340px}.toast{display:flex;align-items:flex-start;gap:10px;padding:8px 12px;border-radius:8px;font-family:var(--font-body);font-size:13px;line-height:1.4;box-shadow:0 1px 3px #02445010,0 8px 32px #02445017;animation:toast-in .12s ease}.toast.closing{opacity:0;transform:translateY(4px);transition:opacity .12s ease,transform .12s ease}@keyframes toast-in{0%{opacity:0;transform:translateY(4px)}}.toast-danger{background:var(--color-danger-bg);border:1px solid var(--color-danger-border);color:var(--color-danger-text)}.toast-success{background:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--color-success-title)}.toast-x{border:none;background:transparent;color:inherit;font-size:14px;line-height:1;cursor:pointer;padding:2px 4px;border-radius:5px;margin-left:auto;flex:0 0 auto}.toast-x:hover{background:rgb(0 0 0/.06)}@media (prefers-reduced-motion:reduce){.toast{animation:none}.toast.closing{transition:none}}