@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap";:root{--ink: #333e48;--slate: #4d5b68;--muted: #7c8792;--faint: #a7afb5;--rule: #e2e3de;--paper: #fbfaf6;--glass: #fbfaf6eb;--land: #f4f3ed;--sky: #62b7f9;--sky-ink: #2c7fc0;--amber: #f0b061;--amber-ink: #a8620f;--danger: #b8493a;--shadow: 0 6px 24px #2b353f14, 0 1px 3px #2b353f0f;--spring: linear( 0, .089, .287, .514, .72, .881, .99, 1.053, 1.08, 1.082, 1.07, 1.052, 1.033, 1.017, 1.006, .998, .994, .993, .995, .998, 1 );--spring-snappy: linear( 0, .135, .397, .653, .846, .965, 1.025, 1.045, 1.043, 1.032, 1.02, 1.01, 1.003, 1, .998, .999, 1 );--glide: cubic-bezier(.65, 0, .35, 1);font-family:DM Sans,sans-serif;font-size:13px;color:var(--ink);background:var(--land);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none;padding:0;transition:background .15s,color .15s,box-shadow .15s}button:disabled{cursor:wait;opacity:.5}:focus-visible{outline:2px solid var(--sky);outline-offset:2px}a{color:inherit;text-decoration:none}kbd{display:inline-flex;align-items:center;gap:2px;font:500 10px DM Sans,sans-serif;color:var(--muted);border:1px solid var(--rule);border-radius:4px;padding:1px 5px}.eyebrow{font-size:9.5px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;color:var(--muted)}.icon-button:hover:not(:disabled){background:#edeee9;color:var(--ink)}main{height:100dvh;overflow:hidden}.count{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.start{display:grid;place-items:center;background:var(--land)}.drop-zone{display:flex;flex-direction:column;align-items:center;gap:6px;padding:48px 72px;border:1px dashed #cfd2cb;border-radius:16px;background:var(--glass);box-shadow:var(--shadow)}.drop-zone:hover{border-color:var(--faint)}.drop-zone small{font-size:11px;color:var(--muted)}.start-label{margin:0;font-family:Libre Caslon Display,Georgia,serif;font-size:26px;letter-spacing:-.3px}.start-error{max-width:360px;margin-top:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;color:var(--danger)}.drop-overlay{position:fixed;top:8px;right:8px;bottom:8px;left:8px;z-index:10;border:2px dashed var(--sky);border-radius:16px;background:#62b7f914;pointer-events:none}.app{display:grid;grid-template-columns:240px minmax(0,1fr)}.sidebar{display:flex;flex-direction:column;gap:18px;min-height:0;padding:14px 12px 12px;background:var(--paper);border-right:1px solid var(--rule)}.library{position:relative}.library-trigger{display:flex;align-items:center;gap:6px;width:calc(100% + 12px);margin:0 -6px;padding:5px 8px;border-radius:8px;font-weight:600;text-align:left}.library-trigger:hover,.library-trigger[aria-expanded=true]{background:#f1f1ec}.library-trigger span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-trigger svg{flex:none;color:var(--muted);transition:transform .3s var(--spring-snappy)}.library-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.library-menu{position:absolute;top:calc(100% + 4px);left:-6px;z-index:5;width:300px;border-radius:12px;background:var(--glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--rule);box-shadow:var(--shadow)}.library-menu .picks{border-top:0}.library-row{position:relative;display:flex;align-items:center}.picks [aria-current=true] .card-name{font-weight:600}.library-add{margin-top:4px;padding-top:4px;border-top:1px solid var(--rule)}.picks .library-add [role=option]{align-items:center;color:var(--slate)}.library-add svg{color:var(--muted)}.side-section{display:flex;flex:none;flex-direction:column;min-height:0}.side-section.tables{flex:0 1 auto;max-height:36%}.legend{margin-top:auto}.legend-list{display:flex;flex-direction:column;gap:5px;list-style:none;margin:2px 0 0;padding:0 2px;font-size:12px;color:var(--muted)}.legend-list li{display:flex;align-items:center;gap:8px}.legend-list svg{flex:none}.legend-list .legend-kv{gap:10px;font-variant-numeric:tabular-nums}.legend-kv span{display:flex;align-items:center;gap:4px}.section-head{display:flex;align-items:center;justify-content:space-between;height:26px;padding-left:2px}.card-list{list-style:none;padding:0;margin:4px -6px 0}@property --thumb{syntax: "<color>"; inherits: true; initial-value: transparent;}.tables .card-list{--gutter: 8px;--fade: 48px;margin-right:-12px;overflow-y:auto;scrollbar-gutter:stable;padding-bottom:var(--fade);mask:linear-gradient(to bottom,#000 calc(100% - var(--fade)),transparent) left / calc(100% - var(--gutter)) 100% no-repeat,linear-gradient(#000,#000) right / var(--gutter) 100% no-repeat;transition:--thumb .4s}.tables .card-list.scrolling{--thumb: #333e4852;transition:none}.tables .card-list::-webkit-scrollbar{width:var(--gutter)}.tables .card-list::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:4px;background:var(--thumb) padding-box}@supports not selector(::-webkit-scrollbar){.tables .card-list{scrollbar-width:thin;scrollbar-color:var(--thumb) transparent}}.card-list li{position:relative;display:flex;align-items:center;border-radius:8px}.card-list li>button:first-child,.card-list li>.rename{display:flex;align-items:center;gap:8px;width:100%;min-width:0;padding:6px 8px;border-radius:8px;text-align:left;font-size:12px}.card-list li:hover{background:#f1f1ec}.card-list li.active{background:#edeee9}.card-list li.active .card-name{font-weight:600}.card-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diagram-row .remove,.library-row .remove{position:absolute;right:2px;width:22px;height:22px;opacity:0}.diagram-row:hover .remove,.diagram-row .remove:focus-visible,.library-row:hover .remove,.library-row .remove:focus-visible{opacity:1}.diagram-row:hover .count,.library-row:hover .count{visibility:hidden}.rename{font:inherit;color:var(--ink);border:1px solid var(--sky);background:var(--paper);outline:none}.pane{min-width:0;min-height:0;background:var(--paper)}.page{display:flex;flex-direction:column;height:100%}.page-header{display:flex;align-items:baseline;gap:10px;padding:14px 16px 12px 20px;border-bottom:1px solid var(--rule)}.page-header h1{margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Libre Caslon Display,Georgia,serif;font-weight:400;font-size:26px;line-height:1.1;letter-spacing:-.3px}.page-header .count{font-size:12px}.page-header>:last-child{margin-left:auto;align-self:center}.toolbar{display:flex;gap:2px}.search{display:flex;align-items:center;gap:6px;width:220px;padding:0 10px;border-radius:9px;background:#ecede8;color:var(--muted)}.search input{flex:1;min-width:0;padding:7px 0;border:0;background:none;font:inherit;color:var(--ink);outline:none}.grid{flex:1;min-height:0;overflow:auto;font-size:12px}.grid-head{position:sticky;top:0;z-index:1;background:var(--paper);border-bottom:1px solid var(--rule)}.grid-body{position:relative}.grid-row{position:absolute;left:0;border-bottom:1px solid #efefea}.grid-row:hover{background:#f4f4ef}.grid-cell{position:absolute;top:0;display:flex;align-items:center;gap:3px;height:100%;padding:0 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:28px}.grid-row .grid-cell{display:block}.grid-cell.number{justify-content:flex-end;text-align:right;font-variant-numeric:tabular-nums}.grid-head .grid-cell{font-size:10.5px;font-weight:600;color:var(--muted)}.grid-head .grid-cell:hover{color:var(--ink);background:#f1f1ec}.grid-head .grid-cell span{overflow:hidden;text-overflow:ellipsis}.stage{position:relative;flex:1;min-height:0;overflow:hidden}.stage canvas{display:block;width:100%;height:100%;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.stage canvas:active{cursor:grabbing}.add{position:absolute;top:12px;left:12px;width:300px;border-radius:12px;background:var(--glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--rule);box-shadow:var(--shadow)}.add input{width:100%;padding:9px 12px;border:0;background:none;font:inherit;color:var(--ink);outline:none}.picks{max-height:340px;overflow-y:auto;list-style:none;margin:0;padding:4px;border-top:1px solid var(--rule)}.picks [role=option]{display:flex;align-items:baseline;gap:8px;width:100%;padding:6px 8px;border-radius:7px;text-align:left;font-size:12px}.picks [role=option].active{background:#edeee9}.pick-kind{width:30px;font-size:9.5px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.tip{position:absolute;z-index:2;display:flex;flex-direction:column;gap:2px;transform:translate(-50%,calc(-100% - 14px));padding:6px 9px;border-radius:8px;background:var(--ink);color:var(--paper);font-size:11px;white-space:nowrap;pointer-events:none}.tip strong{font-weight:600}
