:root{font-family:system-ui,sans-serif;color:#e5e7eb;background:#0f172a}*{box-sizing:border-box}body{margin:0;min-width:720px;overflow-x:hidden}button,input{font:inherit}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}#app{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto}header{display:flex;align-items:center;gap:.65rem;padding:.65rem 1rem;background:linear-gradient(180deg,#1d293d,#172033);border-bottom:1px solid #334155}.search-wrap{position:relative}header #search{width:180px}.action-menu-bar{display:flex;align-items:center;gap:.1rem;padding:.2rem;border:1px solid #334155;border-radius:.6rem;background:#0f172a88}.action-menu{position:relative}.action-menu>button{border:0;border-radius:.4rem;background:transparent;color:#cbd5e1}.action-menu>button:hover,.action-menu>button:focus-visible{background:#334155;color:#fff}.action-menu-panel{position:absolute;z-index:15;top:calc(100% + .55rem);left:0;min-width:170px;padding:.4rem;border:1px solid #475569;border-radius:.6rem;background:#1e293b;box-shadow:0 14px 32px #020617cc}.action-menu-panel button{display:block;width:100%;margin:.08rem 0;border:0;border-radius:.35rem;text-align:left;background:transparent}.action-menu-panel button:hover{background:#334155}h1{font-size:1rem;margin:0 auto 0 0}button{border:1px solid #475569;border-radius:.35rem;padding:.45rem .7rem;background:#26354f;color:inherit;cursor:pointer}button:hover{background:#364765}.project-title{display:flex;align-items:center;gap:.25rem}.edit-project-name{padding:.15rem .3rem;border:0;background:transparent;opacity:0}.project-title:hover .edit-project-name,.edit-project-name:focus-visible{opacity:1}main{min-height:0;display:grid;grid-template-columns:230px 1fr 245px}aside{padding:1rem;background:#172033;border-right:1px solid #334155}aside:last-child{border-right:0;border-left:1px solid #334155}.tool-panel{display:flex;flex-direction:column;gap:.45rem}.tool-panel h2,.tool-panel p{margin-bottom:.25rem}.tool-grid{display:grid;grid-template-columns:repeat(3,42px);gap:.45rem}.tool{width:42px;height:42px;padding:0;font-size:1.25rem}.tool.active{border-color:#60a5fa;background:#1d4ed8}.layout-section{margin-top:.9rem;padding-top:.85rem;border-top:1px solid #334155}.layout-section h2{margin-bottom:.55rem}.layout-tool{color:#cbd5e1;background:#1e293b}#cy{min-width:0;background:#111827}#cy.relationship-mode{cursor:crosshair}#cy.delete-mode{cursor:not-allowed}h2{font-size:.9rem;margin-top:0}p{color:#cbd5e1;line-height:1.4;font-size:.88rem}#status{display:flex;gap:1rem;padding:.5rem 1rem;font-size:.85rem;color:#cbd5e1;border-top:1px solid #334155;background:#172033}#app-version{margin-left:auto;color:#94a3b8;font-variant-numeric:tabular-nums}.error{color:#fecaca!important}.hidden{display:none}label{display:block;margin:.8rem 0 .3rem;font-size:.8rem;color:#cbd5e1}input,select{width:100%;padding:.45rem;border:1px solid #475569;border-radius:.3rem;color:#fff;background:#0f172a}input[type=color]{height:2.5rem;padding:.15rem}#node-properties button{margin-top:1rem}.property-color-picker{width:100%;display:flex;align-items:center;gap:.55rem;margin-top:0!important}.property-color-picker:before{content:"";width:1.25rem;height:1.25rem;flex:0 0 auto;border:1px solid #94a3b8;border-radius:.25rem;background:var(--selected-color)}.color-swatches{display:grid;grid-template-columns:repeat(6,1fr);gap:.45rem;margin-top:1rem}.color-swatch{width:100%;aspect-ratio:1;min-width:0;padding:0;border:2px solid #475569;border-radius:.3rem;transition:transform .12s ease,outline-color .12s ease}.color-swatch:hover,.color-swatch:focus-visible{transform:scale(1.12);outline:2px solid #f8fafc;outline-offset:2px;position:relative;z-index:1}.color-swatch[aria-pressed=true]{outline:2px solid #f8fafc;outline-offset:2px}#color-palette-title{cursor:move;-webkit-user-select:none;user-select:none;touch-action:none}.color-palette-actions{display:grid;grid-template-columns:1fr auto;gap:.6rem;align-items:center;margin-top:1rem}.color-palette-actions input{width:2.5rem;grid-column:2;grid-row:1}#save-custom-color{grid-column:1 / -1;margin:0}#save-custom-color:disabled{opacity:.55;cursor:not-allowed}.context-menu{position:fixed;z-index:10;max-width:calc(100vw - 1rem);margin:0;padding:.25rem;list-style:none;border:1px solid #475569;border-radius:.35rem;background:#1e293b;box-shadow:0 8px 22px #020617aa}.context-menu button{width:100%;border:0;text-align:left;background:transparent}.settings-menu{right:.5rem!important;left:auto!important}.settings-menu,.organize-menu{min-width:150px}.search-results{max-height:280px;overflow-y:auto}.search-results button{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}dialog{width:min(420px,calc(100vw - 2rem));padding:0;border:1px solid #475569;border-radius:.5rem;color:#e5e7eb;background:#172033;box-shadow:0 18px 50px #020617cc}dialog::backdrop{background:#02061799}dialog form{padding:1.25rem}dialog h2{margin:0}.dialog-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1.25rem}.check-label{display:flex;align-items:center;gap:.5rem}.check-label input{width:auto}.layout-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.2rem .8rem;max-height:60vh;overflow-y:auto;padding-right:.35rem}.layout-options label{margin-top:.5rem}.relationship-preview{position:fixed;inset:0;width:100vw;height:100vh;z-index:20;pointer-events:none}.relationship-preview line{stroke:#60a5fa;stroke-width:3;stroke-dasharray:7 5}.marquee{position:fixed;z-index:18;border:1px solid #60a5fa;background:#3b82f633;pointer-events:none}.help-dialog{width:min(1000px,calc(100vw - 3rem));height:min(680px,calc(100vh - 3rem))}.help-header{display:flex;gap:.75rem;padding:1rem;border-bottom:1px solid #334155}.help-header input{flex:1}.help-body{display:grid;grid-template-columns:220px 1fr;height:calc(100% - 70px)}#help-nav{padding:.75rem;border-right:1px solid #334155;overflow-y:auto}#help-nav button{width:100%;margin-bottom:.4rem;text-align:left;background:transparent}#help-content{padding:1.25rem 1.5rem;overflow-y:auto}#help-content ul{padding-left:1.25rem}#help-content li{margin:.5rem 0;color:#cbd5e1;font-size:.9rem}.history-action{width:auto;height:auto;padding:.45rem .7rem;font:inherit;font-size:inherit}#custom-properties-list table{width:100%;border-collapse:collapse}#custom-properties-list th,#custom-properties-list td{padding:.6rem .75rem;border-bottom:1px solid #334155;text-align:left}#custom-properties-list th:first-child,#custom-properties-list td:first-child{width:3rem;text-align:center}#custom-properties-list input[type=checkbox]{width:auto;margin:0;vertical-align:middle}
