*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0b0d14;--surface:#13151f;--surface-2:#1c1f2e;--border:#252838;--accent:#5b8dee;--accent-glow:rgba(91,141,238,.14);--accent-dim:#1b2d5e;--text:#e2e5f1;--muted:#5a607a;--dim:#9299b3;--radius:10px;--font:"Inter",system-ui,sans-serif;--mono:"JetBrains Mono","Fira Code",monospace}body{background:var(--bg);color:var(--text);display:flex;flex-direction:column;font-family:var(--font);height:100dvh;overflow:hidden}.adhoc-query-panel{background:#0f172a;border-bottom:1px solid #1e293b;box-sizing:border-box;flex-shrink:0;padding:12px 20px 4px}.query-hdr{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:8px}.adhoc-query-panel label{color:#94a3b8;font-size:12px;font-weight:600;letter-spacing:.5px;white-space:nowrap}.query-tip{color:#64748b;font-size:11px;font-style:italic}.db-wrap{align-items:center;display:flex;gap:6px}.db-wrap label{color:var(--muted);font-size:.7rem;font-weight:500;letter-spacing:0}.db-select{background:#1e293b;border:1px solid #334155;border-radius:6px;color:#f1f5f9;cursor:pointer;font-family:var(--font);font-size:.75rem;outline:none;padding:6px 10px;transition:border-color .15s}.db-select:focus,.db-select:hover{border-color:#3b82f6}.db-select option{background:#1e293b;color:#f1f5f9}#db-tag{background:#3b82f626;border:1px solid rgba(59,130,246,.3);border-radius:10px;color:#93c5fd;font-size:.67rem;font-weight:500;letter-spacing:0;margin-left:6px;padding:2px 8px;white-space:nowrap}.template-wrapper{display:inline-block;position:relative}#template-btn{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:6px;color:#94a3b8;cursor:pointer;display:flex;font-family:var(--font);font-size:.75rem;gap:5px;padding:6px 10px;transition:border-color .15s,color .15s;white-space:nowrap}#template-btn:hover{border-color:#3b82f6;color:#e2e8f0}#template-btn svg{flex-shrink:0;height:12px;width:12px}#template-dropdown{background:#1e293b;border:1px solid #334155;border-radius:8px;box-shadow:0 8px 24px #00000080;display:none;min-width:320px;overflow:hidden;position:absolute;right:0;top:calc(100% + 4px);z-index:200}#template-dropdown.open{display:block}.tpl-item{border-bottom:1px solid #2d3748;cursor:pointer;padding:10px 14px;transition:background .12s}.tpl-item:last-child{border-bottom:none}.tpl-item:hover{background:#2d3748}.tpl-item-label{color:#5b8dee;font-size:.75rem;font-weight:600;margin-bottom:3px}.tpl-item-preview{color:#64748b;font-family:var(--mono);font-size:.68rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-filter-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.date-filter-row label{color:#64748b;font-size:.7rem;font-weight:500;letter-spacing:0;white-space:nowrap}.date-input{background:#1e293b;border:1px solid #334155;border-radius:6px;color:#f1f5f9;cursor:pointer;font-family:var(--font);font-size:.75rem;outline:none;padding:5px 10px;transition:border-color .15s}.date-input:focus{border-color:#3b82f6}.date-input::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert(.5)}.date-sep{color:#475569;font-size:.7rem}.date-hint{color:#64748b;font-size:.67rem;font-style:italic}.apply-dates-btn{background:#1e3a6e;border:1px solid #3b82f6;border-radius:6px;color:#93c5fd;cursor:pointer;font-family:var(--font);font-size:.73rem;padding:5px 12px;transition:background .15s,color .15s;white-space:nowrap}.apply-dates-btn:hover{background:#2563eb;color:#fff}.clear-dates-btn{background:none;border:1px solid #334155;border-radius:6px;color:#64748b;cursor:pointer;font-family:var(--font);font-size:.7rem;padding:5px 10px;transition:border-color .15s,color .15s}.clear-dates-btn:hover{border-color:#f87171;color:#f87171}.out-input{background:#1e293b;border:1px solid #334155;border-radius:6px;color:#f1f5f9;font-family:Fira Code,Consolas,Monaco,monospace;font-size:.73rem;outline:none;padding:5px 10px;transition:border-color .15s}.out-input:focus{border-color:#3b82f6}.out-input::-moz-placeholder{color:#475569}.out-input::placeholder{color:#475569}#date-badge{background:#3b82f626;border:1px solid rgba(59,130,246,.3);border-radius:10px;color:#93c5fd;display:none;font-size:.67rem;padding:2px 8px;white-space:nowrap}#date-badge.show{display:inline-block}.adhoc-query-panel textarea{background:#1e293b;border:1px solid #334155;border-radius:6px;box-sizing:border-box;color:#f1f5f9;display:block;font-family:Fira Code,Consolas,Monaco,monospace;font-size:12px;height:90px;line-height:1.5;min-height:60px;padding:10px 12px;resize:none;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.adhoc-query-panel textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626;outline:none}#query-resizer{align-items:center;cursor:row-resize;display:flex;height:14px;justify-content:center;touch-action:none}#query-resizer:after{background:#334155;border-radius:2px;content:"";height:3px;transition:background .15s;width:44px}#query-resizer.active:after,#query-resizer:hover:after{background:#3b82f6}.hdr-btn.run-btn{background:#2563eb;border-color:#3b82f6;color:#fff}.hdr-btn.run-btn:hover{background:#1d4ed8}.hdr-btn.cancel-btn{border-color:#f87171;color:#f87171}.hdr-btn.cancel-btn:hover{background:#ef444424;border-color:#f87171;color:#fca5a5}header{align-items:center;background:var(--surface);border-bottom:1px solid var(--border);display:flex;gap:14px;padding:12px 20px}.logo,header{flex-shrink:0}.logo{background:var(--accent);border-radius:8px;box-shadow:0 0 14px var(--accent-glow);display:grid;height:32px;place-items:center;width:32px}.logo svg{fill:#fff;height:17px;width:17px}.hdr-text h1{font-size:.92rem;font-weight:600}.hdr-text p{color:var(--muted);font-size:.7rem;margin-top:1px}.hdr-right{align-items:center;display:flex;gap:8px;margin-left:auto}#search{background:var(--bg);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='13' fill='none' stroke='%235a607a' stroke-width='2.2' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.35-4.35'/%3E%3C/svg%3E");background-position:10px;background-repeat:no-repeat;border:1px solid var(--border);border-radius:7px;color:var(--text);font-family:var(--font);font-size:.8rem;outline:none;padding:6px 12px 6px 32px;transition:border-color .15s,width .2s;width:210px}#search:focus{border-color:var(--accent);width:260px}#search::-moz-placeholder{color:var(--muted)}#search::placeholder{color:var(--muted)}.hdr-btn{align-items:center;background:var(--surface-2);border:1px solid var(--border);border-radius:7px;color:var(--dim);cursor:pointer;display:flex;font-family:var(--font);font-size:.75rem;gap:5px;padding:6px 11px;transition:border-color .15s,color .15s}.hdr-btn:hover{border-color:var(--accent);color:var(--text)}.hdr-btn svg{height:13px;width:13px}#main{display:flex;flex:1;min-height:0;overflow:hidden}#sidebar{background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;max-width:520px;min-width:200px;width:300px}#stats{color:var(--muted);font-size:.7rem;padding:8px 14px}#filters,#stats{border-bottom:1px solid var(--border);flex-shrink:0}#filters{flex-wrap:wrap;padding:8px 10px}#filters,.ftab{display:flex;gap:4px}.ftab{align-items:center;background:none;border:1px solid var(--border);border-radius:6px;color:var(--muted);cursor:pointer;font-family:var(--font);font-size:.7rem;padding:3px 9px;transition:all .14s}.ftab:hover{color:var(--text)}.ftab.on,.ftab:hover{border-color:var(--accent)}.ftab.on{background:var(--accent-dim);color:var(--accent)}.ftab .dot{border-radius:50%;flex-shrink:0;height:5px;width:5px}#file-tree{flex:1;overflow-y:auto;padding:4px 0}#file-tree::-webkit-scrollbar{width:4px}#file-tree::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.folder-row{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:6px;margin:1px 4px;padding:5px 8px;transition:background .1s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.folder-row:hover{background:var(--surface-2)}.folder-arrow{color:var(--muted);flex-shrink:0;height:14px;transition:transform .15s;width:14px}.folder-arrow.open{transform:rotate(90deg)}.folder-icon{flex-shrink:0;font-size:.85rem}.folder-name{color:var(--dim);flex:1;font-size:.78rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-count{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;color:var(--muted);font-size:.67rem;padding:1px 6px;white-space:nowrap}.folder-children{border-left:1px solid var(--border);margin-left:16px;padding-left:16px}.folder-children.hidden{display:none}.file-row{align-items:center;border-left:2px solid transparent;border-radius:6px;cursor:pointer;display:flex;gap:8px;margin:1px 4px;padding:6px 8px;transition:background .1s,border-color .1s}.file-row:hover{background:var(--surface-2)}.file-row.active{background:var(--accent-dim);border-left-color:var(--accent)}.ficon{border-radius:6px;display:grid;flex-shrink:0;font-family:var(--mono);font-size:.58rem;font-weight:700;height:28px;place-items:center;width:28px}.ficon.pdf{background:#ef444424;border:1px solid rgba(239,68,68,.25);color:#f87171}.ficon.docx{background:#3b82f624;border:1px solid rgba(59,130,246,.25);color:#60a5fa}.ficon.xlsx{background:#22c55e24;border:1px solid rgba(34,197,94,.25);color:#4ade80}.ficon.pptx{background:#f9731624;border:1px solid rgba(249,115,22,.25);color:#fb923c}.ficon.txt{background:#94a3b81a;border:1px solid rgba(148,163,184,.2);color:#94a3b8}.ficon.csv{background:#34d39924;border:1px solid rgba(52,211,153,.25);color:#6ee7b7}.ficon.other{background:#8b5cf61a;border:1px solid rgba(139,92,246,.2);color:#a78bfa}.fname{color:var(--text);flex:1;font-size:.76rem;font-weight:400;min-width:0;overflow:hidden;text-overflow:ellipsis}.fname,.fsize{white-space:nowrap}.fsize{color:var(--muted);font-size:.64rem}.row-actions{display:flex;gap:3px;opacity:0;transition:opacity .12s}.file-row.active .row-actions,.file-row:hover .row-actions{opacity:1}.sm-btn{background:none;border:1px solid var(--border);border-radius:5px;color:var(--muted);cursor:pointer;font-family:var(--font);font-size:.65rem;padding:2px 6px;transition:border-color .12s,color .12s,background .12s;white-space:nowrap}.sm-btn:hover{background:var(--accent-dim);border-color:var(--accent);color:var(--text)}.sm-btn.del-btn:hover{background:#ef444424;border-color:#f87171;color:#f87171}.msg-state{align-items:center;color:var(--muted);display:flex;flex-direction:column;gap:10px;justify-content:center;padding:40px 20px;text-align:center}.msg-state p{font-size:.78rem;line-height:1.6}.spin-sm{animation:spin .7s linear infinite;border:2px solid var(--border);border-radius:50%;border-top-color:var(--accent);height:20px;width:20px}@keyframes spin{to{transform:rotate(1turn)}}#resizer{background:transparent;cursor:col-resize;flex-shrink:0;transition:background .15s;width:4px}#resizer.active,#resizer:hover{background:var(--accent)}#viewer{display:flex;flex:1;flex-direction:column;overflow:hidden}#vtoolbar{align-items:center;background:var(--surface);border-bottom:1px solid var(--border);display:none;flex-shrink:0;gap:8px;padding:9px 18px}#vtoolbar.show{display:flex}#vfilename{flex:1;font-size:.82rem;font-weight:600;overflow:hidden;text-overflow:ellipsis}#vfilename,.v-btn{white-space:nowrap}.v-btn{align-items:center;background:var(--surface-2);border:1px solid var(--border);border-radius:7px;color:var(--dim);cursor:pointer;display:flex;font-family:var(--font);font-size:.73rem;gap:5px;padding:5px 11px;transition:border-color .15s,color .15s,background .15s}.v-btn:hover{background:var(--accent-dim);border-color:var(--accent);color:var(--text)}.v-btn svg{flex-shrink:0;height:13px;width:13px}.v-btn.dl{background:var(--accent);border-color:var(--accent);color:#fff}.v-btn.dl:hover{background:#4a7ee0}#vbreadcrumb{background:var(--bg);border-bottom:1px solid var(--border);color:var(--muted);display:none;flex-shrink:0;font-size:.7rem;overflow:hidden;padding:6px 18px;text-overflow:ellipsis;white-space:nowrap}#vbreadcrumb.show{display:block}#vbreadcrumb span{color:var(--dim)}#vbreadcrumb .sep{color:var(--border);margin:0 5px}#page-nav{align-items:center;background:var(--surface);border-bottom:1px solid var(--border);display:none;flex-shrink:0;gap:10px;justify-content:center;padding:7px 16px}#page-nav.show{display:flex}#page-nav button{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;color:var(--text);cursor:pointer;font-family:var(--font);font-size:.73rem;padding:3px 11px;transition:border-color .15s}#page-nav button:hover:not(:disabled){border-color:var(--accent)}#page-nav button:disabled{cursor:not-allowed;opacity:.3}#page-info{color:var(--muted);min-width:88px}#jump,#page-info{font-size:.73rem;text-align:center}#jump{background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-family:var(--mono);outline:none;padding:3px 7px;width:52px}#jump:focus{border-color:var(--accent)}#vcontent{flex:1;overflow-y:auto;padding:24px}#vcontent::-webkit-scrollbar{width:6px}#vcontent::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}#vempty{align-items:center;color:var(--muted);display:flex;flex-direction:column;gap:10px;height:100%;justify-content:center;text-align:center}#vempty .big{font-size:3rem;opacity:.18}#vempty h3{color:var(--dim);font-size:.95rem;font-weight:500}#vempty p{font-size:.78rem;line-height:1.6;max-width:260px}.pdf-page{background:#fff;border-radius:4px;box-shadow:0 4px 20px #00000080;display:block;margin:0 auto 16px}#docx-wrap{background:#fff;border-radius:8px;box-shadow:0 4px 24px #0006;color:#1a1a1a;font-family:Calibri,Segoe UI,sans-serif;font-size:.9rem;line-height:1.75;margin:0 auto;max-width:840px;padding:36px 44px}#docx-wrap h1{font-size:1.55rem;margin:.7em 0 .35em}#docx-wrap h2{font-size:1.2rem;margin:.7em 0 .3em}#docx-wrap h3{font-size:1rem;margin:.6em 0 .25em}#docx-wrap p{margin:.35em 0}#docx-wrap table{border-collapse:collapse;margin:1em 0;width:100%}#docx-wrap td,#docx-wrap th{border:1px solid #ccc;font-size:.85rem;padding:5px 9px}#txt-wrap{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--dim);font-family:var(--mono);font-size:.78rem;line-height:1.7;padding:20px 24px;white-space:pre-wrap;word-break:break-word}.v-error,.v-loading{align-items:center;color:var(--muted);display:flex;flex-direction:column;gap:14px;height:100%;justify-content:center;text-align:center}.v-loading .spin{animation:spin .7s linear infinite;border:3px solid var(--border);border-radius:50%;border-top-color:var(--accent);height:26px;width:26px}.v-error .eico{font-size:2.2rem;opacity:.35}.v-error p{font-size:.78rem;max-width:280px}.v-error small{color:var(--muted);font-size:.7rem}#table-wrap{border-radius:8px;overflow:auto}#table-wrap,.preview-notice{border:1px solid var(--border)}.preview-notice{background:var(--surface);border-radius:6px;color:var(--muted);font-size:.72rem;margin-bottom:10px;padding:6px 10px}.data-table{border-collapse:collapse;font-family:var(--mono);font-size:.75rem;width:100%}.data-table th{background:var(--surface-2);color:var(--accent);padding:7px 12px;position:sticky;text-align:left;top:0;z-index:1}.data-table td,.data-table th{border:1px solid var(--border);white-space:nowrap}.data-table td{color:var(--dim);max-width:300px;overflow:hidden;padding:5px 12px;text-overflow:ellipsis}.data-table tr:hover td{background:var(--surface-2);color:var(--text)}.template-chips{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.template-chip{align-items:center;background:var(--surface-2);border:1px solid var(--border);border-radius:16px;color:var(--dim);cursor:pointer;display:inline-flex;font-family:var(--font);font-size:.75rem;gap:6px;padding:4px 10px;transition:all .15s ease-in-out}.template-chip:hover{background:var(--accent-dim);border-color:var(--accent);color:var(--text)}.chip-icon{flex-shrink:0;height:12px;width:12px}.query-actions-bar{align-items:center;display:flex;gap:10px;margin-bottom:8px;margin-top:0}.btn{align-items:center;border:1px solid transparent;border-radius:6px;cursor:pointer;display:inline-flex;font-family:var(--font);font-size:.75rem;font-weight:600;gap:6px;padding:6px 14px;transition:opacity .15s ease,background .15s ease}.btn-icon{height:13px;width:13px}.btn-run{background:var(--accent);color:#fff}.btn-run:hover:not(:disabled){background:#4a7ee0}.btn-continue{background:#34d39924;border-color:#34d39940;color:#6ee7b7}.btn-continue:hover:not(:disabled){background:#34d39940;color:#a7f3d0}.btn-cancel{background:transparent;border-color:#f87171;color:#f87171}.btn-cancel:hover{background:#ef444424;color:#fca5a5}.btn:disabled{cursor:not-allowed;opacity:.5}.preview-container{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;margin-top:16px;padding:12px}.preview-header{align-items:center;color:var(--dim);display:flex;font-size:.75rem;font-weight:600;justify-content:space-between;margin-bottom:10px}.clear-preview-btn{background:transparent;border:1px solid var(--border);border-radius:4px;color:var(--dim);cursor:pointer;font-family:var(--font);font-size:.7rem;padding:3px 8px;transition:all .15s ease}.clear-preview-btn:hover{background:var(--surface-2);border-color:var(--accent);color:var(--text)}.table-scroll-wrapper{border:1px solid var(--border);border-radius:6px;max-height:320px;overflow-x:auto;overflow-y:auto}.table-scroll-wrapper::-webkit-scrollbar{height:6px;width:6px}.table-scroll-wrapper::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.preview-table{border-collapse:collapse;font-family:var(--mono);font-size:.73rem;text-align:left;width:100%}.preview-table th{background:var(--surface-2);color:var(--accent);padding:6px 12px;position:sticky;top:0;z-index:1}.preview-table td,.preview-table th{border-bottom:1px solid var(--border);white-space:nowrap}.preview-table td{color:var(--dim);padding:5px 12px}.preview-table tr:hover td{background:var(--surface-2);color:var(--text)}.preview-error,.preview-loading{border-radius:6px;font-family:var(--font);font-size:.75rem;margin-top:12px;padding:12px}.preview-loading{background:var(--accent-glow);border:1px solid rgba(91,141,238,.25);color:var(--accent)}.preview-error{background:#ef444424;border:1px solid rgba(239,68,68,.25);color:#f87171}.modal-overlay{align-items:center;background:#0b0d14bf;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:9999}.modal-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 12px 30px #0009;color:var(--text);font-family:var(--font);padding:24px;width:380px}.modal-box h3{color:var(--accent);font-size:.95rem;margin-top:0}.modal-box p{color:var(--dim);font-size:.8rem;line-height:1.5;margin:16px 0 24px}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.modal-btn{border:1px solid transparent;border-radius:6px;cursor:pointer;font-family:var(--font);font-size:.75rem;font-weight:600;padding:6px 14px;transition:all .15s ease}.modal-btn.cancel{background:var(--surface-2);border-color:var(--border);color:var(--dim)}.modal-btn.cancel:hover{background:var(--border);color:var(--text)}.modal-btn.confirm{background:#34d39924;border-color:#34d39940;color:#6ee7b7}.modal-btn.confirm:hover{background:#34d39940;color:#a7f3d0}#__nuxt,.app-root{display:contents}
