.react-grid-layout{transition:height .2s;position:relative}.react-grid-item{transition:left .2s,top .2s,width .2s,height .2s}.react-grid-item img{pointer-events:none;-webkit-user-select:none;user-select:none}.react-grid-item.cssTransforms{transition-property:transform,width,height}.react-grid-item.resizing{z-index:1;will-change:width, height;transition:none}.react-grid-item.react-draggable-dragging{z-index:3;will-change:transform;transition:none}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{opacity:.2;z-index:2;-webkit-user-select:none;user-select:none;background:red;transition-duration:.1s}.react-grid-item.react-grid-placeholder.placeholder-resizing{transition:none}.react-grid-item>.react-resizable-handle{opacity:0;width:20px;height:20px;position:absolute}.react-grid-item:hover>.react-resizable-handle{opacity:1}.react-grid-item>.react-resizable-handle:after{content:"";border-bottom:2px solid #0006;border-right:2px solid #0006;width:5px;height:5px;position:absolute;bottom:3px;right:3px}.react-resizable-hide>.react-resizable-handle{display:none}.react-grid-item>.react-resizable-handle.react-resizable-handle-sw{cursor:sw-resize;bottom:0;left:0;transform:rotate(90deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-se{cursor:se-resize;bottom:0;right:0}.react-grid-item>.react-resizable-handle.react-resizable-handle-nw{cursor:nw-resize;top:0;left:0;transform:rotate(180deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-ne{cursor:ne-resize;top:0;right:0;transform:rotate(270deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-w,.react-grid-item>.react-resizable-handle.react-resizable-handle-e{cursor:ew-resize;margin-top:-10px;top:50%}.react-grid-item>.react-resizable-handle.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-n,.react-grid-item>.react-resizable-handle.react-resizable-handle-s{cursor:ns-resize;margin-left:-10px;left:50%}.react-grid-item>.react-resizable-handle.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}.react-resizable{position:relative}.react-resizable-handle{box-sizing:border-box;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2IDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYwMCIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iNnB4Ij48ZyBvcGFjaXR5PSIwLjMwMiI+PHBhdGggZD0iTSA2IDYgTCAwIDYgTCAwIDQuMiBMIDQgNC4yIEwgNC4yIDQuMiBMIDQuMiAwIEwgNiAwIEwgNiA2IEwgNiA2IFoiIGZpbGw9IiMwMDAwMDAiLz48L2c+PC9zdmc+);background-position:100% 100%;background-repeat:no-repeat;background-origin:content-box;width:20px;height:20px;padding:0 3px 3px 0;position:absolute}.react-resizable-handle-sw{cursor:sw-resize;bottom:0;left:0;transform:rotate(90deg)}.react-resizable-handle-se{cursor:se-resize;bottom:0;right:0}.react-resizable-handle-nw{cursor:nw-resize;top:0;left:0;transform:rotate(180deg)}.react-resizable-handle-ne{cursor:ne-resize;top:0;right:0;transform:rotate(270deg)}.react-resizable-handle-w,.react-resizable-handle-e{cursor:ew-resize;margin-top:-10px;top:50%}.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-resizable-handle-n,.react-resizable-handle-s{cursor:ns-resize;margin-left:-10px;left:50%}.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:222 28% 97%;--foreground:224 24% 10%;--card:0 0% 100%;--card-foreground:224 24% 10%;--popover:0 0% 100%;--popover-foreground:224 24% 10%;--primary:221 83% 53%;--primary-foreground:0 0% 100%;--secondary:220 14% 93%;--secondary-foreground:222 20% 18%;--muted:220 14% 93%;--muted-foreground:220 9% 46%;--accent:199 89% 93%;--accent-foreground:199 80% 24%;--destructive:0 72% 47%;--destructive-foreground:0 0% 100%;--success:142 76% 36%;--success-foreground:0 0% 100%;--border:220 14% 86%;--input:220 14% 86%;--ring:221 83% 53%;--radius:.75rem;color:hsl(var(--foreground));background:radial-gradient(circle at top left, #1a56db12, transparent 32%), radial-gradient(circle at bottom right, #0694a217, transparent 28%), linear-gradient(180deg, hsl(var(--background)), #eff1f5);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Aptos,Segoe UI Variable Text,Segoe UI,system-ui,sans-serif;font-weight:400;line-height:1.5}*,:before,:after{box-sizing:border-box}html{min-height:100%}body{min-height:100vh;margin:0}h1,h2,h3,h4,h5,h6,p,ul,ol,li,figure{margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}code{background:hsl(var(--muted));color:hsl(var(--foreground));border-radius:.4rem;padding:.12rem .4rem;font-family:Cascadia Code,Fira Code,monospace;font-size:.88em}#root{min-height:100vh}.sbi-shell{background:0 0;grid-template-columns:170px 1fr;height:100vh;display:grid;overflow:hidden}.sbi-sidebar{border-right:1px solid hsl(var(--border));background:linear-gradient(180deg, hsl(var(--card) / .98), hsl(var(--card) / .94));height:100vh;position:sticky;top:0;overflow-y:auto}.sbi-sidebar-inner{flex-direction:column;gap:.75rem;height:100%;padding:1rem .75rem;display:flex}.sbi-sidebar-brand{align-items:center;gap:.65rem;padding:.25rem 0;display:flex}.sbi-brand-mark{background:hsl(var(--primary));width:2.2rem;height:2.2rem;color:hsl(var(--primary-foreground));letter-spacing:-.03em;border-radius:.55rem;justify-content:center;align-items:center;font-size:.85rem;font-weight:800;display:flex}.sbi-brand-copy{flex-direction:column;gap:.05rem;display:flex}.sbi-brand-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:hsl(var(--muted-foreground));font-size:.65rem;font-weight:700}.sbi-brand-name{color:hsl(var(--foreground));letter-spacing:-.02em;font-size:1rem;font-weight:700}.sbi-sidebar-nav{flex-direction:column;flex:1;gap:.25rem;display:flex}.sbi-nav-heading{letter-spacing:.09em;text-transform:uppercase;color:hsl(var(--muted-foreground));padding:.5rem .5rem .25rem;font-size:.68rem;font-weight:700}.sbi-nav-sep{margin:.5rem 0}.sbi-nav-link{border-radius:calc(var(--radius) - .2rem);cursor:pointer;flex-direction:column;gap:.1rem;padding:.45rem .6rem;transition:background .12s,color .12s;display:flex}.sbi-nav-link:hover{background:hsl(var(--secondary))}.sbi-nav-link-label{font-size:.875rem;font-weight:500}.sbi-nav-link-note{color:hsl(var(--muted-foreground));font-size:.72rem}.sbi-nav-link-active .sbi-nav-link-note{color:hsl(var(--primary) / .7)}.sbi-sidebar-spacer{flex:1}.sbi-sidebar-footer{border-top:1px solid hsl(var(--border));padding-top:.75rem}.sbi-main{height:100vh;padding:1.5rem;overflow-y:auto}.sbi-aside{border-left:1px solid hsl(var(--border));background:linear-gradient(180deg, hsl(var(--card) / .96), hsl(var(--card) / .9));flex-direction:column;gap:1rem;height:100vh;padding:1rem .75rem;display:flex;position:sticky;top:0;overflow-y:auto}.sa-card,.surface,.login-panel,.boot-card{border-radius:var(--radius);border:1px solid hsl(var(--border) / .9);background:linear-gradient(180deg, hsl(var(--card) / .97), hsl(var(--card) / .91));flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 2px 12px #0f172a0f,0 1px 3px #0f172a0a}.surface:before,.sa-card:before,.login-panel:before,.boot-card:before{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 1px #fff9}.sa-card-header{flex-direction:column;gap:.5rem;padding:1rem 1rem .25rem;display:flex}.sa-card-content{flex-direction:column;gap:.75rem;padding:1rem;display:flex}.sa-card-footer{flex-direction:column;gap:.75rem;padding:0 1rem 1rem;display:flex}.sa-card-title{letter-spacing:-.012em;font-size:.95rem;font-weight:600;line-height:1.25}.sa-card-description{color:hsl(var(--muted-foreground));font-size:.875rem}.surface-title{color:hsl(var(--foreground));font-size:.85rem;font-weight:600}.sa-badge{letter-spacing:.07em;text-transform:uppercase;border:1px solid #0000;border-radius:9999px;align-items:center;gap:.3rem;width:fit-content;padding:.28rem .65rem;font-size:.7rem;font-weight:700;display:inline-flex}.sa-badge-default{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.sa-badge-secondary{background:hsl(var(--secondary));border-color:hsl(var(--border));color:hsl(var(--secondary-foreground))}.sa-badge-outline{border-color:hsl(var(--border));color:hsl(var(--muted-foreground));background:0 0}.sa-badge-destructive{background:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}.sa-badge-success{background:hsl(var(--success));color:hsl(var(--success-foreground))}.sa-button{border-radius:calc(var(--radius) - .2rem);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:.4rem;font-size:.875rem;font-weight:500;transition:all .12s;display:inline-flex}.sa-button:disabled{opacity:.5;pointer-events:none}.sa-button-md{height:2.25rem;padding:0 .875rem}.sa-button-sm{height:1.875rem;padding:0 .65rem;font-size:.8rem}.sa-button-lg{height:2.75rem;padding:0 1.25rem;font-size:.95rem}.sa-button-icon{width:2.25rem;height:2.25rem;padding:0}.sa-button-default{background:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:hsl(var(--primary))}.sa-button-default:hover{background:hsl(var(--primary) / .88)}.sa-button-secondary{background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border-color:hsl(var(--border))}.sa-button-secondary:hover{background:hsl(var(--muted))}.sa-button-outline{border-color:hsl(var(--border));color:hsl(var(--foreground));background:0 0}.sa-button-outline:hover{background:hsl(var(--secondary))}.sa-button-ghost{color:hsl(var(--foreground));background:0 0;border-color:#0000}.sa-button-ghost:hover{background:hsl(var(--secondary))}.sa-button-destructive{background:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}.sa-button-link{color:hsl(var(--primary));background:0 0;border-color:#0000;height:auto;padding:0;text-decoration:underline}.sa-input{border-radius:calc(var(--radius) - .2rem);border:1px solid hsl(var(--input));background:hsl(var(--card));width:100%;height:2.25rem;color:hsl(var(--foreground));outline:none;padding:0 .75rem;font-size:.875rem;transition:border-color .12s;display:block}.sa-input:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring) / .2)}.sa-input::placeholder{color:hsl(var(--muted-foreground))}.sa-checkbox{border:1px solid hsl(var(--border));background:linear-gradient(180deg, hsl(var(--card)), hsl(var(--secondary) / .82));width:1.1rem;height:1.1rem;color:hsl(var(--primary-foreground));cursor:pointer;border-radius:.32rem;flex:0 0 1.1rem;justify-content:center;align-items:center;transition:border-color .12s,background .12s,box-shadow .12s,transform .12s;display:inline-flex;box-shadow:inset 0 1px #fffc,0 1px 2px #0f172a14}.sa-checkbox:hover{border-color:hsl(var(--ring) / .5);transform:translateY(-1px);box-shadow:inset 0 1px #ffffffd9,0 4px 12px #0f172a14}.sa-checkbox:focus-visible{border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring) / .18), inset 0 1px 0 #ffffffd9;outline:none}.sa-checkbox[data-state=checked]{border-color:hsl(var(--primary));background:linear-gradient(180deg, hsl(var(--primary)), #1a54d1);box-shadow:inset 0 1px 0 #ffffff2e, 0 6px 14px hsl(var(--primary) / .26)}.sa-checkbox[data-state=checked]:hover{border-color:hsl(var(--primary))}.sa-checkbox[data-disabled]{opacity:.55;cursor:not-allowed;transform:none}.sa-checkbox-indicator{justify-content:center;align-items:center;display:inline-flex}.sa-checkbox-icon{stroke-width:3px;width:.78rem;height:.78rem}.field{flex-direction:column;gap:.35rem;display:flex}.sa-label{color:hsl(var(--foreground));font-size:.8rem;font-weight:500}.auth-shell{background:hsl(var(--background));grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.auth-left{background:linear-gradient(135deg,#051438 0%,#092567 100%);justify-content:center;align-items:center;padding:3rem;display:flex;position:relative;overflow:hidden}.auth-left:before{content:"";background:radial-gradient(at 30% 60%,#0e3ba466 0%,#0000 70%);position:absolute;inset:0}.auth-left-inner{z-index:1;flex-direction:column;gap:2.5rem;width:100%;max-width:380px;display:flex;position:relative}.auth-logo{background:#4377ef;border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;display:flex;box-shadow:0 8px 24px #05143866}.auth-logo-mark{color:#fff;letter-spacing:-.05em;font-size:1.4rem;font-weight:800}.auth-hero{flex-direction:column;gap:.75rem;display:flex}.auth-hero-title{color:#fff;letter-spacing:-.04em;font-size:2.25rem;font-weight:800;line-height:1}.auth-hero-sub{color:#a1bbf7;font-size:1rem;font-weight:500}.auth-hero-desc{color:#85a0e0;font-size:.875rem;line-height:1.6}.auth-status-bar{color:#85a0e0;align-items:center;gap:.5rem;font-size:.78rem;display:flex}.auth-status-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.auth-status-dot--ok{background:#4ade80;box-shadow:0 0 6px #4ade80}.auth-status-dot--err{background:#f87171;box-shadow:0 0 6px #f87171}.auth-status-sep{opacity:.4}.auth-status-label{color:#99b0e6}.auth-right{background:hsl(var(--background));justify-content:center;align-items:center;padding:3rem;display:flex}.auth-form-wrap{flex-direction:column;gap:1.75rem;width:100%;max-width:380px;display:flex}.auth-form-header{flex-direction:column;gap:.4rem;display:flex}.auth-form-title{letter-spacing:-.035em;color:hsl(var(--foreground));font-size:1.6rem;font-weight:700}.auth-form-sub{color:hsl(var(--muted-foreground));font-size:.875rem}.auth-toggle{background:hsl(var(--muted));border-radius:8px;gap:2px;padding:3px;display:flex}.auth-toggle-btn{cursor:pointer;color:hsl(var(--muted-foreground));background:0 0;border:none;border-radius:6px;flex:1;padding:.45rem 1rem;font-size:.85rem;font-weight:500;transition:all .15s}.auth-toggle-btn--active{background:hsl(var(--background));color:hsl(var(--foreground));box-shadow:0 1px 4px #00000014}.auth-form{flex-direction:column;gap:1.1rem;display:flex}.auth-field{flex-direction:column;gap:.4rem;display:flex}.auth-remember{color:hsl(var(--muted-foreground));cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.auth-submit-btn{width:100%;margin-top:.25rem}.auth-success{background:#16a24914;border:1px solid #16a24940;border-radius:10px;flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.auth-success-msg{color:#0f7033;font-size:.875rem;line-height:1.5}.dark .auth-success-msg{color:#4be784}.auth-register-note{color:hsl(var(--muted-foreground));text-align:center;font-size:.78rem;line-height:1.5}@media (width<=768px){.auth-shell{grid-template-columns:1fr}.auth-left{display:none}.auth-right{padding:2rem 1.5rem}}.boot-stack{flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:100vh;padding:2rem;display:flex}.boot-shell{flex-direction:column;justify-content:center;align-items:center;display:flex}.boot-card{width:100%;max-width:380px}.boot-badge{width:fit-content}.boot-title{font-size:1.05rem;font-weight:600}.boot-copy{font-size:.875rem}.boot-grid{flex-direction:column;gap:.75rem;display:flex}.boot-metric{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.boot-label{color:hsl(var(--muted-foreground));font-size:.8rem}.boot-skeleton{border-radius:.35rem;flex:1;height:1.2rem}.boot-error{width:100%;max-width:380px}.home-page{flex-direction:column;gap:2rem;max-width:1200px;padding:2rem 2.5rem;display:flex}.home-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.home-greeting{letter-spacing:-.035em;color:hsl(var(--foreground));font-size:1.75rem;font-weight:700}.home-date{color:hsl(var(--muted-foreground));margin-top:.2rem;font-size:.875rem}.home-ns-badge{background:hsl(var(--muted));border:1px solid hsl(var(--border));color:hsl(var(--foreground));border-radius:999px;align-items:center;gap:.5rem;padding:.4rem 1rem;font-size:.8rem;font-weight:500;display:flex}.home-ns-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.home-ns-dot--live{background:#4ade80;box-shadow:0 0 6px #4ade80}.home-ns-dot--off{background:#f87171;box-shadow:0 0 6px #f87171}.home-ns-mode{color:hsl(var(--muted-foreground));font-weight:400}.home-kpi-row{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.home-kpi-link{color:inherit;text-decoration:none;display:block}.home-kpi-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:12px;align-items:center;gap:1rem;padding:1.25rem 1.5rem;transition:box-shadow .15s,border-color .15s;display:flex}.home-kpi-link:hover .home-kpi-card,.home-kpi-card:hover{border-color:hsl(var(--primary) / .4);box-shadow:0 4px 16px hsl(var(--primary) / .08)}.home-kpi-icon{flex-shrink:0;font-size:1.75rem;line-height:1}.home-kpi-value{letter-spacing:-.03em;color:hsl(var(--foreground));font-size:1.5rem;font-weight:700;line-height:1}.home-kpi-title{color:hsl(var(--foreground));margin-top:.2rem;font-size:.8rem;font-weight:600}.home-kpi-sub{color:hsl(var(--muted-foreground));font-size:.75rem}.home-section{flex-direction:column;gap:1rem;display:flex}.home-section-title{text-transform:uppercase;letter-spacing:.06em;color:hsl(var(--muted-foreground));font-size:.875rem;font-weight:600}.home-actions-grid{grid-template-columns:repeat(3,1fr);gap:.75rem;display:grid}.home-action-card{background:hsl(var(--card));border:1px solid hsl(var(--border));color:inherit;cursor:pointer;border-radius:12px;align-items:center;gap:1rem;padding:1.1rem 1.25rem;text-decoration:none;transition:box-shadow .15s,border-color .15s,transform .1s;display:flex}.home-action-card:hover{border-color:hsl(var(--primary) / .5);box-shadow:0 4px 20px hsl(var(--primary) / .1);transform:translateY(-1px)}.home-action-icon{flex-shrink:0;font-size:1.4rem}.home-action-body{flex:1;min-width:0}.home-action-title{color:hsl(var(--foreground));font-size:.875rem;font-weight:600;display:block}.home-action-desc{color:hsl(var(--muted-foreground));margin-top:.2rem;font-size:.78rem;line-height:1.4}.home-action-arrow{color:hsl(var(--muted-foreground));flex-shrink:0;font-size:1rem;transition:transform .15s}.home-action-card:hover .home-action-arrow{transform:translate(3px)}.home-status-footer{color:hsl(var(--muted-foreground));border-top:1px solid hsl(var(--border));flex-wrap:wrap;align-items:center;gap:.75rem;padding:.75rem 0;font-size:.78rem;display:flex}.home-status-footer strong{color:hsl(var(--foreground));font-weight:600}@media (width<=1024px){.home-kpi-row,.home-actions-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.home-page{padding:1.25rem}.home-kpi-row{grid-template-columns:1fr 1fr}.home-actions-grid{grid-template-columns:1fr}}.creds-grid{flex-direction:column;gap:.75rem;display:flex}.cred-row{flex-wrap:wrap;align-items:center;gap:.75rem;font-size:.875rem;display:flex}.sbi-kpi-header{flex-direction:row;justify-content:space-between;align-items:center;padding-bottom:.5rem}.sbi-kpi-label{color:hsl(var(--muted-foreground));font-size:.78rem;font-weight:500}.sbi-kpi-trend{font-size:.72rem;font-weight:600}.sbi-kpi-trend-up{color:hsl(var(--success))}.sbi-kpi-trend-down{color:hsl(var(--destructive))}.sbi-kpi-content{padding-top:.25rem}.sbi-kpi-value{letter-spacing:-.035em;color:hsl(var(--foreground));font-size:1.6rem;font-weight:700;line-height:1}.sbi-kpi-sub{color:hsl(var(--muted-foreground));margin-top:.25rem;font-size:.78rem}.sbi-kpi-sparkline{height:3rem;margin-top:.75rem}.sbi-chart-header{flex-direction:row;justify-content:space-between;align-items:center}.sbi-chart-title{font-size:.875rem;font-weight:600}.sbi-chart-toolbar{align-items:center;gap:.5rem;display:flex}.sbi-chart-content{padding-top:.5rem}.sbi-chart-loading{justify-content:center;align-items:center;min-height:180px;display:flex}.sbi-chart-skeleton{background:hsl(var(--muted));border-radius:.5rem;width:100%;height:180px;animation:1.5s ease-in-out infinite sbi-pulse}.sbi-field-badge{border:1px solid hsl(var(--border));background:hsl(var(--card));-webkit-user-select:none;user-select:none;border-radius:9999px;align-items:center;gap:.3rem;padding:.2rem .55rem;font-size:.78rem;font-weight:500;display:inline-flex}.sbi-field-draggable{cursor:grab}.sbi-field-draggable:active{cursor:grabbing}.sbi-field-icon{opacity:.7;font-size:.7rem}.sbi-field-string{color:#1147bb;background:#2463eb0f;border-color:#2463eb59}.sbi-field-number{color:#117e39;background:#16a2490f;border-color:#16a24959}.sbi-field-date{color:#9f5704;background:#db77060f;border-color:#db770659}.sbi-field-bool{color:#7e1fad;background:#9d26d90f;border-color:#9d26d959}.sbi-field-remove{cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:9999px;justify-content:center;align-items:center;width:1rem;height:1rem;padding:0;font-size:.85rem;line-height:1;display:inline-flex}.sbi-field-remove:hover{opacity:1;background:hsl(var(--destructive) / .1)}.user-panel{align-items:center;gap:.5rem;display:flex}.user-panel-info{flex:1;align-items:center;gap:.5rem;min-width:0;display:flex}.user-avatar{background:hsl(var(--primary) / .12);width:1.9rem;height:1.9rem;color:hsl(var(--primary));border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex}.user-panel-copy{flex-direction:column;gap:.1rem;min-width:0;display:flex}.user-name{white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:600;overflow:hidden}.user-role{font-size:.62rem}.user-menu-trigger{width:1.75rem;height:1.75rem}.user-menu-content{min-width:160px}.user-menu-danger{color:hsl(var(--destructive))}.health-skeleton{border-radius:.35rem;height:1.5rem}.status-row{align-items:center;gap:.5rem;font-size:.85rem;display:flex}.status-metrics{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.status-metrics>div{flex-direction:column;gap:.15rem;display:flex}.status-metrics small{color:hsl(var(--muted-foreground));font-size:.7rem}.status-metrics strong{font-size:.9rem;font-weight:600}.muted-copy{color:hsl(var(--muted-foreground));font-size:.78rem}.error-copy{color:hsl(var(--destructive));font-size:.78rem}.sa-tabs{flex-direction:column;gap:.5rem;display:flex}.sa-tabs-list{border-radius:var(--radius);background:hsl(var(--muted));align-items:center;gap:.25rem;padding:.2rem;display:flex}.sa-tabs-trigger{border-radius:calc(var(--radius) - .2rem);height:1.75rem;color:hsl(var(--muted-foreground));cursor:pointer;background:0 0;border:none;flex:1;font-size:.8rem;font-weight:500;transition:all .12s}.sa-tabs-trigger[data-state=active]{background:hsl(var(--card));color:hsl(var(--foreground));box-shadow:0 1px 3px #00000014}.sa-tabs-content{padding:0}.sa-separator{background:hsl(var(--border))}.sa-separator-h{width:100%;height:1px}.sa-separator-v{width:1px;height:100%}.sa-skeleton{background:hsl(var(--muted));border-radius:.4rem;animation:1.6s ease-in-out infinite sbi-pulse}.sa-alert{border-radius:var(--radius);border:1px solid hsl(var(--border));background:hsl(var(--card));flex-direction:column;gap:.35rem;padding:.75rem 1rem;display:flex}.sa-alert-destructive{border-color:hsl(var(--destructive) / .4);background:hsl(var(--destructive) / .05)}.sa-alert-title{font-size:.875rem;font-weight:600}.sa-alert-description{color:hsl(var(--muted-foreground));font-size:.825rem}.offline-banner{margin-bottom:1rem}.sa-navigation-menu{width:100%}.sa-navigation-menu-list{flex-direction:column;gap:.15rem;width:100%;margin:0;padding:0;list-style:none;display:flex}.sa-navigation-menu-item{width:100%}.sa-navigation-menu-link{border-radius:calc(var(--radius) - .2rem);cursor:pointer;flex-direction:column;gap:.1rem;width:100%;padding:.45rem .6rem;font-size:.875rem;font-weight:500;transition:background .1s;display:flex}.sa-navigation-menu-link:hover{background:hsl(var(--secondary))}.sbi-nav-link-active{background:hsl(var(--primary) / .1)!important;color:hsl(var(--primary))!important}.stack{flex-direction:column;gap:.75rem;display:flex}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:hsl(var(--border));border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:hsl(var(--muted-foreground) / .4)}@keyframes sbi-pulse{0%,to{opacity:1}50%{opacity:.5}}.chart-placeholder{border-radius:.5rem;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;width:100%;height:100%;min-height:200px;display:flex}.chart-loading{background:hsl(var(--muted) / .5)}.chart-error{background:hsl(var(--destructive) / .06);border:1px solid hsl(var(--destructive) / .2)}.chart-empty{background:hsl(var(--muted) / .3);border:1px dashed hsl(var(--border))}.chart-spinner{border:3px solid hsl(var(--border));border-top-color:hsl(var(--primary));border-radius:50%;width:28px;height:28px;animation:.8s linear infinite sbi-spin}.chart-loading-text{color:hsl(var(--muted-foreground));font-size:.8125rem}.chart-error-text{color:hsl(var(--destructive));text-align:center;padding:0 1rem;font-size:.8125rem}.chart-empty-text{color:hsl(var(--muted-foreground));font-size:.8125rem}@keyframes sbi-spin{to{transform:rotate(360deg)}}.chart-builder{flex-direction:column;gap:1.25rem;display:flex}.chart-builder-form{flex-direction:column;gap:.875rem;display:flex}.cb-field{flex-direction:column;gap:.35rem;display:flex}.cb-label{color:hsl(var(--foreground));font-size:.8125rem;font-weight:500}.cb-select,.cb-input{background:hsl(var(--background));border:1px solid hsl(var(--border));width:100%;color:hsl(var(--foreground));border-radius:.375rem;outline:none;padding:.4rem .625rem;font-size:.875rem;transition:border-color .15s}.cb-select:focus,.cb-input:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsl(var(--primary) / .2)}.cb-checkbox-group{background:hsl(var(--muted) / .4);border:1px solid hsl(var(--border));border-radius:.375rem;flex-direction:column;gap:.3rem;max-height:9rem;padding:.5rem;display:flex;overflow-y:auto}.cb-checkbox-item{color:hsl(var(--foreground));cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.cb-checkbox-item input[type=checkbox]{accent-color:hsl(var(--primary))}.cb-options{gap:1.25rem;display:flex}.cb-empty{color:hsl(var(--muted-foreground));font-size:.8125rem;font-style:italic}.chart-builder-footer{border-top:1px solid hsl(var(--border));justify-content:flex-end;gap:.5rem;padding-top:.5rem;display:flex}.cb-btn{cursor:pointer;border:none;border-radius:.375rem;padding:.425rem 1rem;font-size:.875rem;font-weight:500;transition:background .15s,opacity .15s}.cb-btn:disabled{opacity:.5;cursor:not-allowed}.cb-btn-primary{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.cb-btn-primary:hover:not(:disabled){background:hsl(var(--primary) / .88)}.cb-btn-ghost{color:hsl(var(--muted-foreground));border:1px solid hsl(var(--border));background:0 0}.cb-btn-ghost:hover:not(:disabled){background:hsl(var(--muted) / .6)}.charts-page{flex-direction:column;gap:1.5rem;display:flex}.page-header-actions{flex-wrap:wrap;gap:.75rem;display:flex}.chart-grid{grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:1rem;display:grid}.chart-widget{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;flex-direction:column;display:flex;overflow:hidden}.chart-widget-header{justify-content:space-between;align-items:center;padding:.75rem 1rem 0;display:flex}.chart-widget-title{color:hsl(var(--foreground));font-size:.9375rem;font-weight:600}.chart-widget-subtitle{color:hsl(var(--muted-foreground));margin-top:.2rem;font-size:.75rem}.chart-widget-actions{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;display:flex}.chart-widget-body{flex:1;min-height:260px;padding:.5rem}.chart-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:3rem 2rem;display:flex}.chart-empty-state p{color:hsl(var(--muted-foreground));max-width:26rem;font-size:.875rem}.visual-canvas-panel,.visual-field-panel,.visual-library-section{border:1px solid hsl(var(--border));background:linear-gradient(180deg, hsl(var(--card) / .98), hsl(var(--card) / .96)), radial-gradient(circle at top right, hsl(var(--primary) / .08), transparent 28%);border-radius:1rem;box-shadow:0 18px 40px #0f15240f}.visual-canvas-panel{flex-direction:column;gap:.65rem;padding:.85rem;display:flex}.visual-field-panel{flex-direction:column;gap:.4rem;max-height:calc(100vh - 9rem);padding:.65rem;display:flex;position:sticky;top:1.5rem;overflow:hidden}.visual-canvas-toolbar,.visual-field-panel-head,.visual-library-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.visual-toolbar-copy{flex-direction:column;gap:.25rem;display:flex}.visual-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--primary));font-size:.72rem;font-weight:700}.visual-subcopy{color:hsl(var(--muted-foreground));max-width:38rem;font-size:.84rem}.visual-toolbar-stats{flex-wrap:wrap;justify-content:flex-end;gap:.45rem;display:flex}.visual-config-field{flex-direction:column;gap:.45rem;display:flex}.visual-type-chip{border:1px solid hsl(var(--border));background:hsl(var(--background));color:hsl(var(--muted-foreground));cursor:pointer;border-radius:999px;padding:.45rem .75rem;font-size:.8rem;font-weight:600;transition:background .12s,border-color .12s,color .12s,transform .12s}.visual-type-chip:hover{border-color:hsl(var(--primary) / .35);transform:translateY(-1px)}.visual-option-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.visual-option-row-inline{align-items:center}.visual-option-row>.visual-toolbar-stats{margin-left:auto}.visual-preview-card{border:1px solid hsl(var(--border));background:hsl(var(--card));border-radius:.75rem;padding:.55rem;overflow:hidden}.visual-preview-head{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.visual-preview-title{color:hsl(var(--foreground));margin-top:.2rem;font-size:.98rem;font-weight:600}.visual-empty-preview{border:1px dashed hsl(var(--border));text-align:center;min-height:10rem;color:hsl(var(--muted-foreground));background:hsl(var(--background) / .55);border-radius:.5rem;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;font-size:.82rem;display:flex}.visual-empty-preview strong{color:hsl(var(--foreground))}.visual-selection-empty{color:hsl(var(--muted-foreground));font-size:.82rem}.visual-selection-pill{border:1px solid hsl(var(--border));background:hsl(var(--secondary) / .75);color:hsl(var(--muted-foreground));border-radius:999px;align-items:center;gap:.45rem;padding:.4rem .7rem;font-size:.78rem;display:inline-flex}.visual-selection-pill strong{color:hsl(var(--foreground))}.visual-dataset-list{flex-direction:column;gap:.1rem;padding-right:.2rem;display:flex;overflow:auto}.visual-field-search{border:1px solid hsl(var(--border));background:hsl(var(--background));width:100%;color:hsl(var(--foreground));box-sizing:border-box;border-radius:.35rem;outline:none;padding:.32rem .5rem;font-family:inherit;font-size:.78rem;transition:border-color .15s}.visual-field-search:focus{border-color:hsl(var(--primary) / .5)}.visual-field-search::placeholder{color:hsl(var(--muted-foreground))}.visual-dataset-card-head strong{color:hsl(var(--foreground));text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.8rem;font-weight:600;overflow:hidden}.visual-field-group{border-left:1px solid hsl(var(--border) / .5);flex-direction:column;margin-left:.45rem;padding-left:.55rem;display:flex}.visual-field-group-head{text-transform:uppercase;letter-spacing:.07em;color:hsl(var(--muted-foreground));justify-content:space-between;align-items:center;gap:.5rem;padding:.15rem .25rem;font-size:.64rem;font-weight:700;display:flex}.visual-field-empty{color:hsl(var(--muted-foreground));padding:.1rem .25rem;font-size:.74rem}.visual-join-panel,.visual-filter-panel{border:1px solid hsl(var(--border));background:hsl(var(--background) / .68);border-radius:.9rem;flex-direction:column;gap:.55rem;padding:.65rem;display:flex}.visual-join-header,.visual-filter-header{justify-content:space-between;align-items:flex-start;gap:.6rem;display:flex}.visual-join-toggle{border:1px solid hsl(var(--border));background:hsl(var(--card));border-radius:.8rem;align-items:flex-start;gap:.65rem;padding:.55rem .6rem;display:flex}.visual-join-toggle strong{font-size:.84rem;display:block}.visual-join-toggle p{color:hsl(var(--muted-foreground));margin-top:.1rem;font-size:.74rem}.visual-join-body{flex-direction:column;gap:.55rem;display:flex}.visual-join-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;display:grid}.visual-join-grid-step{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.visual-join-field{flex-direction:column;gap:.3rem;display:flex}.visual-join-step-list{flex-direction:column;gap:.5rem;display:flex}.visual-join-step{border:1px solid hsl(var(--border));background:hsl(var(--card));border-radius:.8rem;flex-direction:column;gap:.5rem;padding:.55rem;display:flex}.visual-join-step-head{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.visual-join-step-head strong{font-size:.83rem;display:block}.visual-join-step-head p{color:hsl(var(--muted-foreground));margin-top:.1rem;font-size:.72rem}.visual-join-key-list{flex-direction:column;gap:.4rem;display:flex}.visual-join-key-row{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;align-items:center;gap:.35rem;display:grid}.visual-join-key-row-wide{grid-template-columns:minmax(0,.95fr) minmax(0,1.1fr) auto minmax(0,1.1fr) auto}.visual-join-equals{color:hsl(var(--muted-foreground));font-size:.82rem;font-weight:700}.visual-join-actions{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.visual-join-actions-root{justify-content:space-between}.visual-filter-copy{color:hsl(var(--muted-foreground));margin-top:.15rem;font-size:.76rem}.visual-filter-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.4rem;display:flex}.visual-filter-list{flex-direction:column;gap:.45rem;display:flex}.visual-filter-row{border:1px solid hsl(var(--border));background:hsl(var(--card));border-radius:.8rem;flex-direction:column;gap:.45rem;padding:.5rem;display:flex}.visual-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;display:grid}.visual-filter-select{border:1px solid hsl(var(--border));background:hsl(var(--background));width:100%;min-width:0;height:2rem;color:hsl(var(--foreground));border-radius:.65rem;outline:none;padding:0 .6rem;font-size:.78rem}.visual-filter-select:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring) / .14)}.visual-filter-value-row{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.visual-filter-value-row .sa-input{border-radius:.65rem;flex:8rem;min-width:0;height:2rem;padding:0 .65rem;font-size:.78rem}.visual-filter-select-value{flex:8rem}.visual-filter-hint{color:hsl(var(--muted-foreground));font-size:.75rem}.visual-filter-remove{border:1px solid hsl(var(--border));color:hsl(var(--muted-foreground));cursor:pointer;background:0 0;border-radius:999px;padding:.34rem .65rem;font-size:.74rem;transition:border-color .12s,color .12s,background .12s}.visual-filter-remove:hover{border-color:hsl(var(--destructive) / .35);color:hsl(var(--destructive));background:hsl(var(--destructive) / .06)}.visual-library-section{flex-direction:column;gap:1rem;margin-top:1rem;padding:1rem;display:flex}.visual-zone-head{text-transform:uppercase;letter-spacing:.08em;color:hsl(var(--muted-foreground));justify-content:space-between;align-items:center;gap:.5rem;font-size:.76rem;font-weight:700;display:flex}.visual-zone-pill{border:1px solid hsl(var(--border));background:hsl(var(--card));border-radius:.8rem;justify-content:space-between;align-items:center;gap:.75rem;padding:.6rem .7rem;display:flex}.visual-zone-pill strong{color:hsl(var(--foreground));font-size:.84rem;display:block}.visual-zone-pill p{color:hsl(var(--muted-foreground));font-size:.73rem}.visual-zone-actions button,.visual-value-controls button,.visual-value-controls select{border:1px solid hsl(var(--border));background:hsl(var(--background));color:hsl(var(--foreground));border-radius:999px;padding:.28rem .6rem;font-size:.75rem}.visual-zone-actions button,.visual-value-controls button{cursor:pointer}.visual-pivot-preview{max-height:28rem;overflow:auto}.pivot-table-scroll{width:100%;overflow-x:auto}.pivot-table{border-collapse:collapse;width:max-content;min-width:100%;font-size:.8125rem}.pivot-th{text-align:left;white-space:nowrap;border-bottom:1px solid hsl(var(--border));background:hsl(var(--muted) / .5);color:hsl(var(--muted-foreground));padding:.45rem .75rem;font-size:.75rem;font-weight:600}.pivot-th-value,.pivot-th-total-value,.pivot-th-grand-value{text-align:right}.pivot-th-total,.pivot-th-total-value{background:hsl(var(--muted) / .7)}.pivot-th-grand,.pivot-th-grand-value{background:hsl(var(--primary) / .08);color:hsl(var(--primary))}.pivot-td{border-bottom:1px solid hsl(var(--border) / .5);white-space:nowrap;color:hsl(var(--foreground));padding:.4rem .75rem}.pivot-td-value{text-align:right;font-variant-numeric:tabular-nums}.pivot-td-total{text-align:right;background:hsl(var(--muted) / .4);font-weight:600}.pivot-td-grand{text-align:right;background:hsl(var(--primary) / .05);color:hsl(var(--primary));font-weight:700}.pivot-td-dim{color:hsl(var(--foreground));font-weight:500}.pivot-row:hover td{background:hsl(var(--muted) / .3)}.pivot-grand-total-row td{background:hsl(var(--muted) / .6);font-weight:700}.pivot-loading,.pivot-error,.pivot-empty{color:hsl(var(--muted-foreground));justify-content:center;align-items:center;gap:.5rem;padding:2rem;font-size:.875rem;display:flex}.pivot-error{color:hsl(var(--destructive))}.pivot-spinner{border:2px solid hsl(var(--border));border-top-color:hsl(var(--primary));border-radius:50%;width:18px;height:18px;animation:.8s linear infinite sbi-spin}.pivot-builder{flex-direction:column;gap:1rem;display:flex}.pb-field{flex-direction:column;gap:.35rem;display:flex}.pb-label{color:hsl(var(--foreground));font-size:.8125rem;font-weight:500}.pb-select{background:hsl(var(--background));border:1px solid hsl(var(--border));width:100%;color:hsl(var(--foreground));border-radius:.375rem;outline:none;padding:.4rem .625rem;font-size:.875rem}.pb-select:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsl(var(--primary) / .2)}.pivot-zones{grid-template-columns:1fr 1fr;gap:.625rem;display:grid}.pivot-zone{background:hsl(var(--muted) / .4);border:1px dashed hsl(var(--border));border-radius:.5rem;min-height:5rem;padding:.5rem;transition:background .15s,border-color .15s}.pivot-zone-over{background:hsl(var(--primary) / .08);border-color:hsl(var(--primary) / .5)}.pivot-zone-label{text-transform:uppercase;letter-spacing:.06em;color:hsl(var(--muted-foreground));margin-bottom:.4rem;font-size:.6875rem;font-weight:600}.pivot-zone-pills{flex-wrap:wrap;gap:.3rem;display:flex}.pivot-zone-empty{color:hsl(var(--muted-foreground));font-size:.75rem;font-style:italic}.pivot-pill-wrapper{flex-direction:column;gap:.2rem;display:flex}.pivot-field-pill{cursor:grab;-webkit-user-select:none;user-select:none;white-space:nowrap;background:hsl(var(--primary) / .12);color:hsl(var(--primary));border:1px solid hsl(var(--primary) / .25);border-radius:9999px;align-items:center;gap:.35rem;padding:.2rem .5rem .2rem .6rem;font-size:.75rem;font-weight:500;display:inline-flex}.pivot-field-pill-number{color:#1b9849;background:#22c35d1f;border-color:#22c35d40}.pivot-field-pill-date{color:#ba7908;background:#f59f0a1f;border-color:#f59f0a40}.pivot-pill-label{line-height:1}.pivot-pill-remove{background:hsl(var(--muted-foreground) / .2);cursor:pointer;color:currentColor;border:none;border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;padding:0;font-size:9px;line-height:1;display:inline-flex}.pivot-agg-select{background:hsl(var(--background));border:1px solid hsl(var(--border));color:hsl(var(--foreground));border-radius:.25rem;outline:none;padding:.15rem .35rem;font-size:.6875rem}.pivot-builder-footer{border-top:1px solid hsl(var(--border));justify-content:flex-end;gap:.5rem;padding-top:.5rem;display:flex}.pb-btn{cursor:pointer;border:none;border-radius:.375rem;padding:.425rem 1rem;font-size:.875rem;font-weight:500}.pb-btn:disabled{opacity:.5;cursor:not-allowed}.pb-btn-primary{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.pb-btn-primary:hover:not(:disabled){background:hsl(var(--primary) / .88)}.pb-btn-ghost{color:hsl(var(--muted-foreground));border:1px solid hsl(var(--border));background:0 0}.pb-btn-ghost:hover:not(:disabled){background:hsl(var(--muted) / .6)}.pivot-widget{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;flex-direction:column;display:flex;overflow:hidden}.pivot-widget-header{justify-content:space-between;align-items:center;padding:.75rem 1rem 0;display:flex}.pivot-widget-title{color:hsl(var(--foreground));font-size:.875rem;font-weight:600}.pivot-widget-body{padding:.75rem;overflow-x:auto}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sa-dialog-overlay{z-index:80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a61;position:fixed;inset:0}.sa-dialog-content{z-index:81;border:1px solid hsl(var(--border));background:linear-gradient(180deg, hsl(var(--card) / .99), hsl(var(--card) / .96));border-radius:1rem;width:min(100vw - 2rem,42rem);max-height:min(100vh - 2rem,52rem);padding:1.25rem;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 24px 80px #0f172a38,0 8px 24px #0f172a1f}.sa-dialog-content:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.sa-dialog-close{color:hsl(var(--muted-foreground));position:absolute;top:.75rem;right:.75rem}.sa-dialog-close-icon{width:1rem;height:1rem}.sa-dialog-header{flex-direction:column;gap:.35rem;margin-bottom:1rem;padding-right:2.5rem;display:flex}.sa-dialog-footer{justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.sa-dialog-title{letter-spacing:-.02em;color:hsl(var(--foreground));font-size:1rem;font-weight:700;line-height:1.2}.sa-dialog-description{color:hsl(var(--muted-foreground));font-size:.875rem}.chart-builder-dialog,.pivot-builder-dialog{max-width:36rem!important}.dataset-dialog{max-width:34rem!important}.dashboard-toolbar{border-bottom:1px solid hsl(var(--border));background:hsl(var(--card));flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:.6rem 1rem;display:flex}.toolbar-left{align-items:center;gap:.75rem;display:flex}.toolbar-right{align-items:center;gap:.5rem;display:flex}.toolbar-back-btn{cursor:pointer;color:hsl(var(--muted-foreground));background:0 0;border:none;border-radius:.4rem;padding:.3rem .5rem;font-size:.85rem;transition:background .12s}.toolbar-back-btn:hover{background:hsl(var(--secondary))}.toolbar-name{color:hsl(var(--foreground));font-size:1rem;font-weight:600}.dashboard-builder-root{flex-direction:column;height:100vh;display:flex;overflow:hidden}.builder-body{flex:1;gap:0;display:flex;overflow:hidden}.builder-canvas-area{background:hsl(var(--background));flex:1;padding:1rem;overflow:auto}.builder-palette-panel{border-left:1px solid hsl(var(--border));background:hsl(var(--card));flex-direction:column;flex-shrink:0;gap:.85rem;width:320px;display:flex;overflow-y:auto}.widget-palette{padding:.75rem}.palette-heading{letter-spacing:.09em;text-transform:uppercase;color:hsl(var(--muted-foreground));margin-bottom:.5rem;font-size:.68rem;font-weight:700}.palette-list{flex-direction:column;gap:.35rem;display:flex}.palette-item{border:1px solid hsl(var(--border));cursor:pointer;text-align:left;background:0 0;border-radius:.5rem;align-items:center;gap:.6rem;width:100%;padding:.5rem .6rem;transition:background .12s;display:flex}.palette-item:hover{background:hsl(var(--secondary))}.palette-icon{flex-shrink:0;font-size:1.2rem}.palette-item-copy{flex-direction:column;gap:.05rem;display:flex}.palette-item-copy strong{font-size:.82rem}.palette-desc{color:hsl(var(--muted-foreground));font-size:.7rem}.builder-library-section,.builder-settings-panel{border-bottom:1px solid hsl(var(--border));padding:.75rem}.builder-library-header{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.6rem;display:flex}.builder-library-loading{flex-direction:column;gap:.5rem;display:flex}.builder-library-group{flex-direction:column;gap:.35rem;display:flex}.builder-library-group+.builder-library-group{margin-top:.75rem}.builder-library-subhead{text-transform:uppercase;letter-spacing:.08em;color:hsl(var(--muted-foreground));justify-content:space-between;align-items:center;gap:.5rem;font-size:.74rem;font-weight:700;display:flex}.builder-library-item{border:1px solid hsl(var(--border));background:hsl(var(--background));cursor:pointer;text-align:left;border-radius:.75rem;justify-content:space-between;align-items:center;gap:.75rem;width:100%;padding:.6rem .7rem;transition:border-color .12s,transform .12s,box-shadow .12s;display:flex}.builder-library-item:hover{border-color:hsl(var(--primary) / .28);box-shadow:0 10px 18px hsl(var(--primary) / .06);transform:translateY(-1px)}.builder-library-item strong{color:hsl(var(--foreground));font-size:.82rem;display:block}.builder-library-item p{color:hsl(var(--muted-foreground));font-size:.72rem}.builder-library-item span{color:hsl(var(--primary));font-size:.75rem;font-weight:700}.builder-library-empty{color:hsl(var(--muted-foreground));font-size:.8rem}.builder-settings-field{flex-direction:column;gap:.4rem;display:flex}.builder-settings-field label{color:hsl(var(--foreground));font-size:.76rem;font-weight:600}.builder-settings-meta{gap:.4rem;margin-top:.6rem;display:flex}.widget-frame{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);flex-direction:column;height:100%;display:flex;overflow:hidden}.widget-frame-editing{border-color:hsl(var(--primary) / .4);box-shadow:0 0 0 2px hsl(var(--primary) / .08)}.widget-frame-header{border-bottom:1px solid hsl(var(--border));background:hsl(var(--card));flex-shrink:0;justify-content:space-between;align-items:center;padding:.4rem .75rem;display:flex}.widget-frame-title{color:hsl(var(--foreground));font-size:.82rem;font-weight:600}.widget-frame-actions{gap:.25rem;display:flex}.widget-frame-btn{cursor:pointer;color:hsl(var(--muted-foreground));background:0 0;border:none;border-radius:.3rem;padding:.2rem .4rem;font-size:.85rem;transition:background .1s}.widget-frame-btn:hover{background:hsl(var(--secondary));color:hsl(var(--foreground))}.widget-frame-btn-danger:hover{background:hsl(var(--destructive) / .1);color:hsl(var(--destructive))}.widget-frame-body{flex:1;overflow:hidden}.canvas-empty{text-align:center;height:300px;color:hsl(var(--muted-foreground));justify-content:center;align-items:center;display:flex}.dashboard-grid{background:0 0}.dashboard-page{min-height:100vh}.dashboard-list-root{padding-top:1rem}.dashboard-list-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.dashboard-card{cursor:pointer;transition:box-shadow .15s}.dashboard-card:hover{box-shadow:0 4px 20px hsl(var(--primary) / .1)}.dashboard-card-title{font-size:1rem}.dashboard-card-meta{flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem;display:flex}.dashboard-card-actions{gap:.25rem;display:flex}.dashboard-empty{text-align:center;color:hsl(var(--muted-foreground));padding:4rem 2rem}.dashboard-rename-row{gap:.4rem;display:flex}.dashboard-present{z-index:9999;background:hsl(var(--background));padding:1.5rem;position:fixed;inset:0;overflow:auto}.present-exit-hint{z-index:10000;background:hsl(var(--foreground) / .8);color:hsl(var(--background));border-radius:.5rem;padding:.4rem .75rem;font-size:.78rem;position:fixed;top:1rem;right:1rem}.text-widget{padding:1rem}.text-widget-heading{margin-bottom:.5rem;font-size:1.1rem;font-weight:600}.text-widget-body{color:hsl(var(--muted-foreground));font-size:.9rem}.filter-widget{background:hsl(var(--secondary));border-radius:.5rem;align-items:center;gap:.75rem;padding:.5rem 1rem;display:flex}.filter-widget-label{color:hsl(var(--muted-foreground));flex:1;font-size:.85rem}.filter-widget-clear{cursor:pointer;color:hsl(var(--primary));background:0 0;border:none;font-size:.8rem;text-decoration:underline}.table-widget{flex-direction:column;height:100%;display:flex;overflow:hidden}.table-widget-footer{border-top:1px solid hsl(var(--border));flex-shrink:0;align-items:center;gap:.5rem;padding:.4rem;display:flex}.table-page-info{color:hsl(var(--muted-foreground));text-align:center;flex:1;font-size:.8rem}.widget-loading{height:100%;color:hsl(var(--muted-foreground));justify-content:center;align-items:center;font-size:.85rem;display:flex}.widget-unknown{height:100%;color:hsl(var(--destructive));justify-content:center;align-items:center;font-size:.85rem;display:flex}.explorer-root{grid-template-rows:auto 1fr auto;height:100%;min-height:0;margin:-1.5rem;display:grid;overflow:hidden}.explorer-toolbar{border-bottom:1px solid hsl(var(--border));background:hsl(var(--card));flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;min-height:2.5rem;padding:.45rem .75rem;display:flex}.explorer-toolbar-left{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.explorer-toolbar-right{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.4rem;display:flex}.explorer-title{white-space:nowrap;font-size:.9rem;font-weight:600}.explorer-schema-toggle{border:1px solid hsl(var(--border));cursor:pointer;color:hsl(var(--muted-foreground));background:0 0;border-radius:.35rem;padding:.15rem .45rem;font-size:.9rem;line-height:1;transition:background .1s}.explorer-schema-toggle:hover{background:hsl(var(--secondary))}.explorer-saved-btn{font-size:.8rem!important}.explorer-sq-panel{flex-direction:column;width:340px;max-height:420px;padding:0;display:flex;overflow:hidden}.esq-header{border-bottom:1px solid hsl(var(--border));flex-shrink:0;justify-content:space-between;align-items:center;padding:.6rem .75rem .5rem;display:flex}.esq-title{letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--muted-foreground));font-size:.75rem;font-weight:600}.esq-count{background:hsl(var(--primary) / .1);color:hsl(var(--primary));border-radius:999px;padding:.1rem .45rem;font-size:.72rem;font-weight:600}.esq-list{flex:1;padding:.35rem 0;overflow-y:auto}.esq-empty{color:hsl(var(--muted-foreground));text-align:center;padding:1.25rem .75rem;font-size:.82rem}.esq-row{align-items:center;gap:.25rem;padding:.2rem .5rem;display:flex}.esq-row:hover{background:hsl(var(--secondary) / .5)}.esq-load{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:.35rem;flex-direction:column;flex:1;align-items:flex-start;gap:.15rem;min-width:0;padding:.35rem .4rem;display:flex}.esq-load:hover{background:hsl(var(--secondary))}.esq-name{color:hsl(var(--foreground));white-space:nowrap;text-overflow:ellipsis;max-width:220px;font-size:.83rem;font-weight:500;overflow:hidden}.esq-preview{color:hsl(var(--muted-foreground));white-space:nowrap;text-overflow:ellipsis;max-width:220px;font-family:monospace;font-size:.72rem;overflow:hidden}.esq-actions{flex-shrink:0;align-items:center;gap:.1rem;display:flex}.esq-action{cursor:pointer;width:1.6rem;height:1.6rem;color:hsl(var(--muted-foreground));background:0 0;border:none;border-radius:.3rem;justify-content:center;align-items:center;font-size:.8rem;transition:background .1s,color .1s;display:flex}.esq-action:hover{background:hsl(var(--secondary));color:hsl(var(--foreground))}.esq-action--danger:hover{background:hsl(var(--destructive) / .1);color:hsl(var(--destructive))}.esq-action:disabled{opacity:.4;cursor:not-allowed}.explorer-save-inline{align-items:center;gap:.3rem;display:flex}.explorer-save-input{width:140px!important;height:1.8rem!important;font-size:.8rem!important}.explorer-body{flex:1;min-height:0;display:flex;overflow:hidden}.explorer-main{flex-direction:column;flex:1;width:100%;min-height:0;display:flex;overflow:hidden}.explorer-editor-zone{border-bottom:1px solid hsl(var(--border));flex-direction:column;flex-shrink:0;min-height:200px;max-height:45%;display:flex}.explorer-editor-wrap{flex:1;min-height:0;overflow:hidden}.query-editor-cm{height:100%;font-size:.85rem}.query-editor-cm .cm-editor{background:hsl(var(--card));height:100%}.query-editor-cm .cm-scroller,.query-editor-cm .cm-content{background:hsl(var(--card))}.query-editor-cm .cm-gutters{background:hsl(var(--card));border-right:1px solid hsl(var(--border))}.explorer-editor-footer{background:hsl(var(--muted));border-top:1px solid hsl(var(--border));color:hsl(var(--muted-foreground));flex-shrink:0;align-items:center;gap:1rem;padding:.2rem .6rem;font-size:.72rem;display:flex}.explorer-editor-stats{font-family:monospace}.explorer-last-run{color:hsl(var(--success));font-weight:500}.explorer-shortcut-hint{margin-left:auto}.explorer-error-banner{flex-shrink:0;padding:0 .5rem}.explorer-results-zone{flex:1;min-height:0;overflow:auto}.explorer-statusbar{border-top:1px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--muted-foreground));flex-shrink:0;justify-content:space-between;align-items:center;padding:.15rem .75rem;font-size:.68rem;display:flex}.explorer-status-connection{color:hsl(var(--success))}.explorer-status-timing{font-family:monospace}.schema-tree{padding:.5rem}.schema-tree-heading{letter-spacing:.09em;text-transform:uppercase;color:hsl(var(--muted-foreground));padding:.25rem 0 .5rem;font-size:.68rem;font-weight:700}.schema-record{margin-bottom:.15rem}.schema-record-toggle{cursor:pointer;text-align:left;width:100%;color:hsl(var(--foreground));background:0 0;border:none;border-radius:.4rem;align-items:center;gap:.4rem;padding:.3rem .4rem;font-size:.8rem;transition:background .1s;display:flex}.schema-record-toggle:hover{background:hsl(var(--secondary))}.schema-record-icon{color:hsl(var(--muted-foreground));font-size:.75rem}.schema-record-label{flex:1;font-weight:500}.schema-record-type{color:hsl(var(--muted-foreground));font-size:.68rem}.schema-fields{padding-left:1.1rem}.schema-field{cursor:pointer;text-align:left;width:100%;color:hsl(var(--foreground));background:0 0;border:none;border-radius:.3rem;align-items:center;gap:.5rem;padding:.2rem .4rem;font-size:.77rem;transition:background .1s;display:flex}.schema-field:hover{background:hsl(var(--accent))}.schema-field-name{font-family:monospace}.schema-field-type{color:hsl(var(--muted-foreground));font-size:.68rem}.saved-queries{padding:.6rem}.saved-queries-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.saved-queries-heading{letter-spacing:.09em;text-transform:uppercase;color:hsl(var(--muted-foreground));font-size:.68rem;font-weight:700}.results-panel{flex-direction:column;height:100%;min-height:0;display:flex}.results-loading{padding:1.5rem}.results-empty-state{color:hsl(var(--muted-foreground));text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:3rem 1rem;display:flex}.results-empty-icon{opacity:.3;margin-bottom:.75rem;font-size:2rem}.results-empty-title{color:hsl(var(--foreground));margin-bottom:.3rem;font-size:.95rem;font-weight:500}.results-empty-hint{font-size:.8rem}.results-empty-hint kbd{background:hsl(var(--muted));border:1px solid hsl(var(--border));border-radius:.25rem;padding:.1rem .35rem;font-family:monospace;font-size:.75rem}.results-toolbar{border-bottom:1px solid hsl(var(--border));background:hsl(var(--card));flex-shrink:0;justify-content:space-between;align-items:center;gap:.5rem;padding:.35rem .6rem;display:flex}.results-toolbar-left{flex-shrink:0;align-items:center;gap:.4rem;display:flex}.results-toolbar-center{flex:1;justify-content:center;display:flex}.results-toolbar-right{flex-shrink:0;align-items:center;gap:.3rem;display:flex}.results-count-badge{font-size:.72rem!important}.results-page-label{color:hsl(var(--muted-foreground));padding:0 .25rem;font-size:.78rem}.results-search-wrap{align-items:center;width:260px;display:flex;position:relative}.results-search-icon{pointer-events:none;z-index:1;font-size:.75rem;position:absolute;left:.5rem}.results-search-input{width:100%;height:1.75rem!important;padding-left:1.75rem!important;padding-right:1.75rem!important;font-size:.8rem!important}.results-search-clear{cursor:pointer;color:hsl(var(--muted-foreground));background:0 0;border:none;padding:.1rem;font-size:.7rem;line-height:1;position:absolute;right:.4rem}.results-search-clear:hover{color:hsl(var(--foreground))}.results-tabs{flex-direction:column;flex:1;min-height:0;display:flex}.results-tabs [role=tablist]{flex-shrink:0;padding:0 .6rem}.results-table-content{flex:1;min-height:0;overflow:auto}.results-table-scroll{height:100%;overflow:auto}.results-data-table{border-collapse:collapse;width:100%;font-size:.8rem}.results-data-table thead{z-index:2;position:sticky;top:0}.results-th{background:hsl(var(--muted));text-align:left;border-bottom:2px solid hsl(var(--border));cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;color:hsl(var(--foreground));padding:.4rem .6rem;font-size:.75rem;font-weight:600;transition:background .1s}.results-th:hover{background:hsl(var(--secondary))}.results-th.numeric{text-align:right}.results-th.sorted{color:hsl(var(--primary))}.results-th-label{margin-right:.3rem}.results-sort-icon{font-size:.7rem}.results-td{border-bottom:1px solid hsl(var(--border) / .5);white-space:nowrap;text-overflow:ellipsis;max-width:300px;padding:.3rem .6rem;overflow:hidden}.results-td.numeric{text-align:right;font-variant-numeric:tabular-nums}.results-td.null-value{color:hsl(var(--muted-foreground));font-style:italic}.results-row-alt{background:hsl(var(--muted) / .3)}.flow-progress{background:hsl(var(--secondary));border-radius:.5rem;flex-direction:column;gap:.25rem;margin-bottom:.5rem;padding:.6rem .75rem;display:flex}.flow-progress-item{justify-content:space-between;align-items:center;display:flex}.flow-progress-label{color:hsl(var(--muted-foreground));font-size:.72rem}.flow-progress-count{color:hsl(var(--foreground));font-size:.72rem;font-weight:600}.flow-cta-link{color:hsl(var(--primary));cursor:pointer;margin-top:.5rem;font-size:.85rem;text-decoration:underline;display:inline-block}.flow-cta-link:hover{opacity:.8}.flow-cta-button{margin-top:1rem}.dataset-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1rem;display:grid}.dataset-card{border:1px solid hsl(var(--border));background:hsl(var(--card));border-radius:.75rem;flex-direction:column;gap:.6rem;padding:1rem;transition:box-shadow .15s;display:flex}.dataset-card:hover{box-shadow:0 2px 12px hsl(var(--primary) / .06)}.dataset-card-header{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.dataset-card-titles{flex-direction:column;gap:.15rem;min-width:0;display:flex}.dataset-card-label{color:hsl(var(--foreground));font-size:.95rem;font-weight:600}.dataset-card-id{color:hsl(var(--muted-foreground));background:hsl(var(--muted));text-overflow:ellipsis;border-radius:.25rem;max-width:100%;padding:.1rem .35rem;font-family:monospace;font-size:.72rem;display:inline-block;overflow:hidden}.dataset-card-badges{flex-shrink:0;gap:.3rem;display:flex}.dataset-badge-synced{background:hsl(var(--success))!important;color:hsl(var(--success-foreground))!important}.dataset-card-query{color:hsl(var(--muted-foreground));background:hsl(var(--muted) / .5);text-overflow:ellipsis;white-space:nowrap;border-radius:.35rem;margin:0;padding:.35rem .5rem;font-family:monospace;font-size:.72rem;overflow:hidden}.dataset-card-meta{color:hsl(var(--muted-foreground));align-items:center;gap:.5rem;font-size:.75rem;display:flex}.dataset-card-sync-time{flex:1}.dataset-card-actions{border-top:1px solid hsl(var(--border) / .5);flex-wrap:wrap;align-items:center;gap:.35rem;padding-top:.25rem;display:flex}.dataset-delete-btn{opacity:.7;color:hsl(var(--destructive))!important}.dataset-delete-btn:hover{opacity:1}.dataset-delete-confirm{border-top:1px dashed hsl(var(--border));color:hsl(var(--muted-foreground));justify-content:space-between;align-items:center;gap:.75rem;padding-top:.7rem;font-size:.8rem;display:flex}.dataset-delete-confirm-actions{flex-wrap:wrap;gap:.45rem;display:flex}.dataset-create-panel{margin-bottom:1rem}.dataset-form-inline{flex-direction:column;gap:1rem;display:flex}.dataset-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;display:grid}.dataset-form-inline .field{flex-direction:column;gap:.4rem;display:flex}.dataset-form-actions{justify-content:flex-end;gap:.6rem;display:flex}.add-to-dashboard-list{flex-direction:column;gap:.5rem;margin-top:.75rem;display:flex}.add-to-dashboard-item{border:1px solid hsl(var(--border));cursor:pointer;border-radius:.5rem;justify-content:space-between;align-items:center;padding:.6rem .75rem;transition:background .12s;display:flex}.add-to-dashboard-item:hover{background:hsl(var(--secondary))}.save-dataset-dialog{max-width:480px}.saved-queries-save-form{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.sq-input{border:1px solid hsl(var(--border));background:hsl(var(--background));color:hsl(var(--foreground));border-radius:.4rem;width:120px;padding:.25rem .5rem;font-size:.8rem}.saved-queries-list{flex-direction:column;gap:.25rem;display:flex}.sq-empty{color:hsl(var(--muted-foreground));font-size:.8rem}.sq-item{align-items:center;gap:.25rem;display:flex}.sq-load-btn{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:.35rem;flex:1;padding:.3rem .4rem;font-size:.8rem;transition:background .1s}.sq-load-btn:hover{background:hsl(var(--secondary))}.sq-name{color:hsl(var(--foreground))}.sq-delete-btn{opacity:.5;flex-shrink:0}.sq-delete-btn:hover{opacity:1}.results-chart-tab,.results-pivot-tab{padding:.5rem}.results-chart-builder,.results-pivot-builder{max-width:600px;padding:.5rem}.results-chart-placeholder{background:hsl(var(--secondary));border-radius:.5rem;margin-bottom:.5rem;padding:1rem}.results-chart-preview,.results-pivot-preview{flex-direction:column;gap:.5rem;padding:.5rem;display:flex}.report-page{min-height:100vh}.report-list-root{padding-top:1rem}.report-list-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;display:grid}.report-card{cursor:pointer;transition:box-shadow .15s}.report-card:hover{box-shadow:0 4px 20px hsl(var(--primary) / .1)}.report-card-meta{flex-wrap:wrap;gap:.4rem;margin-bottom:.5rem;display:flex}.report-card-actions{gap:.25rem;display:flex}.report-empty{text-align:center;color:hsl(var(--muted-foreground));padding:4rem 2rem}.report-editor-root{flex-direction:column;height:100vh;display:flex;overflow:hidden}.report-editor-topbar{border-bottom:1px solid hsl(var(--border));background:hsl(var(--card));flex-shrink:0;align-items:center;gap:.75rem;padding:.6rem 1rem;display:flex}.report-name-input{color:hsl(var(--foreground));background:0 0;border:1px solid #0000;border-radius:.4rem;flex:1;padding:.3rem .5rem;font-size:1rem;font-weight:600;transition:border-color .12s}.report-name-input:hover,.report-name-input:focus{border-color:hsl(var(--border));outline:none}.report-editor-actions{gap:.4rem;display:flex}.report-editor-body{flex:1;display:flex;overflow:hidden}.report-fields-panel{border-right:1px solid hsl(var(--border));background:hsl(var(--card));flex-shrink:0;width:220px;padding:.75rem;overflow-y:auto}.report-panel-heading{letter-spacing:.09em;text-transform:uppercase;color:hsl(var(--muted-foreground));margin-bottom:.4rem;font-size:.68rem;font-weight:700}.report-panel-empty{color:hsl(var(--muted-foreground));font-size:.82rem}.report-dataset-select{border:1px solid hsl(var(--border));background:hsl(var(--background));border-radius:.4rem;width:100%;padding:.35rem .5rem;font-size:.82rem}.report-field-list{flex-direction:column;gap:.2rem;display:flex}.report-field-item{cursor:pointer;border-radius:.35rem;align-items:center;gap:.5rem;padding:.3rem .4rem;font-size:.8rem;transition:background .1s;display:flex}.report-field-item:hover{background:hsl(var(--secondary))}.report-field-selected{background:hsl(var(--primary) / .08);color:hsl(var(--primary))}.report-field-type{color:hsl(var(--muted-foreground));margin-left:auto;font-size:.68rem}.report-main-panel{flex:1;padding:.75rem;overflow:auto}.report-config-form{flex-direction:column;gap:1rem;max-width:500px;padding:.5rem 0;display:flex}.report-config-field{flex-direction:column;gap:.3rem;display:flex}.report-config-field label{color:hsl(var(--foreground));font-size:.82rem;font-weight:500}.report-select{border:1px solid hsl(var(--border));background:hsl(var(--background));border-radius:.4rem;padding:.35rem .5rem;font-size:.85rem}.report-checkbox{align-items:center;gap:.4rem;margin-top:.3rem;font-size:.82rem;display:flex}.report-preview{padding:.5rem}.report-a4{border:1px solid hsl(var(--border));color:#1a1a2e;background:#fff;border-radius:.5rem;min-height:600px;padding:2rem;font-size:.82rem;box-shadow:0 2px 12px #0000000f}.report-header{border-bottom:2px solid #1a56db;margin-bottom:1.5rem;padding-bottom:.75rem}.report-title{color:#1a56db;font-size:1.3rem;font-weight:700}.report-meta{color:#6b7280;margin-top:.25rem;font-size:.75rem}.report-table{border-collapse:collapse;width:100%}.report-table th{color:#fff;text-align:left;background:#1a56db;padding:.4rem .6rem;font-size:.75rem;font-weight:600}.report-table td{border-bottom:1px solid #e5e7eb;padding:.3rem .6rem}.report-row-even{background:#f9fafb}.report-row-odd{background:#fff}.report-group-row{background:#eff6ff}.report-group-row td{color:#1a56db;padding:.4rem .6rem;font-weight:600}.report-subtotal-row td{background:#dbeafe;border-top:1px solid #93c5fd}.report-total-row td{color:#fff;background:#1a56db;padding:.4rem .6rem;font-weight:700}.report-pagination{justify-content:center;align-items:center;gap:.5rem;padding:.75rem 0;display:flex}.schedule-editor{border:1px solid hsl(var(--border));border-radius:.5rem;padding:.75rem}.schedule-toggle{cursor:pointer;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.schedule-fields{flex-direction:column;gap:.6rem;margin-top:.75rem;display:flex}.schedule-field{flex-direction:column;gap:.25rem;display:flex}.schedule-field label{color:hsl(var(--muted-foreground));font-size:.78rem}.schedule-select,.schedule-input{border:1px solid hsl(var(--border));background:hsl(var(--background));border-radius:.4rem;padding:.3rem .5rem;font-size:.82rem}.sbi-page{flex-direction:column;gap:1.25rem;display:flex}.page-header,.visual-library-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.page-title{letter-spacing:-.04em;color:hsl(var(--foreground));font-size:1.65rem;font-weight:700}.page-desc{max-width:48rem;color:hsl(var(--muted-foreground));margin-top:.35rem;font-size:.92rem}.page-header-actions{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.analysis-page-eyebrow,.visual-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:hsl(var(--primary));margin-bottom:.35rem;font-size:.72rem;font-weight:700;display:inline-flex}.visual-heading{letter-spacing:-.03em;color:hsl(var(--foreground));font-size:1.15rem;font-weight:700}.visual-subcopy{color:hsl(var(--muted-foreground));margin-top:.35rem;font-size:.86rem;line-height:1.55}.visual-workbench{grid-template-columns:minmax(0,1fr) minmax(220px,.35fr);align-items:start;gap:1rem;display:grid}.charts-page,.pivot-page{flex-direction:column;gap:1.25rem;display:flex}.visual-canvas-panel,.visual-field-panel,.dataset-composer,.visual-library-section,.add-to-dashboard-panel{border:1px solid hsl(var(--border));background:linear-gradient(180deg, hsl(var(--card) / .98), hsl(var(--card) / .94));border-radius:1rem;box-shadow:0 10px 30px #0f172a0f}.visual-canvas-panel{padding:.85rem}.dataset-composer,.visual-library-section{padding:1.1rem}.visual-field-panel{padding:.65rem}.visual-canvas-toolbar,.visual-field-panel-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.visual-toolbar-stats{flex-wrap:wrap;gap:.45rem;display:flex}.visual-config-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.65rem;display:grid}.visual-config-field,.dataset-form-inline .field{flex-direction:column;gap:.35rem;display:flex}.visual-config-label{color:hsl(var(--muted-foreground));font-size:.78rem;font-weight:600}.visual-type-toggle{flex-wrap:wrap;gap:.45rem;display:flex}.visual-type-chip{border:1px solid hsl(var(--border));background:hsl(var(--background));color:hsl(var(--muted-foreground));cursor:pointer;border-radius:999px;padding:.45rem .75rem;transition:background .12s,border-color .12s,color .12s}.visual-type-chip-active{background:hsl(var(--primary));border-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.visual-option-row{flex-wrap:wrap;gap:1rem;margin-top:1rem;display:flex}.visual-option-row-inline{margin-top:0}.visual-option{color:hsl(var(--foreground));align-items:center;gap:.55rem;font-size:.85rem;display:inline-flex}.visual-preview-card{background:radial-gradient(circle at top right, hsl(var(--primary) / .08), transparent 30%), linear-gradient(180deg, hsl(var(--background)), hsl(var(--card)));border:1px solid hsl(var(--border));border-radius:.9rem;flex-direction:column;gap:.8rem;margin-top:1rem;padding:1rem;display:flex}.visual-preview-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.visual-preview-label{letter-spacing:.12em;text-transform:uppercase;color:hsl(var(--muted-foreground));font-size:.72rem;font-weight:700;display:inline-block}.visual-preview-title{letter-spacing:-.02em;margin-top:.15rem;font-size:1rem;font-weight:700}.visual-empty-preview{border:1px dashed hsl(var(--border));min-height:18rem;color:hsl(var(--muted-foreground));text-align:center;background:hsl(var(--background) / .7);border-radius:.85rem;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;display:flex}.visual-selection-strip{flex-wrap:wrap;gap:.5rem;display:flex}.visual-selection-pill,.visual-zone-pill{border:1px solid hsl(var(--border));background:hsl(var(--background));border-radius:.8rem;justify-content:space-between;align-items:center;gap:.9rem;padding:.75rem .85rem;display:flex}.visual-selection-pill{flex-direction:column;align-items:flex-start;min-width:12rem}.visual-selection-pill strong,.visual-zone-pill strong{color:hsl(var(--foreground));font-size:.87rem}.visual-selection-empty,.visual-field-empty{color:hsl(var(--muted-foreground));padding:.1rem .25rem;font-size:.74rem}.visual-workbench-footer{border-top:1px solid hsl(var(--border));justify-content:flex-end;padding-top:.35rem;display:flex}.visual-field-panel{align-self:start;max-height:calc(100vh - 3rem);position:sticky;top:0;overflow:hidden}.visual-dataset-list{flex-direction:column;gap:.1rem;max-height:calc(100vh - 11rem);margin-top:.5rem;padding-right:.2rem;display:flex;overflow:auto}.visual-dataset-card{flex-direction:column;display:flex}.visual-dataset-card+.visual-dataset-card{border-top:1px solid hsl(var(--border) / .4);margin-top:.1rem;padding-top:.25rem}.visual-dataset-card-head{font:inherit;color:inherit;text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;border-radius:.25rem;justify-content:space-between;align-items:center;gap:.5rem;width:100%;padding:.22rem .35rem;display:flex}.visual-dataset-card-head:before{content:"▾";color:hsl(var(--muted-foreground));flex-shrink:0;font-size:.65rem;transition:transform .15s}.visual-dataset-collapsed:before{transform:rotate(-90deg)}.visual-dataset-card-head:hover{background:hsl(var(--accent) / .4)}.visual-dataset-card-head strong{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.8rem;font-weight:600;overflow:hidden}.visual-dataset-meta{color:hsl(var(--muted-foreground));white-space:nowrap;flex-shrink:0;font-size:.64rem}.visual-field-group-head,.visual-zone-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.visual-zone-pill p,.visual-selection-pill span,.chart-widget-subtitle,.pivot-widget-meta{color:hsl(var(--muted-foreground));margin-top:.15rem;font-size:.78rem}.visual-field-group{border-left:1px solid hsl(var(--border) / .5);flex-direction:column;margin-top:.1rem;margin-left:.45rem;padding-left:.55rem;display:flex}.visual-field-group-head{text-transform:uppercase;letter-spacing:.07em;color:hsl(var(--muted-foreground));padding:.15rem .25rem;font-size:.64rem;font-weight:700}.visual-field-row{cursor:pointer;border-radius:.2rem;justify-content:space-between;align-items:center;gap:.35rem;padding:.18rem .3rem;transition:background .1s;display:flex}.visual-field-row:hover{background:hsl(var(--accent) / .45)}.visual-field-row-active{background:hsl(var(--primary) / .08)}.visual-field-check{align-items:center;gap:.3rem;min-width:0;display:flex}.visual-field-check span{color:hsl(var(--foreground));white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;font-weight:500;overflow:hidden}.visual-field-type{letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--muted-foreground));flex-shrink:0;font-size:.6rem;font-weight:600}.visual-library-section{margin-top:.25rem}.visual-pivot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.visual-pivot-zone{border:1px solid hsl(var(--border));background:hsl(var(--background) / .7);border-radius:.85rem;flex-direction:column;gap:.55rem;padding:.85rem;display:flex}.visual-zone-actions,.visual-value-controls{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.visual-zone-actions button,.visual-value-controls button,.add-to-dashboard-close{border:1px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--foreground));cursor:pointer;border-radius:.55rem;padding:.35rem .65rem}.visual-value-controls select,.dashboard-rename-input,.dashboard-widget-inspector-input{border:1px solid hsl(var(--border));background:hsl(var(--card));width:100%;min-height:2.15rem;color:hsl(var(--foreground));border-radius:.55rem;padding:0 .7rem}.visual-pivot-preview{overflow:auto}.dataset-composer-title{letter-spacing:-.03em;font-size:1.05rem;font-weight:700}.dataset-composer-copy{max-width:44rem;color:hsl(var(--muted-foreground));margin-top:.35rem;font-size:.86rem}.dataset-form-inline{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-top:1rem;display:grid}.dataset-form-query{grid-column:1/-1}.dataset-form-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.save-dataset-panel{border:1px solid hsl(var(--border));background:hsl(var(--card));border-radius:.9rem;padding:1rem}.save-dataset-panel-header{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.9rem;display:flex}.chart-widget-actions{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.chart-widget-footer{padding:0 1rem 1rem}.dashboard-rename-inline,.dashboard-widget-inspector-form{flex-direction:column;gap:.6rem;margin-bottom:.75rem;display:flex}.dashboard-widget-inspector{border-top:1px solid hsl(var(--border));margin-top:1rem;padding-top:1rem}.dashboard-widget-inspector-field{color:hsl(var(--muted-foreground));flex-direction:column;gap:.3rem;font-size:.8rem;display:flex}.dashboard-widget-inspector-meta{color:hsl(var(--muted-foreground));justify-content:space-between;gap:.75rem;font-size:.78rem;display:flex}.dashboard-widget-inspector-meta strong{color:hsl(var(--foreground))}.add-to-dashboard-panel{padding:.95rem}.add-to-dashboard-panel-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.add-to-dashboard-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:hsl(var(--primary));font-size:.7rem;font-weight:700}.add-to-dashboard-title{margin-top:.2rem;font-size:.9rem;display:block}.add-to-dashboard-actions{gap:.5rem;margin:.85rem 0;display:flex}.analysis-builder{grid-template-columns:minmax(0,1.5fr) minmax(280px,.9fr);gap:1rem;display:grid}.analysis-builder-main,.analysis-field-sidebar{border:1px solid hsl(var(--border));background:hsl(var(--card));border-radius:.9rem;padding:1rem}.analysis-builder-header,.analysis-field-sidebar-header,.analysis-preview-header,.analysis-selection-card-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.analysis-builder-eyebrow,.analysis-preview-eyebrow,.analysis-field-sidebar-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:hsl(var(--primary));font-size:.72rem;font-weight:700}.analysis-builder-title,.analysis-field-sidebar-title{letter-spacing:-.02em;font-size:1rem;font-weight:700}.analysis-builder-copy{color:hsl(var(--muted-foreground));margin-top:.3rem;font-size:.85rem}.analysis-builder-stats,.analysis-preview-meta{flex-wrap:wrap;gap:.45rem;display:flex}.analysis-builder-stat,.analysis-preview-chip,.analysis-field-role{letter-spacing:.08em;text-transform:uppercase;background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border-radius:999px;align-items:center;padding:.28rem .55rem;font-size:.72rem;font-weight:700;display:inline-flex}.analysis-control-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:1rem;display:grid}.analysis-field{flex-direction:column;gap:.35rem;display:flex}.analysis-label{color:hsl(var(--muted-foreground));font-size:.78rem;font-weight:600}.analysis-input,.analysis-select,.analysis-inline-select{border:1px solid hsl(var(--border));background:hsl(var(--background));width:100%;min-height:2.2rem;color:hsl(var(--foreground));border-radius:.55rem;padding:0 .7rem}.analysis-toggle{align-items:center;gap:.5rem;margin-top:1.55rem;font-size:.85rem;display:inline-flex}.analysis-preview-panel{border:1px solid hsl(var(--border));background:hsl(var(--background) / .7);border-radius:.85rem;margin-top:1rem;padding:.95rem}.analysis-preview-surface{min-height:18rem;margin-top:.75rem}.analysis-preview-placeholder{border:1px dashed hsl(var(--border));min-height:18rem;color:hsl(var(--muted-foreground));text-align:center;border-radius:.8rem;justify-content:center;align-items:center;padding:1rem;display:flex}.analysis-selection-strip{flex-wrap:wrap;gap:.75rem;margin-top:1rem;display:flex}.analysis-selection-card{border:1px solid hsl(var(--border));background:hsl(var(--background));border-radius:.75rem;flex:12rem;min-width:12rem;padding:.8rem}.analysis-selection-card-copy{color:hsl(var(--muted-foreground));margin-top:.3rem;font-size:.82rem}.analysis-builder-footer{justify-content:flex-end;gap:.55rem;margin-top:1rem;display:flex}.analysis-btn{cursor:pointer;border:1px solid #0000;border-radius:.6rem;padding:.55rem .95rem;font-weight:600}.analysis-btn-primary{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.analysis-btn-ghost{border-color:hsl(var(--border));color:hsl(var(--foreground));background:0 0}.analysis-field-tree{flex-direction:column;gap:.8rem;margin-top:1rem;display:flex}.analysis-dataset-section{border:1px solid hsl(var(--border));background:hsl(var(--background));border-radius:.8rem;padding:.8rem}.analysis-dataset-section.active{border-color:hsl(var(--primary) / .35)}.analysis-dataset-toggle,.analysis-field-row-main{align-items:center;gap:.65rem;display:flex}.analysis-dataset-toggle-copy strong,.analysis-field-row-copy strong{font-size:.85rem;display:block}.analysis-dataset-toggle-copy small,.analysis-field-row-copy small{color:hsl(var(--muted-foreground));font-size:.74rem}.analysis-field-list{flex-direction:column;gap:.45rem;margin-top:.8rem;display:flex}.analysis-field-row{border:1px solid hsl(var(--border));background:hsl(var(--card));border-radius:.7rem;justify-content:space-between;align-items:center;gap:.75rem;padding:.6rem .7rem;display:flex}.analysis-field-row.checked{border-color:hsl(var(--primary) / .35);background:hsl(var(--primary) / .06)}.analysis-field-row-controls{align-items:center;gap:.45rem;display:flex}@media (width<=1280px){.sbi-shell{grid-template-columns:56px 1fr}.sbi-sidebar-brand,.sbi-nav-link-label,.sbi-nav-link-note,.sbi-nav-heading,.sbi-brand-copy{display:none}.sbi-nav-link{justify-content:center;padding:.5rem}.visual-workbench{grid-template-columns:1fr}.charts-page,.pivot-page{flex-direction:column;gap:1rem;display:flex}.charts-page .visual-field-panel,.pivot-page .visual-field-panel{grid-area:auto}.charts-page .visual-library-section,.pivot-page .visual-library-section{grid-column:auto}.visual-field-panel{max-height:none;position:static}.analysis-builder{grid-template-columns:1fr}}@media (width<=768px){.sbi-aside{display:none}.visual-config-grid,.visual-pivot-grid,.chart-grid,.dataset-form-grid,.visual-filter-grid,.visual-join-grid,.visual-join-grid-step,.visual-join-key-row,.visual-join-key-row-wide{grid-template-columns:1fr}.chart-widget-header,.pivot-widget-header,.visual-canvas-toolbar,.visual-field-panel-head,.visual-library-head{flex-direction:column;align-items:flex-start}}
