.vue-flow{position:relative;width:100%;height:100%;overflow:hidden;z-index:0;direction:ltr}.vue-flow__container{position:absolute;height:100%;width:100%;left:0;top:0}.vue-flow__pane{z-index:1}.vue-flow__pane.draggable{cursor:grab}.vue-flow__pane.selection{cursor:pointer}.vue-flow__pane.dragging{cursor:grabbing}.vue-flow__transformationpane{transform-origin:0 0;z-index:2;pointer-events:none}.vue-flow__viewport{z-index:4;overflow:clip}.vue-flow__selection{z-index:6}.vue-flow__edge-labels{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible{outline:none}.vue-flow .vue-flow__edges{pointer-events:none;overflow:visible}.vue-flow__edge-path,.vue-flow__connection-path{stroke:#b1b1b7;stroke-width:1;fill:none}.vue-flow__edge{pointer-events:visibleStroke;cursor:pointer}.vue-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.vue-flow__edge.animated path.vue-flow__edge-interaction{stroke-dasharray:none;animation:none}.vue-flow__edge.inactive{pointer-events:none}.vue-flow__edge.selected,.vue-flow__edge:focus,.vue-flow__edge:focus-visible{outline:none}.vue-flow__edge.selected .vue-flow__edge-path,.vue-flow__edge:focus .vue-flow__edge-path,.vue-flow__edge:focus-visible .vue-flow__edge-path{stroke:#555}.vue-flow__edge-textwrapper{pointer-events:all}.vue-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.vue-flow__connection{pointer-events:none}.vue-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.vue-flow__connectionline{z-index:1001}.vue-flow__nodes{pointer-events:none;transform-origin:0 0}.vue-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.vue-flow__node.draggable{cursor:grab;pointer-events:all}.vue-flow__node.draggable.dragging{cursor:grabbing}.vue-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.vue-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.vue-flow__nodesselection-rect.dragging{cursor:grabbing}.vue-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px}.vue-flow__handle.connectable{pointer-events:all;cursor:crosshair}.vue-flow__handle-bottom{left:50%;bottom:0;transform:translate(-50%,50%)}.vue-flow__handle-top{left:50%;top:0;transform:translate(-50%,-50%)}.vue-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.vue-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.vue-flow__edgeupdater{cursor:move;pointer-events:all}.vue-flow__panel{position:absolute;z-index:5;margin:15px}.vue-flow__panel.top{top:0}.vue-flow__panel.bottom{bottom:0}.vue-flow__panel.left{left:0}.vue-flow__panel.right{right:0}.vue-flow__panel.center{left:50%;transform:translate(-50%)}@keyframes dashdraw{0%{stroke-dashoffset:10}}:root{--vf-node-bg: #fff;--vf-node-text: #222;--vf-connection-path: #b1b1b7;--vf-handle: #555}.vue-flow__edge.updating .vue-flow__edge-path{stroke:#777}.vue-flow__edge-text{font-size:10px}.vue-flow__edge-textbg{fill:#fff}.vue-flow__connection-path{stroke:var(--vf-connection-path)}.vue-flow__node{cursor:grab}.vue-flow__node.selectable:focus,.vue-flow__node.selectable:focus-visible{outline:none}.vue-flow__node-default,.vue-flow__node-input,.vue-flow__node-output{padding:10px;border-radius:3px;width:150px;font-size:12px;text-align:center;border-width:1px;border-style:solid;color:var(--vf-node-text);background-color:var(--vf-node-bg);border-color:var(--vf-node-color)}.vue-flow__node-default.selected,.vue-flow__node-default.selected:hover,.vue-flow__node-input.selected,.vue-flow__node-input.selected:hover,.vue-flow__node-output.selected,.vue-flow__node-output.selected:hover{box-shadow:0 0 0 .5px var(--vf-box-shadow)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible,.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible,.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{outline:none;border:1px solid #555}.vue-flow__node-default .vue-flow__handle,.vue-flow__node-input .vue-flow__handle,.vue-flow__node-output .vue-flow__handle{background:var(--vf-handle)}.vue-flow__node-default.selectable:hover,.vue-flow__node-input.selectable:hover,.vue-flow__node-output.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.vue-flow__node-input{--vf-node-color: var(--vf-node-color, #0041d0);--vf-handle: var(--vf-node-color, #0041d0);--vf-box-shadow: var(--vf-node-color, #0041d0);background:var(--vf-node-bg);border-color:var(--vf-node-color, #0041d0)}.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible{outline:none;border:1px solid var(--vf-node-color, #0041d0)}.vue-flow__node-default{--vf-handle: var(--vf-node-color, #1a192b);--vf-box-shadow: var(--vf-node-color, #1a192b);background:var(--vf-node-bg);border-color:var(--vf-node-color, #1a192b)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible{outline:none;border:1px solid var(--vf-node-color, #1a192b)}.vue-flow__node-output{--vf-handle: var(--vf-node-color, #ff0072);--vf-box-shadow: var(--vf-node-color, #ff0072);background:var(--vf-node-bg);border-color:var(--vf-node-color, #ff0072)}.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{outline:none;border:1px solid var(--vf-node-color, #ff0072)}.vue-flow__nodesselection-rect,.vue-flow__selection{background:#0059dc14;border:1px dotted rgba(0,89,220,.8)}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible,.vue-flow__selection:focus,.vue-flow__selection:focus-visible{outline:none}.vue-flow__handle{width:6px;height:6px;background:var(--vf-handle);border:1px solid #fff;border-radius:100%}:root{--bg: #f7f9fc;--fg: #243447;--card: #ffffff;--border: #d9e1ea;--muted: #eef3f8;--muted-fg: #6c7e90;--primary: #17324d;--primary-contrast: #ffffff;--nav-bg: #17324d;--nav-fg: #d4deea;--nav-hover: #22405d;--nav-active: #60a5fa;--radius: 8px;font-family:Inter,Segoe UI,sans-serif;color:var(--fg);background:var(--bg);line-height:1.4;font-weight:400;font-size:12px}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--bg);font-size:12px}.global-loading-line{position:fixed;top:0;left:0;right:0;height:3px;z-index:3000;background:linear-gradient(90deg,#2563eb,#60a5fa,#2563eb);background-size:200% 100%;animation:global-loading-slide 1s linear infinite}.global-loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2999;background:#0f172a29;display:flex;align-items:center;justify-content:center;pointer-events:none}.global-loading-card{width:min(420px,calc(100% - 32px));background:#fff;border:1px solid #dbe5f0;border-radius:12px;padding:14px}.global-loading-title,.global-loading-row{border-radius:8px;background:linear-gradient(90deg,#e8eef6,#f5f8fc,#e8eef6);background-size:200% 100%;animation:global-loading-slide 1s ease-in-out infinite}.global-loading-title{height:16px;width:48%;margin-bottom:10px}.global-loading-row{height:12px;width:100%;margin-bottom:8px}.global-loading-row.short{width:72%;margin-bottom:0}@keyframes global-loading-slide{0%{background-position:200% 0}to{background-position:-200% 0}}button,input,textarea,select{font:inherit}button{cursor:pointer}#app{min-height:100vh}.shell{--sidebar-width: 240px;display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);height:100vh;min-height:100vh;overflow:hidden}.shell.shell-collapsed{--sidebar-width: 72px}.sidebar{display:flex;flex-direction:column;gap:12px;padding:16px 0 10px;height:100vh;min-height:0;overflow:hidden;background:#142b48;color:#c9d0dd;border-right:1px solid #1a3658;font-family:Inter,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-style:normal}.content{min-width:0;min-height:0;padding:0;overflow:auto;background:var(--bg)}.workspace{display:flex;flex-direction:column;gap:20px;padding:24px}.frame-card{padding:0;min-height:calc(100vh - 210px);overflow:hidden}.builder-frame{width:100%;height:calc(100vh - 210px);border:0;background:#fff}.toolbar a.secondary{text-decoration:none}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top left,rgba(59,130,246,.12),transparent 25%),#f8fafc}.auth-card{width:min(100%,1040px);display:flex;flex-direction:column;gap:20px;padding:28px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:0 12px 32px #0f172a14}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:24px;background:#0f172a80}.modal-card{width:min(100%,880px);max-height:90vh;overflow:hidden;display:flex;flex-direction:column;border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:0 20px 48px #0f172a2e}.modal-card-large{width:min(1120px,94vw);max-width:94vw;max-height:92vh}.modal-card-large .modal-body{overflow-y:auto;flex:1}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 20px 12px;border-bottom:1px solid #e2e8f0}.modal-body{padding:20px;overflow:auto;flex:1}.page-header-block{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.content-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 24px;border-bottom:1px solid var(--border);background:var(--card);position:sticky;top:0;z-index:10}.content-kicker,.brand-kicker{margin:0 0 6px;text-transform:uppercase;letter-spacing:.18em;font-size:11px;color:#94a3b8}.header-actions{display:flex;gap:12px}.header-actions.compact{gap:8px}.header-summary{display:flex;align-items:center;gap:16px}.header-period strong{font-size:14px}.header-pill{display:inline-flex;align-items:center;padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--muted);color:var(--muted-fg);font-size:12px}.notifications,.notifications-trigger{position:relative}.notifications-icon{font-weight:700}.notifications-count{position:absolute;top:-6px;right:-6px;min-width:16px;height:16px;padding:0 4px;display:grid;place-items:center;border-radius:999px;background:#dc2626;color:#fff;font-size:10px}.notifications-dropdown{position:absolute;top:calc(100% + 8px);right:0;z-index:40;width:340px;display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid #dbe3ec;border-radius:8px;background:#fff;box-shadow:0 12px 28px #0f172a24}.notifications-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.notifications-list{display:flex;flex-direction:column;gap:6px;max-height:320px;overflow:auto}.notifications-footer-button,.compact-button{padding:8px 10px}.header-search{flex:1;max-width:520px;display:flex;align-items:center;gap:10px;padding:0 12px;height:38px;border:1px solid var(--border);border-radius:var(--radius);background:var(--muted)}.header-search.loading{opacity:.7}.header-search input{border:0;background:transparent;padding:0;height:auto;color:#64748b}.search-icon{color:#9fb5cc;font-size:14px;font-weight:700}.brand{display:flex;gap:10px;align-items:center;min-width:0}.sidebar-brand-row{display:flex;align-items:center;gap:10px;padding:0 16px 12px;position:relative}.sidebar-toggle{position:absolute;top:-2px;right:-11px;width:22px;height:22px;border-radius:50%;border:2px solid rgb(20,43,72);background:#d9e1ea;color:#1a3658;display:grid;place-items:center;padding:0}.sidebar-toggle svg{width:12px;height:12px;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;fill:none;transition:transform .2s ease}.brand h1,.content-header h2,.page-header h3,.hero-panel h3{margin:0}.brand h1{font-family:inherit;font-size:15px;line-height:1.15;font-weight:700}.brand-kicker{font-family:inherit;margin-top:2px;font-size:10px;line-height:1.2;letter-spacing:.12em;color:#9fb0c4}.brand-mark{width:32px;height:32px;display:grid;place-items:center;border-radius:7px;background:#12355c;color:#4aa3ff}.brand-mark svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round;fill:none}.sidebar-top{display:flex;flex-direction:column;gap:8px;padding:0}.sidebar-scroll{flex:1;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#4b647f #17324d}.sidebar-scroll::-webkit-scrollbar{width:10px}.sidebar-scroll::-webkit-scrollbar-track{background:#17324d;border-radius:999px}.sidebar-scroll::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#5f7892,#4b647f);border:2px solid #17324d;border-radius:999px}.sidebar-scroll::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#7690ab,#5f7892)}.metric-label{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#64748b}.sidebar-search{position:relative;padding:0 0 4px}.sidebar-search small{margin-left:auto;padding:2px 6px;border:1px solid rgba(212,222,234,.28);border-radius:4px;font-size:10px;color:#d4deea80}.global-search{position:relative;display:flex;align-items:center;gap:10px;width:100%;padding:0 12px;min-height:38px;border:1px solid #dbe3ec;border-radius:8px;background:#f8fafc}.global-search.sidebar{height:38px;min-height:38px;padding:0 11px;border-color:#d4deea1a;background:#264b75;color:#c2d4e8;border-radius:6px}.global-search.loading{opacity:.8}.global-search input{border:0;background:transparent;padding:0 6px;min-width:0;height:auto}.global-search.sidebar input{color:#d4deea}.global-search-results{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:30;display:flex;flex-direction:column;gap:4px;padding:8px;border:1px solid #dbe3ec;border-radius:8px;background:#fff;box-shadow:0 12px 28px #0f172a24}.global-search-empty{padding:8px;color:#64748b}.global-search-item{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:8px 10px;border:1px solid transparent;border-radius:8px;background:#fff;color:#17324d;text-align:left}.global-search-item:hover,.global-search-item.active{border-color:#dbe3ec;background:#f8fafc}.global-search-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.global-search-copy span{color:#64748b}.meta-lookup{position:relative;width:100%}.meta-lookup-trigger{min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #d4dee8;border-radius:6px;background:#fff}.meta-lookup-value{min-width:0;color:#15202b}.meta-lookup-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.meta-lookup-clear,.meta-lookup-toggle{width:24px;height:24px;padding:0;border:1px solid #d4dee8;border-radius:999px;background:#fff;color:#64748b}.meta-lookup-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:9999;display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid #dbe3ec;border-radius:8px;background:#fff;box-shadow:0 12px 28px #0f172a24;max-height:280px;overflow:hidden}.meta-lookup-results{display:flex;flex-direction:column;gap:4px;overflow-y:auto;flex:1}.lookup-checkbox{display:inline-flex;align-items:center;pointer-events:none}.lookup-checkbox input{pointer-events:none}.lookup-skeleton-list{display:flex;flex-direction:column;gap:8px;padding:4px 2px}.lookup-skeleton-row{display:flex;flex-direction:column;gap:6px;padding:8px 10px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.2em;font-size:12px;color:#5a738d}.lede{color:#5f6d7a}.nav{display:flex;flex-direction:column;gap:4px;padding:8px 10px 16px}.nav-group-title{margin:10px 10px 5px;font-size:10px;font-weight:500;font-family:inherit;letter-spacing:.12em;text-transform:uppercase;color:#5a6478}.nav a,.nav-link{display:flex;align-items:center;gap:10px;color:#c9d0dd;text-decoration:none;min-height:36px;padding:7px 10px;border:1px solid transparent;border-radius:6px;transition:background .12s ease,color .12s ease;font-family:inherit;position:relative}.nav-copy{display:flex;min-width:0;flex-direction:column;gap:0}.nav-icon{width:16px;height:16px;flex:0 0 16px;color:#fff;opacity:.78}.nav-icon svg{width:16px;height:16px;display:block;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;fill:none}.nav-title{font-size:13px;line-height:1.2;font-family:inherit;font-weight:400;letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav a:hover{background:#1a3658;color:#fff}.nav a.nav-link-active{background:#1b76e6;color:#d6e9ff;border-color:transparent;font-weight:400}.nav a.nav-link-active:before{content:"";position:absolute;left:-1px;top:50%;transform:translateY(-50%);width:3px;height:14px;border-radius:2px;background:#d6e9ff}.nav a.nav-link-active .nav-icon{color:#fff;opacity:1}.shell-collapsed .sidebar{padding-inline:0}.shell-collapsed .sidebar-top{gap:8px}.shell-collapsed .brand{justify-content:center}.shell-collapsed .brand-mark{width:34px;height:34px}.shell-collapsed .sidebar-search,.shell-collapsed .nav-group-title,.shell-collapsed .nav-copy,.shell-collapsed .sidebar-user-copy{display:none}.shell-collapsed .nav a,.shell-collapsed .sidebar-footer{justify-content:center;padding-inline:8px}.shell-collapsed .sidebar-toggle svg{transform:rotate(180deg)}.shell-collapsed .nav a.nav-link-active:before{display:none}.panel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:0 1px 2px #0f172a0a}.dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.metric-card strong{display:block;margin:8px 0 6px;font-size:14px}.sidebar-footer{display:flex;gap:12px;align-items:center;padding:10px 14px;border-top:1px solid #1a3658;flex-shrink:0}.sidebar-footer small{display:block;color:#d4deea8c;font-size:11px;font-family:inherit}.sidebar-user-copy{min-width:0}.user-badge{width:30px;height:30px;display:grid;place-items:center;border-radius:999px;background:#5a9df0;color:#fff;font-size:11px;font-weight:700;font-family:inherit}.logout-button{margin-left:auto;border:0;border-radius:6px;background:transparent;color:#9fb3c8;padding:4px 8px;font-size:13px;font-family:inherit;display:inline-flex;align-items:center;gap:6px}.logout-button svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;fill:none}.shell-collapsed .logout-button{margin-left:0;padding-inline:8px}.grid{display:grid;gap:16px}.two-column-layout{grid-template-columns:minmax(320px,400px) minmax(0,1fr)}.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.section-head.compact{margin-bottom:0}.count-chip{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;background:#eff6ff;color:#345b84;font-size:12px;font-weight:600}.page-header,.toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}.toolbar{align-items:center}.page-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.page-title{margin:4px 0 8px;font-size:14px}.page-subtitle{margin:0;color:#64748b;font-size:12px}.breadcrumbs{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:12px;color:#64748b}.content-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:16px}.wide{min-width:0}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.panel-head h3,.side-panel h3{margin:0 0 4px}.panel-head p{margin:0;color:#64748b;font-size:12px}.detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.status-inline-actions{display:flex;align-items:center;gap:8px}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.stacked-cards{display:flex;flex-direction:column;gap:12px}.mini-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--muted);padding:14px}.mini-card strong,.mini-card p{margin:0}.mini-card p{margin-top:6px;color:#64748b;font-size:12px}.property-list{display:flex;flex-direction:column;gap:10px;margin-top:10px}.property-row{display:grid;grid-template-columns:160px minmax(0,1fr);gap:12px;align-items:start}.property-name{color:#64748b}.property-value{min-width:0}.property-link-list,.property-chip-list{display:flex;flex-wrap:wrap;gap:8px}.property-link{padding:0;border:0;background:transparent;color:#1d4f80;text-align:left;text-decoration:underline}.parent-term-link{display:block;margin-top:6px}.domain-term-tree{flex-direction:column;align-items:flex-start;margin-top:8px}.status-panel,.history-panel{display:flex;flex-direction:column;gap:12px}.relation-editor{display:flex;flex-direction:column;gap:12px;padding-top:8px;border-top:1px solid #e2e8f0}.relation-form{display:grid;grid-template-columns:1.3fr 1fr 1fr auto;gap:12px}.status-form{display:grid;grid-template-columns:180px minmax(0,1fr) 180px;gap:12px}.empty-state{padding:24px;border:1px dashed #cbd5e1;border-radius:8px;color:#64748b;background:#f8fafc}.stack{display:flex;flex-direction:column;gap:12px}.success-message{padding:10px 12px;border:1px solid #bbf7d0;border-radius:8px;background:#f0fdf4;color:#166534}.admin-card,.admin-item{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid var(--border);border-radius:12px;background:#f8fafc;color:var(--fg)}.admin-card-header,.admin-item-actions{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.admin-section-actions{display:flex;align-items:center;gap:8px;color:#475569;font-size:12px}.admin-grid{display:grid;grid-template-columns:1fr 1.4fr 90px 1.2fr;gap:12px;width:100%}.admin-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-card label,.admin-item label{display:flex;flex-direction:column;gap:6px;color:#334155;font-size:12px;font-weight:700}.admin-card input,.admin-card select,.admin-card textarea,.admin-item input,.admin-item select,.admin-item textarea{color:var(--fg)}.secondary.danger{border-color:#fecaca;color:#b91c1c}.empty-state.compact{padding:14px}.class-chip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.class-chip{display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 8px!important;padding:10px;border:1px solid var(--border);border-radius:10px;background:#fff;color:#1e293b!important}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-flex;align-items:center;padding:4px 8px;border:1px solid #dbe3ec;border-radius:999px;background:#f8fbff;color:#334155;font-size:11px;line-height:1.2}.dq-rules-table table{width:100%;table-layout:auto}.dq-rules-table th,.dq-rules-table td{white-space:nowrap}.dq-rules-table th:nth-child(5),.dq-rules-table td:nth-child(5){min-width:360px;white-space:normal}.class-chip small{grid-column:2;color:#64748b;font-weight:500}.inline-check{flex-direction:row!important;align-items:center}.field-caption{margin:0 0 8px;color:#334155;font-size:12px;font-weight:700}.admin-table-shell{overflow:auto;border:1px solid var(--border);border-radius:12px;background:#fff}.admin-table{width:100%;border-collapse:collapse;border-spacing:0;color:var(--fg);background:#fff;border-radius:8px;overflow:hidden}.admin-table th,.admin-table td{padding:10px 12px;border-bottom:1px solid #dde3ea;text-align:left;vertical-align:top;color:#374151;font-size:13px;font-weight:400;background:#f3f4f6}.admin-table th{color:#6b7280;font-size:13px;text-transform:none;letter-spacing:.01em;font-weight:600;padding-top:10px;padding-bottom:10px;background:#f3f4f6;border-bottom-color:#dde3ea}.admin-table tbody tr:nth-child(2n) td{background:#eceff3}.admin-table tr:last-child td{border-bottom:0}.admin-table-actions{text-align:right;white-space:nowrap}.admin-table-actions .secondary+.secondary{margin-left:8px}.role-title-cell{display:flex;flex-direction:column;gap:2px}.role-title-cell strong{font-size:15px;line-height:1.25;color:#1f2937}.role-title-cell span{font-size:12px;line-height:1.25;color:#64748b}.skeleton{position:relative;overflow:hidden;border-radius:6px;background:#e2e8f0}.skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.8),transparent);animation:shimmer 1.3s infinite}.skeleton-label{height:14px;width:96px}.skeleton-value{height:34px;width:120px}.skeleton-text{height:14px;width:80%}.skeleton-table{display:flex;flex-direction:column;gap:12px;margin-top:16px}.skeleton-table-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}input,textarea,select{width:100%;padding:10px 12px;border-radius:var(--radius);border:1px solid var(--border);background:var(--card);color:#15202b}textarea{min-height:100px;resize:vertical}.schema-editor{min-height:220px;font-family:SFMono-Regular,Consolas,monospace;font-size:12px}.check{display:flex;align-items:center;gap:10px}.check input{width:auto}.primary{padding:10px 14px;border:1px solid transparent;border-radius:var(--radius);background:var(--primary);color:var(--primary-contrast);font-weight:600}.secondary{padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);color:#2b4257;font-weight:600}.badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#e8f1ff;color:#28557f;font-weight:600;font-size:12px}.badge.status-badge{border:1px solid transparent}.badge.status-badge--draft{background:#e8f1ff;color:#28557f;border-color:#bcd7ff}.badge.status-badge--review{background:#fff1e6;color:#9a4b00;border-color:#ffd4a8}.badge.status-badge--approved{background:#e8f8ef;color:#1d6b3a;border-color:#b7e6ca}.badge.status-badge--rejected{background:#ffe9e9;color:#9b1c1c;border-color:#ffbcbc}.badge-muted{background:#f1f5f9;color:#677787}.link-button{border:0;background:transparent;color:inherit;cursor:pointer;margin-left:6px;padding:0;line-height:1;font-weight:700}.danger-button{border-color:#fecaca;color:#b91c1c;background:#fff5f5}.danger-button:hover{background:#fee2e2}.lookup-badge-skeleton{width:180px;height:12px;border-radius:999px;display:inline-block}.inline-skeleton-list{display:flex;gap:8px;align-items:center;min-height:22px}.inline-skeleton-chip{width:78px;height:18px;border-radius:999px;display:inline-block}.page-toast-stack{position:fixed;top:20px;right:20px;z-index:3000;display:flex;flex-direction:column;gap:10px;max-width:420px}.page-toast{border-radius:10px;padding:12px 14px;font-size:14px;line-height:1.35;box-shadow:0 10px 24px #0f172a29}.page-toast-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.lookup-badge-skeleton.skeleton,.badge .lookup-badge-skeleton{background:#d8e1ec}.badge .lookup-badge-skeleton{position:relative;overflow:hidden}.badge .lookup-badge-skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.8),transparent);animation:shimmer 1.3s infinite}.icon-button{width:34px;height:34px;border:1px solid #dbe3ec;border-radius:6px;background:#fff;color:#64748b}.enterprise-table{width:100%;border-collapse:collapse;border-spacing:0;font-size:13px;background:#fff;border-radius:8px;overflow:hidden}.enterprise-table th{padding:10px 12px;text-align:left;font-size:13px;text-transform:none;letter-spacing:.01em;color:#6b7280;background:#f3f4f6;border-bottom:1px solid #dde3ea;font-weight:600}.enterprise-table td{padding:10px 12px;border-bottom:1px solid #dde3ea;color:#374151;font-size:13px;background:#f3f4f6}.enterprise-table tbody tr:nth-child(2n) td{background:#eceff3}.enterprise-card-like{border-radius:var(--radius);border:1px solid var(--border);background:var(--card);box-shadow:0 1px 2px #0f172a0a}.overview-kpi-grid .metric-card{background:linear-gradient(180deg,#fff,#f9fbfe)}.overview-main-grid{align-items:start}.overview-inline-note{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--muted)}.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}@media(max-width:1280px){.dashboard-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:840px){.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.dashboard-tabs{display:flex;align-items:center;gap:8px;margin-bottom:16px}.dashboard-tab{padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius);background:#fff;color:#64748b}.dashboard-tab.active{background:#17324d;color:#fff;border-color:#17324d}.dashboard-kpi-card{display:flex;flex-direction:column;gap:6px;padding:14px}.dashboard-kpi-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.dashboard-kpi-head p{margin:0;color:#64748b}.dashboard-kpi-head span{color:#17324d}.dashboard-kpi-card strong{font-size:16px}.dashboard-kpi-card small{color:#64748b}.dashboard-main-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,1fr);gap:16px}.domain-coverage-panel{grid-column:1 / -1}.domain-coverage-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.domain-coverage-item{display:flex;align-items:center;gap:12px;border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;background:#fff}.domain-coverage-ring{width:52px;height:52px;flex:0 0 52px;border-radius:999px;display:grid;place-items:center;position:relative}.domain-coverage-ring:before{content:"";width:44px;height:44px;border-radius:999px;background:#fff;position:absolute}.domain-coverage-ring span{position:relative;font-size:13px;font-weight:700;color:#17324d}.domain-coverage-legend .legend-dot{margin-right:6px}.dashboard-kpi-section{margin-bottom:16px}.dashboard-kpi-section-title{font-size:14px;color:#17324d;margin:0 0 8px;font-weight:600}.domain-coverage-meta{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.domain-coverage-meta strong{line-height:1.2;overflow-wrap:anywhere}.domain-coverage-meta small{color:#64748b}.domain-coverage-legend{margin-top:12px;display:flex;flex-wrap:wrap;gap:12px;color:#64748b;font-size:12px}.legend-dot.tone-0{background:#dc2626}.legend-dot.tone-25{background:#f97316}.legend-dot.tone-50{background:#eab308}.legend-dot.tone-75{background:#2563eb}.legend-dot.tone-100{background:#16a34a}.deadline-calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.deadline-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.deadline-calendar-weekday{text-align:center;color:#64748b;font-size:11px}.deadline-calendar-cell{min-height:82px;border:1px solid #dbe5f0;border-radius:8px;padding:6px 7px;display:flex;flex-direction:column;gap:4px;background:#fff}.deadline-calendar-cell.empty{opacity:.35}.deadline-calendar-cell.marked{border-color:#60a5fa;background:#eff6ff}.deadline-calendar-day{font-weight:600;font-size:12px}.deadline-calendar-items{display:flex;flex-direction:column;gap:3px;max-height:56px;overflow:auto}.deadline-calendar-item{text-align:left;border:1px solid #bfdbfe;background:#dbeafe;color:#1e3a8a;border-radius:6px;padding:2px 6px;font-size:10px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.deadline-calendar-item:hover{background:#bfdbfe}.dashboard-status-card,.dashboard-side-card{min-width:0}.dashboard-status-progress-col{width:240px}.dashboard-filter-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}.dashboard-filter{display:flex;flex-direction:column;gap:6px}.dashboard-filter span{color:#64748b}.dashboard-filter select{height:34px;padding:6px 10px}.table-sub{color:#64748b}.dashboard-progress-row{display:flex;align-items:center;gap:10px}.dashboard-progress-track{flex:1;height:8px;border-radius:999px;overflow:hidden;background:#edf2f7}.dashboard-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#3b82f6,#60a5fa)}.dashboard-progress-row span{width:40px;text-align:right;color:#64748b}.dashboard-inline-form{margin-top:12px;display:flex;flex-direction:column;gap:8px}.dashboard-op-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-op-link{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);text-decoration:none;background:#fff}.dashboard-op-link:hover{background:var(--muted)}.dashboard-op-link span{color:#64748b}.dashboard-op-link strong{color:#17324d}.dashboard-op-link small{color:#64748b}.dashboard-activity{margin-top:14px;border-top:1px solid var(--border);padding-top:12px}.dashboard-activity-title{margin:0 0 8px;color:#64748b;text-transform:uppercase;letter-spacing:.08em}.dashboard-activity-list{display:flex;flex-direction:column;gap:8px}.dashboard-activity-item{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:var(--radius);background:#f8fafc}.dashboard-activity-item strong{font-weight:600}.dashboard-activity-item small{color:#64748b}.dashboard-status-stack-row{display:flex;align-items:center;gap:10px}.dashboard-status-stack{flex:1;height:6px;border-radius:999px;overflow:hidden;background:#edf2f7;display:flex}.dashboard-status-segment{height:100%;cursor:help}.dashboard-status-segment.not-started{background:#9ca3af}.dashboard-status-segment.progress{background:#38bdf8}.dashboard-status-segment.review{background:#f59e0b}.dashboard-status-segment.approved{background:#22c55e}.dashboard-status-segment.rejected{background:#ef4444}.dashboard-legend{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px;color:#64748b}.dashboard-legend div{display:flex;align-items:center;gap:6px}.dashboard-legend .legend-dot{margin-right:4px}.legend-dot{display:inline-block;width:10px;height:10px;border-radius:999px;border:1px solid rgba(15,23,42,.12)}.legend-dot.not-started{background:#9ca3af}.legend-dot.progress{background:#38bdf8}.legend-dot.review{background:#f59e0b}.legend-dot.approved{background:#22c55e}.legend-dot.rejected{background:#ef4444}.warn-text{color:#b45309}.danger-text{color:#b91c1c}.dashboard-badge-approved{background:#dcfce7;color:#166534}.dashboard-badge-review{background:#fef3c7;color:#92400e}.dashboard-badge-rejected{background:#fee2e2;color:#991b1b}@media(max-width:1200px){.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-main-grid{grid-template-columns:1fr}}@media(max-width:760px){.dashboard-kpi-grid,.dashboard-op-grid,.dashboard-filter-row{grid-template-columns:1fr}}.table-link{padding:0;border:0;background:transparent;color:#1d4f80;text-decoration:underline}.table-actions{display:flex;gap:8px}.clickable-row{cursor:pointer}.clickable-row.selected td{background:#e8f1ff}.mini-card-inline{display:flex;align-items:center;justify-content:space-between;gap:16px}.compact-stack{gap:8px}.lineage-canvas{display:grid;gap:10px}.vue-flow-shell{height:520px;border:1px solid #dbe5ef;border-radius:8px;overflow:hidden;background:#fff}.lineage-flow{width:100%;height:100%}.lineage-flow .vue-flow__node{background:transparent;border:0;box-shadow:none}.lineage-flow .vue-flow__node.root{background:transparent}.lineage-flow .vue-flow__edge-text{font-size:11px;fill:#334155;font-weight:600;opacity:0;transition:opacity .15s}.lineage-flow .vue-flow__edge-textbg{fill:#fff;opacity:0;transition:opacity .15s}.lineage-flow .vue-flow__edge:hover .vue-flow__edge-text,.lineage-flow .vue-flow__edge:hover .vue-flow__edge-textbg{opacity:1}.lineage-expand-node-wrap{display:flex;align-items:center;gap:5px}.lineage-expand-node{min-width:200px;max-width:220px;display:flex;align-items:center;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#1e293b;box-shadow:0 1px 3px #0000000f;overflow:hidden}.lineage-expand-node.root{border-color:#93c5fd;box-shadow:0 0 0 2px #bfdbfe,0 1px 4px #00000014}.lineage-accent-bar{width:4px;align-self:stretch;flex-shrink:0}.lineage-node-icon{display:flex;align-items:center;justify-content:center;width:28px;flex-shrink:0;padding:0 2px}.lineage-node-icon svg{display:block}.lineage-expand-copy{flex:1;min-width:0;padding:7px 10px 7px 2px;display:flex;flex-direction:column;gap:2px}.lineage-expand-copy strong{margin:0;font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#1e293b}.lineage-expand-copy small{margin:0;font-size:10px;color:#94a3b8;white-space:nowrap}.lineage-expand-badge{min-width:26px;height:20px;padding:0 6px;border:1px solid #e2e8f0;border-radius:999px;background:#f8fafc;color:#64748b;font-weight:700;font-size:10px;cursor:pointer;white-space:nowrap;flex-shrink:0;line-height:18px;transition:background .1s,border-color .1s,color .1s}.lineage-expand-badge:hover{background:#f1f5f9;border-color:#94a3b8;color:#334155}.lineage-flow .vue-flow__node{transition:opacity .15s}.lineage-flow .vue-flow__node.lineage-node-dimmed{opacity:.18;pointer-events:none}.lineage-flow .vue-flow__handle.lineage-handle{width:1px;height:1px;min-width:0;min-height:0;background:transparent;border:none;opacity:0}.lineage-node-card{padding:12px;border:1px solid #dbe5ef;border-radius:8px;background:linear-gradient(180deg,#fff,#f8fafc)}.lineage-node-card.compact{padding:10px 12px}.lineage-node-card.root{border-color:#60a5fa;background:#eff6ff}.lineage-node-card strong,.lineage-node-card p,.lineage-node-card small{display:block;margin:0}.lineage-node-card p{margin-top:4px;color:#475569}.lineage-node-card small{margin-top:6px;color:#64748b}.lineage-edge-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.edge-arrow{color:#64748b}.wizard-shell{gap:16px}.wizard-steps{display:flex;gap:8px;flex-wrap:wrap}.wizard-step{padding:8px 12px;border-radius:999px;background:#f1f5f9;color:#64748b;font-size:12px;font-weight:600}.wizard-step.active{background:#17324d;color:#fff}.wizard-step.disabled{opacity:.65}.field-block{display:flex;flex-direction:column;gap:6px}.field-label{font-size:12px;font-weight:600}.field-help{margin:0;color:#64748b;font-size:12px}.required-star{color:#cf4d4d}.wizard-actions{display:flex;justify-content:flex-end;gap:10px}.review-card{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}.tabs{display:flex;gap:8px;border-bottom:1px solid #e2e8f0;padding-bottom:8px}.tab-button{padding:8px 12px;border:1px solid #dbe3ec;border-radius:8px;background:#fff;color:#64748b}.tab-button.active{background:#17324d;color:#fff;border-color:#17324d}.tree-table{display:flex;flex-direction:column;gap:6px}.tree-table-head,.tree-row{display:grid;grid-template-columns:1.4fr 1.6fr .8fr .8fr;gap:12px;align-items:center}.tree-table-head{padding:0 12px 6px;color:#64748b;text-transform:uppercase;letter-spacing:.08em}.tree-row{width:100%;padding:10px 12px;border:1px solid #edf2f7;border-radius:8px;background:#fff;color:#17324d;text-align:left}.tree-row:hover{background:#f8fafc}.tree-cell{display:flex;align-items:center;gap:8px;min-width:0;padding-right:12px}.tree-attribute-cell{padding-left:4px;padding-right:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tree-attribute-badges{display:flex;flex-wrap:wrap;gap:4px}.tree-attribute-badge{display:inline-block;max-width:130px;min-width:0;padding:1px 8px;border:1px solid transparent;border-radius:999px;font-size:11px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.tree-attribute-toggle{padding:1px 8px;border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#475569;font-size:11px;line-height:1.3}.tree-primary{font-weight:600}.tree-toggle,.tree-toggle-placeholder{width:18px;height:18px;display:inline-grid;place-items:center;flex:0 0 18px}.tree-toggle{border:1px solid #dbe3ec;border-radius:4px;background:#fff;color:#17324d;font-size:14px;line-height:1;padding:0}.json-preview{margin:0;padding:12px;border-radius:8px;background:#0f172a;color:#dbeafe;overflow:auto;font-size:12px}.error{color:#cf4d4d}@media(max-width:960px){.shell,.two-column-layout,.dashboard-grid,.content-grid{grid-template-columns:1fr}.sidebar{min-height:auto}.content-header,.toolbar,.page-header,.page-top,.page-header-block{flex-direction:column;align-items:stretch}.detail-grid,.status-form,.relation-form{grid-template-columns:1fr}}@keyframes shimmer{to{transform:translate(100%)}}.section-head.compact{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.section-head.compact strong{font-size:13px;color:#1e293b}.fsd-combined-card{grid-column:1 / -1}.journey-banner-section{margin-bottom:16px}.journey-banner{display:flex;align-items:center;gap:16px;padding:16px 20px;border-radius:12px;border:1px solid #fed7aa;background:linear-gradient(135deg,#fff7ed,#fff 60%);text-decoration:none;color:#1f3a5f;box-shadow:0 2px 6px #f973161a;transition:transform .15s,box-shadow .15s}.journey-banner:hover{transform:translateY(-1px);box-shadow:0 6px 14px #f9731638}.journey-banner-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:#f97316;color:#fff;font-size:22px;font-weight:700;flex-shrink:0}.journey-banner-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.journey-banner-text strong{font-size:15px;color:#1f3a5f}.journey-banner-text span{font-size:12px;color:#64748b}.journey-banner-arrow{font-size:22px;color:#f97316;font-weight:700}.journey-landing{min-height:100vh;background:linear-gradient(180deg,#f1f5f9,#fff);padding:24px}.journey-landing-header{max-width:1200px;margin:0 auto 16px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:12px 4px}.journey-landing-brand h1{margin:0 0 6px;font-size:22px;color:#17324d}.journey-landing-brand p{margin:0;color:#64748b;font-size:14px;max-width:720px}.journey-landing-actions{display:flex;gap:8px;flex-shrink:0}.journey-landing-actions a{text-decoration:none;padding:10px 18px;border-radius:8px;font-weight:600;font-size:13px;border:1px solid var(--border);color:var(--fg);background:#fff}.journey-landing-actions a.primary{background:var(--primary);color:var(--primary-contrast);border-color:var(--primary)}.journey-map-wrap{padding:24px 16px}.journey-map{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:24px;background:linear-gradient(180deg,#f8fafc,#fff);padding:32px 28px;border-radius:16px;border:1px solid #e2e8f0}.journey-row{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:14px}.journey-block{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:10px;font-weight:700;text-transform:uppercase;-webkit-user-select:none;user-select:none;min-height:72px;letter-spacing:.3px;transition:transform .15s,box-shadow .15s}.journey-block.active{background:#fff;border:1px solid #fed7aa;color:#1f3a5f;cursor:pointer;box-shadow:0 4px 12px #f973161f}.journey-block.active:hover{transform:translateY(-2px);box-shadow:0 8px 20px #f9731638}.journey-block.active:focus{outline:2px solid #f97316;outline-offset:2px}.journey-block.inactive{background:#f1f5f9;border:1px solid #cbd5e1;color:#94a3b8;cursor:not-allowed}.journey-block-number{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 8px;border-radius:8px;font-size:18px;font-weight:700;flex-shrink:0}.journey-block.active .journey-block-number{background:#f97316;color:#fff}.journey-block.inactive .journey-block-number{background:#94a3b8;color:#fff}.journey-block-title{font-size:14px;line-height:1.2}.journey-arrow{display:flex;align-items:center;justify-content:center;color:#1e293b;font-size:26px;font-weight:900}@media(max-width:900px){.journey-row{grid-template-columns:1fr}.journey-arrow{transform:rotate(90deg)}}.version-compare{display:flex;flex-direction:column;gap:16px}.version-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 16px;padding:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;font-size:12px}.version-compare-toolbar{display:flex;align-items:center;gap:12px}.version-diff-table th{background:#f1f5f9;font-weight:600}.version-diff-table tr.diff-changed{background:#fef3c7}.version-diff-table td.diff-old{color:#b91c1c;text-decoration:line-through;opacity:.85}.version-diff-table tr.diff-changed td.diff-old{color:#991b1b;font-weight:500}.version-diff-table td.diff-new{color:#065f46}.version-diff-table tr.diff-changed td.diff-new{color:#166534;font-weight:600}.history-row{cursor:pointer}.history-row:hover{background:#f1f5f9}.history-compare-cell{width:110px;text-align:right}.fsd-card-divider{border:none;border-top:1px solid #e2e8f0;margin:12px 0}.fsd-block-header-clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.fsd-block-header-clickable:hover{background:#f1f5f9}.fsd-block-toggle{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:4px;background:#e2e8f0;color:#475569;font-size:14px;font-weight:700;flex-shrink:0}.fsd-blocks-view{display:flex;flex-direction:column;gap:10px}.fsd-block-card{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.fsd-block-header{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.fsd-block-name{font-weight:600;font-size:13px;flex:1}.badge-xs{font-size:10px;padding:1px 6px}.badge-amber{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.badge-blue{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.badge-green{background:#dcfce7;color:#166534;border:1px solid #86efac}.fsd-block-terms{padding:8px 12px;display:flex;flex-direction:column;gap:4px}.fsd-block-term-row{display:flex;align-items:center;gap:6px}.prop-empty{font-size:12px;color:#94a3b8;margin:0}.fsd-blocks-editor{display:flex;flex-direction:column;gap:12px;min-width:520px}.fsd-block-edit-card{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.fsd-block-edit-header{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.fsd-block-name-label{font-size:12px;color:#64748b;white-space:nowrap;flex-shrink:0}.fsd-block-name-input{flex:1;border:1px solid #d1dce7;border-radius:5px;padding:4px 8px;font-size:13px;background:#fff}.fsd-block-type-select{border:1px solid #d1dce7;border-radius:5px;padding:4px 6px;font-size:13px;width:130px;flex-shrink:0}.fsd-block-terms-edit{padding:10px 12px;display:flex;flex-direction:column;gap:6px}.fsd-term-edit-row{display:flex;align-items:center;gap:8px;padding:4px 0;border-bottom:1px solid #f1f5f9}.fsd-term-edit-name{flex:1;font-size:13px;color:#334155}.fsd-term-attr{display:flex;align-items:center;gap:4px;font-size:12px;color:#64748b;cursor:pointer}.fsd-add-term-row{display:flex;gap:8px;align-items:center;margin-top:4px}.fsd-term-select{flex:1;border:1px solid #d1dce7;border-radius:5px;padding:5px 8px;font-size:12px}.fsd-inline-picker{margin-top:6px;display:flex;flex-direction:column;gap:0}.fsd-domain-term-picker{margin-top:8px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:8px;align-items:start}.fsd-picker-field{position:relative;display:flex;flex-direction:column}.fsd-picker-field.disabled .fsd-term-search-input{background:#f1f5f9;color:#94a3b8;cursor:not-allowed}.fsd-picker-clear{position:absolute;top:4px;right:6px;width:20px;height:20px;border:none;border-radius:4px;background:transparent;color:#64748b;font-size:14px;cursor:pointer;line-height:1}.fsd-picker-clear:hover{background:#f1f5f9;color:#ef4444}.fsd-picker-field .fsd-inline-results{position:static;margin-top:4px;border:1px solid #e2e8f0;border-radius:6px;box-shadow:0 8px 20px #0f172a1f;max-height:260px;overflow-y:auto}@media(max-width:720px){.fsd-domain-term-picker{grid-template-columns:minmax(0,1fr)}}.fsd-term-search-input{width:100%;border:1px solid #d1dce7;border-radius:6px;padding:6px 10px;font-size:12px}.fsd-term-search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #bfdbfe}.fsd-inline-results{border:1px solid #e2e8f0;border-top:none;border-radius:0 0 6px 6px;background:#fff;display:flex;flex-direction:column;max-height:200px;overflow-y:auto}.fsd-inline-result-item{display:flex;align-items:center;gap:8px;padding:6px 10px;background:none;border:none;text-align:left;cursor:pointer;font-size:12px;color:#1e293b;border-bottom:1px solid #f1f5f9}.fsd-inline-result-item:hover{background:#f8fafc}.fsd-inline-result-item strong{flex:1}.fsd-inline-result-item small{color:#94a3b8;font-size:10px}.danger-link{background:none;border:none;color:#ef4444;font-size:12px;cursor:pointer;padding:2px 4px}.danger-link:hover{text-decoration:underline}.danger-link.small{font-size:14px;font-weight:600}.button.small,button.small{padding:4px 10px;font-size:12px}
