:root{--bg:#fbfcfd;--bg-panel:#fff;--bg-input:#f0f4f8;--fg:#1f2937;--fg-muted:#5b6573;--accent:#057dbe;--accent-soft:#dceef6;--error:#b85c50;--border:#dee5ec;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--fg);margin:0;padding:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:14px;line-height:1.5}main{max-width:1500px;margin:0 auto;padding:24px 20px}.panel-grid{grid-template-columns:1fr 1fr;align-items:start;gap:16px;display:grid;container-type:inline-size}@media (width<=900px){.panel-grid{grid-template-columns:1fr}}.panel-grid>section{min-width:0;margin-bottom:0}.panel-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.panel-header h2{flex-shrink:0;margin:0}.presets{flex-wrap:wrap;flex:1;justify-content:flex-start;align-items:flex-start;gap:4px;min-width:0;display:flex}.preset-chip{background:var(--accent-soft);color:var(--accent);border:1px solid var(--border);cursor:pointer;border-radius:4px;align-items:center;gap:4px;padding:1px 5px;font-size:12px;font-weight:500;line-height:1.35;transition:filter .12s ease-out,background-color .12s ease-out,color .12s ease-out;display:inline-flex}.preset-chip:hover{border-color:var(--accent)}.preset-chip.active{border-color:var(--accent);font-weight:600}.panel-grid>section.schema-panel,.panel-grid>section.query-panel{padding:16px 0 0}.panel-grid>section.schema-panel .panel-header,.panel-grid>section.query-panel .panel-header{padding:0 16px}.panel-grid>section.schema-panel>.meta{margin:0;padding:8px 16px}.panel-grid>section.results-panel{flex-direction:column;max-height:calc(25cqi - 4px);padding:0;display:flex;overflow:hidden}@media (width<=900px){.panel-grid>section.results-panel{max-height:50cqi}}.panel-grid>section.results-panel>.meta,.panel-grid>section.results-panel>.error{padding:16px}.results-scroll{flex:1;min-height:0;overflow:auto}.loading-stack{max-width:720px;margin:0 auto}.loading-stack section.status{margin-top:12px;margin-bottom:0}header h1{color:var(--accent);letter-spacing:-.5px;margin:0 0 4px;font-size:28px}.subtitle-row{flex-wrap:wrap;align-items:center;gap:16px;margin:0 0 12px;display:flex}header .tagline{color:#034e75;letter-spacing:.1px;margin:0;font-size:16px;font-weight:500}header .intro{max-width:50%;color:var(--fg-muted);text-align:justify;text-justify:inter-word;hyphens:auto;overflow-wrap:break-word;margin:0 0 16px;line-height:1.55}@media (width<=1200px){header .intro{max-width:100%}}header .intro a{color:var(--accent);border-bottom:1px solid var(--border);text-decoration:none;transition:border-color .12s ease-out}header .intro a:hover,header .intro a:focus{border-bottom-color:currentColor;outline:none}header .intro .brand-sqlitegis{color:var(--accent);font-weight:600}header .intro a.brand-sqlite{color:#057dbe}header .intro a.brand-postgis{color:#336791}header .intro a.brand-rust{color:#b7410e}header .intro a.brand-diesel{color:#a82f47}header .intro a.brand-wasm{color:#654ff0}.quick-links{align-items:center;gap:8px;margin:0;display:flex}.quick-links a{background:var(--accent-soft);color:var(--accent);border:1px solid var(--border);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:500;text-decoration:none;transition:border-color .12s ease-out;display:inline-flex}.quick-links a:hover,.quick-links a:focus{border-color:var(--accent);outline:none}.link-icon{fill:currentColor;vertical-align:middle}section{background:var(--bg-panel);border:1px solid var(--border);border-radius:6px;margin-bottom:16px;padding:16px}section h2{margin:0 0 12px;font-size:16px;font-weight:600}section.status p{color:var(--fg-muted);font-family:var(--mono);margin:0;font-size:13px}textarea:not(.dxc-editor-input){background:var(--bg-input);width:100%;min-height:120px;color:var(--fg);border:1px solid var(--border);font-family:var(--mono);resize:vertical;border-radius:4px;padding:10px 12px;font-size:13px}textarea:not(.dxc-editor-input):focus{border-color:var(--accent);outline:none}.dxc-editor-input{caret-color:var(--fg)!important}.dxc-editor.dxc-github-light{--dxc-light-background:var(--bg-panel);--dxc-editor-focus-ring:none}.dxc-editor.editor{--dxc-editor-font-size:13px;--dxc-editor-line-height:20px;--dxc-editor-padding:0 18px 14px 0;--dxc-editor-gutter-padding:0 0 14px 0}button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:8px 14px;font-weight:600}button:hover{filter:brightness(1.1)}.controls{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.error{color:var(--error);font-family:var(--mono);white-space:pre-wrap;font-size:13px}table.results{border-collapse:collapse;width:100%;font-family:var(--mono);font-size:12px}table.results th,table.results td{border-bottom:1px solid var(--border);text-align:left;padding:6px 8px}table.results tbody tr:last-child td{border-bottom:none}table.results th{color:var(--accent);font-weight:600}canvas#sqlitegis-map{background:var(--bg-input);border:1px solid var(--border);border-radius:4px;width:100%;height:auto;display:block}.meta{color:var(--fg-muted);margin-top:8px;font-size:12px}.progress{background:var(--bg-input);border:1px solid var(--border);border-radius:3px;width:100%;height:6px;margin-top:8px;overflow:hidden}.progress-fill{background:var(--accent);height:100%;transition:width .12s linear}.title-icon,.section-icon,.btn-icon,.status-icon{vertical-align:-.15em;fill:currentColor;display:inline-block}.title-icon{color:var(--accent);margin-right:10px}h1{align-items:center;display:flex}section h2{color:var(--fg);align-items:center;gap:8px;display:flex}.section-icon{color:var(--accent)}button{align-items:center;gap:6px;display:inline-flex}section.status p{align-items:center;gap:8px;display:flex}.status-icon.ok{color:var(--accent)}.status-icon.err{color:var(--error)}.status-icon.spin{animation:.9s linear infinite sqlitegis-spin}@keyframes sqlitegis-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.loading-stack{animation:.45s ease-out fade-in-up}.loading-stack section.status{animation:.45s ease-out .12s backwards fade-in-up}.panel-grid>*{animation:.4s ease-out backwards fade-in-up}.panel-grid>:first-child{animation-delay:0s}.panel-grid>:nth-child(2){animation-delay:70ms}.panel-grid>:nth-child(3){animation-delay:.14s}.panel-grid>:nth-child(4){animation-delay:.21s}@media (prefers-reduced-motion:reduce){.loading-stack,.loading-stack section.status,.panel-grid>*,.status-icon.spin{animation:none}}