.sql-erd-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:3rem;color:var(--slate-600);text-align:center;height:100%}.sql-erd-container{display:flex;flex-direction:column;height:100%;overflow:hidden}.sql-erd-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;padding:.55rem .85rem;border-bottom:1px solid rgba(255,255,255,.08);background:color-mix(in srgb,var(--slate-900) 35%,transparent)}.sql-erd-title{display:flex;align-items:center;gap:.4rem;color:var(--slate-400);font-size:.78rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.sql-erd-title svg{color:var(--blue-400)}.sql-erd-close{display:grid;place-items:center;width:26px;height:26px;border-radius:.35rem;background:transparent;color:var(--slate-500);cursor:pointer;border:none}.sql-erd-close:hover{background:#ffffff12;color:var(--slate-200)}.sql-erd-legend{display:flex;align-items:center;gap:.85rem;flex-shrink:0;padding:.4rem .85rem;border-bottom:1px solid rgba(255,255,255,.06);background:#0a0f1e66}.sql-erd-legend-item{display:flex;align-items:center;gap:.3rem;color:var(--slate-500);font-size:.68rem}.sql-erd-legend-key{width:8px;height:8px;border-radius:2px;flex-shrink:0}.sql-erd-canvas-wrapper{flex:1;min-height:0;overflow:auto;padding:.85rem}.sql-erd-canvas{position:relative;min-height:100%}.sql-erd-svg{position:absolute;top:0;left:0;pointer-events:none;z-index:0}.sql-erd-table{position:absolute;border-radius:.55rem;border:1px solid rgba(255,255,255,.08);background:#0a0f1e99;overflow:hidden;z-index:1;transition:transform .15s ease,box-shadow .15s ease}.sql-erd-table:hover,.sql-erd-table.hovered{transform:translateY(-2px);box-shadow:0 8px 24px #00000059;z-index:2}.sql-erd-table-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.55rem .75rem;font-size:.8rem;font-weight:800}[data-theme=light] .sql-erd-table-header{color:var(--lab-text-title)}.sql-erd-column{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.35rem .75rem;font-size:.74rem;border-bottom:1px solid rgba(255,255,255,.04);min-height:32px}.sql-erd-column:last-child{border-bottom:none}.sql-erd-col-name{display:flex;align-items:center;gap:.3rem;color:var(--slate-200);font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sql-erd-col-type{color:var(--slate-500);font-size:.65rem;font-family:var(--font-mono);flex-shrink:0}.sql-erd-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:14px;border-radius:3px;font-size:.55rem;font-weight:900;flex-shrink:0}.sql-erd-badge.pk{background:#3b82f633;color:var(--blue-400)}.sql-erd-badge.fk{background:color-mix(in srgb,var(--amber-400) 20%,transparent);color:var(--amber-400)}.sql-erd-badge.col{width:4px;height:4px;border-radius:50%;background:var(--slate-500)}.sql-btn-schema{display:inline-flex;align-items:center;gap:.3rem;padding:.4rem .65rem;border-radius:.4rem;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:var(--slate-400);font-size:.75rem;font-weight:800;cursor:pointer}.sql-btn-schema:hover{background:#3b82f61a;border-color:#3b82f640;color:var(--blue-400)}.sql-btn-schema.active{background:#3b82f626;border-color:#3b82f64d;color:var(--blue-400)}.sql-btn-schema.active svg{color:var(--blue-400)}[data-theme=light] .sql-btn-schema{border-color:var(--lab-border);background:#0000000a;color:var(--lab-text-muted)}.sql-schema-section{border-bottom:1px solid rgba(255,255,255,.055)}.sql-schema-header{display:flex;align-items:center;gap:.45rem;width:100%;padding:.6rem .85rem;background:transparent;color:var(--slate-400);font-size:.75rem;font-weight:800}.sql-schema-header:hover{background:#ffffff0a;color:var(--slate-200)}.sql-schema-active{padding:.35rem .85rem;font-size:.68rem;color:var(--amber-500);font-weight:700;border-bottom:1px solid rgba(255,255,255,.055);display:flex;align-items:center;gap:.3rem}.sql-db-select{width:100%;padding:.3rem .5rem;border-radius:.35rem;border:1px solid rgba(255,255,255,.08);background:color-mix(in srgb,var(--slate-900) 60%,transparent);color:var(--slate-200);font-size:.75rem;cursor:pointer}.sql-db-select:focus{outline:none;border-color:#3b82f666}[data-theme=light] .sql-db-select{background:#fffc;color:var(--lab-text);border-color:var(--lab-border)}.sql-table-item{display:flex;align-items:center;gap:.35rem;width:100%;padding:.35rem .85rem;background:transparent;color:var(--slate-400);text-align:left;font-size:.78rem}.sql-table-item:hover{background:#ffffff0a;color:var(--slate-300)}.sql-table-item.active{background:#3b82f614;color:var(--blue-400)}.sql-table-item .table-icon{width:14px;height:14px;flex-shrink:0}.sql-column-list{padding:.2rem .85rem .2rem 1.8rem}.sql-column-item{display:flex;flex-direction:column;padding:.25rem 0;font-size:.72rem;border-bottom:1px solid rgba(255,255,255,.03)}.sql-column-item:last-child{border-bottom:none}.sql-col-name{color:var(--slate-300);font-weight:600}.sql-col-type{color:var(--slate-500);font-size:.65rem}.sql-col-constraint{color:var(--amber-500);font-size:.62rem;font-weight:600}.sql-hero-section{position:relative;z-index:1;padding:4rem 0 2.5rem}.sql-landing{max-width:1200px;margin:0 auto;padding:0 1.5rem}.sql-hero-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .75rem;border-radius:999px;background:#f59e0b1a;border:1px solid rgba(245,158,11,.15);color:var(--amber-400);font-size:.8rem;font-weight:700}[data-theme=light] .sql-hero-badge{color:var(--blue-600)}.sql-hero-title{color:var(--slate-50);font-size:2.8rem;font-weight:900;line-height:1.1;margin:1rem 0}.sql-hero-highlight{background:linear-gradient(135deg,var(--amber-500),var(--blue-500));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.sql-hero-desc{color:var(--slate-400);font-size:1.1rem;line-height:1.65;max-width:600px;margin:0 0 1.5rem}[data-theme=light] .sql-hero-desc{color:var(--lab-text-muted)}.sql-hero-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.sql-sections-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin:2rem 0}.sql-section-card{padding:1.25rem;border-radius:.75rem;border:1px solid rgba(255,255,255,.08);background:color-mix(in srgb,var(--slate-900) 35%,transparent);cursor:pointer;transition:transform .2s ease,border-color .2s ease}.sql-section-card:hover{transform:translateY(-2px);border-color:#3b82f64d}[data-theme=light] .sql-section-card{border-color:var(--lab-border);background:#ffffffe0}[data-theme=light] .sql-section-card h3{color:var(--lab-text-title)}[data-theme=light] .sql-section-card p{color:var(--lab-text-muted)}.sql-section-card-icon{font-size:1.8rem;margin-bottom:.5rem}.sql-section-card h3{margin:0 0 .35rem;color:var(--slate-50);font-size:1rem}.sql-section-card p{margin:0;color:var(--slate-400);font-size:.82rem;line-height:1.55}.sql-features-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin:2rem 0}.sql-feature-item{display:flex;align-items:flex-start;gap:.55rem;padding:.75rem;border-radius:.5rem;background:#ffffff08;border:1px solid rgba(255,255,255,.06)}[data-theme=light] .sql-feature-item{background:#00000005;border-color:var(--lab-border2)}.sql-feature-icon{font-size:1.2rem;flex-shrink:0}.sql-feature-text strong{display:block;color:var(--slate-50);font-size:.85rem;margin-bottom:.1rem}[data-theme=light] .sql-feature-text strong{color:var(--lab-text-title)}.sql-feature-text span{color:var(--slate-500);font-size:.78rem}[data-theme=light] .sql-feature-text span{color:var(--lab-text-dim)}.sql-project-progress{margin-bottom:1.5rem;padding:.85rem 1rem;border-radius:.55rem;border:1px solid rgba(255,255,255,.07);background:#ffffff09}[data-theme=light] .sql-project-progress{border-color:var(--lab-border2);background:#00000005}.sql-project-steps{display:flex;flex-direction:column;gap:.35rem}.sql-project-step{display:flex;align-items:center;gap:.65rem;width:100%;padding:.55rem .65rem;border-radius:.45rem;background:transparent;color:var(--slate-400);border:1px solid transparent;cursor:pointer;transition:all .15s ease}.sql-project-step:hover{background:#ffffff0d;border-color:#ffffff14}.sql-project-step.active{background:#3b82f61a;border-color:#3b82f640;color:var(--blue-400)}.sql-project-step.past{color:var(--green-500)}.sql-step-circle{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;font-size:.72rem;font-weight:800;flex-shrink:0;background:#ffffff0f;border:2px solid rgba(255,255,255,.1);transition:all .2s ease}.sql-project-step.active .sql-step-circle{background:#3b82f633;border-color:var(--blue-400);color:var(--blue-400)}.sql-project-step.past .sql-step-circle{background:color-mix(in srgb,var(--green-500) 15%,transparent);border-color:var(--green-500);color:var(--green-500)}.sql-step-label{font-size:.82rem;font-weight:600}.sql-chapter-badge.project{background:color-mix(in srgb,var(--indigo-600) 11%,transparent);border-color:color-mix(in srgb,var(--indigo-600) 18%,transparent);color:var(--indigo-400)}.sql-sg-header.projects .sql-sg-title{color:var(--indigo-300)}.sql-sg-header.projects:hover,.sql-sg-header.projects.expanded{background:color-mix(in srgb,var(--indigo-600) 6%,transparent)}.sql-sg-header.projects .sql-sg-title svg{color:var(--indigo-400)}.jsl-sidebar-group:has(.sql-sg-header.projects) .sql-si.active{background:color-mix(in srgb,var(--indigo-600) 10%,transparent);color:var(--indigo-400)}.sql-footer{display:none}.sql-multi-results{display:flex;flex-direction:column;gap:.75rem;padding:.5rem 0}.sql-batch-result{border:1px solid rgba(255,255,255,.07);border-radius:.45rem;overflow:hidden;background:color-mix(in srgb,var(--slate-900) 25%,transparent)}.sql-batch-label{display:flex;align-items:center;gap:.45rem;padding:.35rem .65rem;background:#ffffff08;border-bottom:1px solid rgba(255,255,255,.06);font-size:.7rem}.sql-batch-num{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#f59e0b1f;color:var(--amber-400);font-size:.6rem;font-weight:800;flex-shrink:0}.sql-batch-query{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--slate-400);font-family:var(--font-mono);font-size:.7rem}.sql-batch-count{flex-shrink:0;color:var(--slate-500);font-size:.65rem}.sql-batch-result .sql-results-table{font-size:.72rem}.sql-batch-result .sql-results-table th{padding:.35rem .55rem;font-size:.7rem}.sql-batch-result .sql-results-table td{padding:.25rem .55rem}.sql-batch-result .sql-results-empty{padding:1rem;font-size:.75rem}.sql-results-numeric{text-align:right;font-family:var(--font-mono)}
