:root{color:#282721;background:#f5f2eb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;--ink: #282721;--muted: #6f6b61;--line: #d9d4c8;--soft-line: #e9e5dc;--paper: #fffefa;--paper-2: #faf8f3;--navy: #24324a;--navy-2: #344968;--blue: #236b9f;--green: #21704a;--amber: #9a6818;--red: #a43a37;--shadow: 0 12px 34px rgb(42 36 26 / 8%)}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px}button,input,select,textarea{font:inherit}button,[role=button]{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #65a8d4;outline-offset:2px}a{color:var(--blue)}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:#24231f;letter-spacing:-.025em}code,pre,textarea{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace}.eyebrow{margin:0 0 .35rem;color:var(--muted);font-size:.72rem;font-weight:750;letter-spacing:.14em;text-transform:uppercase}.brand-mark{display:inline-grid;width:2rem;height:2rem;place-items:center;border-radius:.45rem;color:#fff;background:var(--navy);font:700 1.35rem/1 Georgia,serif;box-shadow:inset 0 0 0 1px #ffffff29}.button,.toolbar-button,.small-button,.text-button,.icon-button{border:0;border-radius:.45rem;cursor:pointer;font-weight:650}.button{display:inline-flex;min-height:2.6rem;align-items:center;justify-content:center;padding:.65rem 1rem;text-decoration:none}.button.primary{color:#fff;background:var(--navy);box-shadow:0 4px 12px #24324a29}.button.primary:hover{background:var(--navy-2)}.button.secondary{color:var(--ink);border:1px solid var(--line);background:#fff}.button.import-resource-button{color:#173b5b;border-color:#6f91ae;background:#e1edf6;box-shadow:0 2px 8px #24324a1f}.button.import-resource-button:hover{background:#cfdfec}.button.danger{color:#fff;background:var(--red)}.button.compact{min-height:2rem;padding:.38rem .7rem;font-size:.82rem}.button[disabled],.toolbar-button[disabled],.small-button[disabled],.icon-button[disabled]{cursor:not-allowed;opacity:.45}.toolbar-button,.small-button{color:#4f4b43;border:1px solid var(--line);background:#fff}.toolbar-button{padding:.42rem .68rem;font-size:.8rem}.small-button{padding:.25rem .45rem;font-size:.7rem}.toolbar-button:hover,.small-button:hover{color:var(--navy);border-color:#aeb8c7;background:#f8fafc}.text-button{padding:.35rem .5rem;color:var(--blue);background:transparent}.text-button:hover{background:#edf5fa}.danger,.text-button.danger,.icon-button.danger,.small-button.danger{color:var(--red)}.icon-button{display:inline-grid;width:2rem;height:2rem;place-items:center;color:#5a564f;border:1px solid transparent;background:transparent}.icon-button:hover{border-color:var(--line);background:#f5f3ee}.notice,.document-notice{border:1px solid #c9d7e4;background:#edf5fa;color:#274c69}.notice{margin:1rem 0;padding:.8rem 1rem;border-radius:.5rem}.notice.error{border-color:#e2b6b4;background:#fff0ef;color:#7e2825}.notice.warning{border-color:#e4cca3;background:#fff7e8;color:#76501a}.notice ul{margin-bottom:0}.library-page{width:min(1180px,calc(100% - 2rem));margin:0 auto;padding:2.3rem 0}.library-hero{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.8rem 2rem;color:#eceff4;border-radius:.9rem;background:linear-gradient(128deg,#1f2a3e,#31496a);box-shadow:var(--shadow)}.library-hero h1{display:flex;align-items:center;gap:.65rem;margin:0 0 .55rem;color:#fff;font-size:2rem}.library-hero p:last-child{max-width:42rem;margin:0;color:#ccd5e2}.library-hero .eyebrow{color:#9fb3cb}.hero-actions{display:flex;flex-wrap:wrap;gap:.6rem}.library-hero .hero-actions .secondary{color:#fff;border-color:#ffffff4d;background:#ffffff17}.file-picker{position:relative;overflow:hidden;cursor:pointer}.file-picker input{position:absolute;inline-size:1px;block-size:1px;opacity:0}.library-panel{margin-top:1.5rem;padding:1.5rem;border:1px solid var(--line);border-radius:.75rem;background:var(--paper);box-shadow:var(--shadow)}.panel-heading,.root-heading,.section-heading,.validation-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.panel-heading h2,.section-heading h2{margin:0}.library-filters{display:flex;align-items:flex-end;gap:.7rem}.library-filters label{display:grid;gap:.25rem;color:var(--muted);font-size:.75rem;font-weight:650}input,select,textarea{width:100%;padding:.58rem .65rem;color:var(--ink);border:1px solid #cfc9bc;border-radius:.4rem;background:#fff}input[type=checkbox],input[type=radio]{width:auto;height:auto;min-width:0;flex-shrink:0;margin:0;padding:0;cursor:pointer;accent-color:var(--navy)}.library-filters input{width:13rem}.library-filters select{width:9rem}.empty-state{display:grid;min-height:18rem;place-items:center;align-content:center;text-align:center;color:var(--muted)}.empty-state h3{margin:.9rem 0 .25rem}.empty-state p{max-width:32rem}.empty-glyph{display:grid;width:4rem;height:4rem;place-items:center;color:#7f8c9d;border:1px dashed #aab4c0;border-radius:50%;background:#f4f7fa;font:700 1rem monospace}.file-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;margin-top:1.2rem}.file-card{overflow:hidden;border:1px solid var(--soft-line);border-radius:.65rem;background:#fff;transition:transform .15s,box-shadow .15s}.file-card:hover{transform:translateY(-2px);box-shadow:0 10px 22px #2a241a17}.file-open{display:flex;width:100%;align-items:center;gap:.8rem;padding:1rem;text-align:left;border:0;background:transparent;cursor:pointer}.file-open span:last-child{display:grid;gap:.2rem;min-width:0}.file-open strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-open small,.file-meta{color:var(--muted)}.xml-badge{display:grid;width:2.7rem;height:2.7rem;place-items:center;flex:none;color:#fff;border-radius:.45rem;background:#4b6d91;font-size:.68rem;font-weight:800;letter-spacing:.08em}.file-meta{display:flex;flex-wrap:wrap;gap:.4rem;padding:0 1rem .8rem;font-size:.7rem}.status{padding:.12rem .35rem;border-radius:1rem;background:#efede8}.status.valid{color:var(--green);background:#e9f5ef}.status.invalid{color:var(--red);background:#faeceb}.status.warning{color:var(--amber);background:#fff3db}.status-button{border:0;cursor:pointer;font:inherit}.card-actions{display:flex;padding:.4rem .6rem;border-top:1px solid var(--soft-line)}.library-footer{display:flex;justify-content:space-between;padding:1rem .25rem;color:var(--muted);font-size:.75rem}.modal-overlay{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:1rem;background:#11182385;backdrop-filter:blur(3px)}.modal{width:min(720px,100%);max-height:calc(100vh - 2rem);overflow:auto;border-radius:.75rem;background:var(--paper);box-shadow:0 24px 70px #00000047}.modal.preview-modal{width:min(1024px,100%)}.dialog{padding:1.25rem;outline:none}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.dialog-heading h2{margin:0;font-size:1.35rem}.field{display:grid;gap:.35rem;margin-bottom:.85rem;color:#4d4941;font-size:.8rem;font-weight:700}.help{color:var(--muted);font-size:.78rem;line-height:1.5}.dialog-actions{display:flex;justify-content:flex-end;gap:.55rem;margin-top:1rem}.leave-actions{display:grid;gap:.55rem}.review-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}.review-summary div{padding:.7rem;border-radius:.4rem;background:#f2f0ea}.review-summary dt{color:var(--muted);font-size:.68rem;text-transform:uppercase}.review-summary dd{margin:.25rem 0 0;font-weight:700}.resource-id-review{display:grid;gap:.5rem}.resource-id-review label{display:grid;grid-template-columns:1fr 2fr;align-items:center;gap:.8rem}fieldset{display:flex;flex-direction:column;gap:.6rem;margin-top:1rem;padding:.8rem 1rem;border:1px solid var(--line);border-radius:.45rem}fieldset legend{padding:0 .35rem;font-weight:700;color:var(--ink)}fieldset label{display:flex;align-items:center;justify-content:flex-start;gap:.6rem;width:max-content;max-width:100%;cursor:pointer}fieldset label span{white-space:nowrap;font-size:.88rem;color:var(--ink)}.library-panel.drag-over{border-color:var(--navy);background:#f0f7ff;box-shadow:0 0 0 2px var(--navy)}.document-page{height:100vh;height:100dvh;display:flex;min-height:0;flex-direction:column;overflow:hidden}.app-bar{position:sticky;z-index:40;top:0;display:flex;min-height:3.45rem;align-items:center;gap:1rem;padding:.45rem .8rem;color:#eef2f7;border-bottom:1px solid #111c2c;background:#202c40;box-shadow:0 3px 12px #0000001f;flex:none}.brand-button{display:flex;align-items:center;gap:.45rem;color:#fff;border:0;background:transparent;font-weight:750;cursor:pointer}.brand-button .brand-mark{width:1.85rem;height:1.85rem;background:#3c5476}.app-breadcrumb{display:flex;min-width:0;align-items:center;gap:.35rem;color:#c8d2df;font-size:.8rem}.app-breadcrumb button{color:#dce5ef;border:0;background:transparent;cursor:pointer;font-size:1.05rem}.app-breadcrumb .breadcrumb-file{max-width:15rem;padding:.42rem .3rem;overflow:hidden;color:#fff;text-overflow:ellipsis;white-space:nowrap;border-radius:.3rem;font-size:.8rem;font-weight:750}.app-breadcrumb .breadcrumb-file:hover,.app-breadcrumb .breadcrumb-file:focus-visible{background:#ffffff1f}.app-breadcrumb strong{max-width:25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-actions{display:flex;min-width:0;align-items:center;gap:.35rem;margin-left:auto}.app-actions .toolbar-button{color:#dce4ee;border-color:#526179;background:#2b3a51}.app-actions .topbar-icon-button{width:2rem;height:2rem;padding:0}.save-state{margin-right:.3rem;font-size:.72rem;white-space:nowrap}.save-state:before{content:"";display:inline-block;width:.48rem;height:.48rem;margin-right:.35rem;border-radius:50%;background:currentColor}.save-state.valid{color:#91d1ad}.save-state.warning{color:#f0c878}.save-state.invalid{color:#ff9a95}.document-notice{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.45rem .8rem;font-size:.78rem}.document-notice.error{border-color:#e2b6b4;background:#fff0ef;color:#7e2825}.document-notice.error button{color:inherit}.document-notice button{border:0;background:transparent;cursor:pointer}.conflict-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0;border-radius:0}.root-view{width:min(1000px,calc(100% - 2rem));min-height:0;flex:1;margin:0 auto;padding:2rem 0;overflow:auto}.root-heading h1{margin-bottom:.35rem}.root-heading p:last-child{color:var(--muted)}.document-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:1.5rem 0;overflow:hidden;border:1px solid var(--line);border-radius:.6rem;background:var(--line)}.document-summary span{display:grid;gap:.2rem;padding:1rem;background:var(--paper)}.document-summary small{color:var(--muted)}.document-summary span.summary-action{padding:0}.summary-button{display:grid;gap:.2rem;width:100%;padding:1rem;border:0;border-radius:0;font:inherit;color:inherit;text-align:left;background:transparent;cursor:pointer}.summary-button:hover,.summary-button[data-hovered]{background:var(--paper-2)}.summary-button[data-focus-visible]{outline:2px solid var(--blue);outline-offset:-2px}.indent-dialog{display:grid;gap:.9rem}.indent-dialog input,.indent-dialog select{width:8rem}.resource-list{padding:1.2rem;border:1px solid var(--line);border-radius:.7rem;background:var(--paper);box-shadow:var(--shadow)}.section-heading{margin-bottom:1rem}.resource-card{display:flex;align-items:center;gap:.5rem;margin-top:.55rem;padding-left:.5rem;border:1px solid var(--soft-line);border-radius:.5rem;background:#fff;transition:border-color .15s,opacity .15s}.resource-card.dragging{opacity:.4;border-style:dashed}.resource-card.fixed{background:#f8f7f2}.resource-drag-handle{display:flex;align-items:center;justify-content:center;width:1.25rem;color:#8c9ba5;font-size:1.1rem;letter-spacing:-2px;opacity:0;cursor:grab;user-select:none;transition:opacity .15s ease-in-out}.resource-drag-handle.placeholder{visibility:hidden}.resource-card:hover .resource-drag-handle{opacity:1}.resource-card-main{display:grid;grid-template-columns:auto minmax(8rem,11rem) minmax(10rem,14rem) 1fr;align-items:center;gap:.75rem;min-width:0;flex:1;padding:.8rem .5rem;text-align:left;border:0;background:transparent;cursor:pointer}.resource-card-main svg{width:1.15rem;color:#58708c}.resource-tag-col{display:flex;flex-direction:column;gap:.15rem}.resource-id-col code{padding:.2rem .5rem;border-radius:.3rem;background:#eef3f8;color:#1b3854;font-family:monospace;font-size:.85rem;font-weight:600}.resource-meta-col small{color:var(--muted)}.validation-verdict{display:flex;align-items:center;gap:.35rem}.validation-verdict svg{width:.95rem}.validation-verdict.valid{color:var(--green)}.validation-verdict.invalid{color:var(--red)}.resource-meta-col .resource-error-count{color:var(--red);font-weight:600}.resource-actions{display:flex;padding-right:.5rem}.lock-badge{margin-right:.8rem;color:var(--muted);font-size:.7rem}.resource-editor{display:flex;min-height:0;flex:1;flex-direction:column;overflow:hidden}.resource-toolbar{position:sticky;z-index:30;top:0;display:flex;min-height:2.85rem;align-items:center;justify-content:space-between;gap:1rem;padding:.4rem .8rem;border-bottom:1px solid var(--line);background:var(--paper)}.resource-toolbar>div{display:flex;align-items:center;gap:.45rem}.resource-identity-button{display:flex;align-items:center;gap:.45rem;padding:.22rem;color:inherit;border:1px solid transparent;border-radius:.4rem;background:transparent;cursor:pointer}.resource-identity-button:hover,.resource-identity-button:focus-visible,.resource-identity-button.selected{border-color:#9ab5ca;background:#edf5fa}.resource-type{padding:.2rem .4rem;color:#375779;border-radius:.3rem;background:#e9f0f6;font:700 .72rem monospace}.resource-toolbar-actions{display:flex;gap:.35rem}.editor-workspace{display:grid;min-height:0;flex:1;grid-template-columns:var(--tree-width, 240px) 4px minmax(420px,1fr) 4px var(--inspector-width, 310px);overflow:hidden}.resource-editor .editor-workspace{grid-template-columns:minmax(0,1fr) 4px var(--inspector-width, 310px)}.tree-panel,.right-panel{min-height:0;background:var(--paper-2)}.tree-panel{border-right:1px solid var(--line)}.right-panel{position:sticky;top:0;height:100%;display:flex;min-width:0;flex-direction:column;align-self:start;overflow:hidden;border-left:1px solid var(--line)}.right-panel-tabs{display:grid;flex:none;grid-template-columns:repeat(2,1fr);border-bottom:1px solid var(--line);background:#f0eee8}.right-panel-tabs button{padding:.7rem .5rem .58rem;color:#6a665e;border:0;border-bottom:3px solid transparent;background:transparent;cursor:pointer;font-size:.76rem;font-weight:750}.right-panel-tabs button:hover{color:#244a68;background:#f7f6f2}.right-panel-tabs button[aria-selected=true]{color:#173b5b;border-bottom-color:#3978a6;background:var(--paper-2)}.right-panel-content{min-height:0;flex:1;overflow:auto}.panel-resizer{position:relative;z-index:2;cursor:col-resize;background:#d9d4c8}.panel-resizer:hover,.panel-resizer:focus-visible{background:#6a9ec4}.panel-title{display:flex;height:2.35rem;align-items:center;justify-content:space-between;padding:0 .7rem;color:#4e4a43;border-bottom:1px solid var(--line);background:#f0eee8;font-size:.72rem;font-weight:750;text-transform:uppercase;letter-spacing:.06em}.panel-title small{color:var(--muted);font-weight:500}.tree-scroll{height:calc(100vh - 11rem);overflow:auto}.virtual-list{position:relative;min-width:100%}.tree-row{position:absolute;top:0;left:0;display:flex;width:100%;height:34px;align-items:center;gap:.38rem;padding:0 .4rem;overflow:hidden;color:#48453f;text-align:left;border:0;border-bottom:1px solid #ebe8e1;background:transparent;cursor:pointer;font-size:.75rem}.tree-row:hover{background:#eceff2}.tree-row.selected{color:#173b5b;background:#dce9f3;box-shadow:inset 3px 0 #3978a6}.tree-row svg{width:.8rem;flex:none;color:#66798b}.tree-row small{overflow:hidden;color:var(--muted);text-overflow:ellipsis}.tree-disclosure{width:.6rem;color:#8b877e}.has-attributes{font-weight:800}.attribute-dot{margin-left:auto;color:#8a6f32;font-size:.55rem}.error-dot{display:grid;width:1rem;height:1rem;place-items:center;color:#fff;border-radius:50%;background:var(--red);font-size:.65rem;font-weight:800}.text-run-prosemirror{min-height:1.25rem;outline:none;white-space:pre-wrap}.editing-tools{position:sticky;z-index:29;top:2.85rem;border-bottom:1px solid #cbd7e0;background:#f7fafc}.editing-tool-buttons{position:relative;display:flex;min-height:2.8rem;align-items:center;justify-content:center;gap:.35rem;padding:.35rem .75rem}.editing-tool-section{display:flex;align-items:center;gap:.35rem}.editing-tool-note-section{margin-left:.65rem;padding-left:1rem;border-left:1px solid #c7d1da}.editing-tool-button{display:grid;width:2.15rem;height:2.15rem;place-items:center;color:#526a7f;border:1px solid #c7d1da;border-radius:.42rem;background:#fff;cursor:pointer;font-size:1rem}.editing-tool-button:hover,.editing-tool-button.active{color:#173b5b;border-color:#6c98ba;background:#e5f0f7}.editing-tool-button:disabled{cursor:not-allowed;opacity:.35}.editing-tools-help{position:absolute;left:.75rem;max-width:min(30%,22rem);color:var(--muted);pointer-events:none;font-size:.72rem;line-height:1.25}.editing-tool-search{position:absolute;right:.75rem}.element-palette{position:absolute;top:calc(100% + .25rem);right:.65rem;width:min(25rem,calc(100vw - 2rem));padding:.75rem;border:1px solid #9eb2c3;border-radius:.5rem;background:#fff;box-shadow:0 12px 32px #1e2d3c38}.element-palette.moveable{position:fixed;z-index:120;top:50%;left:50%;margin:0;box-shadow:0 16px 40px #14233247}.element-palette-header{display:flex;align-items:center;justify-content:space-between;padding:.4rem .6rem;margin-bottom:.6rem;border-radius:.35rem;background:#edf3f8;color:#173b5b;font-size:.8rem;font-weight:750;cursor:move;user-select:none}.element-palette-header .drag-handle-icon{color:#7b93a8}.element-palette label{display:block;width:100%}.element-palette input,.add-attribute-form input{width:100%;min-width:0;padding:.5rem .6rem;border:1px solid var(--line);border-radius:.35rem;background:#fff}.palette-candidates{display:grid;max-height:22rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem;margin-top:.65rem;overflow:auto}.palette-candidate{display:flex;min-width:0;align-items:center;gap:.4rem;padding:.36rem .5rem;color:#302b3e;border:1px solid #c9bdea;border-radius:.3rem;background:#ded5f7;cursor:grab;text-align:left}.palette-candidate:hover,.palette-candidate.dragging{border-color:#806ab9;background:#cec0f2}.palette-candidate.dragging{opacity:.45}.palette-candidate svg{width:.8rem;color:#68578f}.multi-selection-count{margin:.4rem .75rem;color:#315976;font-weight:700}.inspector.multi-selection{gap:0}.compact-editor-panel{min-width:0;overflow:auto;background:#f3f4f5}.compact-editor{min-width:44rem;min-height:100%;padding-bottom:2rem}.compact-grid-header{position:sticky;z-index:4;top:0;display:grid;grid-template-columns:repeat(var(--structure-columns),minmax(5.25rem,7.5rem)) minmax(22rem,1fr);padding:0 .55rem;color:#6d6a64;border-bottom:1px solid #d8d4cc;background:#efede8;font-size:.65rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.compact-grid-header .header-structure{grid-column:1 / span var(--structure-columns);padding:.38rem .65rem}.compact-grid-header .header-text{grid-column:calc(var(--structure-columns) + 1) / -1;padding:.38rem .65rem;border-left:1px solid #d8d4cc}.compact-grid{display:grid;min-height:100%;grid-template-columns:repeat(var(--structure-columns),minmax(5.25rem,7.5rem)) minmax(22rem,1fr);grid-auto-rows:minmax(2.7rem,auto);gap:0;padding:.55rem;align-items:stretch}.text-resource-editor{display:contents}.resource-prosemirror{display:grid;min-width:0;grid-column:var(--content-column);grid-row:1 / span var(--text-row-count);grid-template-rows:subgrid}.text-run-row{display:block;min-width:0;min-height:2.7rem;contain:layout style paint;margin:.11rem .11rem .11rem .38rem;padding:.42rem .75rem;outline:none;border-left:1px solid #d7d1c8;background:#fff;grid-column:1;line-height:1.75;white-space:pre-wrap}.text-run-row:hover,.text-run-row:focus-within{background:#fffefa}.text-run-row:focus-within{box-shadow:inset 3px 0 #6a9ec4}.compact-structure-box{position:relative;z-index:1;display:flex;min-width:0;align-items:flex-start;gap:.34rem;margin:.11rem;padding:.38rem .42rem;overflow:visible;color:#2f2940;border:1px solid #c4b4eb;border-radius:.28rem;background:#d9cdf8;cursor:pointer;text-align:left;font:650 .72rem/1.2 ui-monospace,monospace}.compact-structure-box:nth-of-type(3n+2){background:#e4dcfa}.compact-structure-box.dragging{opacity:.45}.compact-structure-box.compact-structure-placeholder{align-items:center;border-style:dashed;background:transparent;cursor:default}.compact-structure-box.compact-structure-placeholder small{margin-left:0;font-style:italic}.compact-structure-box.invalid,.compact-structure-box.invalid:nth-of-type(3n+2){color:#6d1f1d;border-color:var(--red);background:#fbe4e2}.compact-structure-box.invalid.selected,.compact-structure-box.invalid.selected:hover{border-color:var(--red);background:#f6cfcc;box-shadow:inset 0 0 0 1px var(--red)}.compact-structure-box:hover{border-color:#6e57aa;box-shadow:inset 0 0 0 1px #856ebb}.compact-structure-box.selected,.compact-structure-box.selected:hover{border-color:#4c3a8a;background:#c9b8f2;box-shadow:none}.compact-structure-box:focus-visible{outline:none}.compact-structure-label{position:sticky;top:1.75rem;display:flex;min-width:0;align-items:flex-start;gap:.34rem}.compact-structure-box svg{width:.75rem;flex:none;color:#68558e}.compact-structure-label>span{overflow:hidden;text-overflow:ellipsis}.compact-structure-box small{display:block;margin-left:auto;overflow:hidden;color:#675f78;font:.58rem sans-serif;text-overflow:ellipsis}.compact-structure-box.drop-allowed:after,.compact-structure-box.drop-blocked:after{position:absolute;z-index:3;content:"";background:#2b9b5e;pointer-events:none}.compact-structure-box.drop-blocked:after{background:#c74444}.compact-structure-box.drop-top:after,.compact-structure-box.drop-bottom:after{right:0;left:0;height:.32rem}.compact-structure-box.drop-top:after{top:0}.compact-structure-box.drop-bottom:after{bottom:0}.compact-structure-box.drop-left:after,.compact-structure-box.drop-right:after,.compact-structure-box.drop-inside:after{top:0;bottom:0;width:.32rem}.compact-structure-box.drop-left:after{left:0}.compact-structure-box.drop-right:after,.compact-structure-box.drop-inside:after{right:0}.compact-structure-box.drop-inside.drop-allowed,.compact-structure-box.drop-right.drop-allowed{background:#d3efe0;box-shadow:inset 0 0 0 2px #2b9b5e8c}.compact-structure-box.drop-inside.drop-blocked,.compact-structure-box.drop-right.drop-blocked{background:#f3d9d8;box-shadow:inset 0 0 0 2px #c744448c}.add-attribute-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.4rem;margin-top:.45rem}.xml-text-segment{display:inline}.xml-text-segment:empty:before,.xml-inline-content:empty:before{content:"​"}.drag-drop-caret{position:fixed;z-index:1000;top:0;left:0;display:none;width:2px;border-radius:1px;background:#173b5b;pointer-events:none}.drag-drop-caret.visible{display:block}.drag-drop-line{position:fixed;z-index:1000;top:0;left:0;display:none;height:2px;border-radius:1px;background:#2f6fb0;box-shadow:0 0 0 1px #2f6fb040;pointer-events:none}.drag-drop-line.visible{display:block}.xml-inline-leaf{--inline-border-color: #9fb7ca;display:inline;margin:0 .3rem;padding:calc(.08rem + var(--inline-nesting, 0) * 1px) .2rem;border:1px solid var(--inline-border-color);border-radius:.2rem;background:#edf5fa}.xml-inline-content{display:inline}.xml-inline-atom{display:inline-block;margin:0 .3rem;padding:.08rem .28rem;color:#6b5120;border-radius:.2rem;background:#f6eacb;font:650 .68rem monospace;user-select:none}.xml-inline-select{display:inline;margin:0 .24rem 0 0;padding:0;color:var(--inline-border-color, #9fb7ca);border:0;background:transparent;cursor:grab;font:inherit;font-weight:700}.xml-inline-atom>.xml-inline-select{margin:0;color:inherit}.xml-inline-select:hover,.xml-inline-select:focus-visible{color:#173b5b}.xml-inline-select svg{width:.68rem;vertical-align:-.06em}.xml-inline-leaf.selected{border-color:#173b5b;background:#d9ecf9;box-shadow:0 0 0 1px #173b5b,0 0 0 3px #173b5b40}.xml-inline-leaf.selected .xml-inline-select{color:#173b5b}.xml-inline-atom.selected{background:#f3dfa2;box-shadow:0 0 0 1px #8a6d1f,0 0 0 3px #8a6d1f40}.xml-inline-leaf.invalid{--inline-border-color: var(--red);background:#fbe4e2}.xml-inline-atom.invalid{color:#6d1f1d;background:#fbe4e2;box-shadow:0 0 0 1px var(--red)}.reveal-flash{animation:reveal-flash 1.2s ease-out}@keyframes reveal-flash{0%,40%{box-shadow:0 0 0 3px #a43a3773}to{box-shadow:0 0 0 3px #a43a3700}}.xml-inline-leaf.dragging,.xml-inline-atom.dragging{opacity:.45}body.pointer-dragging{cursor:grabbing;user-select:none}body.pointer-dragging.drag-copy-armed,body.drag-copy-armed{cursor:copy}.drag-ghost{position:fixed;z-index:1000;top:0;left:0;box-sizing:border-box;margin:0;opacity:.55;pointer-events:none}.drag-ghost>*{margin:0}.inline-candidate-group{display:grid;gap:.3rem}.inline-candidate-group h3{margin:.35rem 0 .1rem;color:var(--muted);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase}.editor-statusbar{display:flex;min-height:1.7rem;align-items:center;gap:1.2rem;padding:.25rem .8rem;color:#666159;border-top:1px solid var(--line);background:#f2f0ea;font-size:.65rem}.selection-toolbar{display:flex;min-height:2.6rem;align-items:center;gap:.35rem;padding:.35rem .75rem;overflow-x:auto;border-bottom:1px solid #c9d8e4;background:#eaf3f9}.inspector.multi-selection .selection-toolbar{flex-direction:column;align-items:stretch;overflow-x:visible;overflow-y:auto}.inspector.multi-selection .selection-toolbar .toolbar-button{justify-content:center}.selection-toolbar>span{margin-right:.3rem;color:#315976;font-size:.72rem;font-weight:750;white-space:nowrap}.inspector{padding:.85rem;border-bottom:1px solid var(--line)}.inspector-heading{display:flex;align-items:center;gap:.65rem}.inspector-heading svg{width:1.15rem;color:#526d88}.inspector-heading-title{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis}.inspector-heading h2{margin:0;overflow:hidden;font:700 .9rem monospace;text-overflow:ellipsis;white-space:nowrap}.element-help-button{display:inline-flex;width:1.2rem;height:1.2rem;flex:none;align-items:center;justify-content:center;margin-left:auto;color:#244a68;border:1px solid #9ab5ca;border-radius:50%;background:#eaf2f8;font:700 .78rem/1 sans-serif;text-decoration:none}.element-help-button:hover{color:#fff;border-color:#3978a6;background:#3978a6}.element-facts{display:grid;gap:.35rem;margin:.8rem 0}.element-facts div{display:grid;grid-template-columns:5rem 1fr;gap:.4rem;font-size:.68rem}.element-facts dt{color:var(--muted)}.element-facts dd{margin:0;overflow-wrap:anywhere}.inspector section{margin-top:1rem}.inspector-id-section{margin-bottom:.8rem}.no-id-banner{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.45rem .6rem;border:1px dashed var(--line);border-radius:.4rem;background:#fafaf8;font-size:.78rem;color:var(--muted)}.id-field{display:flex;align-items:flex-end;gap:.4rem}.id-field label{display:grid;flex:1;gap:.25rem;color:#38536d;font-size:.78rem;font-weight:750}.id-field input{padding:.42rem .55rem;border:1px solid var(--line);border-radius:.35rem;background:#fff;font-family:monospace}.inspector h3{margin:0 0 .5rem;font-size:.75rem}.inspector-section-title{display:flex;align-items:center;justify-content:space-between}.inspector-section-title span{color:var(--muted);font-size:.7rem}.inspector-section-actions{display:flex;align-items:center;gap:.45rem}.attribute-field{display:flex;align-items:flex-end;gap:.25rem;margin-bottom:.45rem}.attribute-field label{display:grid;min-width:0;flex:1;gap:.18rem;color:#69645a;font:.65rem monospace}.attribute-field input,.attribute-field select,.full-select{padding:.38rem .45rem;font-size:.72rem}.attribute-field input.invalid-value,.attribute-field select.invalid-value{color:#6d1f1d;border-color:var(--red);background:#fbe4e2}.empty-inline{color:var(--muted);font-size:.75rem;font-style:italic}.validation-panel{padding:.85rem}.schema-actions{display:flex;flex-wrap:wrap;gap:.15rem;margin:.45rem -.35rem}.validation-heading{align-items:center}.validation-heading h2{margin:0;font-size:.85rem}.status-sections{display:grid;gap:.3rem;margin-top:.7rem}.status-section{overflow:hidden;border:1px solid var(--line);border-radius:.35rem;background:#fff;font-size:.7rem}.status-section summary{display:flex;justify-content:space-between;padding:.45rem .55rem;cursor:pointer}.status-section.valid summary strong{color:var(--green)}.status-section.warning summary strong{color:var(--amber)}.status-section.invalid summary strong{color:var(--red)}.status-section ul{max-height:12rem;margin:0;overflow:auto;padding:.55rem 1.5rem;border-top:1px solid var(--line)}.status-section li{margin-bottom:.2rem}.diagnostic-link{padding:0;color:inherit;border:0;background:none;text-align:left;font:inherit;cursor:pointer}.diagnostic-link:hover,.diagnostic-link:focus-visible{text-decoration:underline}.status-section li.warning{color:var(--amber)}.validation-progress{display:flex;align-items:center;gap:.4rem;color:var(--muted);font-size:.7rem}.spinner.tiny{width:.85rem;height:.85rem;border-width:2px}.statusbar-validation.valid{color:var(--green)}.statusbar-validation.invalid{color:var(--red)}.search-panel{display:flex;align-items:center;gap:.4rem;padding:.45rem .7rem;border-bottom:1px solid var(--line);background:#fff7dd;box-shadow:0 2px 6px #0000000a;font-size:.72rem}.search-panel-input,.search-panel>input{width:min(24rem,40vw);padding:.4rem .5rem}.search-panel label{display:flex;align-items:center;gap:.2rem;white-space:nowrap}.search-panel label input{width:auto}.search-panel .search-close{margin-left:auto}.element-candidates{max-height:60vh;overflow:auto;border:1px solid var(--line);border-radius:.45rem}.element-candidates section h3{position:sticky;z-index:1;top:0;margin:0;padding:.45rem .6rem;color:#655f55;background:#eeece6;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em}.element-candidate{display:flex;width:100%;align-items:flex-start;gap:.55rem;padding:.55rem .65rem;text-align:left;border:0;border-top:1px solid #efede7;background:#fff;cursor:pointer}.element-candidate:hover{background:#f3f8fb}.element-candidate svg{width:.9rem;margin-top:.2rem;color:#58718a}.element-candidate span{display:grid;gap:.15rem}.element-candidate strong{font:700 .75rem monospace}.element-candidate small{color:var(--muted);line-height:1.35}.preview-frame-wrap{position:relative;min-height:65vh}.preview-frame{width:100%;height:68vh;border:1px solid var(--line);border-radius:.4rem;background:#fff}.preview-badge{position:absolute;z-index:2;top:.6rem;right:1.2rem;padding:.25rem .5rem;color:#6d4911;border-radius:1rem;background:#ffe5ad;font-size:.68rem;font-weight:700}.preview-settings>label:first-child{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.preview-settings>label:first-child input{width:auto}.standalone-preview{padding:1rem}.standalone-preview .preview-frame-wrap{margin-top:1rem}.tab-list{display:flex;gap:.25rem;margin-bottom:1rem;border-bottom:1px solid var(--line)}.tab{padding:.55rem .8rem;color:var(--muted);border:0;border-bottom:2px solid transparent;background:transparent;cursor:pointer}.tab.active{color:var(--navy);border-bottom-color:var(--blue);font-weight:750}.check-field{display:flex;align-items:center;gap:.45rem;margin:.6rem 0;color:#4d4941;font-size:.8rem}.check-field input{width:auto}.xml-preview,.xml-recovery-preview{max-height:14rem;overflow:auto;padding:.7rem;white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid var(--line);border-radius:.4rem;background:#f5f3ed;font-size:.7rem}.url-row{display:grid;grid-template-columns:1fr auto;align-items:end;gap:.5rem}.url-row .field{margin:0}.canvas-review{display:grid;max-height:18rem;gap:.35rem;overflow:auto}.canvas-review label{display:flex;align-items:flex-start;gap:.55rem;padding:.55rem;border:1px solid var(--soft-line);border-radius:.4rem}.canvas-review input{width:auto;margin-top:.2rem}.canvas-review span{display:grid;gap:.15rem}.canvas-review small{color:var(--muted)}.capability-recovery{width:min(760px,calc(100% - 2rem));margin:8vh auto;padding:2rem;border:1px solid var(--line);border-radius:.8rem;background:var(--paper);box-shadow:var(--shadow)}.update-banner{position:fixed;z-index:200;right:1rem;bottom:1rem;display:flex;align-items:center;gap:.6rem;padding:.65rem .8rem;color:#fff;border-radius:.55rem;background:var(--navy);box-shadow:0 12px 35px #00000040}.update-banner button{color:#fff;border:1px solid rgb(255 255 255 / 35%);border-radius:.3rem;background:transparent;cursor:pointer}.mobile-only{display:none}.drawer-close{margin-left:auto;border:0;background:transparent;font-size:1.2rem;cursor:pointer}.drawer-scrim{position:fixed;z-index:44;inset:0;border:0;background:#11182361}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.loading-screen,.missing-view,.recovery-screen{display:grid;min-height:70vh;place-items:center;align-content:center;padding:2rem;text-align:center}.spinner{width:2rem;height:2rem;border:3px solid #ccd4dd;border-top-color:var(--navy);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.recovery-screen pre{max-width:min(700px,100%);overflow:auto;padding:1rem;color:var(--red);background:#fff}@media(max-width:1000px){.mobile-only{display:inline-flex}.app-actions .save-state,.app-actions .toolbar-button:nth-of-type(-n+2){display:none}.editor-workspace{grid-template-columns:12rem 1fr}.panel-resizer{display:none}.right-panel{position:fixed;z-index:45;top:3.45rem;right:0;bottom:1.7rem;width:min(360px,92vw);display:none;box-shadow:var(--shadow)}.mobile-inspector-open .right-panel{display:flex}.document-summary{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.library-page{width:min(100% - 1rem,1180px);padding-top:.5rem}.library-hero,.panel-heading,.root-heading,.library-filters{align-items:stretch;flex-direction:column}.library-filters input,.library-filters select{width:100%}.editor-workspace{display:block;overflow:auto}.tree-panel{position:fixed;z-index:45;top:3.45rem;bottom:1.7rem;left:0;width:min(340px,92vw);display:none;box-shadow:var(--shadow)}.mobile-tree-open .tree-panel{display:block}.tree-scroll{height:calc(100vh - 7.5rem)}.app-breadcrumb,.app-actions .toolbar-button,.app-actions .button{display:none}.app-actions .toolbar-button:last-of-type{display:inline-flex}.review-summary,.document-summary{grid-template-columns:1fr}.library-footer{gap:.5rem;flex-direction:column}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
