:root{--c-n-0: light-dark(#ffffff, #1b1d22);--c-n-50: light-dark(#fbfbfc, #1f2228);--c-n-100: light-dark(#f4f5f6, #17191d);--c-n-200: light-dark(#e9eaec, #101216);--c-n-300: light-dark(#dcdee1, #2a2d33);--c-n-400: light-dark(#c3c6cb, #3b4048);--c-n-600: light-dark(#6b7078, #8b929c);--c-n-700: light-dark(#4d525a, #b6bcc6);--c-n-900: light-dark(#1d1f23, #e7e9ed);--c-accent: light-dark(#6b5bd2, #a394ff);--c-accent-soft: light-dark(#6b5bd214, #a394ff24);--c-danger: light-dark(#c4544b, #ef9d99);--c-warn: light-dark(#b8742a, #e0a45a);--c-ok: light-dark(#2f855a, #5cc98c);--c-hl: light-dark(#ffe58a, #6b5a1e);--c-code: light-dark(#0000000d, #ffffff12);--ui-surface: var(--c-n-0);--ui-surface-raised: var(--c-n-0);--ui-surface-sunken: var(--c-n-100);--ui-canvas: var(--c-n-200);--ui-text: var(--c-n-900);--ui-text-secondary: var(--c-n-700);--ui-text-tertiary: var(--c-n-600);--ui-border: var(--c-n-300);--ui-border-subtle: var(--c-n-200);--ui-sep: 1px;--ui-accent: var(--c-accent);--ui-accent-soft: var(--c-accent-soft);--ui-danger: var(--c-danger);--ui-warn: var(--c-warn);--ui-ok: var(--c-ok);--ui-hl: var(--c-hl);--ui-code-bg: var(--c-code);--ui-radius-lg: 10px;--ui-radius-md: 6px;--ui-radius-sm: 4px;--ui-radius-pill: 999px;--ui-shadow-low: 0 1px 2px light-dark(rgba(20, 22, 26, .06), rgba(0, 0, 0, .45)), 0 0 0 .5px light-dark(rgba(20, 22, 26, .04), rgba(255, 255, 255, .04));--ui-shadow-mid: 0 4px 14px light-dark(rgba(20, 22, 26, .08), rgba(0, 0, 0, .55));--ui-shadow-pop: 0 12px 36px light-dark(rgba(20, 22, 26, .14), rgba(0, 0, 0, .5));--ui-fs-2xs: 10.5px;--ui-fs-xs: 11.5px;--ui-fs-sm: 12.5px;--ui-fs-md: 13.5px;--ui-fs-lg: 15.5px;--ui-fs-xl: 19px;--ui-fs-2xl: 24px;--ui-lh-tight: 1.4;--ui-lh-normal: 1.65;--ui-lh-relaxed: 1.85;--ui-gap-1: 2px;--ui-gap-2: 4px;--ui-gap-3: 6px;--ui-gap-4: 10px;--ui-gap-5: 16px;--ui-gap-6: 24px;--ui-gap-7: 36px;--ui-row-h: 28px;--ui-pane-pad: 16px;--ui-doc-pad: 40px;--ui-doc-measure: 660px;--ui-gutter: 22px;--ui-dock-w-left: 236px;--ui-dock-w-right: 360px;--ui-dock-min: 180px;--ui-center-min: 480px;--ui-blk-gutter: 12px;--ui-line-h: 28px;--ui-editor-w: 760px;--ui-indent: 24px;--ui-marker-slot: 20px;--ui-bullet-size: 5px;--ui-caret-size: 11px;--ui-caret-out: 11px;--ui-rail-hit: 6px;--ui-rail: var(--ui-border-subtle);--ui-rail-hot: var(--ui-text-tertiary);--ui-marker-ring: 2px;--ui-marker-ring-size: 13px;--ui-font-body: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", system-ui, sans-serif;--ui-font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--ui-icon-sm: 12px;--ui-icon-md: 15px;--ui-icon-lg: 18px}body[data-density=compact]{--ui-row-h: 22px;--ui-fs-md: 13px;--ui-fs-lg: 14.5px;--ui-pane-pad: 12px;--ui-gap-5: 12px}body{color-scheme:light dark;--atom-hover: brightness(.96)}body[data-theme=light]{color-scheme:light}body[data-theme=dark]{color-scheme:dark;--atom-hover: brightness(1.2)}@media (prefers-color-scheme: dark){body:not([data-theme=light]){--atom-hover: brightness(1.2)}}*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%}body{margin:0;background:var(--ui-surface);color:var(--ui-text);font:var(--ui-fs-md) / var(--ui-lh-normal) var(--ui-font-body);-webkit-font-smoothing:antialiased;overflow:hidden}::selection{background:var(--ui-accent-soft)}button{font:inherit;color:inherit;background:transparent;border:0;cursor:pointer}.ico{display:block;flex:0 0 auto;inline-size:var(--ui-icon-md);block-size:var(--ui-icon-md)}.ico[data-size=sm]{inline-size:var(--ui-icon-sm);block-size:var(--ui-icon-sm)}.ico[data-size=lg]{inline-size:var(--ui-icon-lg);block-size:var(--ui-icon-lg)}button.ghost{padding:var(--ui-gap-2) var(--ui-gap-3);border-radius:var(--ui-radius-sm);color:var(--ui-text-secondary)}button.ghost:hover{background:var(--ui-accent-soft);color:var(--ui-text)}input{font:inherit;color:inherit}#app{display:grid;--dock-left-min: var(--ui-dock-min);--dock-right-min: var(--ui-dock-min);--dock-left-w: var(--ui-dock-w-left);--dock-right-w: var(--ui-dock-w-right);--dock-center-min: var(--ui-center-min);grid-template-columns:minmax(var(--dock-left-min),var(--dock-left-w)) minmax(var(--dock-center-min),1fr) minmax(var(--dock-right-min),var(--dock-right-w));height:100vh;overflow:hidden;background:var(--ui-surface)}body[data-dock-left=closed] #app{--dock-left-min: 0px;--dock-left-w: 0px}body[data-dock-right=closed] #app{--dock-right-min: 0px;--dock-right-w: 0px}@media (max-width: 839px){#app{--dock-center-min: 0px;--dock-left-w: var(--ui-dock-min);--dock-right-w: var(--ui-dock-min)}}body[data-dock-left=closed] #dock-left,body[data-dock-right=closed] #dock-right{visibility:hidden;overflow:hidden;border-left-width:0}.boot-notice{position:fixed;inset-block-start:var(--ui-gap-4);inset-inline:0;z-index:60;margin-inline:auto;inline-size:fit-content;max-inline-size:min(680px,calc(100vw - var(--ui-gap-6)));padding:var(--ui-gap-3) var(--ui-gap-4);border:1px solid var(--ui-warn);border-radius:var(--ui-radius-md);background:var(--ui-surface-raised);color:var(--ui-text);font-family:var(--ui-font-body);font-size:var(--ui-fs-sm);line-height:var(--ui-lh-normal);box-shadow:var(--ui-shadow-mid)}.dock{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--ui-surface);position:relative}.dock[data-dock=left],.dock[data-dock=right]{background:var(--ui-surface-sunken)}.dock+.dock{border-left:var(--ui-sep) solid var(--ui-border-subtle)}.dock-head{display:flex;align-items:center;gap:var(--ui-gap-3);height:42px;padding:0 var(--ui-gap-3) 0 var(--ui-gap-5);flex:0 0 auto}.dock-title{font-size:var(--ui-fs-sm);font-weight:600;color:var(--ui-text-secondary);letter-spacing:.02em}.dock-sp{flex:1}.dock-btn{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--ui-radius-sm);color:var(--ui-text-tertiary);font-size:var(--ui-fs-md);line-height:1}.dock-btn:hover{background:var(--ui-accent-soft);color:var(--ui-text)}.dock-stack{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.dock-card{background:var(--ui-surface-raised);border-radius:var(--ui-radius-md);box-shadow:var(--ui-shadow-low);margin:var(--ui-gap-3) var(--ui-gap-3) 0;overflow:hidden}.dock-card:last-child{margin-bottom:var(--ui-gap-3)}.dock-card-head{display:flex;align-items:center;gap:var(--ui-gap-2);padding:var(--ui-gap-3) var(--ui-gap-2) var(--ui-gap-2) var(--ui-gap-3);font-size:var(--ui-fs-2xs);letter-spacing:.02em;color:var(--ui-text-tertiary);font-weight:600;cursor:grab}.dock-card-head:active{cursor:grabbing}.dock-card-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dock-card-body{padding:0 var(--ui-gap-2) var(--ui-gap-3)}.dock-card-btn{width:20px;height:20px;flex:0 0 auto;font-size:var(--ui-fs-xs)}.dock-card-head [data-dock-action=close]{opacity:0}.dock-card:hover [data-dock-action=close],.dock-card-head [data-dock-action=close]:focus-visible{opacity:1}.dock-card[data-collapsed="1"]>.dock-card-body{display:none}.dock-stack[data-solo="1"]>.dock-card:not([data-solo-card="1"]){display:none}.dock-card[data-drop-before="1"]{box-shadow:inset 0 2px 0 var(--ui-accent)}.dock-card[data-drop-after="1"],.dock-stack[data-drop-end="1"]{box-shadow:inset 0 -2px 0 var(--ui-accent)}.dock-card[data-flash="1"]{box-shadow:0 0 0 2px var(--ui-accent)}.dock-window-editor{min-width:0}.block-list{display:flex;flex-direction:column;gap:1px}.dock-resize{position:absolute;top:0;bottom:0;width:var(--ui-gap-3);z-index:4;cursor:col-resize;touch-action:none}.dock-resize[data-resize-side=left]{right:0}.dock-resize[data-resize-side=right]{left:0}.dock-resize:hover,body[data-dock-resizing="1"] .dock-resize{background:var(--ui-accent-soft)}body[data-dock-left=closed] #dock-left .dock-resize,body[data-dock-right=closed] #dock-right .dock-resize{display:none}@media (max-width: 839px){.dock-resize{display:none}}body[data-dock-resizing="1"],body[data-dock-resizing="1"] *{cursor:col-resize;user-select:none}.dock[data-drop-pin="1"] .dock-stack{box-shadow:inset 0 0 0 2px var(--ui-accent)}.page-item{display:flex;align-items:center;gap:var(--ui-gap-3);height:var(--ui-row-h);padding:0 var(--ui-gap-3);border-radius:var(--ui-radius-sm);color:var(--ui-text-secondary);font-size:var(--ui-fs-sm);text-align:left;min-width:0;width:100%}.page-item:hover{background:var(--ui-accent-soft);color:var(--ui-text)}.page-item[data-active="1"]{background:var(--ui-accent-soft);color:var(--ui-text);font-weight:600}.page-item .p-ico{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:18px}.page-item .p-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-item .divider-rule{flex:1;height:var(--ui-sep);background:var(--ui-border)}.page-item .p-count{flex:0 0 auto;color:var(--ui-text-tertiary);font-size:var(--ui-fs-xs);font-family:var(--ui-font-mono)}button.ghost.wide{width:100%;text-align:left}.belongs-tabs{display:flex;gap:var(--ui-gap-2);padding:0 var(--ui-gap-3) var(--ui-gap-2)}.belongs-tab{appearance:none;border:none;background:none;padding:var(--ui-gap-1) var(--ui-gap-3);border-radius:var(--ui-radius-pill);font:inherit;font-size:var(--ui-fs-2xs);color:var(--ui-text-tertiary);cursor:pointer}.belongs-tab:hover{background:var(--ui-surface-sunken);color:var(--ui-text)}.belongs-tab[data-active="1"]{background:var(--ui-accent-soft);color:var(--ui-text);font-weight:600}.belongs-row{padding-inline-start:calc(var(--ui-indent) * var(--depth, 0))}.belongs-row[data-drop="1"]{background:var(--ui-accent-soft);border-radius:var(--ui-radius-sm)}#crumbs-trail{display:flex;align-items:center;flex-wrap:wrap;gap:var(--ui-gap-2);margin:calc(var(--ui-gap-3) * -1) 0 var(--ui-gap-4) var(--ui-blk-gutter);font-size:var(--ui-fs-sm);line-height:var(--ui-lh-tight);color:var(--ui-text-tertiary)}#crumbs-trail[hidden]{display:none}.crumb{max-width:24em;padding:var(--ui-gap-1) var(--ui-gap-2);border-radius:var(--ui-radius-sm);color:var(--ui-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crumb:hover{background:var(--ui-accent-soft);color:var(--ui-text)}.crumb-sep{color:var(--ui-text-tertiary);user-select:none}#scroll{flex:1;overflow:auto;padding:0 0 var(--ui-gap-7)}#doc{width:min(var(--ui-editor-w),100% - var(--ui-doc-pad) * 2);margin:0 auto;padding-top:var(--ui-gap-6)}#editor,#empty-hint{width:100%}#editor{outline:none}#editor .sec{display:contents}#doc:has(>#editor[data-layout=row]),#doc:has(>#editor[data-layout=grid]){width:calc(100% - var(--ui-doc-pad) * 2)}#editor[data-layout=row]{display:flex;align-items:flex-start;gap:var(--ui-gap-6);width:max-content;min-width:100%}#editor[data-layout=row]>.sec{display:block;flex:0 0 min(var(--ui-editor-w),80vw)}#editor[data-layout=grid]{display:grid;grid-template-columns:repeat(var(--sec-cols, 2),minmax(0,1fr));gap:var(--ui-gap-6)}#editor[data-layout=grid]>.sec{display:block;min-width:0}#editor[data-layout=row]:after,#editor[data-layout=grid]:after{display:none}#editor:after{content:"";display:block;min-height:var(--ui-gap-7);border-bottom:1px solid transparent;transition:border-color .12s ease}#editor:hover:after{border-bottom-color:var(--ui-border)}@media (prefers-reduced-motion: reduce){#editor:after{transition:none}}#empty-hint{margin-top:var(--ui-gap-5);color:var(--ui-text-tertiary);font-size:var(--ui-fs-sm);text-align:center}#empty-hint kbd{font-family:var(--ui-font-mono);padding:1px 5px;border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);font-size:var(--ui-fs-xs)}.blk{display:flex;align-items:flex-start;gap:var(--ui-gap-4);font-size:var(--ui-fs-md);line-height:var(--ui-lh-relaxed);padding-block:0;margin-block:0;min-height:var(--ui-line-h);padding-left:calc(var(--ui-blk-gutter) + var(--depth) * var(--ui-indent));position:relative}.blk[data-depth="0"]{font-size:var(--ui-fs-lg)}.blk[data-alias="1"]{flex-wrap:wrap;row-gap:var(--ui-gap-1)}.blk-alias{flex:0 0 100%;display:flex;align-items:center;gap:var(--ui-gap-2);min-width:0;font-size:var(--ui-fs-xs);line-height:var(--ui-lh-tight);color:var(--ui-text-secondary)}.blk-alias-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ui-text);font-weight:600;cursor:pointer}.blk-alias-name:hover{color:var(--ui-accent)}.blk-alias-btn{display:inline-flex;align-items:center;justify-content:center;padding:0 var(--ui-gap-1);border-radius:var(--ui-radius-sm);color:var(--ui-text-tertiary);opacity:.55}.blk-alias-btn:hover,.blk-alias-btn:focus-visible{color:var(--ui-text);background:var(--ui-accent-soft);opacity:1}.blk .left{flex:0 0 auto;display:flex;align-items:center;gap:1px;height:1lh;user-select:none;position:relative}.blk .rails{position:absolute;inset:0;pointer-events:none;overflow:hidden}.blk .rail{position:absolute;top:0;bottom:0;left:calc(var(--ui-blk-gutter) + var(--rail-depth) * var(--ui-indent) + var(--ui-marker-slot) / 2 - var(--ui-rail-hit) / 2);width:var(--ui-rail-hit);pointer-events:auto;cursor:pointer}.blk .rail:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;transform:translate(-.5px);background:var(--ui-rail);transition:width .12s ease,background-color .12s ease}.blk .rail:hover:before,.blk .rail.hot:before{width:2px;background:var(--ui-rail-hot)}.blk .rail-self{position:absolute;top:.5lh;bottom:0;left:calc(var(--ui-blk-gutter) + var(--depth) * var(--ui-indent) + var(--ui-marker-slot) / 2 - var(--ui-rail-hit) / 2);width:var(--ui-rail-hit);cursor:pointer}.blk .rail-self:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;transform:translate(-.5px);background:var(--ui-rail);transition:width .12s ease,background-color .12s ease}.blk .rail-self:hover:before,.blk .rail-self.hot:before{width:2px;background:var(--ui-rail-hot)}@media (prefers-reduced-motion: reduce){.blk .rail-self:before{transition:none}}.blk[data-collapsed="1"] .rail-self{display:none}@media (prefers-reduced-motion: reduce){.blk .rail:before{transition:none}}.blk .fold{position:absolute;left:calc(-1 * var(--ui-caret-out));width:var(--ui-caret-size);height:100%;display:inline-flex;align-items:center;justify-content:center;color:var(--ui-text-tertiary);font-size:var(--ui-fs-xs);cursor:pointer;opacity:0;transition:opacity .12s ease;z-index:1}.blk:hover .fold{opacity:.9}@media (prefers-reduced-motion: reduce){.blk .fold{transition:none}}.blk .fold .ico{transition:transform .12s ease}.blk[data-collapsed="1"] .fold .ico{transform:rotate(-90deg)}@media (prefers-reduced-motion: reduce){.blk .fold .ico{transition:none}}.blk .marker{position:relative;flex:0 0 auto;width:var(--ui-marker-slot);height:100%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border-radius:var(--ui-radius-pill);user-select:none;-webkit-user-select:none}.blk .marker:before{content:"";display:block;width:var(--ui-bullet-size);height:var(--ui-bullet-size);border-radius:var(--ui-radius-pill);background:var(--ui-text-tertiary);opacity:.6;transition:opacity .12s ease,transform .12s ease}.blk .marker:hover:before{opacity:0}.blk .marker .grip{position:absolute;display:inline-flex;align-items:center;justify-content:center;color:var(--ui-text-secondary);opacity:0;transition:opacity .12s ease;cursor:grab}.blk .marker:hover .grip{opacity:.85}@media (prefers-reduced-motion: reduce){.blk .marker:before,.blk .marker .grip{transition:none}}.blk[data-collapsed="1"] .marker:after{content:"";position:absolute;width:var(--ui-marker-ring-size);height:var(--ui-marker-ring-size);border-radius:var(--ui-radius-pill);border:var(--ui-marker-ring) solid var(--ui-text-tertiary)}.blk[data-collapsed="1"] .marker:hover:before{opacity:.6}.blk .identity{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;height:100%;color:var(--ui-text-tertiary);user-select:none;-webkit-user-select:none}.blk .identity .ico{inline-size:var(--ui-icon-sm);block-size:var(--ui-icon-sm)}.blk .identity.todo-box{cursor:pointer}.blk .identity.todo-box:hover{color:var(--ui-text-secondary)}.blk .identity.tag-mark{opacity:.8;cursor:default}.blk[data-todo=done] .tx{color:var(--ui-text-tertiary);text-decoration:line-through;text-decoration-color:var(--ui-text-tertiary)}.blk .tx{flex:1;min-width:0;white-space:pre-wrap;overflow-wrap:anywhere;outline:none}.blk .tx[data-ph]:before{content:attr(data-ph);color:var(--ui-text-tertiary);opacity:.75;pointer-events:none}.blk[data-caret="1"] .tx[data-ph]:before{content:none}.blk .tx[data-ph-readonly]:before{color:var(--ui-text-secondary);opacity:1}.blk .tx[data-readonly]{cursor:default;user-select:none}.blk .tx .divider-rule{display:block;height:var(--ui-sep);margin-block:calc((1lh - var(--ui-sep)) / 2);background:var(--ui-border)}.blk[data-type="core/divider"] .marker:before{opacity:0}.blk[data-type="core/divider"] .marker .grip{opacity:0}.blk[data-type="core/divider"] .marker:hover .grip{opacity:.85}.blk[data-depth="0"][data-role~=page] .tx,.blk[data-depth="0"][data-role~=journal] .tx{font-weight:600}[data-layout=column] .sec:not(:first-child)>.blk[data-depth="0"][data-role~=journal]{border-top:1px solid var(--ui-border-subtle)}.blk.drag-src{opacity:.35}.blk[data-drop=before]{box-shadow:inset 0 2px 0 0 var(--ui-accent)}.blk[data-drop=after]{box-shadow:inset 0 -2px 0 0 var(--ui-accent)}.blk[data-drop=inside]{outline:1px dashed var(--ui-accent);outline-offset:1px;border-radius:var(--ui-radius-sm)}#editor.dragging .blk .handle{opacity:.5}#editor.drop-end{box-shadow:inset 0 -2px 0 0 var(--ui-accent)}.properties-body{display:flex;flex-direction:column;gap:var(--ui-gap-2)}.props-empty{margin:0;font-size:var(--ui-fs-xs);color:var(--ui-text-tertiary)}.prop-row{display:flex;align-items:center;gap:var(--ui-gap-3);font-size:var(--ui-fs-sm)}.prop-label{display:flex;align-items:baseline;gap:var(--ui-gap-2);min-width:0;flex:1 1 40%;color:var(--ui-text)}.prop-source{font-size:var(--ui-fs-2xs);color:var(--ui-text-tertiary);white-space:nowrap}.prop-row[data-pending="1"] .prop-name{color:var(--ui-text-secondary)}.prop-system-value{flex-direction:column;gap:var(--ui-gap-1);font-size:var(--ui-fs-2xs);color:var(--ui-text-tertiary)}.prop-system-line{font-variant-numeric:tabular-nums;white-space:nowrap}.prop-value{flex:1 1 50%;display:flex}.prop-input{width:100%;font:inherit;font-size:var(--ui-fs-sm);color:var(--ui-text);background:var(--ui-surface-sunken);border:1px solid var(--ui-border-subtle);border-radius:var(--ui-radius-sm);padding:0 var(--ui-gap-2)}.prop-input:focus{outline:none;border-color:var(--ui-accent)}.props-tag-value{flex-wrap:wrap;align-items:center;gap:var(--ui-gap-1)}.props-tag{display:inline-flex;align-items:center;gap:2px;padding:0 4px;border-radius:var(--ui-radius-sm);background:var(--ui-accent-soft);color:var(--ui-accent);font-size:var(--ui-fs-xs);white-space:nowrap}.props-tag-x{background:none;border:0;padding:0;font:inherit;color:inherit;opacity:.6;cursor:pointer}.props-tag-x:hover{opacity:1}.props-tag-input{flex:1 1 60%;min-width:6em}.prop-check{accent-color:var(--ui-accent)}.prop-clear{background:none;border:0;padding:0 var(--ui-gap-1);font:inherit;color:var(--ui-text-tertiary);cursor:pointer;visibility:hidden}.prop-row:hover .prop-clear,.prop-row:focus-within .prop-clear{visibility:visible}.prop-clear:hover{color:var(--ui-text)}.props-form{display:flex;flex-wrap:wrap;align-items:center;gap:var(--ui-gap-2);padding-top:var(--ui-gap-2);border-top:1px dashed var(--ui-border-subtle)}.props-form .props-pick{flex:1 1 40%}.props-form button{font:inherit;font-size:var(--ui-fs-xs)}.props-new-group{flex:1 1 100%;display:flex;align-items:center;gap:var(--ui-gap-2)}.props-new-group[hidden]{display:none}.tagpanel{margin-top:var(--ui-gap-6);padding-top:var(--ui-gap-3);border-top:1px solid var(--ui-border-subtle)}.tagpanel[hidden]{display:none}.tagpanel-head{display:flex;align-items:center;gap:var(--ui-gap-3);margin-bottom:var(--ui-gap-2);font-size:var(--ui-fs-sm)}.tagpanel-title{font-weight:600;color:var(--ui-text)}.tagpanel-page{margin-left:auto;background:none;border:1px solid var(--ui-border-subtle);border-radius:var(--ui-radius-sm);padding:0 var(--ui-gap-2);font:inherit;font-size:var(--ui-fs-xs);color:var(--ui-text-secondary);cursor:pointer}.tagpanel-page:hover{color:var(--ui-text);border-color:var(--ui-border)}.tagpanel-count{color:var(--ui-text-tertiary)}.tagpanel-relations{display:flex;flex-direction:column;gap:var(--ui-gap-2);margin-bottom:var(--ui-gap-3);font-size:var(--ui-fs-sm)}.tagpanel-relation{display:flex;flex-wrap:wrap;align-items:center;gap:var(--ui-gap-2)}.tagpanel-relation-title{min-width:3em;font-size:var(--ui-fs-xs);color:var(--ui-text-tertiary)}.tagpanel-relation-empty{font-size:var(--ui-fs-xs);color:var(--ui-text-tertiary)}.tagpanel-chip{display:inline-flex;align-items:center;gap:var(--ui-gap-1);padding:0 var(--ui-gap-2);border:1px solid var(--ui-border-subtle);border-radius:var(--ui-radius-pill);color:var(--ui-text);font-size:var(--ui-fs-xs)}.tagpanel-chip-x{background:none;border:0;padding:0;font:inherit;color:var(--ui-text-tertiary);cursor:pointer}.tagpanel-chip-x:hover{color:var(--ui-text)}.tagpanel-action{font:inherit;font-size:var(--ui-fs-xs)}.tagpanel-add{display:flex;gap:var(--ui-gap-2);align-items:center}.tagpanel-add .prop-input{max-width:14em}.tagpanel-add button{font:inherit;font-size:var(--ui-fs-xs)}.tagpanel-members-title{margin:var(--ui-gap-3) 0 var(--ui-gap-1);font-size:var(--ui-fs-sm);font-weight:600;color:var(--ui-text)}.tagpanel-members-editor{min-height:var(--ui-line-h);outline:none}.backlinks{margin-top:var(--ui-gap-6);padding-top:var(--ui-gap-3);border-top:1px solid var(--ui-border-subtle)}.backlinks[hidden]{display:none}.backlinks-head{display:flex;align-items:center;gap:var(--ui-gap-3);margin-bottom:var(--ui-gap-2);font-size:var(--ui-fs-sm);color:var(--ui-text-secondary)}.backlinks-title{font-weight:600;color:var(--ui-text)}.backlinks-count{color:var(--ui-text-tertiary)}.backlinks-refresh{margin-left:auto;background:none;border:0;padding:0;font:inherit;color:var(--ui-text-secondary);cursor:pointer}.backlinks-refresh:hover{color:var(--ui-text)}.backlinks-editor{min-height:var(--ui-line-h);outline:none}.queryview{margin-top:var(--ui-gap-6);padding-top:var(--ui-gap-3);border-top:1px solid var(--ui-border-subtle)}.queryview[hidden]{display:none}.queryview-head{display:flex;align-items:center;gap:var(--ui-gap-3);margin-bottom:var(--ui-gap-2);font-size:var(--ui-fs-sm);color:var(--ui-text-secondary)}.queryview-title{font-weight:600;color:var(--ui-text)}.queryview-count{color:var(--ui-text-tertiary)}.queryview-stale{color:var(--ui-text-tertiary);font-size:var(--ui-fs-xs)}.queryview-stale[hidden]{display:none}.queryview-refresh{margin-left:auto;background:none;border:0;padding:0;font:inherit;color:var(--ui-text-secondary);cursor:pointer}.queryview-refresh:hover{color:var(--ui-text)}.queryview-refresh:disabled{cursor:default;color:var(--ui-text-tertiary)}.queryview-editor{min-height:var(--ui-line-h);outline:none}.queryview-editor[data-empty]:before{content:attr(data-empty-text);color:var(--ui-text-tertiary);font-size:var(--ui-fs-sm)}.ph{margin:var(--ui-gap-3) 0;border:1px dashed var(--ui-border);border-radius:var(--ui-radius-md);color:var(--ui-text-tertiary);font-size:var(--ui-fs-xs);font-family:var(--ui-font-mono);display:flex;align-items:center;justify-content:center}.mk-bold{font-weight:700}.mk-italic{font-style:italic}.mk-highlight{background:var(--ui-hl);border-radius:2px;padding:0 1px}.mk-code{font-family:var(--ui-font-mono);font-size:.92em;background:var(--ui-code-bg);border-radius:var(--ui-radius-sm);padding:0 4px}.tag{color:var(--ui-accent);background:var(--ui-accent-soft);border-radius:var(--ui-radius-sm);padding:0 4px}.atom{display:inline-flex;align-items:center;gap:4px;padding:0 7px;margin:0 2px;border-radius:var(--ui-radius-pill);background:var(--ui-accent-soft);color:var(--ui-accent);font-size:.93em;line-height:1.5;cursor:pointer;user-select:none;vertical-align:baseline;white-space:nowrap}.atom:hover{filter:var(--atom-hover)}.atom .atom-ico{display:inline-flex;align-items:center;vertical-align:-.14em;opacity:.7;font-size:.9em}.atom-image{padding:0 8px 0 3px}.atom-tag{padding:0 2px;margin:0;background:transparent;border-radius:var(--ui-radius-sm)}.atom-tag:hover{background:var(--ui-accent-soft)}.atom-obj{padding:0 5px;margin:0 1px;background:transparent;border:var(--ui-sep) solid var(--ui-border);border-radius:var(--ui-radius-pill)}.atom-obj:hover{background:var(--ui-accent-soft);border-color:transparent}.asset-thumb{display:block;height:1.35em;width:auto;border-radius:3px}.atom.dangling{background:transparent;border:1px dashed var(--ui-accent);opacity:.85}.atom.missing{background:var(--ui-danger);color:var(--ui-danger)}.atom.missing .asset-thumb{filter:grayscale(1) contrast(.6);opacity:.5}.blk-tags{flex:0 0 auto;align-self:flex-start;display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:var(--ui-gap-1);max-width:40%;margin-inline-start:var(--ui-gap-2);line-height:var(--ui-lh-relaxed);user-select:none;-webkit-user-select:none}.tag-chip{display:inline-flex;align-items:center;padding:0 5px;border-radius:var(--ui-radius-sm);background:var(--ui-accent-soft);color:var(--ui-accent);opacity:.8;font-size:.93em;line-height:1.5;vertical-align:baseline;white-space:nowrap;user-select:none;-webkit-user-select:none}.blk[data-blocksel="1"]{background:var(--ui-accent-soft);border-radius:var(--ui-radius-sm, 4px)}.blocksel-drag,.blocksel-drag .tx{user-select:none}.sec[data-shell]{min-height:100%}.sec[data-shell] .shell-row .tx[data-ph]:before{opacity:.7}.sec[data-shell] .shell-row{cursor:text;border-radius:var(--ui-radius-sm)}.sec[data-shell]:hover .shell-row{background:var(--ui-bg-hover, var(--ui-bg-soft))}.layer{position:fixed;z-index:60;background:var(--ui-surface-raised);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);box-shadow:var(--ui-shadow-pop);overflow:hidden}.layer-head{padding:var(--ui-gap-3) var(--ui-gap-4);border-bottom:1px solid var(--ui-border);color:var(--ui-text-tertiary);font-size:var(--ui-fs-xs);letter-spacing:.02em}.layer-input{width:100%;border:0;border-bottom:1px solid var(--ui-border);padding:var(--ui-gap-4);background:transparent;outline:none}.layer-list{max-height:44vh;overflow:auto;padding:var(--ui-gap-2)}.layer-group{padding:var(--ui-gap-3) var(--ui-gap-3) var(--ui-gap-1);color:var(--ui-text-tertiary);font-size:var(--ui-fs-xs);letter-spacing:.06em}.layer-item{display:flex;align-items:center;gap:var(--ui-gap-3);width:100%;padding:var(--ui-gap-3) var(--ui-gap-3);border-radius:var(--ui-radius-sm);text-align:left;color:var(--ui-text)}.layer-item[data-active="1"]{background:var(--ui-accent-soft)}.layer-item[disabled]{opacity:.45;cursor:default}.layer-ico{width:18px;display:inline-flex;align-items:center;justify-content:center;color:var(--ui-text-tertiary);font-family:var(--ui-font-mono);font-size:var(--ui-fs-sm)}.layer-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layer-hint{flex:0 1 auto;color:var(--ui-text-tertiary);font-size:var(--ui-fs-xs);font-family:var(--ui-font-mono);max-width:58%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.75}.layer-key{flex:0 0 auto;color:var(--ui-text-secondary);font-size:var(--ui-fs-xs);font-family:var(--ui-font-mono)}.layer-empty{padding:var(--ui-gap-5);text-align:center;color:var(--ui-text-tertiary);font-size:var(--ui-fs-sm)}.selbar{position:fixed;z-index:72;display:flex;align-items:center;gap:var(--ui-gap-1);padding:var(--ui-gap-1);background:var(--ui-surface-raised);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);box-shadow:var(--ui-shadow-mid)}.selbar .sel-btn{min-width:28px;height:26px;display:inline-flex;align-items:center;justify-content:center;padding:0 var(--ui-gap-3);border-radius:var(--ui-radius-sm);color:var(--ui-text-secondary);font-size:var(--ui-fs-sm);line-height:1}.selbar .sel-btn:hover{background:var(--ui-accent-soft);color:var(--ui-text)}.selbar .sel-btn[data-on="1"]{background:var(--ui-accent-soft);color:var(--ui-accent)}.selbar .sel-sep{width:var(--ui-sep);height:16px;margin:0 var(--ui-gap-1);background:var(--ui-border)}.popover{position:fixed;z-index:70;min-width:240px;max-width:380px;background:var(--ui-surface-raised);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);box-shadow:var(--ui-shadow-pop);padding:var(--ui-gap-4);font-size:var(--ui-fs-sm)}.popover h4{margin:0 0 var(--ui-gap-3);font-size:var(--ui-fs-sm);display:flex;align-items:center;gap:var(--ui-gap-2)}.popover dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:var(--ui-gap-1) var(--ui-gap-4)}.popover dt{color:var(--ui-text-tertiary)}.popover dd{margin:0;font-family:var(--ui-font-mono);font-size:var(--ui-fs-xs);overflow-wrap:anywhere}.popover .popover-note{margin-top:var(--ui-gap-2);color:var(--ui-text-tertiary)}.popover .row{display:flex;gap:var(--ui-gap-2);margin-top:var(--ui-gap-4)}.popover-fields{display:flex;flex-direction:column;gap:var(--ui-gap-2);margin-top:var(--ui-gap-2);max-height:46vh;overflow:auto}.popover.popover-obj{min-width:300px;max-width:420px}.popover-fields .prop-clear{visibility:visible;border:0;padding:0 var(--ui-gap-1)}.popover-fields .prop-ref{text-align:start;padding:0 var(--ui-gap-2)}.popover button{border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);padding:var(--ui-gap-2) var(--ui-gap-4);color:var(--ui-text-secondary)}.popover button:hover{background:var(--ui-accent-soft);color:var(--ui-text)}.alias-head{display:flex;align-items:baseline;gap:var(--ui-gap-3);margin-bottom:var(--ui-gap-3)}.alias-leaf{font-size:var(--ui-fs-lg);font-weight:600;overflow-wrap:anywhere}.alias-full{color:var(--ui-text-tertiary);font-size:var(--ui-fs-xs);overflow-wrap:anywhere}.alias-section{margin-top:var(--ui-gap-4)}.alias-section-title{color:var(--ui-text-tertiary);font-size:var(--ui-fs-xs);margin-bottom:var(--ui-gap-2)}.alias-row{display:flex;align-items:center;gap:var(--ui-gap-2);padding:var(--ui-gap-1) 0}.alias-row[data-primary="1"] .alias-label{font-weight:600}.alias-primary{min-width:var(--ui-gap-5);padding:0;border:0;color:var(--ui-text-tertiary);font-size:var(--ui-fs-sm);line-height:1}.alias-primary[data-active="1"]{color:var(--ui-accent);cursor:default}.alias-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:anywhere}.alias-del,.fields-remove{padding:0 var(--ui-gap-1);border:0;color:var(--ui-text-tertiary)}.alias-del:disabled{opacity:.35;cursor:not-allowed}.alias-add{display:flex;gap:var(--ui-gap-2);margin-top:var(--ui-gap-2)}.alias-input{flex:1;min-width:0;padding:var(--ui-gap-2) var(--ui-gap-3);border:var(--ui-sep) solid var(--ui-border);border-radius:var(--ui-radius-sm);background:var(--ui-surface);outline:none}.alias-input:focus{border-color:var(--ui-accent)}.alias-add-btn{padding:var(--ui-gap-2) var(--ui-gap-3);border:var(--ui-sep) solid var(--ui-border);border-radius:var(--ui-radius-sm);color:var(--ui-text-secondary)}.alias-check{display:flex;align-items:center;gap:var(--ui-gap-2);padding:var(--ui-gap-1) 0;color:var(--ui-text-secondary)}.alias-display{display:flex;gap:var(--ui-gap-2)}.alias-display button{padding:var(--ui-gap-2) var(--ui-gap-3);border:var(--ui-sep) solid var(--ui-border);border-radius:var(--ui-radius-sm);color:var(--ui-text-secondary)}.alias-display button[data-active="1"]{background:var(--ui-accent-soft);border-color:var(--ui-accent);color:var(--ui-accent)}.fields-section{margin-bottom:var(--ui-gap-5)}.fields-section-title{color:var(--ui-text-tertiary);font-size:var(--ui-fs-xs);margin-bottom:var(--ui-gap-2)}.fields-row{display:flex;align-items:center;gap:var(--ui-gap-3);padding:var(--ui-gap-2) 0;border-bottom:var(--ui-sep) solid var(--ui-border-subtle)}.fields-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fields-kind{color:var(--ui-text-tertiary);font-size:var(--ui-fs-xs)}.fields-add{padding:var(--ui-gap-1) var(--ui-gap-3);border:var(--ui-sep) solid var(--ui-border);border-radius:var(--ui-radius-sm);color:var(--ui-text-secondary)}.fields-add:disabled{opacity:.4;cursor:not-allowed}.fields-hint{margin:0 0 var(--ui-gap-2);color:var(--ui-text-tertiary);font-size:var(--ui-fs-xs)}.drawer{position:fixed;top:0;right:0;bottom:0;z-index:65;width:min(520px,100%);display:flex;flex-direction:column;background:var(--ui-surface-raised);border-left:1px solid var(--ui-border);box-shadow:var(--ui-shadow-pop)}.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:var(--ui-gap-4) var(--ui-gap-5);border-bottom:1px solid var(--ui-border);font-weight:600;font-size:var(--ui-fs-sm)}.drawer-body{flex:1;overflow:auto;padding:var(--ui-gap-5);font-size:var(--ui-fs-sm)}.drawer-body h5{margin:var(--ui-gap-5) 0 var(--ui-gap-3);font-size:var(--ui-fs-xs);color:var(--ui-text-tertiary);letter-spacing:.06em}.drawer-body h5:first-child{margin-top:0}.drawer-body table{width:100%;border-collapse:collapse;font-size:var(--ui-fs-xs)}.drawer-body td,.drawer-body th{text-align:left;padding:var(--ui-gap-2) var(--ui-gap-3);border-bottom:1px solid var(--ui-border);vertical-align:top}.drawer-body th{color:var(--ui-text-tertiary);font-weight:500}.drawer-body .mono{font-family:var(--ui-font-mono)}.drawer-body .kv{display:grid;grid-template-columns:190px 1fr;gap:var(--ui-gap-1) var(--ui-gap-4);font-family:var(--ui-font-mono);font-size:var(--ui-fs-xs)}.drawer-body .kv .k{color:var(--ui-accent)}.drawer-body pre{background:var(--ui-surface-sunken);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);padding:var(--ui-gap-4);overflow:auto;max-height:46vh;font-size:var(--ui-fs-xs)}.toasts{position:fixed;left:50%;bottom:var(--ui-gap-6);transform:translate(-50%);z-index:80;display:flex;flex-direction:column;gap:var(--ui-gap-2);align-items:center;pointer-events:none}.toast{background:var(--ui-surface-raised);border:1px solid var(--ui-border);border-radius:var(--ui-radius-pill);padding:var(--ui-gap-3) var(--ui-gap-5);box-shadow:var(--ui-shadow-pop);font-size:var(--ui-fs-sm);opacity:1;transition:opacity .4s ease,transform .4s ease}.toast-ok{border-color:var(--ui-ok)}.toast-warn{border-color:var(--ui-warn)}.toast.out{opacity:0;transform:translateY(6px)}.dnd-hint{position:fixed;z-index:85;pointer-events:none;max-width:260px;padding:var(--ui-gap-2) var(--ui-gap-3);border-radius:var(--ui-radius-sm);background:var(--ui-surface-raised);border:1px solid var(--ui-border);box-shadow:var(--ui-shadow-mid);color:var(--ui-text);font-size:var(--ui-fs-xs);line-height:var(--ui-lh-tight);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#state-menu-btn{position:fixed;right:var(--ui-gap-4);bottom:calc(var(--ui-gap-4) + 30px);z-index:55;padding:var(--ui-gap-2) var(--ui-gap-4);background:var(--ui-surface-raised);border:1px solid var(--ui-border);border-radius:var(--ui-radius-pill);box-shadow:var(--ui-shadow-pop);font-size:var(--ui-fs-xs);color:var(--ui-text-secondary)}#state-menu-btn:hover{background:var(--ui-accent-soft);color:var(--ui-text)}#badge{position:fixed;right:var(--ui-gap-4);bottom:var(--ui-gap-4);z-index:55;display:flex;gap:var(--ui-gap-3);align-items:center;padding:var(--ui-gap-2) var(--ui-gap-4);background:var(--ui-surface-raised);border:1px solid var(--ui-border);border-radius:var(--ui-radius-pill);box-shadow:var(--ui-shadow-pop);font-family:var(--ui-font-mono);font-size:var(--ui-fs-xs);color:var(--ui-text-secondary);cursor:pointer}#badge b{color:var(--ui-text);font-weight:600}#badge .dot{width:7px;height:7px;border-radius:var(--ui-radius-pill);background:var(--ui-text-tertiary)}#badge[data-composing="1"] .dot{background:var(--ui-warn);box-shadow:0 0 0 4px var(--ui-accent-soft)}#badge[data-composing="0"] .dot{background:var(--ui-ok)}#badge-panel{position:fixed;right:var(--ui-gap-4);bottom:44px;z-index:56;width:min(460px,calc(100vw - 24px));max-height:62vh;overflow:auto;background:var(--ui-surface-raised);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);box-shadow:var(--ui-shadow-pop);padding:var(--ui-gap-5);font-size:var(--ui-fs-xs)}#badge-panel .kv{display:grid;grid-template-columns:150px 1fr;gap:var(--ui-gap-1) var(--ui-gap-3);font-family:var(--ui-font-mono)}#badge-panel .kv .k{color:var(--ui-accent)}#badge-panel h5{margin:var(--ui-gap-4) 0 var(--ui-gap-2);color:var(--ui-text-tertiary);letter-spacing:.06em}#badge-panel .hit{font-family:var(--ui-font-mono);color:var(--ui-text-secondary);border-left:2px solid var(--ui-accent);padding-left:var(--ui-gap-3);margin-bottom:var(--ui-gap-2);overflow-wrap:anywhere}
