.image-panel{height:100%;width:100%;padding:0;box-sizing:border-box}.image-panel,.image-panel__inner{display:flex;flex-direction:column}.image-panel__inner{position:relative;flex:1;min-height:0;background:var(--background-primary);overflow:hidden}.image-panel__title-section{padding:72px 16px 16px;flex-shrink:0}.image-panel__title{margin:0;font-size:var(--text-2xl);font-weight:var(--font-semibold);line-height:1.3;color:var(--ink-title);letter-spacing:.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-panel__subline{margin-top:4px}.image-panel__caption{margin:8px 0 0;font-size:var(--text-sm);line-height:1.5;color:var(--ink-secondary);display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.image-panel__tags{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0;padding:0;list-style:none}.image-panel__tag{padding:2px 8px;border:.5px solid var(--border-default);border-radius:999px;background:var(--background-tertiary);color:var(--ink-secondary);font-size:var(--text-xs);line-height:1.6;white-space:nowrap}.image-panel__content{position:relative;flex:1;min-height:0;overflow:hidden;cursor:grab;touch-action:none}.image-panel__content--dragging{cursor:grabbing;user-select:none}.image-panel__image-wrapper{transform:translate(var(--pan-x,0),var(--pan-y,0)) scale(var(--scale,1));transform-origin:0 0}.image-panel__image{display:block;user-select:none;-webkit-user-drag:none}.image-panel__content .image-panel__loading{position:absolute;inset:0;width:100%;height:100%;border-radius:0}.image-panel__error{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:12px;color:var(--ink-tertiary);font-size:var(--text-xs);padding:32px;text-align:center}.image-panel__error-title{color:var(--ink-secondary);font-size:var(--text-base);font-weight:var(--font-medium)}.image-panel__error-detail{color:var(--ink-tertiary)}.image-panel__error-download{margin-top:var(--space-2);padding:var(--space-1) var(--space-4);font-family:var(--font-sans);font-size:var(--text-xs);color:var(--ink-secondary);background:var(--background-secondary);border:1px solid var(--border-default);border-radius:var(--radius-button);cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.image-panel__error-download:hover{background:var(--background-hover)}@media (max-width:768px){.image-panel__title-section{padding:64px 12px 12px}.image-panel__title{font-size:var(--text-xl)}}.diagram-panel{display:flex;flex-direction:column;height:100%;width:100%;padding:0;box-sizing:border-box}.diagram-panel__inner{position:relative;display:flex;flex-direction:column;flex:1;min-height:0;background:var(--background-primary);overflow:hidden}.diagram-panel__title-section{padding:72px 16px 16px;flex-shrink:0}.diagram-panel__title{margin:0;font-size:var(--text-2xl);font-weight:var(--font-semibold);line-height:1.3;color:var(--ink-title);letter-spacing:.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diagram-panel__subline{margin-top:4px}.diagram-panel__content{position:relative;flex:1;min-height:0;overflow:hidden;cursor:grab;touch-action:none}.diagram-panel__content--dragging{cursor:grabbing;user-select:none}.diagram-panel__diagram-wrapper{width:3000px;min-width:3000px;transform:translate(var(--pan-x,0),var(--pan-y,0)) scale(var(--scale,1));transform-origin:0 0}.diagram-panel__diagram-wrapper svg{max-width:none}.diagram-panel__error,.diagram-panel__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:12px;color:var(--ink-tertiary);font-size:var(--text-xs);padding:32px;text-align:center}.diagram-panel__error{color:var(--status-error)}@media (max-width:768px){.diagram-panel__title-section{padding:64px 12px 12px}.diagram-panel__title{font-size:var(--text-xl)}}.file-card{position:relative;background:var(--background-secondary);border:none;border-radius:var(--radius-card);padding:14px;box-shadow:var(--shadow-card);transition:background-color var(--duration-normal) var(--ease-out);cursor:pointer;min-height:80px;display:flex;align-items:center;gap:12px}.file-card:hover{background:rgba(var(--white-rgb),.06)}.file-card.saved{background:var(--selected-card-bg)}.file-card.saved:hover{background:var(--accent-medium)}.file-card .card-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:#0000;border-radius:var(--radius-xs);color:var(--accent-primary);flex-shrink:0}.file-card .card-icon svg{font-size:var(--text-2xl)}.file-card .card-icon.has-thumbnail{width:48px;height:48px;overflow:hidden;border-radius:var(--radius-sm);background:var(--background-secondary)}.file-card .card-thumbnail{width:100%;height:100%;object-fit:cover}.file-card .card-content{flex:1;min-width:0}.file-card .card-title{font-size:var(--text-xs);font-weight:600;color:var(--ink-primary);margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.file-card .card-meta{display:flex;align-items:center;gap:6px;font-size:var(--text-2xs);color:var(--ink-secondary)}.file-card .card-type{background:var(--accent-primary);color:#fff;padding:2px 6px;border-radius:var(--radius-xs);font-size:var(--text-3xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.file-card .card-meta-sep{opacity:.5}.file-card .card-subtitle{color:var(--ink-secondary)}.file-card .card-actions{position:absolute;top:12px;right:12px;display:flex;gap:var(--space-1);z-index:var(--z-base-elevated)}.file-card .card-menu-btn{width:28px;height:28px;border-radius:var(--radius-sm);border:none;background:#0000;color:var(--ink-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--duration-normal) var(--ease-out),background-color var(--duration-normal) var(--ease-out),color var(--duration-normal) var(--ease-out);position:relative}.file-card .card-menu-btn:after{content:"";position:absolute;inset:-8px}.file-card .card-actions--shown .card-menu-btn,.file-card:focus-within .card-menu-btn,.file-card:hover .card-menu-btn{opacity:1}.file-card .card-menu-btn:hover{background:var(--background-hover);color:var(--ink-primary)}.file-card .card-menu-btn:active{transform:scale(.97)}.file-card.compact{min-height:48px;padding:6px 10px;gap:8px}.file-card.compact .card-icon{width:28px;height:28px}.file-card.compact .card-icon svg{font-size:var(--text-lg)}.file-card.compact .card-icon.has-thumbnail{width:32px;height:32px}.file-card.compact .card-title{font-size:var(--text-xs)}.file-card.compact .card-meta{font-size:var(--text-2xs)}.file-card.compact .card-type{font-size:var(--text-3xs);padding:2px 5px}.theme-light .file-card:hover{background:var(--background-hover)}.theme-light .file-card.saved:hover{background:var(--accent-medium)}.corporate-card-scope{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5}.entity-card{display:inline-flex;align-items:flex-start;border-radius:var(--radius-sm);transition:background var(--duration-normal) var(--ease-default),box-shadow var(--duration-normal) var(--ease-default);cursor:pointer;user-select:text;-webkit-user-select:text;background:rgba(var(--ec-bg-rgb),.12);border:1px solid rgba(var(--ec-bg-rgb),.25)}.entity-card--compact{padding:4px 10px;align-items:center;gap:6px}.entity-card--compact:hover{background:rgba(var(--ec-bg-rgb),.2);box-shadow:var(--shadow-inner-layer)}.entity-card--compact:active{transform:scale(.98)}.entity-card--compact .entity-card__icon{display:flex;align-items:center;flex-shrink:0;color:rgba(var(--ec-bg-rgb),.8)}.entity-card--compact .entity-card__icon svg{font-size:var(--text-xs)}.entity-card--compact .entity-card__name{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--ink-primary);line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.entity-card--tooltip{flex-direction:column;padding:10px 12px;gap:4px;max-width:320px;min-width:180px}.entity-card--embedded{background:#0000;border:none;border-radius:0;padding:0}.entity-card--tooltip .entity-card__name{font-size:var(--text-base);font-weight:var(--font-medium);color:var(--ink-primary);line-height:1.4;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entity-card--tooltip .entity-card__subline{display:flex;align-items:center;flex-wrap:wrap;gap:4px;font-size:var(--text-2xs);color:var(--ink-tertiary);line-height:1.4}.entity-card__subline-dot{margin:0 5px;opacity:.5}.entity-card--tooltip .entity-card__original{font-size:var(--text-xs);color:var(--ink-secondary);line-height:1.4}.entity-card__fields{display:flex;flex-direction:column;gap:3px;width:100%;margin-top:4px;padding-top:6px;border-top:1px solid rgba(var(--ec-bg-rgb),.15)}.entity-card__field{display:flex;align-items:baseline;gap:10px}.entity-card__field-label{flex:0 0 64px;font-size:var(--text-2xs);font-weight:600;color:var(--ink-tertiary);text-transform:uppercase;letter-spacing:.03em}.entity-card__field-value{flex:1;font-size:var(--text-xs);color:var(--ink-primary);line-height:1.4;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entity-card:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}:root{--card-border-radius:10px;--card-padding:14px;--card-gap:10px;--card-min-height:80px;--card-shadow:0 2px 8px rgba(var(--black-rgb),0.08);--card-hover-shadow:0 6px 16px rgba(var(--black-rgb),0.12);--card-saved-shadow:0 2px 8px rgba(var(--brand-primary-rgb),0.15);--card-transition:background-color var(--duration-normal) var(--ease-out),border-color var(--duration-normal) var(--ease-out),color var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out),transform var(--duration-normal) var(--ease-out),opacity var(--duration-normal) var(--ease-out)}.diagram-card{position:relative;background:var(--background-secondary);border:none;border-radius:var(--radius-card);padding:var(--card-padding);box-shadow:var(--shadow-card);transition:var(--card-transition);cursor:pointer;min-height:var(--card-min-height)}.diagram-card:hover{background:rgba(var(--white-rgb),.06)}.diagram-card.saved{background:var(--selected-card-bg)}.diagram-card.saved:hover{background:var(--accent-medium)}.diagram-card.dragging{opacity:.5;cursor:grabbing!important;transform:scale(.95)}.card-menu-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:var(--radius-sm);border:none;background:#0000;color:var(--ink-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:var(--card-transition);z-index:var(--z-base-elevated)}.diagram-card:hover .card-menu-btn{opacity:1}.card-menu-btn:hover{background:var(--background-hover);color:var(--ink-primary)}.card-menu-btn:active{transform:scale(.97)}.diagram-card-compact{padding:8px;min-height:150px;display:flex;flex-direction:column;cursor:pointer}.diagram-card-compact .diagram-compact-content{display:flex;flex-direction:column;width:100%;height:100%}.diagram-card-compact .diagram-compact-preview{width:100%;flex:1;min-height:140px;max-height:220px;overflow:hidden;border-radius:var(--radius-sm);background:var(--background-primary);display:flex;align-items:center;justify-content:center;cursor:pointer}.diagram-card-compact .diagram-compact-preview .holoviz-inline,.diagram-card-compact .diagram-compact-preview .holoviz-inline svg{cursor:pointer!important}.diagram-card-compact .diagram-compact-preview .holoviz-inline{margin:0!important;padding:.5rem!important;max-height:220px;overflow:hidden;width:100%}.diagram-card-compact .diagram-compact-preview .holoviz-inline svg{max-height:200px;width:100%;height:auto}.diagram-title{font-size:var(--text-xs);font-weight:600;color:var(--ink-primary);margin:0 0 12px;line-height:1.4;padding-right:40px}.diagram-meta{display:flex;align-items:center;gap:8px}.diagram-type-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--radius-lg);font-size:var(--text-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:var(--entity-person-text);color:#fff}.diagram-preview{margin-top:12px;border-radius:var(--radius-sm);overflow:hidden;background:var(--background-primary)}.diagram-preview .holoviz-inline{margin:0!important;padding:.5rem!important}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.diagram-card{animation:slideIn var(--duration-slow) var(--ease-out) forwards}.theme-light .diagram-card:hover{background:var(--background-hover)}.theme-light .diagram-card.saved:hover{background:var(--accent-medium)}.diagram-preview-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;gap:8px;color:var(--ink-muted);font-size:.875rem}.diagram-preview-placeholder svg{color:inherit}.vault-item-wrapper{position:relative;transition:background-color var(--duration-normal) var(--ease-out),border-color var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out),opacity var(--duration-normal) var(--ease-out)}.vault-item-wrapper.dragging{opacity:.5}.vault-item-wrapper .menu-button{position:absolute;top:12px;right:12px;width:28px;height:28px;border-radius:var(--radius-sm);border:none;background:#0000;color:var(--ink-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--duration-normal) var(--ease-out);z-index:var(--z-base-elevated)}.vault-item-wrapper:hover .menu-button{opacity:1}.menu-button:hover{background:var(--background-hover);color:var(--ink-primary)}.saved .artifact-card,.vault-artifact.saved,.vault-artifact.saved .artifact-card,.vault-item-wrapper .saved{background:var(--selected-card-bg)!important}.saved .artifact-card:hover,.vault-artifact.saved:hover{background:rgba(var(--brand-primary-rgb),.1)!important}.vault-item-wrapper.adding{animation:addPulse .5s ease}.vault-item-wrapper.added{animation:addSuccess var(--duration-slow) var(--ease-default)}@keyframes addPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes addSuccess{0%{background:rgba(var(--status-success-rgb),.2)}to{background:#0000}}.simple-card{background:var(--background-secondary);border:none;border-radius:var(--radius-panel);box-shadow:var(--shadow-card);padding:12px;cursor:pointer;transition:background-color var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out)}.simple-card.saved{background:var(--selected-card-bg)}.simple-card:hover,.theme-light .simple-card:hover{background:var(--background-hover)}.simple-type{font-size:var(--text-2xs);font-weight:600;color:var(--accent-primary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.simple-title{font-size:var(--text-xs);font-weight:500;color:var(--ink-primary)}