@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:var(--font-sans), ui-sans-serif, system-ui, sans-serif;--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:var(--font-mono), ui-monospace, monospace;--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--radius-2xl:24px;--shadow-xs:0 1px 2px #0000000a;--ease-out:cubic-bezier(.16, 1, .3, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-display:var(--font-display), "Iowan Old Style", "Apple Garamond", ui-serif, Georgia, serif;--color-primary:#0052ff;--color-primary-light:#36f;--color-primary-dark:#0039cc;--color-primary-muted:#e8f0ff;--color-on-primary:#fff;--color-accent:#ff6b35;--color-accent-strong:#c2410c;--color-background:#f8f9fc;--color-muted:#edf0f5;--color-border:#e0e4ec;--color-border-subtle:#f0f2f6;--color-ring:#0052ff;--color-success:#047857;--color-success-muted:#ecfdf5;--color-warning:#b45309;--color-warning-muted:#fffbeb;--color-error:#b91c1c;--color-error-muted:#fef2f2;--color-info:#0052ff;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#5b6b7f;--surface-white:#fff;--surface-light:#f8fafc;--surface-hover:#f1f5f9;--surface-sunken:#f1f5f9;--surface-zebra:#fbfcfe;--shadow-card:0 1px 3px #0000000f, 0 4px 16px #0000000a;--shadow-elevated:0 4px 12px #00000012, 0 20px 48px #0000000f;--shadow-float:0 8px 24px #00000014, 0 32px 64px #0000000f;--shadow-button:0 2px 8px #0052ff47, 0 1px 2px #0000000f;--shadow-focus:0 0 0 3px #0052ff2e;--shadow-inset:inset 0 1px 2px #0000000f;--radius-button:10px;--z-dropdown:100;--z-sticky:200;--z-modal:300;--z-toast:500;--brand-nordhaven:#36f;--brand-skagerak:#14b8a6;--brand-fjordvik:#a78bfa;--on-dark-strong:#fffffff2;--on-dark:#ffffffb3;--on-dark-muted:#ffffff9e;--control-height:40px;--topbar-bg:#f8f9fcd6}@supports (color:color-mix(in lab, red, red)){:root,:host{--topbar-bg:color-mix(in srgb, var(--color-background) 84%, transparent)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.grid{display:grid}.inline{display:inline}.table{display:table}.resize{resize:both}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}[data-bank=skagerak]{--color-primary:#0d9488;--color-primary-light:#14b8a6;--color-primary-dark:#0f766e;--color-primary-muted:#ccfbf1;--color-accent:#b45309;--color-accent-strong:#92400e;--color-accent-light:#d97706;--color-background:#f8fdfc;--color-foreground:#042f2e;--color-muted:#ecfdf8;--color-border:#c7ede4;--color-border-subtle:#e6fbf2;--color-ring:#0d9488;--text-primary:#042f2e;--text-secondary:#446460;--text-muted:#5a736f;--surface-light:#f0fdfa;--surface-hover:#e6fbf2;--surface-sunken:#ecfdf8;--surface-zebra:#f7fdfb;--shadow-card:0 1px 3px #0d94880f, 0 4px 16px #0d94880a;--shadow-elevated:0 4px 12px #0d948814, 0 20px 48px #0d94880f;--shadow-float:0 8px 24px #0d94881a, 0 32px 64px #0d94880f;--shadow-button:0 2px 8px #0d94884d, 0 1px 2px #0000000f;--shadow-focus:0 0 0 3px #0d948838;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:28px;--radius-button:12px}[data-bank=skagerak][data-theme=dark]{--color-primary:#2dd4bf;--color-primary-light:#5eead4;--color-primary-dark:#14b8a6;--color-primary-muted:#134e4a;--color-accent:#fbbf24;--color-accent-strong:#fcd34d;--color-background:#042f2e;--color-foreground:#99f6e4;--color-muted:#115e59;--color-border:#115e59;--color-border-subtle:#0f4f4d;--color-info:#2dd4bf;--text-primary:#ccfbf1;--text-secondary:#a9c3bf;--text-muted:#8fa8a4;--surface-white:#0a3d3c;--surface-light:#063333;--surface-hover:#115e59;--surface-sunken:#042f2e;--surface-zebra:#073635;--shadow-card:0 1px 3px #0006, 0 4px 16px #0000004d;--shadow-elevated:0 4px 12px #00000080, 0 20px 48px #0006;--shadow-float:0 8px 24px #0009, 0 32px 64px #0006;--shadow-button:0 2px 8px #2dd4bf40, 0 1px 2px #0003;--shadow-focus:0 0 0 3px #2dd4bf40}[data-bank=fjordvik]{--color-primary:#6d28d9;--color-primary-light:#8b5cf6;--color-primary-dark:#5b21b6;--color-primary-muted:#ede9fe;--color-accent:#c2410c;--color-accent-strong:#9a3412;--color-accent-light:#ea580c;--color-background:#faf9fe;--color-foreground:#2e1065;--color-muted:#f1edfa;--color-border:#e1daf3;--color-border-subtle:#f0ecfa;--color-ring:#6d28d9;--text-primary:#1e1b4b;--text-secondary:#4c4470;--text-muted:#635b87;--surface-light:#faf9fe;--surface-hover:#f1edfa;--surface-sunken:#f4f1fb;--surface-zebra:#fcfbfe;--shadow-card:0 1px 3px #4c2c9912, 0 4px 16px #4c2c990d;--shadow-elevated:0 4px 12px #4c2c9917, 0 20px 48px #4c2c9912;--shadow-float:0 8px 24px #4c2c991f, 0 32px 64px #4c2c9912;--shadow-button:0 2px 8px #6d28d947, 0 1px 2px #0000000f;--shadow-focus:0 0 0 3px #6d28d933;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-2xl:16px;--radius-button:6px}[data-bank=fjordvik][data-theme=dark]{--color-primary:#a78bfa;--color-primary-light:#c4b5fd;--color-primary-dark:#8b5cf6;--color-primary-muted:#2e2154;--color-accent:#fb923c;--color-accent-strong:#fdba74;--color-background:#150e2e;--color-foreground:#ddd6fe;--color-muted:#2a2049;--color-border:#332856;--color-border-subtle:#2a2049;--color-info:#a78bfa;--text-primary:#e9e4fb;--text-secondary:#b9b0da;--text-muted:#9c93bf;--surface-white:#1e1640;--surface-light:#191036;--surface-hover:#2a2054;--surface-sunken:#120b26;--surface-zebra:#1b123a;--shadow-card:0 1px 3px #0006, 0 4px 16px #0000004d;--shadow-elevated:0 4px 12px #00000080, 0 20px 48px #0006;--shadow-float:0 8px 24px #0009, 0 32px 64px #0006;--shadow-button:0 2px 8px #a78bfa40, 0 1px 2px #0003;--shadow-focus:0 0 0 3px #a78bfa40}[data-theme=dark]{--color-primary:#4f8aff;--color-primary-light:#6ba1ff;--color-primary-dark:#2b6aff;--color-primary-muted:#1a2744;--color-accent:#ff8c5a;--color-accent-strong:#fdba74;--color-background:#0b0f1a;--color-foreground:#e2e8f0;--color-muted:#151b2b;--color-border:#1e293b;--color-border-subtle:#1a2332;--color-destructive:#f87171;--color-ring:#4f8aff;--color-success:#34d399;--color-success-muted:#0d2818;--color-warning:#fbbf24;--color-warning-muted:#1c1708;--color-error:#f87171;--color-error-muted:#1c0a0a;--color-info:#6ba1ff;--text-primary:#e2e8f0;--text-secondary:#a8b5c7;--text-muted:#8a99ae;--surface-white:#111827;--surface-light:#0f1523;--surface-hover:#1c2438;--surface-sunken:#0a0f1a;--surface-zebra:#0e1421;--shadow-xs:0 1px 2px #0003;--shadow-card:0 1px 3px #0000004d, 0 4px 16px #0003;--shadow-elevated:0 4px 12px #0006, 0 20px 48px #0000004d;--shadow-float:0 8px 24px #00000080, 0 32px 64px #0000004d;--shadow-button:0 2px 8px #4f8aff40, 0 1px 2px #0003;--shadow-focus:0 0 0 3px #4f8aff33;--shadow-inset:inset 0 1px 2px #0000004d}*,:before,:after{box-sizing:border-box}body{min-width:320px;color:var(--text-primary);background:var(--color-background);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:14px;line-height:1.55}button,select{font:inherit;cursor:pointer}input{font:inherit}::selection{background:var(--color-primary);color:var(--color-on-primary)}input,textarea{caret-color:var(--color-primary)}.skip-link{background:var(--color-primary);color:var(--color-on-primary);border-radius:var(--radius-md);z-index:999;padding:8px 16px;font-size:13px;font-weight:600;text-decoration:none;position:absolute;top:-100%;left:16px}.skip-link:focus{top:16px}:focus-visible{box-shadow:var(--shadow-focus);border-radius:var(--radius-xs);outline:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.12s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes grid-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes palette-in{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.stagger-in>*{animation:grid-in .36s var(--ease-out) backwards}.stagger-in>:nth-child(2){animation-delay:60ms}.stagger-in>:nth-child(3){animation-delay:.12s}.stagger-in>:nth-child(4){animation-delay:.18s}@media (prefers-reduced-motion:reduce){.stagger-in>*{animation:none!important}}.app-shell-grid{grid-template-columns:260px 1fr;min-height:100vh;display:grid}@media (max-width:1080px){.app-shell-grid{grid-template-columns:1fr}}.sidebar{color:var(--on-dark-strong);background:linear-gradient(195deg,#020617 0%,#0a1628 30%,#0e1f3d 60%,#162b50 85%,#1a3460 100%);border-right:1px solid #ffffff0f;flex-direction:column;gap:24px;height:100vh;padding:24px 20px;display:flex;position:sticky;top:0}[data-bank=skagerak] .sidebar{background:linear-gradient(195deg,#021a19 0%,#042f2e 30%,#0a3d3c 60%,#0f4f4d 85%,#136b68 100%);border-right:1px solid #2dd4bf1a}[data-bank=fjordvik] .sidebar{background:linear-gradient(195deg,#0b0620 0%,#150e2e 30%,#201546 60%,#2c1d5e 85%,#3a2775 100%);border-right:1px solid #a78bfa1a}.sidebar-nav-group-label{text-transform:uppercase;letter-spacing:.08em;color:var(--on-dark-muted);padding:0 4px;font-size:10px;font-weight:700}.sidebar-foot{color:var(--on-dark-muted);border-top:1px solid #ffffff14;margin-top:auto;padding-top:12px;font-size:10px;line-height:1.4}.nav-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.nav-item{border-radius:var(--radius-md);color:var(--on-dark);transition:background .15s var(--ease-out), color .15s var(--ease-out), transform .15s var(--ease-out);align-items:center;gap:12px;padding:10px 12px;font-size:13px;font-weight:500;text-decoration:none;display:flex;position:relative}.nav-item:hover{color:var(--on-dark-strong);background:#ffffff14;transform:translate(2px)}.nav-item.active{color:var(--on-dark-strong);box-shadow:inset 3px 0 0 var(--color-primary-light);background:#ffffff1a;font-weight:600}.nav-icon{flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.nav-icon svg{stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;fill:none;stroke:currentColor;width:18px;height:18px}.nav-label{white-space:nowrap}@media (prefers-reduced-motion:reduce){.nav-item:hover{transform:none}}.brand-dropdown-wrap{position:relative}.brand-lockup{border-radius:var(--radius-md);width:100%;color:inherit;cursor:pointer;transition:background .15s var(--ease-out);background:0 0;border:none;align-items:center;gap:12px;padding:8px;display:flex}.brand-lockup:hover{background:#ffffff14}.brand-logo{border-radius:var(--radius-sm);flex-shrink:0;width:36px;height:36px}.brand-text{text-align:left;flex-direction:column;flex:1;min-width:0;display:flex}.brand-name{color:var(--on-dark-strong);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.brand-subtitle{color:var(--on-dark-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.brand-chevron{width:16px;height:16px;color:var(--on-dark-muted);transition:transform .2s var(--ease-out);flex-shrink:0}.brand-lockup[aria-expanded=true] .brand-chevron{transform:rotate(180deg)}.brand-dropdown{background:var(--surface-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);z-index:var(--z-dropdown);animation:dropdown-in .15s var(--ease-out);box-shadow:inset 0 1px 0 #ffffff14, var(--shadow-float);position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:hidden}.brand-dropdown-header{border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.brand-dropdown-group{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:600}.brand-dropdown-count{color:var(--text-muted);font-size:11px}.brand-dropdown-items{padding:4px}.brand-dropdown-item{width:100%;color:var(--text-primary);cursor:pointer;border-radius:var(--radius-md);transition:background .15s var(--ease-out);text-align:left;background:0 0;border:none;align-items:center;gap:12px;padding:10px 12px;display:flex}.brand-dropdown-item:hover{background:var(--surface-hover)}.brand-dropdown-item.active{background:var(--color-primary-muted);box-shadow:inset 2px 0 0 var(--color-primary);position:relative}.bank-indicator{border-radius:50%;flex-shrink:0;width:10px;height:10px}.bank-indicator.nordhaven{background:var(--brand-nordhaven)}.bank-indicator.skagerak{background:var(--brand-skagerak)}.bank-indicator.fjordvik{background:var(--brand-fjordvik)}.bank-info{flex-direction:column;flex:1;min-width:0;display:flex}.bank-name{color:var(--text-primary);font-size:13px;font-weight:600}.bank-detail{color:var(--text-muted);font-size:11px}.bank-check{width:16px;height:16px;color:var(--color-primary);flex-shrink:0}.topbar{z-index:var(--z-sticky);border-bottom:1px solid var(--color-border-subtle);background:var(--topbar-bg);-webkit-backdrop-filter:blur(14px)saturate(140%);justify-content:space-between;align-items:center;gap:24px;margin:0 -40px 32px;padding:14px 40px;display:flex;position:sticky;top:0}.topbar-left{align-items:center;gap:12px;min-width:0;display:flex}.topbar-lockup{align-items:center;gap:12px;display:flex}.topbar-logo{filter:drop-shadow(0 2px 6px #0000002e)}[data-theme=dark] .topbar-logo{filter:drop-shadow(0 2px 6px #0052ff40)}@supports (color:color-mix(in lab, red, red)){[data-theme=dark] .topbar-logo{filter:drop-shadow(0 2px 6px color-mix(in srgb, var(--color-primary) 25%, transparent))}}.topbar-title-block{flex-direction:column;line-height:1.1;display:flex}.topbar-kicker{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.2em;color:var(--text-muted);font-size:9px;font-weight:600}.topbar-head{font-family:var(--font-sans);letter-spacing:-.01em;color:var(--text-primary);font-size:15px;font-weight:700}.topbar-actions{flex-shrink:0;align-items:center;gap:12px;display:flex}.workspace{flex-direction:column;padding:0 40px 32px;display:flex;overflow-y:auto}.panel{border:1px solid var(--color-border);background:var(--surface-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);min-width:0;padding:24px}.panel.wide{grid-column:span 3}.panel-header{border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:16px;display:flex}.panel-header h2{letter-spacing:-.005em;font-size:14px;font-weight:600}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.content-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.content-grid.two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.dashboard-charts-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.dashboard-section{margin-bottom:32px}.dashboard-section:last-child{margin-bottom:0}.section-heading{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:16px;font-size:13px;font-weight:600}.dashboard-panel{border:1px solid var(--color-border);background:var(--surface-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);min-width:0;padding:24px}.dashboard-panel.full-width{grid-column:1/-1}.dashboard-panel-header{border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;display:flex}.dashboard-panel-header h3{letter-spacing:-.005em;margin:0;font-size:14px;font-weight:600}.quality-section-header{margin-bottom:16px}.quality-section-intro{color:var(--text-secondary);max-width:60ch;margin:4px 0 0;font-size:13px}.metric-card{border:1px solid var(--color-border);background:var(--surface-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:20px;transition:box-shadow .2s,transform .2s,border-color .2s;position:relative}.metric-card:hover{box-shadow:var(--shadow-elevated);border-color:var(--color-primary);transform:translateY(-2px)}.metric-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:12px;font-size:11px;font-weight:600;display:block}.metric-card strong{color:var(--text-primary);font-size:28px;font-weight:700;font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;overflow-wrap:anywhere;margin:0 0 4px;line-height:1.1;display:block}.metric-card span:last-child{color:var(--text-muted);margin-top:4px;font-size:12px;display:block}.kpi-card{background:var(--surface-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);align-items:center;gap:20px;padding:24px;transition:box-shadow .2s,transform .2s,border-color .2s;display:flex}.kpi-card:hover{box-shadow:var(--shadow-elevated);border-color:var(--color-primary);transform:translateY(-2px)}.kpi-card:hover .kpi-icon{transform:scale(1.04)}.kpi-icon{border-radius:var(--radius-lg);flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex;box-shadow:inset 0 0 0 1px}@supports (color:color-mix(in lab, red, red)){.kpi-icon{box-shadow:inset 0 0 0 1px color-mix(in srgb, currentColor 16%, transparent)}}.kpi-icon{transition:transform .2s var(--ease-out)}.kpi-icon svg{stroke-width:1.75px;width:24px;height:24px}.kpi-icon.customers,.kpi-icon.teal{background:linear-gradient(135deg, var(--color-primary-muted), #c8daff)}@supports (color:color-mix(in lab, red, red)){.kpi-icon.customers,.kpi-icon.teal{background:linear-gradient(135deg, var(--color-primary-muted), color-mix(in srgb, var(--color-primary) 14%, var(--color-primary-muted)))}}.kpi-icon.customers,.kpi-icon.teal{color:var(--color-primary)}.kpi-icon.balance,.kpi-icon.green{background:linear-gradient(135deg, var(--color-success-muted), #cceadf)}@supports (color:color-mix(in lab, red, red)){.kpi-icon.balance,.kpi-icon.green{background:linear-gradient(135deg, var(--color-success-muted), color-mix(in srgb, var(--color-success) 14%, var(--color-success-muted)))}}.kpi-icon.balance,.kpi-icon.green{color:var(--color-success)}.kpi-icon.fraud{background:linear-gradient(135deg, var(--color-error-muted), #f4d4d4)}@supports (color:color-mix(in lab, red, red)){.kpi-icon.fraud{background:linear-gradient(135deg, var(--color-error-muted), color-mix(in srgb, var(--color-error) 14%, var(--color-error-muted)))}}.kpi-icon.fraud{color:var(--color-error)}.kpi-icon.approval,.kpi-icon.amber{background:linear-gradient(135deg, var(--color-warning-muted), #f5e3cb)}@supports (color:color-mix(in lab, red, red)){.kpi-icon.approval,.kpi-icon.amber{background:linear-gradient(135deg, var(--color-warning-muted), color-mix(in srgb, var(--color-warning) 14%, var(--color-warning-muted)))}}.kpi-icon.approval,.kpi-icon.amber{color:var(--color-warning)}.kpi-icon.legacy{background:linear-gradient(135deg,#ff6b351f,#ff6b3538)}@supports (color:color-mix(in lab, red, red)){.kpi-icon.legacy{background:linear-gradient(135deg, color-mix(in srgb, var(--color-accent) 12%, transparent), color-mix(in srgb, var(--color-accent) 22%, transparent))}}.kpi-icon.legacy{color:var(--color-accent-strong)}@media (prefers-reduced-motion:reduce){.kpi-card:hover .kpi-icon{transform:none}}.kpi-content{flex:1;min-width:0}.kpi-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-size:11px;font-weight:600;display:block}.kpi-value{color:var(--text-primary);font-size:28px;font-weight:700;line-height:1.1;font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;display:block}.kpi-sub{color:var(--text-muted);margin-top:4px;font-size:12px;display:block}.table-wrap{margin:0 -24px;padding:0 24px;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:680px}th,td{border-bottom:1px solid var(--color-border-subtle);text-align:left;padding:12px 16px;font-size:13px}th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;background:var(--surface-light);border-bottom-color:var(--color-border);font-size:10px;font-weight:600;position:sticky;top:0}tr:last-child td{border-bottom:none}tr:nth-child(2n) td{background:var(--surface-zebra)}tbody tr{transition:background .12s var(--ease-out)}tr:hover td{background:var(--surface-hover)}.numeric{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--font-mono)}.amount-debit{color:var(--color-error);font-variant-numeric:tabular-nums;font-weight:600;font-family:var(--font-mono)}.amount-credit{color:var(--color-success);font-variant-numeric:tabular-nums;font-weight:600;font-family:var(--font-mono)}.source-badge{border:1px solid var(--color-border);background:var(--surface-white);color:var(--text-secondary);white-space:nowrap;border-radius:999px;align-items:center;gap:3px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.muted-small{color:var(--text-muted);font-size:11px}.empty-cell{color:var(--text-muted);text-align:center;padding:40px}.selectable-row{transition:background .15s}.selectable-row.row-selected td{background:var(--color-primary-muted)}.cell-link{color:var(--color-primary);text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:600}.cell-link:hover{text-decoration:underline}.risk-badge,.lifecycle-badge,.status-badge{border-radius:var(--radius-sm);white-space:nowrap;letter-spacing:.02em;padding:3px 10px;font-size:12px;font-weight:600;display:inline-block}.risk-badge.low{background:var(--color-success-muted);color:var(--color-success)}.risk-badge.medium{background:var(--color-warning-muted);color:var(--color-warning)}.risk-badge.high{background:var(--color-error-muted);color:var(--color-error)}.lifecycle-badge.active{background:var(--color-success-muted);color:var(--color-success)}.lifecycle-badge.inactive{background:var(--surface-sunken);color:var(--text-muted)}.decision-badge{border:1px solid var(--color-border);background:var(--surface-white);min-width:72px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:5px 12px;font-size:11px;font-weight:700;display:inline-flex}.decision-badge:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:5px;height:5px}.decision-badge.allow{color:var(--color-success);background:var(--color-success-muted);border-color:#0000}.decision-badge.review{color:var(--color-warning);background:var(--color-warning-muted);border-color:#0000}.decision-badge.block{color:var(--color-error);background:var(--color-error-muted);border-color:#0000}.customer-id{font-family:var(--font-mono);color:var(--color-primary);font-size:13px;font-weight:600;text-decoration:none}.customer-id:hover{text-decoration:underline}.status-badge.status-clean{background:var(--color-success-muted);color:var(--color-success)}.status-badge.status-pending{background:var(--color-warning-muted);color:var(--color-warning)}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.form-grid label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;gap:8px;font-size:11px;font-weight:600;display:grid}.form-grid input,.form-grid select{width:100%;min-width:0;min-height:var(--control-height);border:1px solid var(--color-border);background:var(--surface-white);color:var(--text-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-inset);padding:10px 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.form-grid input:focus,.form-grid select:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus);outline:none}.form-grid input::placeholder{color:var(--text-muted)}.form-actions{grid-column:1/-1;justify-content:flex-start;align-items:center;gap:12px;margin-top:4px;display:flex}.form-submit{background:var(--color-primary);color:var(--color-on-primary);min-height:var(--control-height);border-radius:var(--radius-button);box-shadow:var(--shadow-button);border:0;padding:11px 24px;font-size:14px;font-weight:600;transition:background .15s,transform .15s}.form-submit:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px)}.form-submit:active:not(:disabled){transform:translateY(0)scale(.98)}.form-submit:disabled{opacity:.6;cursor:not-allowed}.action-row{flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px;display:flex}.action-row button{background:var(--color-primary);color:var(--color-on-primary);min-height:var(--control-height);border-radius:var(--radius-button);box-shadow:var(--shadow-button);border:0;padding:11px 24px;font-size:13px;font-weight:600;transition:background .15s,transform .15s}.action-row button:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px)}.action-row button:active:not(:disabled){transform:translateY(0)scale(.98)}.action-row button:disabled{opacity:.6;cursor:progress}.action-status{color:var(--text-muted);font-size:12px}.action-status.ok{color:var(--color-success);font-weight:600}.action-status.error{color:var(--color-error);font-weight:600}.detail-list{grid-template-columns:minmax(120px,.8fr) minmax(0,1fr);gap:12px 16px;margin:0;display:grid}.detail-list>div{display:contents}.detail-list dt{color:var(--text-muted);font-size:12px;font-weight:500}.detail-list dd{overflow-wrap:anywhere;min-width:0;margin:0;font-size:13px;font-weight:500}.source-pill{color:var(--color-primary);background:var(--color-primary-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:10px;font-weight:700;display:inline-flex}.source-pill:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.source-pill.crm{color:var(--text-secondary);background:var(--surface-sunken)}.source-pill.risk,.source-pill.legacy{color:var(--color-accent-strong);background:#ff6b351f}@supports (color:color-mix(in lab, red, red)){.source-pill.risk,.source-pill.legacy{background:color-mix(in srgb, var(--color-accent) 12%, transparent)}}.source-pill.neutral{color:var(--text-muted);background:var(--surface-sunken)}@keyframes bar-in{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.risk-chart{flex-direction:column;gap:12px;display:flex}.risk-bar-item{align-items:center;gap:12px;display:flex}.risk-bar-label{width:96px;color:var(--text-secondary);text-align:right;white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;font-size:12px;font-weight:600;overflow:hidden}.risk-bar-track{background:var(--surface-sunken);border-radius:var(--radius-sm);min-width:0;height:24px;box-shadow:var(--shadow-inset);flex:1;overflow:hidden}.risk-bar-fill{border-radius:var(--radius-sm);transform-origin:0;height:100%;animation:bar-in .5s var(--ease-out) backwards}.risk-bar-item:nth-child(2) .risk-bar-fill{animation-delay:40ms}.risk-bar-item:nth-child(3) .risk-bar-fill{animation-delay:80ms}.risk-bar-item:nth-child(4) .risk-bar-fill{animation-delay:.12s}.risk-bar-item:nth-child(5) .risk-bar-fill{animation-delay:.16s}.risk-bar-fill.low{background:linear-gradient(90deg, #047857cc, var(--color-success))}@supports (color:color-mix(in lab, red, red)){.risk-bar-fill.low{background:linear-gradient(90deg, color-mix(in srgb, var(--color-success) 80%, transparent), var(--color-success))}}.risk-bar-fill.medium{background:linear-gradient(90deg, #b45309cc, var(--color-warning))}@supports (color:color-mix(in lab, red, red)){.risk-bar-fill.medium{background:linear-gradient(90deg, color-mix(in srgb, var(--color-warning) 80%, transparent), var(--color-warning))}}.risk-bar-fill.high{background:linear-gradient(90deg, #b91c1ccc, var(--color-error))}@supports (color:color-mix(in lab, red, red)){.risk-bar-fill.high{background:linear-gradient(90deg, color-mix(in srgb, var(--color-error) 80%, transparent), var(--color-error))}}.risk-bar-fill.unknown{background:linear-gradient(90deg, #5b6b7fcc, var(--text-muted))}@supports (color:color-mix(in lab, red, red)){.risk-bar-fill.unknown{background:linear-gradient(90deg, color-mix(in srgb, var(--text-muted) 80%, transparent), var(--text-muted))}}@media (prefers-reduced-motion:reduce){.risk-bar-fill{animation:none!important}}.risk-bar-count{color:var(--text-primary);text-align:right;width:44px;font-size:13px;font-weight:600;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.risk-bar-pct{color:var(--text-muted);text-align:right;font-variant-numeric:tabular-nums;width:40px;font-size:12px}.risk-bar-detail{color:var(--text-primary);white-space:nowrap;font-size:12px;font-weight:600;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.top-customers-list{flex-direction:column;gap:4px;display:flex}.top-customer-item{border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:12px;padding:12px;transition:background .15s;display:flex}.top-customer-item:hover{background:var(--surface-hover)}.top-customer-rank{background:var(--surface-sunken);width:28px;height:28px;color:var(--text-secondary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.top-customer-info{flex:1;min-width:0}.top-customer-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.top-customer-number{color:var(--text-muted);font-size:11px;font-family:var(--font-mono);margin-top:2px}.top-customer-balance{color:var(--text-primary);white-space:nowrap;font-size:14px;font-weight:600;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.source-stat-group{flex-shrink:0;align-items:center;gap:12px;display:flex}.manager-table-wrap{overflow-x:auto}.manager-table{border-collapse:collapse;width:100%}.manager-table th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-bottom:1px solid var(--color-border);padding:12px 16px;font-size:10px;font-weight:600}.manager-table td{color:var(--text-primary);border-bottom:1px solid var(--color-border-subtle);padding:12px 16px;font-size:14px}.performance-bar{background:var(--surface-sunken);border-radius:999px;width:120px;height:6px;overflow:hidden}.performance-bar-fill{background:var(--color-primary);border-radius:999px;height:100%}.dedupe-summary{gap:24px;margin:0 0 16px;display:flex}.dedupe-summary>div{display:contents}.dedupe-summary dt{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:600}.dedupe-summary dd{font-family:var(--font-mono);color:var(--text-primary);margin:0;font-size:15px;font-weight:700}.dedupe-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.dedupe-item{border-radius:var(--radius-md);background:var(--surface-light);border:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.dedupe-keys{align-items:center;gap:8px;display:inline-flex}.dedupe-survivor{font-family:var(--font-mono);color:var(--color-success);font-size:13px;font-weight:600}.dedupe-arrow{width:16px;height:16px;color:var(--text-muted);flex-shrink:0}.dedupe-merged{font-family:var(--font-mono);color:var(--text-secondary);font-size:13px;font-weight:600}.dedupe-matched{color:var(--text-muted);white-space:nowrap;font-size:12px}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:64px 32px;display:flex}.empty-state-icon{width:64px;height:64px;color:var(--text-muted);opacity:.5;margin-bottom:20px}.empty-state-title{color:var(--text-primary);margin-bottom:8px;font-size:18px;font-weight:600}.empty-state-text{color:var(--text-secondary);max-width:46ch;margin:0;font-size:14px}.error-state{border:1px solid var(--color-error);background:var(--color-error-muted);border-radius:var(--radius-lg);color:var(--text-primary);padding:24px}.error-state strong{color:var(--color-error);margin-bottom:6px;font-size:15px;display:block}.error-state p{margin:0 0 4px;font-size:13px}.error-state-hint{color:var(--text-secondary)}.error-state-retry{border:1px solid var(--color-error);min-height:36px;color:var(--color-error);border-radius:var(--radius-sm);cursor:pointer;background:0 0;margin-top:12px;padding:8px 16px;font-size:13px;font-weight:600}.error-state-retry:hover{background:var(--color-error);color:var(--surface-white)}[data-bank=skagerak] .empty-state-icon,[data-bank=fjordvik] .empty-state-icon{color:var(--color-primary);opacity:.35}.skeleton{background:linear-gradient(90deg, var(--surface-light) 25%, var(--surface-hover) 50%, var(--surface-light) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.8s ease-in-out infinite skeleton-loading}.skeleton-bar{height:16px}.skeleton-row{border-radius:0;height:44px;margin-bottom:1px}.skeleton-table{padding:0;overflow:hidden}.skeleton-card{border-radius:var(--radius-lg);height:116px}.skeleton-kpi{border-radius:var(--radius-xl);height:102px}.skeleton-panel{border-radius:var(--radius-xl);height:260px}.toast-stack{z-index:var(--z-toast);pointer-events:none;flex-direction:column;gap:12px;display:flex;position:fixed;bottom:24px;right:24px}.toast{background:var(--surface-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);min-width:300px;max-width:440px;box-shadow:var(--shadow-float);pointer-events:auto;animation:toast-in .3s var(--ease-out);align-items:center;gap:12px;padding:12px 14px 12px 12px;display:flex}.toast-icon-well{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.toast-icon{width:18px;height:18px}.toast-message{flex:1;font-size:13px;font-weight:500;line-height:1.45}.toast-dismiss{width:32px;height:32px;color:var(--text-muted);border-radius:var(--radius-sm);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.toast-dismiss svg{width:14px;height:14px}.toast-dismiss:hover{background:var(--surface-hover);color:var(--text-primary)}.toast.success .toast-icon-well{background:var(--color-success-muted);color:var(--color-success)}.toast.error .toast-icon-well{background:var(--color-error-muted);color:var(--color-error)}.toast.warning .toast-icon-well{background:var(--color-warning-muted);color:var(--color-warning)}.toast.info .toast-icon-well{background:#0052ff1f}@supports (color:color-mix(in lab, red, red)){.toast.info .toast-icon-well{background:color-mix(in srgb, var(--color-info) 12%, transparent)}}.toast.info .toast-icon-well{color:var(--color-info)}@media (max-width:720px){.toast-stack{bottom:16px;left:16px;right:16px}.toast{width:100%;min-width:0;max-width:none}}.command-palette-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:calc(var(--z-modal) - 1);background:#0206178c;position:fixed;inset:0}.command-palette{background:var(--surface-white);border:1px solid var(--color-border);border-radius:var(--radius-2xl);width:min(560px,100vw - 32px);max-height:440px;box-shadow:var(--shadow-float);z-index:var(--z-modal);animation:palette-in .2s var(--ease-out);flex-direction:column;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.command-palette-input{border:none;border-bottom:1px solid var(--color-border-subtle);width:100%;color:var(--text-primary);background:0 0;padding:20px;font-size:16px;font-weight:500}.command-palette-input:focus{box-shadow:none;outline:none}.command-palette-input::placeholder{color:var(--text-muted)}.command-palette-results{flex:1;padding:8px;overflow-y:auto}.command-palette-item{text-align:left;border-radius:var(--radius-md);cursor:pointer;background:0 0;border:none;align-items:center;gap:12px;width:100%;padding:12px 16px;transition:background .15s;display:flex}.command-palette-item:hover,.command-palette-item.selected{background:var(--surface-hover)}.command-palette-item.selected{box-shadow:inset 2px 0 0 var(--color-primary)}.command-palette-item-content{flex:1;min-width:0}.command-palette-item-title{color:var(--text-primary);font-size:14px;font-weight:500;display:block}.command-palette-item-description{color:var(--text-muted);margin-top:1px;font-size:12px;display:block}.command-palette-item-shortcut{font-family:var(--font-mono);color:var(--text-muted);background:var(--surface-sunken);border:1px solid var(--color-border);border-radius:var(--radius-xs);text-align:center;font-variant-numeric:tabular-nums;flex-shrink:0;min-width:24px;margin-left:12px;padding:2px 7px;font-size:11px;font-weight:600}.command-palette-empty{text-align:center;color:var(--text-muted);padding:20px 16px;font-size:13px}.live-bar-inline{align-items:center;gap:12px;margin:0;padding:0;list-style:none;display:flex}.live-dot{color:var(--text-muted);white-space:nowrap;align-items:center;gap:5px;font-size:11px;font-weight:600;display:inline-flex}.live-dot .live-dot-engine{color:var(--text-secondary);font-weight:500}.live-dot:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.live-dot.ok{color:var(--color-success)}.live-dot.ok:before{animation:2.5s ease-in-out infinite pulse-dot}.live-dot.error{color:var(--color-error)}.live-dot.error:before{animation:2.5s ease-in-out infinite pulse-dot}.source-estate-inline{align-items:center;gap:4px;margin:0;padding:0;list-style:none;display:flex}.source-estate-dot{cursor:help;background:0 0;border:none;width:24px;height:24px;padding:0;display:block;position:relative}.source-estate-dot:after{content:"";background:var(--dot-color,var(--text-muted));border-radius:50%;width:10px;height:10px;transition:transform .15s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.source-estate-dot:hover:after,.source-estate-dot:focus-visible:after{transform:translate(-50%,-50%)scale(1.35)}.source-estate-dot.core{--dot-color:var(--color-primary)}.source-estate-dot.crm,.source-estate-dot.risk,.source-estate-dot.legacy{--dot-color:var(--color-accent)}.source-estate-dot.reference{--dot-color:var(--text-muted)}.tooltip-trigger{position:relative}.tooltip-trigger:before{content:attr(data-tooltip);background:var(--surface-white);border:1px solid var(--color-border);color:var(--text-primary);white-space:nowrap;text-align:left;overflow-wrap:normal;word-break:normal;border-radius:var(--radius-sm);opacity:0;visibility:hidden;pointer-events:none;max-width:none;z-index:var(--z-dropdown);box-shadow:var(--shadow-float);padding:8px 10px;font-size:12px;font-weight:600;line-height:1.2;transition:opacity .12s,visibility .12s,transform .12s;position:absolute;top:calc(100% + 8px);left:50%;overflow:visible;transform:translate(-50%,6px)}.tooltip-trigger:hover:before,.tooltip-trigger:focus-visible:before{opacity:1;visibility:visible;transform:translate(-50%)}.mode-switch{border:1px solid var(--color-border);background:var(--surface-sunken);box-shadow:var(--shadow-inset);border-radius:999px;display:inline-flex;overflow:hidden}.mode-switch button{min-height:var(--control-height);color:var(--text-secondary);background:0 0;border:0;padding:8px 18px;font-size:12px;font-weight:600;transition:background .15s,color .15s}.mode-switch button:hover:not(:disabled):not(.selected){background:var(--surface-light);color:var(--text-primary)}.mode-switch .selected{background:var(--color-primary);color:var(--color-on-primary);font-weight:600}.mode-switch button:disabled{color:var(--text-muted);cursor:not-allowed;opacity:.7}.theme-toggle{min-height:var(--control-height);border:1px solid var(--color-border);background:var(--surface-white);color:var(--text-secondary);border-radius:var(--radius-sm);box-shadow:var(--shadow-xs);align-items:center;gap:6px;padding:8px 12px;font-size:12px;font-weight:500;transition:border-color .15s,color .15s;display:inline-flex}.theme-toggle:hover{border-color:var(--color-primary);color:var(--color-primary)}.theme-toggle-icon{flex-shrink:0;width:15px;height:15px}.search-wrap{margin:0 0 16px;position:relative}.search-bar{border:1.5px solid var(--color-border);background:var(--surface-white);border-radius:var(--radius-xl);width:100%;box-shadow:var(--shadow-card);align-items:center;transition:border-color .15s,box-shadow .15s;display:flex}.search-bar:focus-within{border-color:var(--color-primary);box-shadow:var(--shadow-focus), var(--shadow-elevated)}.search-bar-icon{width:44px;height:44px;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;padding-left:16px;display:flex}.search-bar-icon svg{stroke-width:2px;width:18px;height:18px}.search-bar input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;min-width:0;padding:14px 16px;font-size:14px}.search-bar input::placeholder{color:var(--text-muted)}.search-bar input:focus-visible{box-shadow:none}.search-bar-btn{background:var(--color-primary);color:var(--color-on-primary);border-radius:var(--radius-lg);cursor:pointer;box-shadow:var(--shadow-button);border:0;flex-shrink:0;margin:0 8px 0 0;padding:11px 20px;font-size:13px;font-weight:600;transition:background .15s,transform .15s}.search-bar-btn:hover{background:var(--color-primary-dark);transform:translateY(-1px)}.search-bar-btn:active{transform:translateY(0)}.search-results{width:100%;z-index:var(--z-modal);position:relative}.search-dropdown{background:var(--surface-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-float);position:absolute;top:4px;left:0;right:0;overflow:hidden}.search-dropdown-item{width:100%;color:var(--text-primary);text-align:left;cursor:pointer;border:0;border-bottom:1px solid var(--color-border-subtle);background:0 0;align-items:center;gap:12px;padding:12px 16px;transition:background .15s;display:flex}.search-dropdown-item:last-child{border-bottom:none}.search-dropdown-item:hover,.search-dropdown-item.active-option{background:var(--surface-hover)}.search-dropdown-icon{border-radius:var(--radius-md);background:#dee8f9;justify-content:center;align-items:center;width:36px;height:36px;display:flex}@supports (color:color-mix(in lab, red, red)){.search-dropdown-icon{background:color-mix(in srgb, var(--color-primary) 8%, var(--surface-sunken))}}.search-dropdown-icon{color:var(--color-primary);flex-shrink:0}.search-dropdown-icon svg{width:18px;height:18px}.search-dropdown-left{flex:1;min-width:0}.search-dropdown-name{color:var(--text-primary);font-size:14px;font-weight:600}.search-dropdown-meta{color:var(--text-muted);margin-top:2px;font-size:12px}.search-dropdown-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.search-dropdown-badge{white-space:nowrap;text-transform:uppercase;letter-spacing:.04em;border-radius:999px;flex-shrink:0;padding:3px 8px;font-size:10px;font-weight:600}.search-dropdown-badge.active{color:var(--color-success);background:var(--color-success-muted)}.search-dropdown-badge.inactive{color:var(--text-muted);background:var(--surface-sunken)}.search-empty{text-align:center;color:var(--text-muted);padding:32px 16px;font-size:13px}.customer-list-section{flex-direction:column;flex:1;min-height:0;display:flex}.customer-list-section .search-wrap{flex-shrink:0}.customer-table-section{flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.customer-toolbar{flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.customer-toolbar-left{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.section-heading-inline{margin:0}.page-size-control{color:var(--text-secondary);align-items:center;gap:8px;font-size:13px;display:flex;position:relative}.page-size-trigger{min-width:92px;min-height:var(--control-height);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--surface-white);color:var(--text-primary);box-shadow:var(--shadow-xs);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:14px;padding:8px 12px;font-size:13px;transition:border-color .15s,box-shadow .15s,color .15s;display:inline-flex}.page-size-trigger:hover,.page-size-trigger[aria-expanded=true]{border-color:var(--color-primary);color:var(--color-primary);box-shadow:var(--shadow-focus), var(--shadow-xs)}.page-size-trigger svg{color:currentColor;width:16px;height:16px;transition:transform .15s}.page-size-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.page-size-menu{background:var(--surface-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-width:92px;box-shadow:var(--shadow-float);z-index:var(--z-modal);animation:dropdown-in .15s var(--ease-out);padding:5px;position:absolute;top:calc(100% + 8px);right:0}.page-size-option{border-radius:var(--radius-md);width:100%;min-height:36px;color:var(--text-primary);font-variant-numeric:tabular-nums;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;padding:8px 12px;font-size:13px;transition:background .15s,color .15s;display:flex}.page-size-option:hover,.page-size-option.selected{background:#d4e1fa}@supports (color:color-mix(in lab, red, red)){.page-size-option:hover,.page-size-option.selected{background:color-mix(in srgb, var(--color-primary) 12%, var(--surface-hover))}}.page-size-option:hover,.page-size-option.selected{color:var(--color-primary)}.customer-table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);background:var(--surface-white);flex:0 auto;overflow-x:auto}.customer-table{border-collapse:collapse;width:100%;min-width:720px}.customer-table thead{z-index:2;position:sticky;top:0}.customer-table th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);background:var(--surface-light);border-bottom:1px solid var(--color-border);white-space:nowrap;padding:12px 16px;font-size:10px;font-weight:600}.customer-table td{color:var(--text-primary);border-bottom:1px solid var(--color-border-subtle);padding:12px 16px;font-size:14px}.customer-table th.numeric{text-align:right}.customer-table td.numeric{text-align:right;padding-right:28px}.customer-row{cursor:pointer;transition:background .15s}.customer-row:hover td{background:var(--surface-hover)}.customer-row:hover .customer-id{text-decoration:underline}.customer-row:focus-within td{background:var(--surface-hover)}.customer-detail .summary-grid{margin-bottom:20px}.customer-tabs-row{border-bottom:1px solid var(--color-border);align-items:center;gap:16px;margin-bottom:20px;display:flex}.customer-back-link{min-height:var(--control-height);color:var(--text-secondary);cursor:pointer;white-space:nowrap;border-radius:var(--radius-sm);background:0 0;border:none;flex-shrink:0;align-items:center;gap:6px;padding:8px 10px;font-size:12px;font-weight:500;transition:color .15s,background .15s;display:inline-flex}.customer-back-link svg{width:14px;height:14px}.customer-back-link:hover{color:var(--color-primary);background:var(--surface-hover)}.customer-tab-content{padding-top:4px}.customer-tab-content section.content-grid{margin-bottom:20px}.customer-tab-content>.panel{margin-bottom:18px}.customer-tab-content>.panel:last-child{margin-bottom:0}.customer-tab-content:focus-visible{box-shadow:none;outline:2px solid var(--color-ring);outline-offset:4px;border-radius:var(--radius-md)}.customer-tabs{flex:1;gap:4px;display:flex;overflow-x:auto}.customer-nav-item{min-height:var(--control-height);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:0;padding:12px 16px;font-size:13px;font-weight:500;transition:background .15s,color .15s;position:relative}.customer-nav-item:hover:not(.active){background:var(--surface-hover);color:var(--text-primary)}.customer-nav-item.active{color:var(--color-primary);background:0 0;font-weight:600}.customer-nav-item.active:after{content:"";background:var(--color-primary);border-radius:2px 2px 0 0;height:2px;position:absolute;bottom:-1px;left:12px;right:12px}.lineage-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.lineage-card{border:1px solid var(--color-border);background:var(--surface-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:16px 20px;transition:box-shadow .2s,transform .2s,border-color .2s}.lineage-card:hover{box-shadow:var(--shadow-elevated);border-color:var(--color-primary);transform:translateY(-2px)}.lineage-card strong{margin-bottom:12px;font-size:13px;font-weight:600;display:block}.lineage-card code{color:var(--text-muted);overflow-wrap:anywhere;font-size:11px;font-family:var(--font-mono);padding:2px 0;display:block}.filter-dropdown{position:relative}.filter-btn{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--surface-white);color:var(--text-secondary);cursor:pointer;min-height:var(--control-height);box-shadow:var(--shadow-xs);align-items:center;gap:8px;padding:10px 16px;font-size:13px;transition:border-color .15s,color .15s;display:flex}.filter-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.filter-btn svg{width:16px;height:16px}.filter-count{background:var(--color-primary);min-width:18px;height:18px;color:var(--color-on-primary);font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.filter-panel{background:var(--surface-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:inset 0 1px 0 #ffffff0f, var(--shadow-float);z-index:var(--z-modal);min-width:280px;animation:dropdown-in .15s var(--ease-out);padding:20px;position:absolute;top:calc(100% + 8px);left:0}.filter-panel label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px;font-size:11px;font-weight:600;display:block}.filter-panel select,.filter-panel input{width:100%;min-height:var(--control-height);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--surface-white);color:var(--text-primary);margin-top:4px;padding:8px 12px;font-size:13px}.filter-panel select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='M5 7l5 6 5-6' fill='none' stroke='%238A97B8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:38px}.range-inputs{align-items:center;gap:8px;margin-top:4px;display:flex}.range-inputs input{font-variant-numeric:tabular-nums;flex:1}.range-inputs span{color:var(--text-muted)}.filter-note{color:var(--text-muted);margin:0 0 12px;font-size:12px;line-height:1.5}.filter-actions{margin-top:4px}.filter-apply{width:100%;min-height:var(--control-height);background:var(--color-primary);color:var(--color-on-primary);border-radius:var(--radius-sm);cursor:pointer;border:none;margin-top:12px;padding:10px;font-size:13px;font-weight:600;transition:background .15s}.filter-apply:hover{background:var(--color-primary-dark)}.filter-clear{width:100%;min-height:var(--control-height);color:var(--text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;background:0 0;margin-top:8px;padding:9px;font-size:13px;transition:color .15s,border-color .15s}.filter-clear:hover{color:var(--text-primary);border-color:var(--text-primary)}.pagination{flex-shrink:0;align-items:center;gap:12px;display:flex}.pagination-btn{min-height:var(--control-height);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--surface-white);color:var(--text-primary);cursor:pointer;box-shadow:var(--shadow-xs);padding:8px 16px;font-size:13px;transition:border-color .15s,color .15s}.pagination-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.pagination-btn:disabled{opacity:.45;cursor:not-allowed}.pagination-info{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:13px}h1{letter-spacing:-.025em;margin:0;font-size:28px;font-weight:700;line-height:1.1}h2{letter-spacing:-.01em;margin:0;font-size:15px;font-weight:600}@media (max-width:1200px){.dashboard-kpi-grid,.summary-grid,.content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-charts-grid{grid-template-columns:1fr}}@media (max-width:1080px){.grid-cols-\[260px_1fr\]{grid-template-columns:1fr}.sidebar{flex-direction:row;align-items:center;height:auto;padding:12px 20px;position:static}.nav-list{gap:4px;display:flex}.nav-label{display:none}.workspace{padding:0 20px 24px}.topbar{margin:0 -20px 24px;padding:14px 20px}}@media (max-width:720px){.dashboard-kpi-grid,.summary-grid,.content-grid,.content-grid.two-column,.form-grid{grid-template-columns:1fr}.workspace{padding:0 16px 20px}.topbar{flex-direction:column;align-items:flex-start;gap:12px;margin:0 -16px 20px;padding:12px 16px}.topbar-actions{justify-content:flex-end;width:100%}}@media (pointer:coarse){:root{--control-height:44px}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.user-menu{position:relative}.user-menu-trigger{height:var(--control-height);background:var(--surface-white);border:1px solid var(--color-border);color:var(--text-primary);cursor:pointer;transition:border-color .15s var(--ease-out), background-color .15s var(--ease-out), box-shadow .15s var(--ease-out);max-width:240px;box-shadow:var(--shadow-xs);border-radius:999px;align-items:center;gap:8px;padding:0 12px 0 6px;font-size:13px;font-weight:600;display:inline-flex}.user-menu-trigger:hover{border-color:#709bf6}@supports (color:color-mix(in lab, red, red)){.user-menu-trigger:hover{border-color:color-mix(in srgb, var(--color-primary) 50%, var(--color-border))}}.user-menu-trigger:hover{background:#f5f8ff}@supports (color:color-mix(in lab, red, red)){.user-menu-trigger:hover{background:color-mix(in srgb, var(--color-primary) 4%, var(--surface-white))}}.user-menu-trigger:hover{box-shadow:var(--shadow-card)}.user-menu-trigger[aria-expanded=true]{border-color:#5a8cf7}@supports (color:color-mix(in lab, red, red)){.user-menu-trigger[aria-expanded=true]{border-color:color-mix(in srgb, var(--color-primary) 60%, var(--color-border))}}.user-menu-trigger[aria-expanded=true]{background:#f0f5ff}@supports (color:color-mix(in lab, red, red)){.user-menu-trigger[aria-expanded=true]{background:color-mix(in srgb, var(--color-primary) 6%, var(--surface-white))}}.user-menu-trigger:focus-visible{box-shadow:var(--shadow-focus);outline:none}.user-menu-initial{background:linear-gradient(135deg, var(--color-primary) 0%, #4d86ff 100%);border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.user-menu-initial{background:linear-gradient(135deg, var(--color-primary) 0%, color-mix(in srgb, var(--color-primary) 70%, var(--color-on-primary)) 100%)}}.user-menu-initial{color:var(--color-on-primary);font-family:var(--font-mono);letter-spacing:.04em;flex-shrink:0;font-size:11px;font-weight:700;box-shadow:0 1px 2px #00000014,inset 0 1px #ffffff1f}.user-menu-name{white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.005em;min-width:0;overflow:hidden}.user-menu-caret{color:var(--text-muted);transition:transform .15s var(--ease-out);flex-shrink:0}.user-menu-caret.is-open{color:var(--color-primary);transform:rotate(180deg)}.user-menu-panel{background:var(--surface-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:320px;box-shadow:var(--shadow-elevated);z-index:var(--z-dropdown);animation:dropdown-in .18s var(--ease-out);position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}.user-menu-hero{background:radial-gradient(120% 160% at 0% 0%, #0052ff2e 0%, transparent 55%), radial-gradient(120% 160% at 100% 100%, #ff6b351f 0%, transparent 55%), var(--surface-light);align-items:center;gap:14px;padding:18px 18px 16px;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.user-menu-hero{background:radial-gradient(120% 160% at 0% 0%, color-mix(in srgb, var(--color-primary) 18%, transparent) 0%, transparent 55%), radial-gradient(120% 160% at 100% 100%, color-mix(in srgb, var(--color-accent) 12%, transparent) 0%, transparent 55%), var(--surface-light)}}.user-menu-hero{border-bottom:1px solid var(--color-border-subtle)}[data-theme=dark] .user-menu-hero{background:radial-gradient(120% 160% at 0 0,#0052ff3d 0%,#0000 55%),radial-gradient(120% 160% at 100% 100%,#ff6b3529 0%,#0000 55%),#fff9}@supports (color:color-mix(in lab, red, red)){[data-theme=dark] .user-menu-hero{background:radial-gradient(120% 160% at 0% 0%, color-mix(in srgb, var(--color-primary) 24%, transparent) 0%, transparent 55%), radial-gradient(120% 160% at 100% 100%, color-mix(in srgb, var(--color-accent) 16%, transparent) 0%, transparent 55%), color-mix(in srgb, var(--surface-white) 60%, transparent)}}.user-menu-avatar{background:linear-gradient(135deg, var(--color-primary) 0%, #73a0ff 100%);border-radius:999px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.user-menu-avatar{background:linear-gradient(135deg, var(--color-primary) 0%, color-mix(in srgb, var(--color-primary) 55%, var(--color-on-primary)) 100%)}}.user-menu-avatar{color:var(--color-on-primary);font-family:var(--font-mono);letter-spacing:.04em;flex-shrink:0;font-size:16px;font-weight:700;box-shadow:0 4px 10px #0052ff4d,inset 0 1px #ffffff2e}@supports (color:color-mix(in lab, red, red)){.user-menu-avatar{box-shadow:0 4px 10px color-mix(in srgb, var(--color-primary) 30%, transparent), inset 0 1px 0 #ffffff2e}}.user-menu-id{flex:1;min-width:0}.user-menu-name-lg{color:var(--text-primary);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:700;line-height:1.2;overflow:hidden}.user-menu-email{font-family:var(--font-mono);letter-spacing:.02em;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;text-align:left;direction:rtl;margin-top:2px;font-size:11px;overflow:hidden}.user-menu-sep{background:var(--color-border-subtle);height:1px;margin:0}.user-menu-section{flex-direction:column;gap:2px;padding:8px;display:flex}.user-menu-row{border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:12px;padding:6px 10px;display:flex}.user-menu-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:10px;font-weight:700}.user-menu-mono{font-family:var(--font-mono);letter-spacing:.02em;color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;max-width:180px;font-size:11px;overflow:hidden}.user-menu-pill{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;background:var(--color-primary-muted);color:var(--color-primary);border:1px solid #0052ff40;border-radius:999px;align-items:center;padding:2px 10px;font-size:10px;font-weight:700;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.user-menu-pill{border:1px solid color-mix(in srgb, var(--color-primary) 25%, transparent)}}.user-menu-link{border-radius:var(--radius-sm);width:100%;color:var(--text-primary);cursor:pointer;text-align:left;transition:background-color .12s var(--ease-out), color .12s var(--ease-out);background:0 0;border:none;align-items:center;gap:12px;padding:9px 10px;font-family:inherit;font-size:13px;font-weight:500;display:flex}.user-menu-link:hover{background:var(--surface-hover)}.user-menu-link:focus-visible{box-shadow:var(--shadow-focus);outline:none}.user-menu-link svg{color:var(--text-muted);transition:color .12s var(--ease-out);flex-shrink:0}.user-menu-link:hover svg{color:var(--color-primary)}.user-menu-link>span:nth-child(2){flex:1}.user-menu-link-hint{font-family:var(--font-mono);letter-spacing:.04em;color:var(--text-muted);font-size:11px}.user-menu-link-danger{color:var(--color-error);border-top:1px solid var(--color-border-subtle);border-radius:0 0 var(--radius-lg) var(--radius-lg);margin-top:2px}.user-menu-link-danger svg{color:var(--color-error)}.user-menu-link-danger:hover{background:var(--color-error-muted);color:var(--color-error)}.user-menu-link-danger:hover svg{color:var(--color-error)}.denodo-sidebar{color:var(--on-dark-strong);height:100vh;z-index:calc(var(--z-sticky) + 10);scrollbar-width:thin;scrollbar-color:#ffffff1a transparent;transition:background .24s var(--ease-out), border-color .24s var(--ease-out);background:linear-gradient(195deg,#020617 0%,#0a1628 30%,#0e1f3d 60%,#162b50 85%,#1a3460 100%);border-right:1px solid #ffffff0f;flex-direction:column;gap:14px;padding:14px 12px;display:flex;position:sticky;top:0;overflow:visible auto}.denodo-sidebar::-webkit-scrollbar{width:6px}.denodo-sidebar::-webkit-scrollbar-track{background:0 0}.denodo-sidebar::-webkit-scrollbar-thumb{background:#ffffff1a padding-box padding-box;border:2px solid #0000;border-radius:999px}.denodo-sidebar:hover::-webkit-scrollbar-thumb{background:#ffffff2e padding-box padding-box}[data-bank=skagerak] .denodo-sidebar{background:linear-gradient(195deg,#021a19 0%,#042f2e 30%,#0a3d3c 60%,#0f4f4d 85%,#136b68 100%);border-right:1px solid #2dd4bf1a}[data-bank=fjordvik] .denodo-sidebar{background:linear-gradient(195deg,#0b0620 0%,#150e2e 30%,#201546 60%,#2c1d5e 85%,#3a2775 100%);border-right:1px solid #a78bfa1a}.denodo-sidebar .tooltip-trigger:before{white-space:normal;max-width:none;z-index:calc(var(--z-sticky) + 20);color:#fff;background:#1b3a7a;border:1px solid #ffffff47;inset:calc(100% + 6px) 6px auto}.denodo-sidebar .tooltip-trigger:hover:before,.denodo-sidebar .tooltip-trigger:focus-within:before,.denodo-sidebar .tooltip-trigger:focus-visible:before{transform:none}.denodo-sidebar .brand-lockup{border-bottom:1px solid #ffffff1a}.denodo-sidebar .brand-name{color:#fff}.denodo-sidebar .brand-subtitle{color:var(--on-dark-muted)}.denodo-sidebar-brand{padding-bottom:8px}.denodo-nav{flex-direction:column;gap:8px;display:flex}.denodo-nav-heading{border-radius:var(--radius-md);cursor:pointer;text-transform:uppercase;letter-spacing:.08em;width:100%;color:var(--on-dark-muted);background:#ffffff0d;border:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:4px 6px;font-size:11px;font-weight:700;transition:background .15s,border-color .15s;display:flex}.denodo-nav-heading:hover{background:#4581ff2a}@supports (color:color-mix(in lab, red, red)){.denodo-nav-heading:hover{background:color-mix(in srgb, var(--color-primary) 12%, #ffffff0d)}}.denodo-nav-heading:hover{border-color:#3173ff5f}@supports (color:color-mix(in lab, red, red)){.denodo-nav-heading:hover{border-color:color-mix(in srgb, var(--color-primary) 30%, #ffffff1a)}}.denodo-nav-heading:hover{color:#fff}.denodo-sidebar:before{content:"";background:linear-gradient(90deg, transparent 0%, var(--color-primary) 30%, var(--color-primary) 70%, transparent 100%);opacity:.85;pointer-events:none;z-index:1;height:2px;position:absolute;top:0;left:0;right:0}.denodo-nav-title{align-items:center;gap:8px;display:inline-flex}.denodo-nav-glyph{background:#0052ff2e;border-radius:4px;justify-content:center;align-items:center;width:14px;height:14px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.denodo-nav-glyph{background:color-mix(in srgb, var(--color-primary) 18%, transparent)}}.denodo-nav-glyph{color:var(--color-primary);flex-shrink:0}.denodo-nav-glyph svg{width:9px;height:9px}.denodo-nav-chevron{width:11px;height:11px;transition:transform .18s var(--ease-out);opacity:.7}.denodo-nav-heading.collapsed .denodo-nav-chevron{transform:rotate(-90deg)}.denodo-nav-meta{align-items:center;gap:8px;display:inline-flex}.denodo-nav-count{font-family:var(--font-mono);background:#3e7cff51;font-size:10px;font-weight:700}@supports (color:color-mix(in lab, red, red)){.denodo-nav-count{background:color-mix(in srgb, var(--color-primary) 24%, #ffffff1a)}}.denodo-nav-count{color:#fff;letter-spacing:.02em;border-radius:999px;padding:1px 8px}.denodo-sidebar-foot{border-top:1px solid #3778ff48;margin-top:auto;padding:8px 4px 0}@supports (color:color-mix(in lab, red, red)){.denodo-sidebar-foot{border-top:1px solid color-mix(in srgb, var(--color-primary) 22%, #ffffff14)}}.denodo-foot-label{text-transform:uppercase;letter-spacing:.1em;color:var(--on-dark-muted);font-size:9px;font-weight:700}.denodo-foot-bank{font-family:var(--font-mono);color:#3375ff;margin-top:4px;font-size:10px;font-weight:500;display:block}@supports (color:color-mix(in lab, red, red)){.denodo-foot-bank{color:color-mix(in srgb, var(--color-primary) 80%, #fff)}}.denodo-foot-bank{letter-spacing:0;text-transform:none}.denodo-ds-list{gap:2px;width:100%;margin:0;padding:0;list-style:none;display:grid}.denodo-ds-item{box-sizing:border-box;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:space-between;align-items:center;gap:2px;width:100%;min-width:0;min-height:22px;padding:0 4px;transition:background .12s,border-color .12s;display:flex}.denodo-ds-item:hover{background:#ffffff14;border-color:#0000}.denodo-ds-item.active{background:linear-gradient(90deg,#0052ff38 0%,#0052ff14 70%,#0000 100%)}@supports (color:color-mix(in lab, red, red)){.denodo-ds-item.active{background:linear-gradient(90deg, color-mix(in srgb, var(--color-primary) 22%, transparent) 0%, color-mix(in srgb, var(--color-primary) 8%, transparent) 70%, transparent 100%)}}.denodo-ds-item.active{box-shadow:inset 2px 0 0 var(--color-primary);border-color:#0000}.denodo-ds-info{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:6px;padding:0;display:flex}.denodo-ds-icon-well{background:#0052ff24;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:11px;line-height:0;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.denodo-ds-icon-well{background:color-mix(in srgb, var(--color-primary) 14%, transparent)}}.denodo-ds-icon-well{color:var(--color-primary)}.denodo-ds-icon-well .denodo-db-icon{width:11px;height:11px}.denodo-db-icon{width:13px;height:13px;color:var(--color-primary);flex-shrink:0}.denodo-ds-text{flex:1;align-items:baseline;gap:6px;min-width:0;display:inline-flex;overflow:hidden}.denodo-ds-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;flex-shrink:1;min-width:0;font-size:12px;font-weight:600;line-height:1.2;overflow:hidden}.denodo-ds-db{color:var(--on-dark-muted);white-space:nowrap;text-overflow:ellipsis;flex-shrink:2;min-width:0;font-size:11px;font-weight:400;overflow:hidden}.denodo-ds-meta-sep{background:var(--on-dark-muted);opacity:.55;border-radius:999px;flex-shrink:0;align-self:center;width:3px;height:3px;margin:0 1px}.denodo-ds-menu-wrap{flex-shrink:0;position:relative}.denodo-ds-menu-btn{width:22px;height:22px;color:var(--on-dark-muted);opacity:0;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s,opacity .12s;display:inline-flex}.denodo-ds-item:hover .denodo-ds-menu-btn,.denodo-ds-item.active .denodo-ds-menu-btn,.denodo-ds-item:focus-within .denodo-ds-menu-btn,.denodo-ds-menu-btn.open{opacity:1}.denodo-ds-menu-btn:hover:not(:disabled),.denodo-ds-menu-btn.open{color:#fff;background:#ffffff1f}.denodo-ds-menu-btn>svg{width:12px;height:12px;display:block}.denodo-ds-menu,.denodo-ds-menu-fixed{background:var(--surface-white);border:1px solid var(--color-border);min-width:180px;box-shadow:var(--shadow-float);z-index:var(--z-modal);animation:denodo-menu-in .14s var(--ease-out);border-radius:10px;padding:4px;overflow:hidden}.denodo-ds-menu{position:absolute;top:50%;left:calc(100% + 12px);transform:translateY(-50%)}.denodo-ds-menu-fixed{transform:none}@keyframes denodo-menu-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:none}}.denodo-ds-menu-item{width:100%;color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;padding:7px 9px;font-size:12.5px;font-weight:500;transition:background .12s,color .12s;display:flex}.denodo-ds-menu-item:hover:not(:disabled){background:#d9e5fa}@supports (color:color-mix(in lab, red, red)){.denodo-ds-menu-item:hover:not(:disabled){background:color-mix(in srgb, var(--color-primary) 10%, var(--surface-hover))}}.denodo-ds-menu-item:disabled{opacity:.6;cursor:progress}.denodo-ds-menu-item.danger{color:var(--color-error)}.denodo-ds-menu-item.danger:hover:not(:disabled){background:#b91c1c1a}@supports (color:color-mix(in lab, red, red)){.denodo-ds-menu-item.danger:hover:not(:disabled){background:color-mix(in srgb, var(--color-error) 10%, transparent)}}.denodo-ds-menu-icon{width:18px;height:18px;color:var(--color-primary);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.denodo-ds-menu-icon svg{width:13px;height:13px}.denodo-ds-menu-item.danger .denodo-ds-menu-icon{color:var(--color-error)}.denodo-ds-menu-header{border-bottom:1px solid var(--color-border-subtle);flex-direction:column;gap:1px;margin-bottom:3px;padding:8px 10px;display:flex}.denodo-ds-menu-name{font-family:var(--font-mono);color:var(--text-primary);word-break:break-all;letter-spacing:-.005em;font-size:12px;font-weight:600;line-height:1.25}.denodo-ds-menu-sub{color:var(--text-muted);font-size:10.5px;line-height:1.3}.denodo-ds-test{letter-spacing:.02em;color:#fff;opacity:0;pointer-events:none;background:linear-gradient(#2a63cc,#1b3a7a);border:0;border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:9px;font-weight:700;transition:opacity .15s,transform .15s,filter .15s;transform:translateY(2px);box-shadow:0 2px 6px #0000004d}.denodo-ds-test svg{width:14px;height:14px;display:block}.denodo-ds-action-spinner{text-align:center;width:14px;display:inline-block}.denodo-ds-item:hover .denodo-ds-test,.denodo-ds-item.active .denodo-ds-test,.denodo-ds-item:focus-within .denodo-ds-test{opacity:1;pointer-events:auto;transform:translateY(0)}.denodo-ds-test:hover:not(:disabled){filter:brightness(1.12);transform:translateY(-1px)}.denodo-ds-test:disabled{opacity:.6;cursor:progress}.denodo-ds-del{width:20px;height:20px;color:var(--on-dark-muted);cursor:pointer;opacity:0;pointer-events:none;background:#ffffff0f;border:0;border-radius:999px;flex-shrink:0;font-size:10px;line-height:1;transition:opacity .15s,color .15s,background .15s,transform .15s;transform:translateY(2px)}.denodo-ds-del svg{width:14px;height:14px;margin:0 auto;display:block}.denodo-ds-item:hover .denodo-ds-del,.denodo-ds-item.active .denodo-ds-del,.denodo-ds-item:focus-within .denodo-ds-del{opacity:1;pointer-events:auto;transform:translateY(0)}.denodo-ds-del:hover:not(:disabled){color:#fff;background:#e53935cc}.denodo-ds-del:disabled{opacity:.6;cursor:progress}.denodo-nav-empty{color:var(--on-dark-muted);margin:0;padding:4px 6px;font-size:12px;line-height:1.5}.denodo-nav-empty--rich{border:1px dashed #4480ff4c;align-items:flex-start;gap:10px;margin:4px 2px 0;padding:10px 10px 12px;display:flex}@supports (color:color-mix(in lab, red, red)){.denodo-nav-empty--rich{border:1px dashed color-mix(in srgb, var(--color-primary) 22%, #ffffff1a)}}.denodo-nav-empty--rich{background:#0052ff0f;border-radius:8px}@supports (color:color-mix(in lab, red, red)){.denodo-nav-empty--rich{background:color-mix(in srgb, var(--color-primary) 6%, transparent)}}.denodo-nav-empty--rich{color:var(--on-dark-muted)}.denodo-nav-empty--rich>div{flex-direction:column;gap:2px;min-width:0;display:flex}.denodo-nav-empty--rich strong{color:#fff;font-size:12px;font-weight:600;line-height:1.3}.denodo-nav-empty--rich span:not([class]){color:var(--on-dark-muted);font-size:11px;line-height:1.4}.denodo-nav-empty--rich svg{flex-shrink:0;margin-top:1px}.denodo-main{flex-direction:column;min-width:0;height:100vh;display:flex;overflow-y:auto}.denodo-topbar{z-index:var(--z-sticky);background:var(--topbar-bg);-webkit-backdrop-filter:blur(14px)saturate(140%);border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;gap:16px;padding:14px 32px;display:flex;position:sticky;top:0;box-shadow:inset 0 -2px #0052ff59}@supports (color:color-mix(in lab, red, red)){.denodo-topbar{box-shadow:inset 0 -2px 0 0 color-mix(in srgb, var(--color-primary) 35%, transparent)}}.denodo-title-lockup{align-items:center;gap:12px;display:flex}.denodo-logo{filter:drop-shadow(0 2px 6px #0f172a59);flex-shrink:0;width:36px;height:40px}.denodo-title-block{flex-direction:column;line-height:1.1;display:flex}.denodo-title-kicker{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.28em;color:var(--text-muted);font-size:9px;font-weight:600}.denodo-title-head{font-family:var(--font-sans);letter-spacing:-.01em;color:var(--text-primary);font-size:17px;font-weight:700}[data-theme=dark] .denodo-logo{filter:drop-shadow(0 2px 6px #00000073)}.denodo-topbar-actions{align-items:center;gap:12px;display:flex}.denodo-content{flex-direction:column;flex:1;min-height:0;padding:28px 32px 40px;display:flex}.denodo-view{flex-direction:column;gap:24px;display:flex}.denodo-view-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.denodo-view-title{letter-spacing:-.02em;margin:0;font-size:26px;font-weight:700}.denodo-view-subtitle{color:var(--text-secondary);margin:4px 0 0;font-size:13px}.denodo-add-toggle{border-radius:var(--radius-button);color:#fff;background:linear-gradient(#c23b32,#9b2720);border:0;align-items:center;gap:8px;min-height:32px;padding:7px 12px;font-size:11px;font-weight:600;transition:transform .15s,filter .15s;display:inline-flex;box-shadow:0 1px 4px #c23b3238,0 1px 1px #0000000d}.denodo-add-toggle:hover{filter:brightness(1.06);transform:translateY(-1px)}.denodo-add-toggle:active{transform:translateY(0)scale(.98)}.denodo-add-toggle svg{width:14px;height:14px}.denodo-sync-toggle{border:1px solid var(--color-border);border-radius:var(--radius-button);background:var(--surface-white);min-height:32px;color:var(--text-secondary);box-shadow:var(--shadow-xs);cursor:pointer;align-items:center;gap:6px;padding:7px 12px;font-size:11px;font-weight:600;transition:border-color .15s,color .15s,transform .15s;display:inline-flex}.denodo-sync-toggle:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-1px)}.denodo-sync-toggle:active:not(:disabled){transform:translateY(0)scale(.98)}.denodo-sync-toggle:disabled{opacity:.6;cursor:default}.denodo-sync-toggle svg{width:13px;height:13px}@keyframes denodo-spin{to{transform:rotate(360deg)}}.denodo-spin{animation:1s linear infinite denodo-spin}.denodo-profile-wrap{position:relative}.denodo-profile-panel{width:300px}.denodo-profile-panel .user-menu-hero{background:radial-gradient(120% 160% at 0% 0%, #ff6b3538 0%, transparent 55%), radial-gradient(120% 160% at 100% 100%, #0052ff24 0%, transparent 55%), var(--surface-light)}@supports (color:color-mix(in lab, red, red)){.denodo-profile-panel .user-menu-hero{background:radial-gradient(120% 160% at 0% 0%, color-mix(in srgb, var(--color-accent) 22%, transparent) 0%, transparent 55%), radial-gradient(120% 160% at 100% 100%, color-mix(in srgb, var(--color-primary) 14%, transparent) 0%, transparent 55%), var(--surface-light)}}[data-theme=dark] .denodo-profile-panel .user-menu-hero{background:radial-gradient(120% 160% at 0 0,#ff6b3547 0%,#0000 55%),radial-gradient(120% 160% at 100% 100%,#0052ff2e 0%,#0000 55%),#fff9}@supports (color:color-mix(in lab, red, red)){[data-theme=dark] .denodo-profile-panel .user-menu-hero{background:radial-gradient(120% 160% at 0% 0%, color-mix(in srgb, var(--color-accent) 28%, transparent) 0%, transparent 55%), radial-gradient(120% 160% at 100% 100%, color-mix(in srgb, var(--color-primary) 18%, transparent) 0%, transparent 55%), color-mix(in srgb, var(--surface-white) 60%, transparent)}}.denodo-profile-panel .user-menu-hero.is-disconnected{background:radial-gradient(120% 160% at 0% 0%, #5b6b7f2e 0%, transparent 55%), radial-gradient(120% 160% at 100% 100%, #0052ff1a 0%, transparent 55%), var(--surface-light)}@supports (color:color-mix(in lab, red, red)){.denodo-profile-panel .user-menu-hero.is-disconnected{background:radial-gradient(120% 160% at 0% 0%, color-mix(in srgb, var(--text-muted) 18%, transparent) 0%, transparent 55%), radial-gradient(120% 160% at 100% 100%, color-mix(in srgb, var(--color-primary) 10%, transparent) 0%, transparent 55%), var(--surface-light)}}.denodo-profile-panel .user-menu-avatar{background:linear-gradient(135deg, var(--color-accent) 0%, #ffae90 100%)}@supports (color:color-mix(in lab, red, red)){.denodo-profile-panel .user-menu-avatar{background:linear-gradient(135deg, var(--color-accent) 0%, color-mix(in srgb, var(--color-accent) 55%, var(--color-on-primary)) 100%)}}.denodo-profile-btn{height:var(--control-height);background:var(--surface-white);border:1px solid #ebbaac;border-radius:999px;align-items:center;gap:8px;padding:0 12px 0 6px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.denodo-profile-btn{border:1px solid color-mix(in srgb, var(--color-accent) 35%, var(--color-border))}}.denodo-profile-btn{color:var(--text-primary);cursor:pointer;transition:border-color .15s var(--ease-out), background-color .15s var(--ease-out), box-shadow .15s var(--ease-out);box-shadow:var(--shadow-xs);font-size:13px;font-weight:600}.denodo-profile-btn:hover{border-color:var(--color-accent);background:#fff6f3}@supports (color:color-mix(in lab, red, red)){.denodo-profile-btn:hover{background:color-mix(in srgb, var(--color-accent) 6%, var(--surface-white))}}.denodo-profile-btn:hover{box-shadow:var(--shadow-card)}.denodo-profile-btn[aria-expanded=true]{border-color:var(--color-accent);background:#fff0eb}@supports (color:color-mix(in lab, red, red)){.denodo-profile-btn[aria-expanded=true]{background:color-mix(in srgb, var(--color-accent) 10%, var(--surface-white))}}.denodo-profile-btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.denodo-profile-btn svg{width:16px;height:16px;color:var(--text-muted)}.denodo-profile-initial{background:linear-gradient(135deg, var(--color-accent) 0%, #ff9f7c 100%);border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.denodo-profile-initial{background:linear-gradient(135deg, var(--color-accent) 0%, color-mix(in srgb, var(--color-accent) 65%, var(--color-on-primary)) 100%)}}.denodo-profile-initial{color:var(--color-on-primary);font-family:var(--font-mono);letter-spacing:.04em;flex-shrink:0;font-size:11px;font-weight:700;box-shadow:0 1px 2px #ff6b354d,inset 0 1px #ffffff1f}@supports (color:color-mix(in lab, red, red)){.denodo-profile-initial{box-shadow:0 1px 2px color-mix(in srgb, var(--color-accent) 30%, transparent), inset 0 1px 0 #ffffff1f}}.denodo-profile-label{white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.005em;min-width:0;max-width:80px;overflow:hidden}.denodo-profile-caret{color:var(--text-muted);transition:transform .15s var(--ease-out);flex-shrink:0}.denodo-profile-caret.is-open{color:var(--color-accent);transform:rotate(180deg)}.user-menu-pill.is-ok{background:#04785724}@supports (color:color-mix(in lab, red, red)){.user-menu-pill.is-ok{background:color-mix(in srgb, var(--color-success) 14%, transparent)}}.user-menu-pill.is-ok{color:var(--color-success);border-color:#0478574d}@supports (color:color-mix(in lab, red, red)){.user-menu-pill.is-ok{border-color:color-mix(in srgb, var(--color-success) 30%, transparent)}}.user-menu-pill.is-off{background:#5b6b7f24}@supports (color:color-mix(in lab, red, red)){.user-menu-pill.is-off{background:color-mix(in srgb, var(--text-muted) 14%, transparent)}}.user-menu-pill.is-off{color:var(--text-muted);border-color:#5b6b7f4d}@supports (color:color-mix(in lab, red, red)){.user-menu-pill.is-off{border-color:color-mix(in srgb, var(--text-muted) 30%, transparent)}}.user-menu-link-primary{color:var(--color-accent);font-weight:600}.user-menu-link-primary svg{color:var(--color-accent)}.user-menu-link-primary:hover{background:#ff6b351a}@supports (color:color-mix(in lab, red, red)){.user-menu-link-primary:hover{background:color-mix(in srgb, var(--color-accent) 10%, transparent)}}.user-menu-link-primary:hover{color:var(--color-accent)}.denodo-add-menu-wrap{display:inline-flex;position:relative}.denodo-add-toggle.open{filter:brightness(1.08);box-shadow:0 1px 4px #c23b3247,0 1px 1px #0000000f,inset 0 0 0 2px #ffffff2e}.denodo-add-menu{background:var(--surface-white);border:1px solid var(--color-border);width:240px;box-shadow:var(--shadow-float);z-index:var(--z-modal);animation:dropdown-in .15s var(--ease-out);border-radius:10px;padding:4px;position:absolute;top:calc(100% + 8px);right:0}.denodo-add-menu-item{width:100%;color:var(--text-primary);cursor:pointer;text-align:left;transition:background .12s var(--ease-out);background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;padding:7px 9px;display:flex}.denodo-add-menu-item:hover{background:#d9e5fa}@supports (color:color-mix(in lab, red, red)){.denodo-add-menu-item:hover{background:color-mix(in srgb, var(--color-primary) 10%, var(--surface-hover))}}.denodo-add-menu-icon{background:var(--color-primary-muted);width:24px;height:24px;color:var(--color-primary);border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.denodo-add-menu-icon svg{width:13px;height:13px}.denodo-add-menu-text{flex-direction:column;gap:1px;min-width:0;display:flex}.denodo-add-menu-title{font-size:12.5px;font-weight:600;line-height:1.2}.denodo-add-menu-hint{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;line-height:1.3;overflow:hidden}.denodo-add-panel{box-shadow:var(--shadow-elevated);max-width:720px}.denodo-add-panel .panel-header{margin-bottom:16px}.denodo-add-form{flex-direction:column;gap:4px;display:flex}.denodo-form-section{border:0;flex-direction:column;gap:8px;margin:0;padding:16px 0;display:flex}.denodo-form-section+.denodo-form-section{border-top:1px solid var(--color-border-subtle)}.denodo-form-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);align-items:center;gap:10px;margin:0 0 6px;padding:0;font-size:11px;font-weight:700;display:flex}.denodo-form-section-title>span{align-items:center;gap:8px;display:inline-flex}.denodo-form-section-glyph{background:var(--color-primary-muted);width:20px;height:20px;color:var(--color-primary);border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.denodo-form-section-glyph svg{width:12px;height:12px}.denodo-form-section-text{flex-direction:column;gap:1px;display:flex}.denodo-form-section-title em{letter-spacing:0;text-transform:none;color:var(--text-muted);font-size:11px;font-style:normal;font-weight:400}.denodo-form-row{grid-template-columns:170px 1fr;align-items:center;gap:12px;display:grid}.denodo-form-row label{color:var(--text-secondary);text-transform:none;letter-spacing:normal;margin:0;font-size:12px;font-weight:600}.denodo-form-row input,.denodo-form-row select{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--surface-white);width:100%;min-width:0;min-height:34px;color:var(--text-primary);padding:6px 10px;font-size:13px;transition:border-color .15s,box-shadow .15s}.denodo-form-row input:focus,.denodo-form-row select:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus);outline:none}.denodo-form-row input::placeholder{color:var(--text-muted)}.denodo-add-form .form-actions{border-top:1px solid var(--color-border-subtle);margin-top:4px;padding-top:16px}.denodo-tabs{border-bottom:1px solid var(--color-border);align-items:flex-end;gap:4px;margin:0;padding:0 8px;list-style:none;display:flex;overflow-x:auto}.denodo-tab-item{flex-shrink:0}.denodo-tab{border-radius:var(--radius-md) var(--radius-md) 0 0;color:var(--text-secondary);background:0 0;border:1px solid #0000;border-bottom:none;align-items:center;font-size:12px;font-weight:600;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.denodo-tab:hover{background:var(--surface-hover);color:var(--text-primary)}.denodo-tab-item.active .denodo-tab{background:var(--surface-white);border-color:var(--color-border);color:var(--text-primary)}.denodo-tab-main{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;gap:6px;padding:6px 4px 6px 12px;display:inline-flex}.denodo-tab .denodo-db-icon,.denodo-tab-add .denodo-tab-main svg{width:13px;height:13px;color:var(--color-primary)}.denodo-tab-label{white-space:nowrap}.denodo-tab-close{width:18px;height:18px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;margin:0 6px 0 4px;transition:background .15s,color .15s;display:inline-flex}.denodo-tab-close:hover{background:#b91c1c24}@supports (color:color-mix(in lab, red, red)){.denodo-tab-close:hover{background:color-mix(in srgb, var(--color-error) 14%, transparent)}}.denodo-tab-close:hover{color:var(--color-error)}.denodo-tab-close svg{width:11px;height:11px}.denodo-tab-panel{padding:20px 8px 0}.denodo-welcome{flex-direction:column;gap:20px;max-width:880px;display:flex}.denodo-welcome-head{flex-direction:column;gap:4px;display:flex}.denodo-welcome .denodo-view-title{font-size:22px}.denodo-welcome-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}@media (max-width:980px){.denodo-welcome-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.denodo-welcome-grid{grid-template-columns:minmax(0,1fr)}}.denodo-welcome-card{background:var(--surface-white);border:1px solid var(--color-border);box-shadow:var(--shadow-xs);transition:border-color .18s var(--ease-out), box-shadow .18s var(--ease-out), transform .18s var(--ease-out);border-radius:12px;flex-direction:column;gap:8px;padding:18px 20px 20px;display:flex;position:relative;overflow:hidden}.denodo-welcome-card:before{content:"";background:linear-gradient(90deg, transparent 0%, var(--color-primary) 50%, transparent 100%);opacity:0;height:2px;transition:opacity .18s var(--ease-out);position:absolute;top:0;left:12px;right:12px}.denodo-welcome-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-card);transform:translateY(-2px)}.denodo-welcome-card:hover:before{opacity:1}.denodo-welcome-icon{background:var(--color-primary-muted);width:32px;height:32px;color:var(--color-primary);transition:transform .18s var(--ease-out);border-radius:8px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:14px;right:14px}.denodo-welcome-card:hover .denodo-welcome-icon{transform:scale(1.05)rotate(-3deg)}.denodo-welcome-icon svg{width:16px;height:16px}.denodo-welcome-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:10px;font-weight:700}.denodo-welcome-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--color-primary);letter-spacing:-.025em;margin-top:2px;font-size:34px;font-weight:700;line-height:1}.denodo-welcome-hint{color:var(--text-muted);font-size:11px;line-height:1.4}.denodo-ds-detail{flex-direction:column;gap:10px;max-width:620px;margin:0;display:flex}.denodo-detail-row{grid-template-columns:170px 1fr;align-items:center;gap:12px;display:grid}.denodo-detail-row dt{color:var(--text-secondary);margin:0;font-size:12px;font-weight:600}.denodo-detail-row dd{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--surface-white);min-height:34px;color:var(--text-primary);word-break:break-word;align-items:center;margin:0;padding:6px 10px;font-size:13px;display:flex}.denodo-ds-mono{font-family:var(--font-mono);font-size:12px}.denodo-config{position:relative}.denodo-config-name{border-bottom:1px solid var(--color-border-subtle);align-items:center;gap:12px;margin-bottom:20px;padding-bottom:16px;display:flex}.denodo-config-name strong{font-family:var(--font-mono);font-size:16px}.denodo-config .form-submit{margin-top:20px}.denodo-login-gate{color:#fff;box-sizing:border-box;background-color:#112533;flex-direction:column;flex:1;justify-content:center;align-items:center;margin:-28px -32px -40px;padding:40px 20px;display:flex;overflow:auto}.denodo-login-title{align-items:center;gap:12px;margin-bottom:16px;padding-top:8px;display:flex}.denodo-login-title img{width:120px;height:auto}.denodo-login-title span{color:#fff;white-space:nowrap;font-size:20px;font-weight:600}.denodo-login-box{background-color:#112533;width:100%;max-width:500px;padding:20px 24px 32px}.denodo-login-box label{color:#ffffffd9;text-transform:none;letter-spacing:normal;margin:14px 0 6px;font-size:13px;font-weight:600;display:block}.denodo-login-box input{color:#2d3f4b;background-color:#fff;border:1px solid #c1c6c9;border-radius:4px;outline:none;width:100%;height:36px;padding:6px 10px;font-size:14px;transition:border-color .15s,box-shadow .15s;display:block}.denodo-login-box input:focus{border-color:#069;box-shadow:0 0 0 .2rem #00669940}.denodo-login-box input::placeholder{color:#a0a0a0}.denodo-login-box input[readonly]{color:#4f5e69;cursor:default;background-color:#f3f4f5}.denodo-login-signin{color:#fff;cursor:pointer;background-color:#069;border:none;border-radius:4px;width:100%;height:44px;margin-top:24px;padding:8px 16px;font-size:16px;font-weight:600;transition:background-color .15s;display:block}.denodo-login-signin:hover:not(:disabled){background-color:#005580}.denodo-login-signin:disabled{opacity:.7;cursor:default}.denodo-login-error{color:#f05149;margin-top:12px;font-size:13px}.denodo-view-list{padding-left:0}.denodo-view-icon{width:13px;height:13px;color:var(--color-accent);flex-shrink:0;font-size:13px;line-height:0;display:inline-flex}.denodo-view-icon svg{width:13px;height:13px}.denodo-view-detail{gap:18px}.denodo-view-hero{background:linear-gradient(180deg, var(--surface-white) 0%, var(--color-muted) 100%);border:1px solid var(--color-border);border-radius:12px;flex-direction:column;gap:10px;padding:18px 22px 14px;display:flex;box-shadow:0 1px #0f172a0a}.denodo-view-hero-title{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.denodo-view-hero-title h2{color:var(--text-primary);letter-spacing:-.01em;margin:0;font-size:22px;font-weight:700}.denodo-view-hero-icon{width:28px;height:28px;color:var(--color-primary);background:var(--color-primary-muted);border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.denodo-view-hero-icon svg{width:16px;height:16px}.denodo-view-status{text-transform:uppercase;letter-spacing:.08em;border:1px solid #0000;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700}.denodo-view-status.status-ok{color:var(--color-success);background:var(--color-success-muted);border-color:#a7f3d0}.denodo-view-status.status-warning{color:var(--color-warning);background:var(--color-warning-muted);border-color:#fde68a}.denodo-view-status.status-error{color:var(--color-error);background:var(--color-error-muted);border-color:#fecaca}.denodo-view-hero-meta{flex-wrap:wrap;gap:6px;display:flex}.denodo-view-chip{color:var(--text-secondary);background:var(--surface-white);border:1px solid var(--color-border);font-size:11px;font-weight:600;font-family:var(--font-mono);letter-spacing:0;border-radius:999px;align-items:center;gap:4px;padding:3px 9px;display:inline-flex}.denodo-view-section{flex-direction:column;gap:10px;display:flex}.denodo-view-section-title{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin:0;font-size:11px;font-weight:700}.denodo-view-chips{flex-wrap:wrap;gap:8px;display:flex}.denodo-view-ds-chip{background:var(--surface-white);border:1px solid var(--color-border);color:var(--text-primary);cursor:pointer;transition:background .12s var(--ease-out), border-color .12s var(--ease-out);font-size:12px;font-weight:600;font-family:var(--font-mono);border-radius:10px;align-items:center;gap:8px;padding:7px 12px 7px 10px;display:inline-flex}.denodo-view-ds-chip:hover{background:var(--color-primary-muted);border-color:var(--color-primary);color:var(--color-primary)}.denodo-view-ds-chip svg{width:14px;height:14px;color:var(--color-accent)}.denodo-view-ds-chip-sub{color:var(--text-muted);border-left:1px solid var(--color-border);padding-left:8px;font-size:10px;font-weight:500}.denodo-view-bento{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:16px;display:grid}@media (max-width:980px){.denodo-view-bento{grid-template-columns:minmax(0,1fr)}}.denodo-view-card{background:var(--surface-white);border:1px solid var(--color-border);border-radius:12px;flex-direction:column;gap:12px;padding:16px 18px 18px;display:flex;box-shadow:0 1px #0f172a08}.denodo-view-card-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.denodo-view-card-header h3{color:var(--text-primary);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:13px;font-weight:700}.denodo-view-card-sub{text-transform:none;letter-spacing:0;color:var(--text-muted);margin-left:8px;font-weight:500}.denodo-view-card-action{color:var(--text-primary);background:var(--surface-white);border:1px solid var(--color-border);cursor:pointer;transition:background .12s var(--ease-out), border-color .12s var(--ease-out), color .12s var(--ease-out);border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.denodo-view-card-action:hover:not(:disabled){background:var(--color-muted);border-color:var(--color-primary);color:var(--color-primary)}.denodo-view-card-action:disabled{opacity:.5;cursor:not-allowed}.denodo-view-card-action.primary{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.denodo-view-card-action.primary:hover:not(:disabled){background:var(--color-primary-dark);border-color:var(--color-primary-dark);color:var(--color-on-primary)}.denodo-view-card-action svg{width:13px;height:13px}.denodo-view-table-wrap{border:1px solid var(--color-border-subtle);border-radius:8px;overflow:auto}.denodo-view-table{border-collapse:collapse;width:100%;font-size:12px;font-family:var(--font-mono)}.denodo-view-table thead th{z-index:1;background:var(--color-muted);color:var(--text-secondary);text-align:left;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--color-border);padding:8px 12px;font-size:10px;font-weight:700;position:sticky;top:0}.denodo-view-table tbody td{border-bottom:1px solid var(--color-border-subtle);color:var(--text-primary);white-space:nowrap;padding:7px 12px}.denodo-view-table tbody tr:nth-child(2n) td{background:#0052ff05}.denodo-view-table tbody tr:hover td{background:var(--color-primary-muted)}.denodo-view-table tbody tr:last-child td{border-bottom:none}.denodo-view-table--data td{white-space:nowrap;text-overflow:ellipsis;max-width:280px;overflow:hidden}.denodo-view-mono{font-family:var(--font-mono)}.denodo-view-muted{color:var(--text-muted)}.denodo-view-null{color:var(--text-muted);font-style:italic}.denodo-view-pagination{justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.denodo-view-pagination-info{color:var(--text-secondary);font-size:12px;font-weight:600}.denodo-view-pagination-actions{align-items:center;gap:8px;display:inline-flex}.denodo-view-vql-pre{color:#d1d5db;font-family:var(--font-mono);border:1px solid var(--color-border);background:#0b1120;border-radius:10px;max-height:260px;margin:0;padding:14px 16px;font-size:12px;line-height:1.6;overflow:auto}.denodo-tab-icon{align-items:center;display:inline-flex}.denodo-tab-icon svg{width:14px;height:14px;color:var(--color-accent)}.denodo-form-row--wide textarea{resize:vertical;width:100%;min-height:220px;font-family:var(--font-mono);color:var(--text-primary);background:var(--surface-white);border:1px solid var(--color-border);transition:border-color .15s var(--ease-out), box-shadow .15s var(--ease-out);border-radius:8px;padding:12px 14px;font-size:12px;line-height:1.55}.denodo-form-row--wide textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #0052ff26}.denodo-form-row--wide textarea::placeholder{color:var(--text-muted)}.denodo-form-row--split{grid-template-columns:1fr 1fr;align-items:end;gap:16px;display:grid}@media (max-width:720px){.denodo-form-row--split{grid-template-columns:minmax(0,1fr)}}.denodo-form-row--split input[type=number]{width:100%}.denodo-form-row--checkbox label{color:var(--text-secondary);align-items:center;gap:8px;font-size:12px;font-weight:500;display:inline-flex}.denodo-form-row--checkbox input{accent-color:var(--color-primary);width:16px;height:16px}.denodo-form-row--info p{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.55}.denodo-form-row--info p+p{margin-top:6px}.denodo-form-row--info code{font-family:var(--font-mono);background:var(--color-muted);color:var(--color-accent-strong);border-radius:4px;padding:1px 5px;font-size:11px}.form-submit--ghost{color:var(--text-secondary);border:1px solid var(--color-border);background:0 0}.form-submit--ghost:hover:not(:disabled){background:var(--color-muted);color:var(--text-primary);border-color:var(--color-primary)}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
