:root{font-family:Aptos,Segoe UI,Arial,sans-serif;color:#222a35;background:#f4f7fa;font-synthesis:none;--ink: #222a35;--muted: #667381;--faint: #93a1ae;--line: #d8e0e8;--line-strong: #bcc8d5;--paper: #ffffff;--canvas: #f4f7fa;--nav: #ffffff;--nav-light: #f6f9fc;--teal: #17365d;--teal-dark: #0e2747;--teal-soft: #eaf1f8;--blue: #244e7a;--blue-bright: #17365d;--blue-soft: #eaf1f8;--green: #176246;--green-bright: #4f8a70;--green-soft: #eef8f3;--amber: #b77a15;--amber-bright: #f2b84b;--amber-soft: #fff8e8;--red: #d2262c;--red-soft: #fff1f1;--cy-bar-edge: #101f2c;--cy-bar-deep: #101f2c;--cy-bar-shine: #101f2c;--cy-bar-mid: #101f2c;--shadow: 0 12px 32px rgba(23, 54, 93, .1);--surface-strong: #17365d;--on-strong: #ffffff;--on-dark-panel: #dbe6f0;--heading: #17365d;--accent-cyan: #159bb1;--accent-purple: #6f4aa8;--adjusted: #fff3cd;--adjusted-edge: #d9a400;--adjusted-ink: #6b4e00;--accent-green: #17a34a;--accent-orange: #ee913f;--accent-brown: #754a2a;--accent-sage: #77c4a5;--accent-slate: #46545a;--blue-deep: #155378;--amber-tint: #f7bf4a;--orange-soft: #ffd7aa}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}button,select{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(23,54,93,.15);outline-offset:1px}button:disabled{cursor:not-allowed;opacity:.52}.theme-logo{padding:0;border:0;cursor:pointer;transition:transform .2s ease,filter .25s ease,background-color .28s ease}.theme-logo:hover{transform:translateY(-2px) scale(1.03);filter:drop-shadow(0 7px 12px rgba(23,54,93,.22))}.theme-logo:focus-visible{outline:3px solid var(--amber-bright);outline-offset:4px}.eyebrow{margin:0;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:0}.eyebrow.light{color:var(--on-dark-panel)}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.08fr) minmax(440px,.92fr);background:#fff}.login-brand{position:relative;overflow:hidden;display:flex;align-items:center;padding:9vw;background:linear-gradient(135deg,var(--teal-dark),var(--teal));color:#fff}.login-brand:before,.login-brand:after{content:"";position:absolute;border:1px solid rgba(242,184,75,.24);transform:rotate(45deg)}.login-brand:before{width:420px;height:420px;right:-230px;top:-120px}.login-brand:after{width:260px;height:260px;left:-150px;bottom:-70px}.login-brand-inner{position:relative;z-index:1;max-width:600px}.login-logo{display:grid;place-items:center;width:48px;height:48px;margin-bottom:54px;border-radius:7px;background:var(--red);color:#fff;font-size:26px;font-weight:900}.login-brand h1{margin:10px 0 16px;font-size:clamp(42px,5vw,68px);line-height:.95;letter-spacing:0}.login-copy{max-width:540px;margin:0;color:var(--on-dark-panel);font-size:17px;line-height:1.7}.login-flow{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:42px;color:var(--on-dark-panel);font-size:11px;font-weight:750}.login-flow span{padding:7px 9px;border:1px solid rgba(255,255,255,.28);border-radius:5px;background:#ffffff0a}.login-panel{display:grid;place-items:center;padding:48px}.login-form{width:min(390px,100%)}.login-form-heading{display:flex;align-items:center;gap:13px;margin-bottom:28px}.login-form-heading h2{margin:4px 0 0;font-size:25px}.login-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:7px;color:var(--heading);background:var(--teal-soft)}.login-form .field{margin-bottom:16px}.login-button{width:100%;margin-top:4px}.form-error{margin:-3px 0 13px;color:var(--red);font-size:11px}.demo-logins{margin-top:30px;padding-top:20px;border-top:1px solid var(--line)}.demo-logins p{display:flex;align-items:center;gap:6px;margin:0 0 10px;color:var(--muted);font-size:10px;font-weight:750;text-transform:uppercase}.demo-logins>div{display:flex;flex-wrap:wrap;gap:6px}.demo-logins button{padding:6px 9px;border:1px solid var(--line-strong);border-radius:5px;background:#fff;color:var(--accent-slate);font-size:10px;font-weight:700}.demo-logins button:hover{border-color:#83aca8;color:var(--heading)}.app-shell{display:grid;grid-template-columns:270px minmax(0,1fr);width:100%;min-height:100dvh;overflow-x:clip}.sidebar{position:fixed;inset:0 auto 0 0;z-index:30;width:270px;padding:23px 14px 16px;display:flex;flex-direction:column;overflow-y:auto;border-right:1px solid var(--line);background:var(--nav);color:var(--ink);box-shadow:6px 0 24px #17365d0d}.brand{display:flex;align-items:center;gap:11px;padding:0 8px 31px}.brand-mark{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:7px;background:var(--red);color:#fff;font-size:21px;font-weight:900}.brand strong,.brand span,.brand small{display:block}.brand div strong{font-size:13px;line-height:1.2}.brand div span{margin-top:3px;color:var(--muted);font-size:10px}.brand div small{margin-top:4px;color:var(--amber-bright);font-size:8px;font-weight:700;line-height:1.25}.sidebar-close{display:none;margin-left:auto;color:#9db0b5}.sidebar nav{display:grid;gap:5px}.sidebar nav .nav-entry{display:grid;gap:4px}.nav-group-label{margin:9px 10px 1px;color:var(--muted);font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:0}.sidebar nav button{width:100%;min-height:43px;padding:0 12px;border:0;border-radius:6px;display:flex;align-items:center;gap:11px;background:transparent;color:#34475c;text-align:left;font-size:12px;font-weight:700}.sidebar nav button:hover{color:var(--heading);background:var(--blue-soft)}.sidebar nav button.active{color:var(--heading);background:var(--nav-light);box-shadow:inset 4px 0 var(--red)}.sidebar nav button.nav-tone-data_management.active{color:var(--accent-brown);background:color-mix(in srgb,var(--orange-soft) 22%,transparent);box-shadow:inset 4px 0 var(--accent-orange)}.sidebar nav button.nav-tone-tidymodels.active{color:var(--on-strong);background:var(--surface-strong);box-shadow:inset 4px 0 #4a78a3}.sidebar nav button.nav-tone-sklearn.active{color:var(--accent-brown);background:color-mix(in srgb,var(--orange-soft) 22%,transparent);box-shadow:inset 4px 0 var(--accent-orange)}.sidebar nav button.nav-tone-control.active{color:#fff;background:var(--accent-purple);box-shadow:inset 4px 0 #a989d4}.sidebar nav button.nav-tone-data_management:not(.active),.sidebar nav button.nav-tone-sklearn:not(.active){box-shadow:inset 3px 0 var(--accent-orange);background:color-mix(in srgb,var(--orange-soft) 12%,transparent)}.sidebar nav button.nav-tone-tidymodels:not(.active){box-shadow:inset 3px 0 var(--blue);background:color-mix(in srgb,var(--blue) 12%,transparent)}.sidebar nav button.nav-tone-control:not(.active){box-shadow:inset 3px 0 var(--accent-purple);background:color-mix(in srgb,var(--accent-purple) 11%,transparent)}.sidebar nav button.nav-tone-postgresql_control.active{color:#174f3c;background:color-mix(in srgb,var(--accent-sage) 17%,transparent);box-shadow:inset 4px 0 var(--green-bright)}.sidebar nav button.nav-tone-postgresql_control:not(.active){box-shadow:inset 3px 0 var(--green-bright);background:color-mix(in srgb,var(--accent-sage) 7%,transparent)}.sidebar nav button em{min-width:22px;margin-left:auto;padding:2px 5px;border-radius:10px;background:#365057;font-size:9px;font-style:normal;text-align:center}.sidebar-guide{display:flex;align-items:center;gap:9px;margin-top:auto;padding:12px 9px;border-top:1px solid var(--line);color:var(--red)}.sidebar-guide strong,.sidebar-guide span{display:block}.sidebar-guide strong{color:var(--heading);font-size:10px}.sidebar-guide span{margin-top:2px;color:var(--muted);font-size:9px}.user-card{display:grid;grid-template-columns:31px 1fr 28px;align-items:center;gap:9px;margin-top:9px;padding:10px 8px 0;border-top:1px solid var(--line)}.user-card>span{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:var(--teal-soft);color:var(--teal-dark);font-size:10px;font-weight:850}.user-card strong,.user-card small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-card strong{font-size:10px}.user-card small{margin-top:2px;color:var(--muted);font-size:9px}.user-card .icon-button{color:var(--muted)}.workspace{grid-column:2;min-width:0;width:100%}.topbar{position:sticky;top:0;z-index:20;height:76px;padding:0 clamp(22px,3.2vw,46px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fffffff7}.topbar h1{margin:3px 0 0;font-size:20px;line-height:1.1}.topbar-user{display:flex;align-items:center;gap:14px;color:var(--faint)}.global-text-scale{height:30px;padding:2px;display:flex;align-items:center;gap:1px;border:1px solid var(--line);border-radius:4px;background:var(--paper)}.global-text-scale>button{min-width:30px;height:24px;padding:0 5px;border:0;background:transparent;color:var(--muted);font-size:8px;font-weight:800}.global-text-scale>button:hover{background:var(--blue-soft);color:var(--heading)}.connection{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:10px;font-weight:700}.connection i{width:7px;height:7px;border-radius:50%;background:var(--green-bright);box-shadow:0 0 0 4px #11aa731f}.icon-button{border:0;background:transparent;display:grid;place-items:center;color:var(--muted)}.desktop-sidebar-toggle{width:32px;height:32px;border-radius:4px}.desktop-sidebar-toggle:hover{background:var(--blue-soft);color:var(--heading)}.sidebar .sidebar-close{display:none}.mobile-menu{display:none;width:36px;height:36px}.mobile-scrim{display:none}.main-content{width:min(1380px,100%);min-width:0;margin:0 auto;padding:29px clamp(22px,3.2vw,46px) 60px;overflow-x:clip}.app-shell.sidebar-collapsed{grid-template-columns:72px minmax(0,1fr)}.app-shell.sidebar-collapsed .sidebar{width:72px;padding-inline:9px}.app-shell.sidebar-collapsed .brand{justify-content:center;padding-inline:0}.app-shell.sidebar-collapsed .brand>div,.app-shell.sidebar-collapsed .nav-group-label,.app-shell.sidebar-collapsed .sidebar nav button>span,.app-shell.sidebar-collapsed .sidebar nav button>em,.app-shell.sidebar-collapsed .sidebar-guide>div,.app-shell.sidebar-collapsed .user-card>div,.app-shell.sidebar-collapsed .user-card>button{display:none}.app-shell.sidebar-collapsed .sidebar nav button{justify-content:center;padding:0}.app-shell.sidebar-collapsed .sidebar-guide{justify-content:center;padding-inline:0}.app-shell.sidebar-collapsed .user-card{display:flex;justify-content:center;padding-inline:0}.page-stack{display:grid;gap:20px}.page-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:22px}.page-intro h2{margin:0 0 5px;font-size:17px}.page-intro p{margin:0;color:var(--muted);font-size:11px}.intro-actions{display:flex;align-items:center;gap:9px}.role-chip{padding:6px 9px;border:1px solid var(--line-strong);border-radius:14px;background:#fff;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}.surface{border:1px solid var(--line);border-radius:7px;background:var(--paper)}.submission-sheet-tabs{display:flex;align-items:center;gap:4px;border-bottom:1px solid var(--line-strong);overflow-x:auto}.submission-sheet-tabs button{min-height:40px;padding:0 13px;border:0;border-bottom:2px solid transparent;display:flex;align-items:center;gap:7px;background:transparent;color:var(--muted);font-size:10px;font-weight:800;white-space:nowrap}.submission-sheet-tabs button.active{border-color:var(--red);color:var(--teal-dark)}.currency-reference-band{min-height:58px;padding:9px 14px;border:1px solid var(--line);border-left:4px solid var(--amber-bright);display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--paper)}.currency-reference-title{display:flex;align-items:center;gap:9px;color:var(--heading)}.currency-reference-title div{display:grid;gap:3px}.currency-reference-title strong{color:var(--ink);font-size:10px}.currency-reference-title span{color:var(--muted);font-size:8px}.currency-reference-rates{display:flex;align-items:stretch;gap:7px}.currency-reference-rates>div{min-width:145px;padding:7px 9px;border-left:1px solid var(--line);display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:2px 9px}.currency-reference-rates span{color:var(--muted);font-size:8px;font-weight:800}.currency-reference-rates strong{color:var(--teal-dark);font-size:12px;font-variant-numeric:tabular-nums;text-align:right}.currency-reference-rates small{grid-column:1 / -1;color:var(--faint);font-size:7px;text-align:right}.kpi-band{display:grid;grid-template-columns:1.25fr repeat(3,1fr);border:1px solid var(--line);border-radius:7px;overflow:hidden;background:#fff}.kpi{min-width:0;padding:17px 20px}.kpi+.kpi{border-left:1px solid var(--line)}.kpi span,.kpi strong,.kpi small{display:block}.kpi span{color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}.kpi strong{margin-top:7px;overflow:hidden;text-overflow:ellipsis;font-size:21px;font-variant-numeric:tabular-nums;white-space:nowrap}.kpi small{margin-top:3px;color:var(--faint);font-size:9px}.kpi.featured{background:var(--teal-soft)}.kpi.featured{box-shadow:inset 0 4px var(--red)}.kpi.featured span,.kpi.featured small{color:var(--muted)}.kpi.featured strong{color:var(--teal-dark)}.kpi-band.compact .kpi strong{font-size:19px}.pricing-summary .kpi:nth-child(1){background:var(--red-soft);box-shadow:inset 0 4px var(--red)}.pricing-summary .kpi:nth-child(2){background:var(--amber-soft);box-shadow:inset 0 4px var(--amber-bright)}.pricing-summary .kpi:nth-child(3){background:var(--blue-soft);box-shadow:inset 0 4px var(--blue)}.pricing-summary .kpi:nth-child(4){background:var(--green-soft);box-shadow:inset 0 4px var(--green-bright)}.pricing-summary .kpi:nth-child(1) strong{color:#9e252a}.pricing-summary .kpi:nth-child(2) strong{color:#80500d}.pricing-summary .kpi:nth-child(3) strong{color:var(--blue)}.pricing-summary .kpi:nth-child(4) strong{color:var(--green)}.section-heading{display:flex;align-items:center;gap:11px}.section-heading h3{margin:0;font-size:13px}.section-heading p{margin:4px 0 0;color:var(--muted);font-size:10px}.section-icon{display:grid;place-items:center;width:35px;height:35px;border-radius:6px;color:var(--heading);background:var(--teal-soft)}.request-context{padding:20px}.context-grid{display:grid;grid-template-columns:minmax(230px,1fr) minmax(230px,1fr) 1fr;align-items:end;gap:14px;margin-top:17px}.customer-row{display:grid;grid-template-columns:minmax(280px,1fr) 1.5fr;align-items:end;gap:16px;margin-top:17px}.field{display:grid;gap:6px;min-width:0}.field>span{color:var(--accent-slate);font-size:10px;font-weight:800}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line-strong);border-radius:5px;background:#fff;color:var(--ink)}.field input,.field select{height:39px;padding:0 10px}.field textarea{min-height:70px;padding:9px 10px;resize:vertical}.customer-facts{min-height:39px;display:flex;align-items:center;flex-wrap:wrap;gap:6px}.customer-facts span{padding:5px 7px;border-radius:4px;background:var(--blue-soft);color:var(--heading);font-size:9px;font-weight:700}.customer-facts span:nth-child(2){background:var(--green-soft);color:var(--green)}.customer-facts span:nth-child(3){background:var(--amber-soft);color:var(--amber)}.approval-route{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:16px;padding:10px 12px;border-left:3px solid var(--red);background:var(--nav-light);color:var(--muted);font-size:9px}.approval-route>span{font-weight:800;text-transform:uppercase}.approval-route strong{color:var(--accent-slate);font-size:10px}.approval-route svg{color:var(--heading)}.line-editor,.customer-workspace-section{overflow:hidden}.customer-workspace-section .customer-entry{border-bottom:0}.dynamic-pricing-form{display:grid}.workspace-section-minimized{min-height:48px!important;max-height:64px;overflow:hidden;align-items:center}.pricing-summary{grid-template-columns:repeat(12,minmax(0,1fr))}.pricing-summary .kpi{border-top:4px solid transparent}.pricing-summary .kpi+.kpi{border-left:1px solid var(--line)}.configurable-pricing-grid{width:max-content;min-width:100%}.configurable-pricing-grid th{width:auto!important}.material-reference-sheet{overflow:hidden}.material-sheet-toolbar{min-height:70px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line)}.material-sheet-toolbar h3{margin:0;font-size:13px}.material-sheet-toolbar p{margin:4px 0 0;color:var(--muted);font-size:9px}.material-sheet-toolbar .search-box{width:min(430px,100%)}.material-reference-table{min-width:880px}.material-reference-table th{padding:10px 14px;background:var(--surface-strong);color:var(--on-strong);font-size:8px;font-weight:850;text-align:left;text-transform:uppercase}.material-reference-table td{padding:12px 14px;border-top:1px solid var(--line);color:var(--ink);font-size:10px}.material-reference-table th:nth-child(1){width:125px}.material-reference-table th:nth-child(3){width:90px}.material-reference-table th:nth-child(4),.material-reference-table th:nth-child(5){width:120px}.material-reference-table th:nth-child(6){width:155px}.material-reference-table tbody tr:nth-child(2n) td{background:var(--nav-light)}.material-reference-table tbody tr:hover td{background:var(--blue-soft)}.customer-entry{border-bottom:1px solid var(--line)}.customer-name-display{min-height:73px;padding:15px 20px;border-left:5px solid var(--red);display:grid;align-content:center;gap:4px;background:var(--nav-light)}.customer-name-display span{color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}.customer-name-display strong{color:var(--heading);font-size:19px;line-height:1.25}.customer-name-display em{color:var(--muted);font-size:9px;font-style:normal;font-weight:750}.customer-entry-controls{padding:14px 20px 16px 42px;display:grid;grid-template-columns:290px minmax(160px,.45fr) minmax(380px,1.25fr);align-items:end;gap:12px}.customer-code-actions{display:grid;grid-template-columns:minmax(120px,1fr) auto;align-items:end;gap:8px}.customer-code-actions .button{white-space:nowrap}.customer-code-field input{font-weight:800;text-transform:uppercase}.approval-route.compact{min-height:39px;margin:0}.table-title{justify-content:space-between;padding:17px 20px;border-bottom:1px solid var(--line)}.table-title-actions{display:flex;align-items:center;gap:7px}.button{min-height:37px;padding:0 13px;border:1px solid transparent;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:10px;font-weight:800}.button.primary{background:var(--surface-strong);color:var(--on-strong)}.button.primary:hover{background:var(--teal-dark)}.button.secondary{border-color:var(--line-strong);background:#fff;color:var(--heading)}.button.secondary:hover{border-color:var(--heading);background:var(--blue-soft)}.button.danger{border-color:#dbadad;background:#fff;color:var(--red)}.button.danger:hover{background:var(--red-soft)}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse}.pricing-grid{min-width:1120px;table-layout:fixed}.pricing-grid th{padding:10px 8px;background:var(--surface-strong);color:var(--on-strong);font-size:8px;font-weight:850;text-align:right;text-transform:uppercase}.pricing-grid th.restricted-submission-column,.detail-table th.restricted-submission-column{color:#fff;box-shadow:inset 0 3px #fff3}.pricing-grid th:nth-child(1){width:42px;text-align:center}.pricing-grid th:nth-child(2){width:125px;text-align:left}.pricing-grid th:nth-child(3){width:245px;text-align:left}.pricing-grid th:nth-child(4),.pricing-grid th:nth-child(5){width:110px}.pricing-grid th:nth-child(6),.pricing-grid th:nth-child(7){width:115px}.pricing-grid th:nth-child(8){width:135px}.pricing-grid th:nth-child(9){width:42px}.requested-price-grid{width:100%;min-width:0}.requested-price-grid th{padding:9px 3px;font-size:7px;line-height:1.15;overflow-wrap:anywhere}.requested-price-grid td{padding:6px 3px;font-size:9px}.requested-price-grid select,.requested-price-grid input{padding:0 4px;font-size:9px}.requested-price-grid th:nth-child(1){width:2%}.requested-price-grid th:nth-child(2){width:6.5%;text-align:left}.requested-price-grid th:nth-child(3){width:11.5%;text-align:left}.requested-price-grid th:nth-child(4){width:3.5%}.requested-price-grid th:nth-child(5){width:2.5%}.requested-price-grid th:nth-child(6){width:4%}.requested-price-grid th:nth-child(7){width:8%;text-align:left}.requested-price-grid th:nth-child(8){width:6.5%;text-align:left}.requested-price-grid th:nth-child(9){width:5%}.requested-price-grid th:nth-child(10){width:6.5%}.requested-price-grid th:nth-child(11),.requested-price-grid th:nth-child(12){width:4.5%}.requested-price-grid th:nth-child(13){width:4%}.requested-price-grid th:nth-child(14),.requested-price-grid th:nth-child(15){width:4.5%}.requested-price-grid th:nth-child(16){width:5%}.requested-price-grid th:nth-child(17){width:4%}.requested-price-grid th:nth-child(18){width:5.5%}.requested-price-grid th:nth-child(19){width:4%}.requested-price-grid th:nth-child(20){width:3.5%}.requested-price-grid td:nth-child(2),.requested-price-grid td:nth-child(3),.requested-price-grid td:nth-child(7),.requested-price-grid td:nth-child(8){text-align:left}.requested-price-grid.hide-col-pack .col-pack,.requested-price-grid.hide-col-uom .col-uom,.requested-price-grid.hide-col-currency .col-currency,.requested-price-grid.hide-col-category .col-category,.requested-price-grid.hide-col-worst .col-worst,.requested-price-grid.hide-col-additional .col-additional,.requested-price-grid.hide-col-pb .col-pb,.requested-price-grid.hide-col-aggreko .col-aggreko,.requested-price-grid.hide-col-deduction .col-deduction,.requested-price-grid.hide-col-cogs .col-cogs,.requested-price-grid.hide-col-ugp .col-ugp,.requested-price-grid.hide-col-gp .col-gp,.requested-price-grid.hide-col-margin .col-margin{display:none}.pricing-grid td{height:55px;padding:8px;border-top:1px solid var(--line);font-size:10px;text-align:right}.pricing-grid tbody tr:nth-child(2n) td{background:var(--nav-light)}.pricing-grid tbody tr:hover td{background:var(--red-soft)}.pricing-grid td:nth-child(2),.pricing-grid td:nth-child(3){text-align:left}.pricing-grid select,.pricing-grid input{width:100%;height:34px;padding:0 8px;border:1px solid var(--line-strong);border-radius:4px;background:#fff;font-size:10px}.row-number{color:var(--faint);text-align:center!important}.description-cell strong,.description-cell span,.description-cell em,.primary-cell strong,.primary-cell span{display:block}.description-cell strong,.primary-cell strong{font-size:10px}.description-cell span,.primary-cell span{margin-top:3px;color:var(--muted);font-size:9px}.description-cell em{margin-top:2px;color:var(--faint);font-size:8px;font-style:normal}.material-fact-cell{color:var(--teal-dark);font-weight:800;text-align:center!important}.material-category-cell{color:var(--muted);font-size:9px!important;font-weight:700;line-height:1.25}.currency-cell{color:var(--accent-brown)}.number-cell{font-weight:700;font-variant-numeric:tabular-nums}.worst-case-cell{color:var(--accent-brown);font-weight:850;font-variant-numeric:tabular-nums}.component-cell strong,.component-cell span{display:block}.component-cell span{margin-top:2px;color:var(--muted);font-size:8px}.total-cogs-cell{color:var(--heading);background:var(--blue-soft)!important;font-weight:900}.price-cell{color:var(--teal-dark);font-weight:850}.suffix-input{position:relative}.suffix-input input{padding-right:24px}.suffix-input span{position:absolute;top:10px;right:8px;color:var(--muted)}.price-input{text-align:right}.invalid-material,.negative{color:var(--red)!important}.remove{width:28px;height:28px;border-radius:4px;color:#9d6262}.remove:hover{background:var(--red-soft);color:var(--red)}.column-control{position:relative}.column-menu{position:absolute;z-index:15;top:calc(100% + 6px);right:0;width:228px;padding:10px;border:1px solid var(--line-strong);border-radius:6px;display:grid;grid-template-columns:1fr 1fr;gap:7px 9px;background:var(--paper);box-shadow:var(--shadow)}.column-menu>div{grid-column:1 / -1;padding-bottom:7px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.column-menu>div strong{font-size:9px}.column-menu>div button{padding:0;border:0;background:transparent;color:var(--blue);font-size:8px;font-weight:800}.column-menu label{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:8px;font-weight:700}.column-menu input{width:14px;height:14px;accent-color:var(--red)}.table-foot{min-height:38px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);color:var(--muted);font-size:9px}.table-foot span{display:flex;align-items:center;gap:6px}.table-foot strong{color:var(--accent-slate)}.table-foot.has-error{color:var(--red);background:var(--red-soft)}.submit-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:22px;padding:18px 20px;border:1px solid var(--line);border-radius:7px;background:#fff}.submit-bar>div{min-width:210px;text-align:right}.submit-bar>div p{margin:0 0 8px;color:var(--muted);font-size:9px}.submit-bar>div p strong{color:var(--accent-slate)}.submit-button{min-width:190px}.register{overflow:hidden}.register-toolbar{display:flex;align-items:center;gap:9px;padding:13px;border-bottom:1px solid var(--line)}.search-box,.filter-box{height:37px;display:flex;align-items:center;gap:8px;border:1px solid var(--line-strong);border-radius:5px;background:#fff;color:var(--muted)}.search-box{width:min(380px,100%);padding:0 10px}.search-box input{width:100%;border:0;outline:0;color:var(--ink);font-size:10px}.filter-box{margin-left:auto;padding-left:10px}.filter-box select{height:100%;border:0;outline:0;padding:0 28px 0 0;background:transparent;color:var(--accent-slate);font-size:10px}.submission-table{min-width:900px}.submission-table th,.master-table th,.detail-table th{padding:10px 14px;background:var(--surface-strong);color:var(--on-strong);font-size:8px;font-weight:850;text-align:left;text-transform:uppercase}.submission-table td,.master-table td,.detail-table td{padding:13px 14px;border-top:1px solid var(--line);font-size:10px}.submission-table tbody tr{cursor:pointer}.submission-table tbody tr:hover{background:var(--nav-light)}.ticket-link{color:var(--blue);font-weight:850}.status{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:13px;font-size:8px;font-weight:850;white-space:nowrap}.status:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.status-pending_manager{color:var(--amber);background:var(--amber-soft)}.status-pending_director{color:var(--blue);background:var(--blue-soft)}.status-approved{color:var(--green);background:var(--green-soft)}.status-rejected,.status-amendment_required{color:var(--red);background:var(--red-soft)}.revision-code{display:inline-flex;padding:4px 7px;border:1px solid var(--line-strong);border-radius:4px;color:var(--heading);background:var(--blue-soft);font-size:8px;font-weight:850;white-space:nowrap}.empty-state{min-height:280px;display:grid;place-content:center;justify-items:center;color:var(--faint);text-align:center}.empty-state strong{margin-top:11px;color:#38474d;font-size:13px}.empty-state p{margin:5px 0 0;font-size:10px}.history-layout{min-width:0}.history-layout.with-team-panel{display:grid;grid-template-columns:minmax(0,1fr) 250px;align-items:start;gap:16px}.history-layout .register{min-width:0}.history-layout .submission-table{min-width:780px}.team-performance{position:sticky;top:96px;overflow:hidden}.team-performance-title{padding:15px 16px;display:flex;align-items:center;gap:9px;border-bottom:1px solid var(--line);background:var(--blue-soft);color:var(--heading)}.team-performance-title h3{margin:0;font-size:11px}.team-performance-title p{margin:3px 0 0;color:var(--muted);font-size:8px}.team-performance-row{padding:13px 15px}.team-performance-row+.team-performance-row{border-top:1px solid var(--line)}.team-performance-row>strong,.team-performance-row>span{display:block}.team-performance-row>strong{color:var(--ink);font-size:10px}.team-performance-row>span{margin-top:3px;color:var(--muted);font-size:8px}.team-performance-row dl{margin:10px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.team-performance-row dl div{min-width:0}.team-performance-row dt{color:var(--muted);font-size:7px;font-weight:800;text-transform:uppercase}.team-performance-row dd{margin:3px 0 0;overflow:hidden;color:var(--ink);font-size:9px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.dialog-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:22px;background:#0d1a1f99}.picker-backdrop{z-index:90}.picker-dialog{width:min(1380px,100%);height:min(820px,calc(100vh - 44px));overflow:hidden;border:1px solid var(--line);border-radius:7px;display:grid;grid-template-rows:auto minmax(0,1fr);background:var(--paper);box-shadow:var(--shadow)}.picker-header{min-height:68px;padding:14px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px}.picker-header>div{display:flex;align-items:center;gap:10px;color:var(--heading)}.picker-header h2{margin:0;color:var(--ink);font-size:16px}.picker-header span{display:block;margin-top:3px;color:var(--muted);font-size:9px}.picker-header .icon-button{width:34px;height:34px;border-radius:4px}.picker-layout{min-height:0;display:grid;grid-template-columns:220px minmax(0,1fr)}.picker-sidebar{min-height:0;padding:17px 14px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:11px;background:var(--nav-light)}.picker-sidebar>strong{color:var(--muted);font-size:9px;text-transform:uppercase}.picker-status{display:grid;gap:5px}.picker-status button{min-height:37px;padding:0 10px;border:1px solid transparent;border-radius:5px;display:flex;align-items:center;justify-content:space-between;background:transparent;color:var(--muted);font-size:10px;font-weight:750}.picker-status button:hover{background:var(--paper)}.picker-status button.active{border-color:var(--line-strong);background:var(--paper);color:var(--heading);box-shadow:inset 3px 0 var(--red)}.picker-status button strong{font-size:9px}.picker-selected{min-height:0;margin-top:7px;padding-top:13px;border-top:1px solid var(--line);display:flex;flex:1;flex-direction:column}.picker-selected>div{display:flex;align-items:center;justify-content:space-between;font-size:10px}.picker-selected>div span{min-width:22px;padding:3px 6px;border-radius:10px;background:var(--surface-strong);color:var(--on-strong);text-align:center}.picker-selected>p{color:var(--faint);font-size:9px}.picker-selected ul{margin:9px -4px 0 0;padding:0 4px 0 0;overflow-y:auto;list-style:none}.picker-selected li{padding:7px 0;display:grid;grid-template-columns:23px 1fr;align-items:start;gap:5px;border-top:1px solid var(--line)}.picker-selected li button{width:22px;height:22px;padding:0;border:0;border-radius:4px;display:grid;place-items:center;background:transparent;color:var(--red)}.picker-selected li span,.picker-selected li strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-selected li span{color:var(--muted);font-size:8px}.picker-selected li strong{margin-bottom:2px;color:var(--ink);font-size:9px}.picker-add{width:100%;flex:0 0 auto}.picker-content{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr)}.picker-toolbar{min-height:62px;padding:12px 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:14px}.picker-toolbar .search-box{width:min(580px,100%)}.picker-toolbar .clear-filters{min-height:34px;padding:0 9px;white-space:nowrap}.picker-toolbar>span{margin-left:auto;color:var(--muted);font-size:9px;font-weight:750;white-space:nowrap}.picker-table-scroll{min-height:0;overflow:auto}.picker-table{table-layout:fixed}.material-picker-table{min-width:1190px}.customer-picker-table{min-width:1100px}.picker-table th{position:sticky;top:0;z-index:1;padding:10px 11px;background:var(--surface-strong);color:var(--on-strong);font-size:8px;font-weight:850;text-align:left;text-transform:uppercase}.picker-table .column-filter-row th{top:31px;padding:5px;background:#dfe9f2}.column-filter-row input,.column-filter-row select{width:100%;min-width:0;height:28px;padding:0 6px;border:1px solid var(--line-strong);border-radius:4px;background:var(--paper);color:var(--ink);font-size:8px;text-transform:none}.picker-table td{height:54px;padding:9px 11px;border-top:1px solid var(--line);color:var(--ink);font-size:9px;vertical-align:middle}.picker-table td strong{font-size:9px}.picker-table tbody tr:nth-child(2n) td{background:var(--nav-light)}.picker-table tbody tr:hover td{background:var(--blue-soft)}.picker-table th:first-child{width:78px}.picker-table th:nth-child(2){width:105px}.material-picker-table th:nth-child(3){width:270px}.material-picker-table th:nth-child(4){width:100px}.material-picker-table th:nth-child(5){width:120px}.material-picker-table th:nth-child(6){width:180px}.material-picker-table th:nth-child(7){width:115px}.material-picker-table th:nth-child(8){width:120px}.customer-picker-table th:nth-child(3){width:215px}.customer-picker-table th:nth-child(4){width:100px}.customer-picker-table th:nth-child(5){width:92px}.customer-picker-table th:nth-child(6){width:64px}.customer-picker-table th:nth-child(7){width:90px}.customer-picker-table th:nth-child(8){width:145px}.customer-picker-table th:nth-child(9),.customer-picker-table th:nth-child(10){width:105px}.picker-row-disabled{opacity:.62}.picker-select-button{min-height:30px;padding:0 8px;border:1px solid var(--line-strong);border-radius:4px;display:inline-flex;align-items:center;gap:5px;background:var(--paper);color:var(--heading);font-size:8px;font-weight:800}.picker-checkbox{display:inline-flex;align-items:center;gap:6px;color:var(--heading);font-size:8px;font-weight:800}.picker-checkbox input{width:15px;height:15px;accent-color:var(--red)}.detail-dialog{position:relative;width:min(1280px,100%);max-height:calc(100vh - 44px);overflow-y:auto;border-radius:7px;background:#fff;box-shadow:var(--shadow)}.dialog-close{position:absolute;top:14px;right:14px;z-index:1;width:34px;height:34px;border-radius:4px}.dialog-close:hover{background:var(--teal-soft)}.detail-header{padding:24px 60px 20px 24px;border-bottom:1px solid var(--line)}.detail-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.detail-title-row h2{margin:0;font-size:19px}.detail-header p{margin:7px 0 0;color:var(--muted);font-size:10px}.detail-kpis{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);background:var(--nav-light)}.detail-kpis>div{padding:15px 19px}.detail-kpis>div+div{border-left:1px solid var(--line)}.detail-kpis span,.detail-kpis strong{display:block}.detail-kpis span{color:var(--muted);font-size:8px;text-transform:uppercase}.detail-kpis strong{margin-top:5px;font-size:14px}.detail-section{padding:20px 24px}.detail-section+.detail-section{border-top:1px solid var(--line)}.detail-section h3{margin:0 0 12px;font-size:11px}.detail-route{display:flex;align-items:center;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:9px}.detail-route svg{color:var(--heading)}.detail-route b{color:#a2adb1}.detail-section blockquote{margin:14px 0 0;padding:9px 11px;border-left:3px solid #9ebcb9;background:var(--canvas);color:var(--accent-slate);font-size:10px}.detail-table{min-width:1380px}.detail-table.admin-cost-table{min-width:1480px}.detail-table th:not(:first-child),.detail-table td:not(:first-child){text-align:right}.timeline{display:grid;gap:14px}.timeline-item{display:grid;grid-template-columns:9px 1fr;gap:10px}.timeline-item>i{width:8px;height:8px;margin-top:3px;border:2px solid #fff;border-radius:50%;background:var(--surface-strong);box-shadow:0 0 0 1px #8dbbb6}.timeline-item strong,.timeline-item span{display:block}.timeline-item strong{font-size:10px;text-transform:capitalize}.timeline-item span{margin-top:3px;color:var(--muted);font-size:8px}.timeline-item p{margin:6px 0 0;color:var(--accent-slate);font-size:9px}.export-row{display:flex;align-items:center;justify-content:space-between;gap:18px}.export-row h3{margin-bottom:4px}.export-row p{margin:0;color:var(--muted);font-size:9px}.decision-panel{padding:19px 24px;border-top:1px solid var(--line);background:var(--canvas)}.submit-workflow-area{display:grid;gap:10px}.specialist-route-box{padding:13px 16px;border:1px solid var(--line);border-left:4px solid var(--accent-purple);background:color-mix(in srgb,var(--accent-purple) 7%,var(--paper))}.specialist-route-box>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.specialist-route-box>header div{display:inline-flex;align-items:center;gap:7px}.specialist-route-box>header span{color:var(--muted);font-size:9px}.specialist-route-box>div{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(280px,1.7fr) auto;align-items:end;gap:10px}.specialist-route-box textarea{min-height:58px}.specialist-route-button{border-color:var(--accent-purple)!important;background:var(--accent-purple)!important;color:#fff!important}.specialist-history{display:grid;gap:8px}.specialist-history>h3{grid-column:1 / -1}.specialist-history article{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:10px 12px;border:1px solid var(--line);border-left:3px solid var(--accent-purple);background:var(--paper)}.specialist-history article div{display:grid;gap:2px}.specialist-history article span,.specialist-history article p{color:var(--muted);font-size:9px}.specialist-history article p,.specialist-history article blockquote{grid-column:1 / -1;margin:3px 0 0}.override-cell{min-width:92px;display:grid;gap:3px}.override-cell input{width:100%;min-width:78px;height:30px;border:1px solid var(--accent-purple);background:var(--paper);color:var(--ink);text-align:right}.override-cell small,.override-audit{display:block;color:var(--adjusted-ink);font-size:7px;font-weight:800}.manually-overridden{background:var(--adjusted);box-shadow:inset 0 0 0 2px var(--adjusted-edge);color:var(--adjusted-ink)}.adjustment-consequence{background:color-mix(in srgb,var(--adjusted) 55%,transparent);box-shadow:inset 0 -2px var(--adjusted-edge)}.adjusted-badge{display:inline-flex;align-items:center;gap:4px;background:var(--adjusted);color:var(--adjusted-ink);border:1px solid var(--adjusted-edge);border-radius:20px;padding:1px 9px;font-size:9px;font-weight:800;white-space:nowrap}.adjustment-log{margin:10px 0 0;font-size:10px}.adjustment-log li{display:flex;flex-wrap:wrap;gap:6px;align-items:baseline;padding:5px 8px;border-left:3px solid var(--adjusted-edge);background:color-mix(in srgb,var(--adjusted) 40%,transparent);margin-bottom:4px;list-style:none}.adjustment-log b{color:var(--adjusted-ink)}.adjustment-log .was{text-decoration:line-through;opacity:.65}.adjustment-log .why{color:var(--muted);font-style:italic;width:100%}.decision-buttons{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.amendment-panel{display:flex;align-items:center;justify-content:space-between;gap:18px}.amendment-panel strong{font-size:11px}.amendment-panel p{margin:5px 0 0;color:var(--muted);font-size:9px}.master-tabs{display:flex;align-items:center;gap:4px;padding-bottom:1px;border-bottom:1px solid var(--line-strong);overflow-x:auto}.master-tabs button{min-height:39px;padding:0 12px;border:0;border-bottom:2px solid transparent;display:flex;align-items:center;gap:7px;background:transparent;color:var(--muted);font-size:10px;font-weight:750}.master-tabs button.active{border-color:var(--heading);color:var(--teal-dark)}.master-create{padding:19px}.master-form{display:flex;align-items:end;flex-wrap:wrap;gap:11px;margin-top:16px}.master-form .field{flex:1 1 140px}.master-form .button{flex:0 0 auto}.master-table-wrap{overflow:hidden}.master-table{min-width:820px}.loading-block{min-height:220px;display:grid;place-items:center;color:var(--muted);font-size:10px}.source-banner{padding:15px 17px;border:1px solid var(--line);border-left:4px solid var(--amber-bright);border-radius:7px;display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--paper)}.source-banner>div{display:flex;align-items:center;gap:10px;color:var(--heading)}.source-banner strong,.source-banner span{display:block}.source-banner strong{font-size:11px}.source-banner span{margin-top:3px;color:var(--muted);font-size:9px}.toast{position:fixed;right:24px;bottom:24px;z-index:100;max-width:370px;padding:12px 15px;border-radius:6px;background:var(--surface-strong);color:var(--on-strong);box-shadow:var(--shadow);font-size:10px}.toast.error{background:#8d3333}.app-loading{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:12px;background:var(--canvas);color:var(--muted);font-size:10px}.app-loading span{width:27px;height:27px;border:3px solid var(--line);border-top-color:var(--heading);border-radius:50%;animation:spin .75s linear infinite}.workspace-load-error{padding:24px;text-align:center}.workspace-load-error h2{margin:0;color:var(--ink);font-size:22px}.workspace-load-error p{max-width:560px;margin:0}.workspace-load-error>div{display:flex;gap:8px}@keyframes spin{to{transform:rotate(360deg)}}body,.login-page,.login-brand,.login-panel,.sidebar,.topbar,.surface,.kpi-band,.kpi,.customer-name-display,.approval-route,.submit-bar,.detail-dialog,.detail-kpis,.decision-panel,.pricing-grid td,.submission-table td,.master-table td,.detail-table td{transition:background-color .28s ease,color .28s ease,border-color .28s ease,box-shadow .28s ease}body.dark-theme{--adjusted: #3d3212;--adjusted-edge: #f4d991;--adjusted-ink: #f4d991;--ink: #edf4fa;--muted: #9fb2c2;--faint: #8196a8;--line: #294255;--line-strong: #38566c;--paper: #0a1722;--canvas: #050d15;--nav: #07131d;--nav-light: #102638;--teal: #124c6b;--teal-dark: #06131f;--teal-soft: #12283a;--blue: #cdebfA;--blue-bright: #17677b;--blue-soft: #12283a;--green: #b8e0ce;--green-bright: #4f8a70;--green-soft: rgba(79,138,112,.14);--amber: #f4d991;--amber-bright: #f3c45c;--amber-soft: rgba(242,184,75,.1);--red: #ff5962;--red-soft: rgba(255,89,98,.11);--cy-bar-edge: #071826;--cy-bar-deep: #173b56;--cy-bar-shine: #4f7e9d;--cy-bar-mid: #1d4865;--accent-cyan: #4fc3d9;--accent-purple: #c0a3e0;--accent-green: #6fc49b;--accent-orange: #f0a068;--accent-brown: #c9a227;--accent-sage: #8fd4a0;--accent-slate: #9bb8cc;--blue-deep: #7fb3e8;--amber-tint: #f3c45c;--orange-soft: rgba(240, 160, 104, .18);--surface-strong: #14364f;--on-strong: #edf4fa;--heading: #7fb3e8;--shadow: 0 16px 42px rgba(0,0,0,.34);color:var(--ink);background:var(--canvas);color-scheme:dark}body.dark-theme .login-page,body.dark-theme .login-panel,body.dark-theme .workspace,body.dark-theme .main-content{background:var(--canvas)}body.dark-theme .login-brand{background:#071722}body.dark-theme .login-brand:before,body.dark-theme .login-brand:after{border-color:#f3c45c33}body.dark-theme .login-form-heading h2,body.dark-theme .page-intro h2,body.dark-theme .section-heading h3,body.dark-theme .detail-title-row h2,body.dark-theme .detail-section h3{color:#f4f8fc}body.dark-theme .login-icon{color:#d9f0ff;background:#12283a}body.dark-theme .demo-logins{border-color:var(--line)}body.dark-theme .demo-logins button{border-color:var(--line-strong);background:#0c1e2c;color:#d2dee8}body.dark-theme .demo-logins button:hover{border-color:#2d8799;color:#d9f0ff}body.dark-theme .sidebar{background:var(--nav);box-shadow:8px 0 28px #0000004d}body.dark-theme .brand div strong,body.dark-theme .user-card strong{color:#f4f8fc}body.dark-theme .brand div small{color:var(--amber-bright)}body.dark-theme .sidebar nav button{color:#d1dde7}body.dark-theme .sidebar nav button:hover{color:#fff;background:#143148}body.dark-theme .sidebar nav button.active{color:#d9f0ff;background:#102638}body.dark-theme .sidebar nav button.nav-tone-data_management.active,body.dark-theme .sidebar nav button.nav-tone-sklearn.active{color:#f0d2bd;background:#ffd7aa1f}body.dark-theme .sidebar nav button.nav-tone-data_management:not(.active),body.dark-theme .sidebar nav button.nav-tone-sklearn:not(.active){background:#ffd7aa0f}body.dark-theme .sidebar nav button.nav-tone-postgresql_control.active{color:#b8e0ce;background:#4f8a7029}body.dark-theme .sidebar nav button.nav-tone-postgresql_control:not(.active){background:#4f8a7012}body.dark-theme .sidebar nav button em{background:#17324f;color:#d9f0ff}body.dark-theme .sidebar-guide strong{color:#d9f0ff}body.dark-theme .user-card>span{background:#12283a;color:#d9f0ff}body.dark-theme .sidebar .icon-button{color:#9fb2c2}body.dark-theme .topbar{background:#050d15f0;box-shadow:0 8px 24px #0000002e}body.dark-theme .topbar h1{color:#f4f8fc}body.dark-theme .role-chip{border-color:var(--line-strong);background:#0b1c29;color:#c7dceb}body.dark-theme .submission-sheet-tabs button.active{border-color:var(--red);color:#d9f0ff}body.dark-theme .surface,body.dark-theme .kpi-band,body.dark-theme .submit-bar,body.dark-theme .detail-dialog{background:var(--paper)}body.dark-theme .kpi.featured{background:var(--blue-soft)}body.dark-theme .pricing-summary .kpi:nth-child(1){background:#e73f451a}body.dark-theme .pricing-summary .kpi:nth-child(2){background:#f2b84b1a}body.dark-theme .pricing-summary .kpi:nth-child(3){background:#10283a}body.dark-theme .pricing-summary .kpi:nth-child(4){background:#4f8a7021}body.dark-theme .pricing-summary .kpi:nth-child(1) strong{color:#ffc5c8}body.dark-theme .pricing-summary .kpi:nth-child(2) strong{color:#f4d991}body.dark-theme .pricing-summary .kpi:nth-child(3) strong{color:#cdebfa}body.dark-theme .pricing-summary .kpi:nth-child(4) strong{color:#b8e0ce}body.dark-theme .kpi.featured strong,body.dark-theme .customer-name-display strong,body.dark-theme .ticket-link{color:#d9f0ff}body.dark-theme .customer-name-display{background:#0c1e2c}body.dark-theme .approval-route{background:#102638}body.dark-theme .approval-route strong,body.dark-theme .table-foot strong,body.dark-theme .submit-bar>div p strong{color:#d2dee8}body.dark-theme .approval-route svg{color:#cdebfa}body.dark-theme .customer-facts span{color:#cdebfa}body.dark-theme .customer-facts span:nth-child(2){color:#b8e0ce}body.dark-theme .customer-facts span:nth-child(3){color:#f4d991}body.dark-theme .field>span{color:#d2dee8}body.dark-theme .field input,body.dark-theme .field select,body.dark-theme .field textarea,body.dark-theme .pricing-grid select,body.dark-theme .pricing-grid input,body.dark-theme .search-box,body.dark-theme .filter-box{border-color:var(--line-strong);background:#0c1e2c;color:var(--ink)}body.dark-theme input::placeholder,body.dark-theme textarea::placeholder{color:#8196a8}body.dark-theme .search-box input,body.dark-theme .filter-box select{color:var(--ink)}body.dark-theme .button.secondary,body.dark-theme .button.danger{border-color:var(--line-strong);background:#0b1c29}body.dark-theme .currency-reference-band{border-color:var(--line-strong);border-left-color:var(--amber-bright);background:var(--paper)}body.dark-theme .currency-reference-title strong,body.dark-theme .currency-reference-rates strong{color:#d9f0ff}body.dark-theme .button.secondary{color:#cdebfa}body.dark-theme .button.secondary:hover{border-color:#2d8799;background:#143148}body.dark-theme .button.danger:hover{background:var(--red-soft)}body.dark-theme .picker-dialog{border-color:var(--line-strong);background:var(--paper)}body.dark-theme .column-menu{background:#0b1c29}body.dark-theme .picker-sidebar{background:#081722}body.dark-theme .picker-status button.active,body.dark-theme .picker-status button:hover,body.dark-theme .picker-select-button{background:#0c1e2c;color:#d9f0ff}body.dark-theme .picker-header h2,body.dark-theme .picker-selected li strong{color:#f4f8fc}body.dark-theme .picker-table th{background:#124c6b}body.dark-theme .picker-table .column-filter-row th{background:#10283a}body.dark-theme .column-filter-row input,body.dark-theme .column-filter-row select{border-color:var(--line-strong);background:#0c1e2c;color:var(--ink)}body.dark-theme .picker-table td{border-color:#263d50;color:#d7e2ec;background:#0b1925}body.dark-theme .picker-table tbody tr:nth-child(2n) td{background:#10202d}body.dark-theme .picker-table tbody tr:hover td{background:#1b2934}body.dark-theme .pricing-grid th,body.dark-theme .submission-table th,body.dark-theme .master-table th,body.dark-theme .detail-table th,body.dark-theme .material-reference-table th{background:#124c6b;color:#fff}body.dark-theme .pricing-grid td,body.dark-theme .submission-table td,body.dark-theme .master-table td,body.dark-theme .detail-table td,body.dark-theme .material-reference-table td{color:#d7e2ec;border-color:#263d50;background:#0b1925}body.dark-theme .pricing-grid tbody tr:nth-child(2n) td{background:#10202d}body.dark-theme .pricing-grid tbody tr:hover td,body.dark-theme .submission-table tbody tr:hover td,body.dark-theme .material-reference-table tbody tr:hover td{background:#1b2934}body.dark-theme .material-reference-table tbody tr:nth-child(2n) td{background:#10202d}body.dark-theme .description-cell span,body.dark-theme .primary-cell span{color:#9fb2c2}body.dark-theme .remove{color:#ffc5c8}body.dark-theme .worst-case-cell{color:var(--amber-bright)}body.dark-theme .status-pending_manager{color:#f4d991;background:#f2b84b1a}body.dark-theme .status-pending_director{color:#cdebfa;background:#12283a}body.dark-theme .status-approved{color:#b8e0ce;background:#4f8a7024}body.dark-theme .status-rejected,body.dark-theme .status-amendment_required{color:#ffc5c8;background:#ff59621c}body.dark-theme .revision-code{color:#d9f0ff;background:#12283a}body.dark-theme .source-banner{background:var(--paper)}body.dark-theme .empty-state strong{color:#d9f0ff}body.dark-theme .detail-kpis,body.dark-theme .decision-panel{background:#10202d}body.dark-theme .detail-section blockquote{border-color:#17677b;background:#0e2030;color:#d2dee8}body.dark-theme .timeline-item p{color:#d2dee8}body.dark-theme .dialog-close:hover{background:#143148}body.dark-theme .master-tabs button.active{border-color:var(--red);color:#d9f0ff}body.dark-theme .team-performance-title{background:#10283a;color:#d9f0ff}body.dark-theme .team-performance-row>strong,body.dark-theme .team-performance-row dd{color:#d7e2ec}body.dark-theme .toast{background:#124c6b}body.dark-theme .app-loading span{border-color:#294255;border-top-color:#17677b}body.dark-theme .theme-logo:hover{filter:drop-shadow(0 7px 14px rgba(243,196,92,.24))}@media(max-width:1050px){.context-grid{grid-template-columns:1fr 1fr}.customer-facts{grid-column:1 / -1}.customer-entry-controls{grid-template-columns:minmax(260px,.8fr) 1fr}.approval-route.compact{grid-column:1 / -1}.kpi-band{grid-template-columns:repeat(2,1fr)}.kpi:nth-child(3){border-left:0;border-top:1px solid var(--line)}.kpi:nth-child(4){border-top:1px solid var(--line)}.requested-price-grid{min-width:1080px}}@media(max-width:1180px){.history-layout.with-team-panel{grid-template-columns:1fr}.team-performance{position:static}}@media(max-width:760px){.login-page{grid-template-columns:1fr}.login-brand{min-height:330px;padding:42px 28px}.login-logo{margin-bottom:35px}.login-brand h1{font-size:43px}.login-copy{font-size:14px}.login-panel{padding:42px 24px}.app-shell{display:block}.workspace{min-width:0}.sidebar{transform:translate(-100%);transition:transform .2s ease}.sidebar.open{transform:translate(0)}.sidebar .sidebar-close{display:grid}.mobile-scrim{position:fixed;inset:0;z-index:25;display:block;border:0;background:#0d1a1f80}.mobile-menu{display:grid}.topbar{justify-content:flex-start;gap:12px;padding:0 14px}.topbar-user{margin-left:auto}.topbar-user>svg{display:none}.connection{font-size:0}.main-content{padding:21px 14px 45px}.role-chip{display:none}.intro-actions{width:100%;justify-content:flex-start}.page-intro{align-items:flex-start;flex-direction:column}.context-grid,.customer-row{grid-template-columns:1fr}.customer-facts{grid-column:auto}.customer-entry-controls{padding:14px;grid-template-columns:1fr}.customer-code-actions{grid-template-columns:1fr}.currency-reference-band{align-items:flex-start;flex-direction:column}.currency-reference-rates{width:100%}.currency-reference-rates>div{min-width:0;flex:1}.table-title-actions{width:100%;flex-wrap:wrap}.picker-layout{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.picker-sidebar{max-height:245px;border-right:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;align-items:start}.picker-status{grid-column:1}.picker-selected{grid-column:2;grid-row:1 / span 2;margin:0;padding:0 0 0 12px;border-top:0;border-left:1px solid var(--line)}.picker-add{grid-column:1}.approval-route.compact{grid-column:auto}.customer-name-display{min-height:68px;padding:14px}.customer-name-display strong{font-size:16px}.submit-bar{grid-template-columns:1fr}.submit-bar>div{text-align:left}.submit-button{width:100%}.register-toolbar{flex-wrap:wrap}.material-sheet-toolbar{align-items:flex-start;flex-direction:column}.material-sheet-toolbar .search-box,.search-box{width:100%}.filter-box{margin-left:0}.detail-kpis{grid-template-columns:1fr 1fr}.amendment-panel,.source-banner{align-items:stretch;flex-direction:column}.detail-kpis>div:nth-child(3){border-left:0;border-top:1px solid var(--line)}.detail-kpis>div:nth-child(4){border-top:1px solid var(--line)}.dialog-backdrop{padding:8px}.detail-dialog{max-height:calc(100vh - 16px)}.master-tabs{overflow-x:auto}.master-tabs button{white-space:nowrap}}.dashboard-builder{min-height:calc(100vh - 112px);display:grid;grid-template-rows:auto auto 1fr;gap:7px;color:var(--ink)}.builder-toolbar{min-height:54px;padding:7px 9px;display:flex;align-items:center;flex-wrap:wrap;gap:7px;border:1px solid var(--line-strong);background:var(--paper)}.builder-toolbar>div:first-child{min-width:220px;margin-right:auto;display:grid;gap:2px}.builder-toolbar>div:first-child span{color:var(--muted);font-size:7px;font-weight:800;text-transform:uppercase}.builder-toolbar input{width:100%;padding:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:17px;font-weight:800}.builder-toolbar>select{height:34px;min-width:160px;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink)}.builder-page-tabs{min-height:36px;padding:0 5px;display:flex;align-items:center;gap:3px;overflow-x:auto;border:1px solid var(--line-strong);background:var(--paper)}.builder-page-tabs>span{min-width:18px;flex:1}.builder-page-tabs>button:not(.icon-button){height:28px;padding:0 12px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-size:9px;font-weight:750;white-space:nowrap}.builder-page-tabs>button.active{border-bottom-color:var(--amber-bright);color:var(--heading)}.builder-page-tabs>button.view{border:1px solid var(--line);border-radius:3px}.builder-page-tabs>button.view.active{border-color:var(--blue-deep);background:var(--surface-strong);color:var(--on-strong)}.builder-workspace{min-height:720px;display:grid;grid-template-columns:210px minmax(640px,1fr) 280px;gap:7px}.builder-library,.builder-inspector,.builder-center{min-width:0;border:1px solid var(--line-strong);background:var(--paper)}.builder-panel-title{min-height:37px;padding:0 10px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line);color:var(--heading);font-size:10px}.library-group{border-bottom:1px solid var(--line)}.library-group>button{width:100%;height:32px;padding:0 9px;border:0;display:flex;justify-content:space-between;align-items:center;background:var(--nav-light);color:var(--ink);font-size:9px;font-weight:800}.library-group>div{padding:5px;display:grid;gap:3px}.library-group>div>div{min-height:31px;padding:5px 7px;border:1px solid transparent;display:grid;grid-template-columns:17px minmax(0,1fr) auto;align-items:center;gap:6px;color:var(--muted);cursor:grab;font-size:8px}.library-group>div>div:hover{border-color:var(--line);background:var(--blue-soft);color:var(--heading)}.library-group em{padding:2px 4px;border-radius:2px;background:var(--amber-bright);color:var(--ink);font-size:6px;font-style:normal;font-weight:900}.builder-center{padding:7px;overflow:hidden;background:var(--canvas)}.canvas-meta{min-height:58px;padding:5px 6px;display:flex;justify-content:space-between;align-items:center;gap:10px}.canvas-meta strong,.canvas-meta span{display:block}.canvas-meta strong{font-size:11px}.canvas-meta span{color:var(--muted);font-size:8px}.canvas-size-controls{display:flex;align-items:end;justify-content:flex-end;flex-wrap:wrap;gap:5px}.canvas-size-controls label{display:grid;gap:2px}.canvas-size-controls label>span{color:var(--muted);font-size:6px;font-weight:800;text-transform:uppercase}.canvas-size-controls select,.canvas-size-controls input{height:28px;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);font-size:8px}.canvas-size-controls select{min-width:104px}.canvas-size-controls input{width:65px;padding:0 5px}.canvas-size-controls .button{min-height:28px;height:28px;padding:0 8px;font-size:8px}.canvas-size-controls .canvas-checkbox{height:28px;padding:0 6px;display:flex;align-items:center;gap:4px;border:1px solid var(--line)}.canvas-size-controls .canvas-checkbox>span{color:var(--ink);font-size:7px;text-transform:none}.canvas-size-controls>em{min-width:34px;padding-bottom:7px;color:var(--heading);font-size:7px;font-style:normal;font-weight:850;text-align:right}.builder-canvas-viewport{width:100%;height:690px;padding:4px;overflow:auto;border-top:1px solid var(--line)}.builder-canvas-stage{position:relative;margin:0 auto}.builder-canvas{position:absolute;inset:0 auto auto 0;transform-origin:top left;padding:4px;display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:var(--row-height);gap:4px;align-content:start;overflow:hidden;border:1px solid var(--line-strong);background-color:var(--paper);background-image:linear-gradient(to right,rgba(23,54,93,.06) 1px,transparent 1px),linear-gradient(to bottom,rgba(23,54,93,.06) 1px,transparent 1px);background-size:calc(100% / 12) var(--row-height)}.canvas-empty{position:absolute;inset:160px 0 auto;display:grid;place-items:center;gap:7px;color:var(--faint);pointer-events:none}.canvas-empty strong{color:var(--muted);font-size:12px}.canvas-empty span{font-size:9px}.builder-component{position:relative;z-index:1;min-width:0;overflow:hidden;border:1px solid var(--line-strong);background:var(--paper);box-shadow:0 2px 5px #17365d17;cursor:move}.builder-component.selected{border-color:var(--amber-bright);box-shadow:0 0 0 2px #f3c45c57}.builder-component.grouped-component:after{content:"";position:absolute;inset:2px;border:1px dashed var(--amber-bright);pointer-events:none}.builder-component.hidden-component{opacity:.42}.builder-component-head{height:26px;padding:0 7px;display:flex;align-items:center;justify-content:space-between;background:var(--surface-strong);color:var(--on-strong)}.builder-component-head span{overflow:hidden;font-size:8px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.builder-component-head em{color:#a8d5e7;font-size:6px;font-style:normal;text-transform:uppercase}.builder-resize-handle{position:absolute;z-index:5;right:1px;bottom:1px;width:13px;height:13px;padding:0;border:0;border-right:3px solid var(--amber-bright);border-bottom:3px solid var(--amber-bright);background:transparent;cursor:nwse-resize}.sketch-filter{height:calc(100% - 26px);padding:0 8px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:9px}.sketch-kpi{height:calc(100% - 26px);display:grid;place-content:center;text-align:center}.sketch-kpi strong{color:var(--heading);font-size:24px}.sketch-kpi span{color:#0b9d54;font-size:9px;font-weight:800}.sketch-bars{height:calc(100% - 35px);padding:10px;display:flex;align-items:end;justify-content:space-evenly;gap:5px;border-bottom:1px solid var(--line)}.sketch-bars i{width:12%;background:var(--accent-cyan)}.sketch-table{padding:7px;display:grid;gap:5px}.sketch-table i{height:13px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,var(--line) 28%,transparent 28%)}.sketch-bubbles{position:relative;height:calc(100% - 26px)}.sketch-bubbles i{position:absolute;width:28px;aspect-ratio:1;border-radius:50%;background:#159bb180;border:1px solid var(--accent-cyan)}.sketch-bubbles i:nth-child(1){left:18%;top:30%}.sketch-bubbles i:nth-child(2){left:47%;top:18%;width:40px}.sketch-bubbles i:nth-child(3){left:68%;top:48%;width:32px;background:#f3b84b80;border-color:var(--amber-bright)}.sketch-bubbles i:nth-child(4){left:35%;top:58%;width:22px;background:#f0445280;border-color:#f04452}.sketch-divider{height:2px;margin:20px 10px;background:var(--surface-strong)}.sketch-divider.vertical{width:2px;height:calc(100% - 34px);margin:4px auto}.sketch-section{height:calc(100% - 26px);margin:6px;display:grid;place-content:center;border:1px dashed var(--teal);color:var(--muted);font-size:8px}.sketch-text{height:calc(100% - 26px);padding:8px;display:grid;place-content:center;overflow:hidden;color:var(--ink);font-size:9px;font-weight:750;text-align:center}.inspector-tabs{height:39px;display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}.inspector-tabs button{border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted)}.inspector-tabs button.active{background:var(--surface-strong);color:var(--on-strong)}.inspector-empty{min-height:300px;padding:30px;display:grid;place-content:center;justify-items:center;gap:7px;color:var(--faint);text-align:center}.inspector-empty strong{color:var(--ink);font-size:11px}.inspector-empty span{font-size:8px;line-height:1.5}.properties-panel,.data-panel,.access-panel,.model-panel{max-height:675px;overflow-y:auto}.properties-panel>label,.measure-builder input,.measure-builder textarea,.measure-builder select,.model-panel>label{margin:8px 9px;display:grid;gap:4px}.properties-panel label>span,.model-panel label>span{color:var(--muted);font-size:7px;font-weight:800;text-transform:uppercase}.properties-panel input:not([type=checkbox]),.properties-panel select,.measure-builder input,.measure-builder textarea,.measure-builder select,.model-panel input,.model-panel select{width:100%;min-height:32px;padding:6px;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);font-size:9px}.property-grid{padding:0 9px;display:grid;grid-template-columns:1fr 1fr;gap:5px}.property-grid label{display:grid;gap:3px}.property-check{min-height:28px;margin:0 9px!important;grid-template-columns:17px 1fr;align-items:center}.component-audience{margin:8px 9px;padding:7px;border:1px solid var(--line)}.component-audience summary{color:var(--heading);font-size:8px;font-weight:800}.component-audience p{margin:5px 0;color:var(--muted);font-size:7px}.component-audience label{min-height:23px;display:grid;grid-template-columns:17px 1fr;align-items:center;color:var(--ink);font-size:8px}.conditional-formatting{margin:8px 9px;padding:7px;border:1px solid var(--line);border-left:3px solid var(--amber-bright)}.conditional-formatting summary{color:var(--heading);font-size:8px;font-weight:800}.conditional-formatting>label{margin:6px 0;display:grid;gap:3px}.conditional-formatting label>span{color:var(--muted);font-size:7px;font-weight:800;text-transform:uppercase}.conditional-formatting input:not([type=checkbox]),.conditional-formatting select{width:100%;min-height:29px;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);font-size:8px}.conditional-rule-row{margin:6px 0;display:grid;grid-template-columns:1.4fr 1fr;gap:4px}.formatting-controls{margin:8px 9px;padding:7px;border:1px solid var(--line)}.formatting-controls summary{color:var(--heading);font-size:8px;font-weight:800}.formatting-controls>label{margin:7px 0;display:grid;gap:3px}.formatting-controls label>span{color:var(--muted);font-size:7px;font-weight:800;text-transform:uppercase}.formatting-controls input,.formatting-controls select{width:100%;min-height:29px;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);font-size:8px}.palette-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:3px}.palette-presets button{min-height:31px;padding:3px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:7px}.inspector-actions{padding:10px 9px;display:grid;grid-template-columns:1fr 1fr;gap:4px;border-top:1px solid var(--line)}.inspector-actions button{min-height:30px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:4px;background:var(--paper);color:var(--ink);font-size:8px}.inspector-actions button.danger{grid-column:1 / -1;color:var(--red)}.data-panel details{border-bottom:1px solid var(--line)}.data-panel summary{padding:9px;color:var(--ink);font-size:9px;font-weight:800}.field-chip{min-height:31px;padding:5px 9px 5px 20px;display:grid;background:var(--paper)}.field-chip:hover{background:var(--blue-soft)}.field-chip span{font-size:8px;font-weight:750}.field-chip small{color:var(--muted);font-size:6px}.field-chip.measure span:before{content:"∑";margin-right:6px;color:var(--amber)}.measure-builder{padding:10px 0;border-top:3px solid var(--amber-bright)}.measure-builder>strong{padding:0 9px;font-size:10px}.measure-builder textarea{min-height:64px;resize:vertical}.measure-builder .button{margin:0 9px}.measure-builder-title{padding:0 9px 6px;display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:10px}.measure-mode{margin:0 9px 8px;display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line-strong)}.measure-mode button{min-height:30px;border:0;background:var(--paper);color:var(--muted);font-size:8px;font-weight:800}.measure-mode button.active{background:var(--blue-strong);color:#fff}.measure-filter-list{margin:8px 9px;border:1px solid var(--line)}.measure-filter-list>div:first-child{padding:6px;display:flex;align-items:center;justify-content:space-between;font-size:8px}.measure-filter-row{padding:5px;display:grid;grid-template-columns:1fr 85px;gap:4px;border-top:1px solid var(--line)}.measure-filter-row input{grid-column:1 / -2;margin:0}.measure-filter-row select{margin:0}.measure-token-list{max-height:105px;margin:0 9px 8px;padding:4px;overflow:auto;display:flex;flex-wrap:wrap;gap:3px;border:1px solid var(--line)}.measure-token-list button{padding:4px 5px;border:1px solid var(--line);background:var(--blue-soft);color:var(--ink);font-size:7px}.measure-reference-note{margin:6px 9px;padding:7px;border-left:3px solid var(--amber-bright);background:var(--blue-soft);color:var(--muted);font-size:7px;line-height:1.45}.field-chip[draggable=true]{cursor:grab}.field-chip .text-button{justify-self:start;margin-top:4px}.rls-editor{margin:8px;border:1px solid var(--line)}.rls-editor>summary{padding:8px;font-size:9px;font-weight:850;cursor:pointer}.rls-editor>p{margin:0;padding:0 8px 8px;color:var(--muted);font-size:7px;line-height:1.45}.rls-editor>.button{margin:8px}.rls-rule{padding:7px;display:grid;grid-template-columns:1fr;gap:5px;border-top:1px solid var(--line)}.rls-rule select,.rls-rule input{width:100%;min-height:30px;padding:5px;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);font-size:8px}.rls-rule .icon-button{justify-self:end}.measure-search{margin:7px;padding:0 7px;min-height:31px;display:flex;align-items:center;gap:5px;border:1px solid var(--line-strong)}.measure-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font-size:8px}.measure-folder{margin-left:8px;border-left:2px solid var(--line)}.measure-folder>summary{padding:7px 8px!important;color:var(--heading)!important;font-size:7px!important}.field-chip.measure{padding-left:9px}.field-chip.measure>summary{display:grid;list-style:none;cursor:pointer}.field-chip.measure code{margin:5px 0;padding:5px;overflow-wrap:anywhere;background:var(--nav-light);color:var(--ink);font-size:6px;white-space:pre-wrap}.binding-editor,.waterfall-editor,.page-audience-editor{margin:8px 9px;padding:7px;border:1px solid var(--line)}.binding-editor summary,.waterfall-editor summary,.page-audience-editor summary{color:var(--heading);font-size:8px;font-weight:800}.binding-editor label{min-height:25px;display:grid;grid-template-columns:17px 1fr;align-items:center;color:var(--ink);font-size:8px}.waterfall-editor>p,.page-audience-editor>p{color:var(--muted);font-size:7px;line-height:1.4}.waterfall-editor>div{margin:5px 0;padding:4px;display:grid;grid-template-columns:1fr 1fr;gap:3px;border:1px solid var(--line)}.waterfall-editor input,.waterfall-editor select{min-width:0;min-height:27px;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);font-size:7px}.waterfall-editor>div>label{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:7px}.waterfall-editor>div>button{width:25px;height:25px;padding:0;border:1px solid var(--line);background:transparent;color:var(--heading)}.page-audience-editor>strong{display:block;margin-top:7px;color:var(--heading);font-size:7px;text-transform:uppercase}.page-audience-editor>label{min-height:24px;display:grid;grid-template-columns:17px 1fr;align-items:center;color:var(--ink);font-size:8px}.access-panel>p,.model-panel>p{margin:8px 9px 12px;color:var(--muted);font-size:8px;line-height:1.45}.access-panel>strong,.model-panel>strong{display:block;padding:8px 9px 3px;color:var(--heading);font-size:8px;text-transform:uppercase}.access-panel>label{min-height:29px;padding:4px 9px;display:grid;grid-template-columns:17px 1fr;align-items:center;color:var(--ink);font-size:8px}.access-panel label span,.access-panel label small{display:block}.access-panel label small{color:var(--muted);font-size:6px}.model-panel>select{width:calc(100% - 18px);min-height:145px;margin:4px 9px 10px;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink)}.model-panel>.button{margin:0 9px}.model-capabilities{margin:14px 9px;padding:9px;display:grid;gap:5px;border:1px solid var(--line);background:var(--nav-light)}.model-capabilities strong{font-size:9px}.model-capabilities span{color:var(--muted);font-size:8px}.builder-empty,.runtime-empty{min-height:520px;display:grid;place-content:center;justify-items:center;gap:10px;color:var(--muted);text-align:center}.builder-empty h2,.runtime-empty h2{margin:0;color:var(--ink)}.runtime-empty p{max-width:420px;margin:0;font-size:10px}.builder-preview>.button{margin-bottom:8px}.dynamic-dashboard{display:grid;gap:7px;transition:opacity .18s ease}.dynamic-dashboard.is-loading{opacity:.62}.runtime-heading{min-height:58px;padding:6px 8px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.runtime-heading p{margin:0;color:var(--muted);font-size:7px;font-weight:800;text-transform:uppercase}.runtime-heading h2{margin:2px 0;color:var(--heading);font-size:20px}.runtime-heading span{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:8px}.runtime-heading-actions{display:flex;gap:6px}.runtime-heading-actions select{min-width:160px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}.runtime-body{min-width:0;display:grid;grid-template-columns:142px minmax(0,1fr);gap:7px;align-items:start}.runtime-body.has-filter-pane{grid-template-columns:142px minmax(0,1fr) 230px}.runtime-page-filters{position:sticky;top:8px;max-height:calc(100vh - 130px);overflow:auto;border:1px solid var(--line-strong);background:var(--paper)}.runtime-page-filters>header{min-height:38px;padding:7px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--blue-strong);color:#fff}.runtime-page-filters>header>div{display:flex;align-items:center;gap:6px;font-size:9px}.runtime-page-filters details{border-bottom:1px solid var(--line)}.runtime-page-filters summary{padding:8px;display:flex;justify-content:space-between;gap:7px;color:var(--ink);font-size:8px;font-weight:800;cursor:pointer}.runtime-page-filters summary span{color:var(--muted);font-size:7px;font-weight:600}.runtime-page-filter-values{max-height:170px;overflow:auto;padding:3px 7px 8px;display:grid;gap:2px}.runtime-page-filter-values button{min-height:27px;padding:4px 6px;border:1px solid transparent;display:flex;align-items:center;gap:5px;background:transparent;color:var(--ink);font-size:7px;text-align:left}.runtime-page-filter-values button.selected{border-color:var(--amber-bright);background:var(--blue-soft)}.runtime-security-note{margin:8px;padding:7px;border-left:3px solid var(--positive);background:var(--blue-soft);color:var(--muted);font-size:7px}.runtime-page-rail{position:sticky;top:8px;min-height:180px;padding:5px;display:grid;align-content:start;gap:3px;border:1px solid var(--line-strong);background:var(--paper)}.runtime-page-rail>strong{padding:7px;color:var(--muted);font-size:7px;text-transform:uppercase}.runtime-page-rail button{min-height:44px;padding:6px 8px;border:0;border-left:3px solid transparent;display:grid;background:transparent;color:var(--ink);font-size:8px;font-weight:800;text-align:left}.runtime-page-rail button span{margin-top:3px;color:var(--muted);font-size:6px;font-weight:500}.runtime-page-rail button.active{border-left-color:var(--amber-bright);background:var(--surface-strong);color:var(--on-strong)}.runtime-page-rail button.active span{color:#b9d9e8}.runtime-page-stage{min-width:0;display:grid;gap:7px;overflow-x:auto}.runtime-navigation{min-height:35px;display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line-strong);background:var(--paper)}.runtime-navigation>div{display:flex}.runtime-navigation>span{padding:0 9px;color:var(--muted);font-size:7px;text-transform:capitalize}.runtime-navigation button{min-width:90px;min-height:34px;border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);font-size:8px;font-weight:800}.runtime-navigation button.active{background:var(--surface-strong);color:var(--on-strong)}.runtime-filter-context{min-height:36px;padding:5px 8px;display:flex;align-items:center;flex-wrap:wrap;gap:5px;border:1px solid var(--line);border-left:4px solid var(--amber-bright);background:var(--paper)}.runtime-filter-context strong{margin-right:5px;font-size:7px;text-transform:uppercase}.runtime-filter-context span{padding:4px 5px 4px 8px;display:flex;align-items:center;gap:4px;border-radius:3px;background:var(--blue-soft);color:var(--heading);font-size:8px;font-weight:700}.runtime-filter-context span button,.runtime-filter-context>button{border:0;background:transparent;color:inherit;font-size:8px}.runtime-grid{margin:0 auto;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:var(--runtime-row-height);gap:7px;align-content:start}.runtime-component{min-width:0;min-height:0;overflow:hidden;border:1px solid var(--line-strong);border-radius:4px;background:var(--paper);box-shadow:0 3px 8px #17365d1a}.runtime-component>h3{height:27px;margin:0;padding:7px 9px;overflow:hidden;background:var(--surface-strong);color:var(--on-strong);font-size:9px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.runtime-filter>h3{height:20px;padding:5px 7px;background:var(--surface-strong);font-size:7px;text-align:left}.runtime-kpi{height:calc(100% - 27px);display:grid;place-content:center;justify-items:center}.runtime-kpi strong{color:var(--heading);font-size:24px}.runtime-kpi span{font-size:9px;font-weight:850}.runtime-kpi small{color:var(--muted);font-size:7px}.runtime-select{position:relative;height:calc(100% - 20px)}.runtime-select summary{height:100%;padding:0 8px;display:flex;align-items:center;justify-content:space-between;color:var(--ink);font-size:8px;list-style:none}.runtime-select>div{position:absolute;z-index:15;top:100%;left:0;width:max(100%,190px);max-height:220px;padding:4px;overflow-y:auto;border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow)}.runtime-select>div button{width:100%;min-height:26px;border:0;display:grid;grid-template-columns:14px 1fr;gap:5px;align-items:center;background:transparent;color:var(--ink);font-size:8px;text-align:left}.runtime-select>div button svg{visibility:hidden}.runtime-select>div button.selected svg{visibility:visible;color:var(--heading)}.runtime-months{height:calc(100% - 20px);display:grid;grid-template-columns:repeat(6,1fr);gap:2px;padding:3px}.runtime-months button{border:1px solid var(--line);background:var(--paper);color:var(--muted);font-size:7px}.runtime-months button.active{border-color:var(--amber-bright);background:var(--amber-bright);color:var(--ink)}.runtime-rank{height:calc(100% - 20px);padding:3px;display:grid;grid-template-columns:1fr 44px 1fr;gap:3px}.runtime-rank select,.runtime-rank input{min-width:0;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:7px}.runtime-rank input{text-align:center}.runtime-rank .rank-metric{grid-column:1 / -1;min-height:22px}.runtime-selector-strip{height:calc(100% - 20px);padding:3px;display:flex;gap:3px;overflow-x:auto}.runtime-selector-strip button{min-width:78px;flex:1;border:1px solid var(--line);background:var(--paper);color:var(--muted);font-size:7px;font-weight:800;text-transform:capitalize}.runtime-selector-strip button.active{border-color:var(--blue-deep);background:var(--surface-strong);color:var(--on-strong)}.runtime-table-wrap{height:calc(100% - 27px);overflow:auto}.runtime-table-wrap table{width:100%;border-collapse:collapse;font-size:8px}.runtime-table-wrap th{position:sticky;top:0;padding:6px;background:var(--nav-light);color:var(--muted);text-align:right}.runtime-table-wrap th:first-child,.runtime-table-wrap td:first-child{text-align:left}.runtime-table-wrap td{padding:6px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}.runtime-table-wrap tr{cursor:pointer}.runtime-table-wrap tr:hover td{background:var(--blue-soft)}.runtime-skeleton{height:calc(100% - 27px);background:linear-gradient(90deg,var(--nav-light),var(--paper),var(--nav-light));background-size:200% 100%;animation:shimmer 1.4s infinite}.runtime-grouped{box-shadow:inset 0 0 0 2px #f3c45c59}.runtime-divider{height:3px;margin:20px 10px}.runtime-divider-vertical{width:3px;height:calc(100% - 20px);margin:10px auto}.runtime-section-box{height:calc(100% - 14px);margin:7px;border:2px solid;background:transparent}.runtime-text{width:100%;height:100%;display:grid;align-items:center;overflow:auto;white-space:pre-wrap}.runtime-text-metric_strip{grid-auto-flow:column;justify-content:space-around;background:var(--surface-strong);color:var(--on-strong)}.runtime-text-year_box{place-content:center;color:var(--heading)}.year-matrix table{min-width:620px}.year-matrix td:first-child{font-weight:800;text-transform:capitalize}.violin-view,.box-plot-view{height:calc(100% - 27px);padding:10px;display:grid;grid-template-rows:1fr auto;gap:5px}.violin-view svg,.box-plot-view svg{width:100%;height:100%}.violin-view svg line{stroke:var(--line-strong);stroke-width:.5}.violin-view span{color:var(--muted);font-size:7px;text-align:center;text-transform:capitalize}.box-plot-view svg line{stroke:var(--teal);stroke-width:1.5}.box-plot-view svg rect{fill:#159bb159;stroke:var(--accent-cyan)}.box-plot-view svg .median{stroke:var(--amber-bright);stroke-width:2}.box-plot-view>div{display:flex;justify-content:space-between;color:var(--muted);font-size:7px}.box-plot-view strong{color:var(--ink)}.heatmap-view{height:calc(100% - 27px);padding:5px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(42px,1fr);gap:3px;overflow:auto}.heatmap-view>div{min-width:0;padding:5px;display:grid;align-content:center;color:var(--ink)}.heatmap-view strong{overflow:hidden;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.heatmap-view span{margin-top:2px;font-size:7px}.reactable-toolbar{position:sticky;z-index:3;top:0;min-height:29px;padding:4px 7px;display:flex;align-items:center;gap:5px;background:var(--paper)}.reactable-toolbar input{min-width:80px;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font-size:7px}.reactable-toolbar span{color:var(--muted);font-size:7px}.reactable-view th{top:29px}.reactable-view th button{padding:0;border:0;background:transparent;color:inherit;font:inherit}.dashboard-hub{display:grid;gap:8px}.dashboard-hub-tabs{min-height:38px;padding:4px;display:flex;gap:4px;border:1px solid var(--line-strong);background:var(--paper)}.dashboard-hub-tabs button{min-width:130px;padding:0 12px;border:0;display:flex;align-items:center;justify-content:center;gap:7px;background:transparent;color:var(--muted);font-size:9px;font-weight:800}.dashboard-hub-tabs button.active{background:var(--surface-strong);color:var(--on-strong)}@keyframes shimmer{to{background-position:-200% 0}}.rank-metric-control{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:5px;margin-top:3px}.rank-metric-control>span{color:#dce8f4;font-size:7px;font-weight:800}.rank-metric-control select{height:24px;min-width:0;border:1px solid var(--accent-slate);background:var(--surface-strong);color:var(--on-strong);font-size:7px}body.dark-theme .builder-library,body.dark-theme .builder-inspector,body.dark-theme .builder-toolbar,body.dark-theme .builder-page-tabs,body.dark-theme .runtime-navigation,body.dark-theme .runtime-page-rail,body.dark-theme .runtime-component,body.dark-theme .runtime-filter-context,body.dark-theme .runtime-page-filters{border-color:#294255;background:var(--paper)}body.dark-theme .builder-canvas{border-color:#294255;background-color:#0b1b27;background-image:linear-gradient(to right,rgba(130,173,202,.08) 1px,transparent 1px),linear-gradient(to bottom,rgba(130,173,202,.08) 1px,transparent 1px)}body.dark-theme .builder-component{border-color:#294255;background:#0c1e2c;box-shadow:none}body.dark-theme .library-group>button,body.dark-theme .model-capabilities,body.dark-theme .runtime-table-wrap th{background:#10283a}body.dark-theme .properties-panel input:not([type=checkbox]),body.dark-theme .properties-panel select,body.dark-theme .measure-builder input,body.dark-theme .measure-builder textarea,body.dark-theme .measure-builder select,body.dark-theme .model-panel input,body.dark-theme .model-panel select,body.dark-theme .runtime-heading-actions select,body.dark-theme .runtime-select>div,body.dark-theme .runtime-rank select,body.dark-theme .runtime-rank input{border-color:#294255;background:#0c1e2c;color:#d7e2ec}body.dark-theme .runtime-heading h2,body.dark-theme .runtime-kpi strong{color:#d9f0ff}body.dark-theme .runtime-table-wrap td{border-color:#263d50}body.dark-theme .runtime-component .current-year-bar{filter:drop-shadow(0 0 3px rgba(105,174,216,.68))}body.dark-theme .dashboard-hub-tabs{border-color:#294255;background:var(--paper)}body.dark-theme .measure-search,body.dark-theme .binding-editor,body.dark-theme .waterfall-editor,body.dark-theme .page-audience-editor{border-color:#294255}body.dark-theme .waterfall-editor input,body.dark-theme .waterfall-editor select,body.dark-theme .runtime-selector-strip button,body.dark-theme .reactable-toolbar{border-color:#294255;background:#0c1e2c;color:#d7e2ec}.dashboard-control{display:grid;gap:8px;color:var(--ink)}.control-loading{min-height:520px;display:grid;place-content:center;justify-items:center;color:var(--muted)}.control-summary{min-height:76px;padding:8px;display:grid;grid-template-columns:repeat(5,minmax(110px,1fr)) 38px;gap:6px;border:1px solid var(--line-strong);background:var(--paper)}.control-summary>div{padding:8px 11px;border-left:3px solid var(--teal);display:grid;align-content:center;background:var(--nav-light)}.control-summary>div:nth-child(2){border-left-color:var(--accent-green)}.control-summary>div:nth-child(3){border-left-color:#ef4452}.control-summary>div:nth-child(4){border-left-color:var(--amber-bright)}.control-summary>div:nth-child(5){border-left-color:var(--accent-cyan)}.control-summary span{color:var(--muted);font-size:7px;font-weight:800;text-transform:uppercase}.control-summary strong{margin-top:2px;font-size:20px}.control-tabs{min-height:39px;padding:3px;display:flex;gap:3px;border:1px solid var(--line-strong);background:var(--paper)}.control-tabs button{min-width:135px;border:0;display:flex;align-items:center;justify-content:center;gap:6px;background:transparent;color:var(--muted);font-size:9px;font-weight:800}.control-tabs button.active{background:var(--surface-strong);color:var(--on-strong)}.control-dashboard-layout{min-height:650px;display:grid;grid-template-columns:minmax(720px,1fr) 285px;gap:8px}.control-table-panel,.audience-editor{min-width:0;border:1px solid var(--line-strong);background:var(--paper)}.control-table-panel>header,.audience-editor>header{min-height:48px;padding:8px 10px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--nav-light)}.control-table-panel header strong,.control-table-panel header span,.audience-editor header strong,.audience-editor header span{display:block}.control-table-panel header strong,.audience-editor header strong{font-size:10px}.control-table-panel header span,.audience-editor header span{margin-top:2px;color:var(--muted);font-size:7px}.control-table-scroll{max-height:670px;overflow:auto}.control-table-panel table{width:100%;min-width:900px;border-collapse:collapse;font-size:8px}.control-table-panel th{position:sticky;z-index:2;top:0;padding:8px;background:var(--surface-strong);color:var(--on-strong);text-align:left}.control-table-panel td{padding:8px;border-bottom:1px solid var(--line);vertical-align:middle}.control-table-panel tbody tr.selected td{background:#f3b84b21}.control-table-panel tbody tr.inactive{opacity:.58}.control-table-panel td strong,.control-table-panel td small{display:block}.control-table-panel td small{max-width:220px;margin-top:3px;overflow:hidden;color:var(--muted);font-size:7px;text-overflow:ellipsis;white-space:nowrap}.control-table-panel td input,.control-table-panel td select{min-height:28px;max-width:140px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:8px}.status-pill{padding:4px 6px;border-radius:3px;background:var(--nav-light);color:var(--muted);font-size:7px;font-weight:850;text-transform:uppercase}.status-pill.published{background:#0aa34f1f;color:#078641}.status-pill.draft{background:#f3b84b29;color:#9a6810}.status-pill.hidden,.status-pill.archived{background:#ef44521f;color:#d33442}.row-actions{display:flex;gap:3px}.row-actions button{width:29px;height:29px;padding:0;border:1px solid var(--line);display:grid;place-content:center;background:var(--paper);color:var(--heading)}.audience-editor{max-height:720px;overflow-y:auto}.audience-editor>header{justify-content:flex-start;gap:8px}.audience-section{padding:8px 10px;display:grid;gap:4px;border-bottom:1px solid var(--line)}.audience-section>strong{margin-bottom:3px;color:var(--heading);font-size:8px;text-transform:uppercase}.audience-section label{min-height:24px;display:grid;grid-template-columns:16px 1fr;align-items:center;font-size:8px}.audience-editor>.button{margin:10px;width:calc(100% - 20px)}.page-access-list{padding:8px 10px;display:grid;gap:5px;border-bottom:1px solid var(--line)}.page-access-list>strong{color:var(--heading);font-size:8px;text-transform:uppercase}.page-access-list>span{color:var(--muted);font-size:7px;line-height:1.4}.page-access-list>details{border:1px solid var(--line)}.page-access-list>details>summary{padding:7px;display:grid;color:var(--ink);font-size:8px;font-weight:800}.page-access-list summary small{margin-top:2px;color:var(--muted);font-size:6px;font-weight:500}.page-access-list details>div{padding:5px 7px;display:grid;gap:2px;border-top:1px solid var(--line)}.page-access-list details>div>strong{color:var(--heading);font-size:7px;text-transform:uppercase}.page-access-list details label{min-height:22px;display:grid;grid-template-columns:16px 1fr;align-items:center;color:var(--ink);font-size:7px}.new-user-grid{padding:8px;display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:5px;border-bottom:3px solid var(--amber-bright)}.new-user-grid input,.new-user-grid select{min-height:33px;padding:6px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:8px}.protected-password{display:flex;align-items:center;gap:4px;color:var(--heading);font-weight:800}body.dark-theme .control-summary,body.dark-theme .control-tabs,body.dark-theme .control-table-panel,body.dark-theme .audience-editor{border-color:#294255;background:var(--paper)}body.dark-theme .control-summary>div,body.dark-theme .control-table-panel>header,body.dark-theme .audience-editor>header{background:#10283a}body.dark-theme .control-table-panel td input,body.dark-theme .control-table-panel td select,body.dark-theme .row-actions button,body.dark-theme .new-user-grid input,body.dark-theme .new-user-grid select{border-color:#294255;background:#0c1e2c;color:#d7e2ec}.transform-workspace{min-height:calc(100vh - 116px);display:grid;grid-template-rows:auto auto minmax(680px,1fr);gap:7px;color:var(--ink)}.transform-workspace:has(>.upload-results){grid-template-rows:auto auto auto minmax(680px,1fr)}.transform-toolbar{min-height:56px;padding:7px 9px;display:flex;align-items:center;gap:7px;border:1px solid var(--line-strong);background:var(--paper)}.transform-toolbar>div:first-child{min-width:240px;margin-right:auto;display:grid;gap:2px}.transform-toolbar>div:first-child span{color:var(--muted);font-size:7px;font-weight:800;text-transform:uppercase}.transform-toolbar>div:first-child input{padding:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:17px;font-weight:800}.layout-template-field{min-width:125px;display:grid;gap:2px}.layout-template-field>span{color:var(--muted);font-size:6px;font-weight:800;text-transform:uppercase}.layout-template-field select{height:29px;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);font-size:8px}.hidden-upload-input{display:none}.upload-results{min-height:48px;padding:6px 8px;display:grid;grid-template-columns:minmax(220px,auto) 1fr 30px;align-items:center;gap:8px;border:1px solid var(--line-strong);border-left:4px solid var(--green);background:var(--paper)}.upload-results-heading{display:flex;align-items:center;gap:7px;color:var(--green)}.upload-results-heading>span,.upload-result-items button>span{display:grid;gap:2px}.upload-results-heading strong,.upload-result-items strong{color:var(--ink);font-size:8px}.upload-results-heading small,.upload-result-items small{color:var(--muted);font-size:6px}.upload-result-items{min-width:0;display:flex;gap:5px;overflow-x:auto}.upload-result-items button{min-width:190px;padding:5px 7px;border:1px solid var(--line);display:grid;grid-template-columns:16px 1fr;align-items:center;gap:5px;background:var(--nav-light);color:var(--green);text-align:left}.output-table-field{width:145px;display:grid;gap:2px}.output-table-field.folder{width:105px}.output-table-field>span{color:var(--muted);font-size:6px;font-weight:800;text-transform:uppercase}.output-table-field input{min-height:31px;padding:5px 7px;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);font-size:8px}.transform-dialog-backdrop{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:20px;background:#0210199e}.transform-dialog{width:min(430px,100%);border:1px solid var(--line-strong);border-top:4px solid var(--amber-bright);background:var(--paper);box-shadow:0 18px 48px #00000047}.transform-dialog>header{min-height:46px;padding:8px 10px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.transform-dialog>header>div{display:flex;align-items:center;gap:7px;color:var(--heading)}.transform-dialog>header h2{margin:0;color:var(--ink);font-size:12px}.transform-dialog>p{margin:10px;color:var(--muted);font-size:8px;line-height:1.5}.transform-dialog>label{margin:8px 10px;display:grid;gap:4px}.transform-dialog>label>span{color:var(--muted);font-size:7px;font-weight:800;text-transform:uppercase}.transform-dialog input,.transform-dialog select{min-height:34px;padding:6px 8px;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink)}.transform-dialog>footer{padding:10px;display:flex;justify-content:flex-end;gap:6px;border-top:1px solid var(--line)}.model-save-button.unsaved{border-color:var(--amber);background:var(--amber-soft);color:#85580d}.model-save-button.saved{border-color:color-mix(in srgb,var(--green) 55%,var(--line));color:var(--green)}.transform-dialog.measure-dialog{width:min(980px,96vw);max-height:88vh;overflow:hidden}.transform-dialog.blank-table-dialog{width:min(1180px,97vw);max-height:90vh;display:grid;grid-template-rows:auto auto minmax(240px,1fr) auto}.blank-table-meta{padding:9px 10px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.blank-table-meta label{display:grid;gap:3px}.blank-table-meta span{color:var(--muted);font-size:7px;font-weight:800;text-transform:uppercase}.blank-table-grid-wrap{min-height:280px;overflow:auto;border-block:1px solid var(--line)}.blank-table-grid{min-width:100%;border-collapse:collapse}.blank-table-grid th,.blank-table-grid td{min-width:150px;padding:4px;border:1px solid var(--line);vertical-align:top}.blank-table-grid thead th{position:sticky;z-index:2;top:0;background:var(--nav-light)}.blank-table-grid th>div{display:grid;grid-template-columns:1fr 24px;gap:3px}.blank-table-grid th>label{margin-top:3px;display:flex;align-items:center;gap:4px;color:var(--green);font-size:7px}.blank-table-grid input,.blank-table-grid select{width:100%;min-height:28px;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);font-size:8px}.blank-table-grid th select{margin-top:3px}.blank-table-grid .blank-row-number{min-width:48px;width:48px;color:var(--muted);font-size:8px;text-align:center}.blank-row-number button{margin:3px auto 0}.blank-table-grid .blank-add-column{min-width:42px;width:42px}.blank-add-column button{width:30px;height:30px;margin:auto;color:var(--heading)}.blank-table-dialog>footer{padding:9px 10px;display:flex;align-items:center;justify-content:flex-end;gap:7px}.blank-table-dialog>footer>span{margin-right:auto;color:var(--muted);font-size:8px}.measure-workspace-grid{min-height:490px;display:grid;grid-template-columns:minmax(320px,.9fr) minmax(360px,1.1fr);border-top:1px solid var(--line)}.measure-catalog{min-width:0;padding:10px;overflow:hidden;border-right:1px solid var(--line)}.measure-catalog-search{min-height:34px;padding:0 8px;display:flex;align-items:center;gap:6px;border:1px solid var(--line-strong)}.measure-catalog-search input{min-width:0;flex:1;border:0;outline:0}.measure-catalog>div{max-height:415px;margin-top:7px;overflow-y:auto}.measure-catalog article{padding:8px;display:grid;gap:4px;border-bottom:1px solid var(--line)}.measure-catalog article>span{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.measure-catalog article strong{color:var(--ink);font-size:9px}.measure-catalog article small{color:var(--muted);font-size:7px}.measure-catalog article code{padding:5px;overflow-wrap:anywhere;background:var(--nav-light);color:var(--heading);font-size:7px}.measure-create{padding:10px;overflow-y:auto}.measure-create h3{margin:0 0 8px;font-size:11px}.measure-create>label,.measure-create>.step-column-field{margin:7px 0;display:grid;gap:3px}.measure-create>label>span,.measure-create>.step-column-field>span{color:var(--muted);font-size:7px;font-weight:800;text-transform:uppercase}.measure-create input,.measure-create select,.measure-create textarea{width:100%;min-height:32px;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink)}.measure-create textarea{min-height:58px;resize:vertical}.measure-create .measure-mode{margin:0 0 8px}.measure-create .button{margin-top:5px}.measure-source-note{padding:7px;display:flex;align-items:center;gap:7px;border-left:3px solid var(--teal);background:var(--blue-soft);color:var(--heading)}.measure-source-note strong,.measure-source-note small{display:block}.measure-source-note strong{font-size:8px}.measure-source-note small{margin-top:2px;color:var(--muted);font-size:7px}.transform-ribbon{min-height:78px;padding:5px;display:flex;gap:5px;overflow-x:auto;border:1px solid var(--line-strong);background:var(--paper)}.transform-ribbon>div{min-width:max-content;padding:4px 7px;display:grid;grid-auto-flow:column;grid-template-rows:17px 36px;align-items:center;gap:3px;border-right:1px solid var(--line)}.transform-ribbon>div>strong{grid-column:1 / -1;color:var(--muted);font-size:7px;text-align:center;text-transform:uppercase}.transform-ribbon button:not(.button){height:34px;padding:3px 8px;border:0;display:flex;align-items:center;gap:5px;background:transparent;color:var(--ink);font-size:8px}.transform-ribbon button:not(.button):hover{background:var(--blue-soft);color:var(--heading)}.transform-ribbon button:not(.button).active{box-shadow:inset 0 -3px 0 var(--amber-bright);background:var(--blue-soft);color:var(--heading)}.transform-ribbon button:not(.button).key-action{color:var(--green)}.transform-ribbon .ribbon-add{margin-left:auto;border-right:0;border-left:3px solid var(--amber-bright)}.transform-layout{min-width:1080px;min-height:680px;display:grid;grid-template-columns:225px minmax(600px,1fr) 310px;gap:7px}.query-pane,.preview-pane,.query-settings{min-width:0;border:1px solid var(--line-strong);background:var(--paper)}.query-pane,.query-settings{overflow-y:auto}.query-pane>header,.query-settings>header,.preview-pane>header{min-height:39px;padding:7px 9px;display:flex;align-items:center;gap:7px;border-bottom:1px solid var(--line);background:var(--nav-light)}.query-pane>header strong,.query-settings>header strong,.preview-pane>header strong{font-size:9px}.query-pane>header input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font-size:8px}.query-pane>button,.source-list details button{width:100%;min-height:42px;padding:6px 9px;border:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:18px 1fr;align-items:center;gap:4px;background:transparent;color:var(--ink);font-size:8px;text-align:left}.query-pane>button.active{border-left:4px solid var(--amber-bright);background:var(--blue-soft);color:var(--heading)}.query-item{min-height:44px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) 30px}.query-item.active{border-left:4px solid var(--amber-bright);background:var(--blue-soft)}.query-item>button{min-width:0;padding:6px 8px;border:0;display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:4px;background:transparent;color:var(--ink);font-size:8px;text-align:left}.query-item>button.query-copy{grid-template-columns:1fr;place-content:center;color:var(--heading)}.query-item>button.query-copy:hover{background:color-mix(in srgb,var(--teal) 12%,transparent)}.query-pane button span,.query-pane button small{display:block}.query-pane button small{margin-top:2px;color:var(--muted);font-size:6px}.source-list details{border-bottom:1px solid var(--line)}.source-list summary{min-height:34px;padding:7px 9px;display:grid;color:var(--ink);font-size:8px;font-weight:750;list-style-position:inside;cursor:pointer}.source-list summary small{margin:2px 0 0 16px;display:flex;align-items:center;gap:3px;color:var(--muted);font-size:6px;font-weight:500}.source-list details button{padding-left:25px;grid-template-columns:1fr;background:var(--nav-light)}.source-table-item{min-height:42px;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) 30px 30px;background:var(--nav-light)}.source-table-item>button{min-width:0;padding:6px 7px 6px 25px;border:0;display:grid;align-items:center;background:transparent;color:var(--ink);font-size:8px;text-align:left}.source-table-item>button.source-copy,.source-table-item>button.source-delete{padding:0;place-content:center;color:var(--heading)}.source-table-item>button.source-delete{color:var(--red)}.source-table-item>button.source-copy:hover{background:color-mix(in srgb,var(--teal) 12%,transparent)}.source-table-item>button.source-delete:hover{background:var(--red-soft)}.source-table-item span,.source-table-item small{min-width:0;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-table-item small{margin-top:2px;color:var(--muted);font-size:6px}.source-folder>header{min-height:28px;padding:5px 8px;display:grid;grid-template-columns:16px 1fr auto;align-items:center;gap:4px;border-bottom:1px solid var(--line);color:var(--heading);background:var(--blue-soft)}.source-folder>header strong{font-size:7px;text-transform:uppercase}.source-folder>header span{font-size:7px;font-weight:800}.source-folder.materialized>header{border-left:4px solid var(--green);color:var(--green);background:color-mix(in srgb,var(--green) 10%,var(--paper))}.source-folder.original>header{border-left:4px solid var(--teal)}.preview-pane{display:grid;grid-template-rows:auto 1fr;overflow:hidden}.preview-pane>header{justify-content:space-between}.preview-pane>header div{display:grid;gap:2px}.preview-pane>header span{color:var(--muted);font-size:7px}.preview-pane>header .preview-controls{display:flex;align-items:center;gap:7px}.preview-controls>label{display:flex;align-items:center;gap:4px}.preview-controls select{height:27px;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);font-size:8px}.preview-error{padding:6px 9px;border-bottom:1px solid color-mix(in srgb,var(--red) 50%,var(--line));background:color-mix(in srgb,var(--red) 9%,var(--paper));color:var(--red);font-size:8px}.preview-pane:has(.preview-error){grid-template-rows:auto auto minmax(0,1fr)}.preview-empty{display:grid;place-content:center;justify-items:center;gap:7px;color:var(--muted);text-align:center}.preview-empty strong{color:var(--ink);font-size:12px}.preview-empty span{font-size:8px}.preview-table{max-width:100%;max-height:720px;overflow:auto}.preview-table table{border-collapse:collapse;font-size:8px}.preview-table th{position:sticky;z-index:2;top:0;min-width:164px;padding:0;border-right:1px solid #397299;background:var(--surface-strong);color:var(--on-strong);text-align:left;vertical-align:top}.preview-table th>button{width:100%;min-height:104px;padding:6px 8px;border:0;display:grid;align-content:start;gap:3px;background:transparent;color:inherit;text-align:left}.preview-table th.selected{box-shadow:inset 0 0 0 3px var(--amber-bright)}.preview-table th.primary-key{background:#217a59;border-color:#43a37c}.preview-table .column-heading{display:flex;align-items:center;justify-content:space-between;gap:5px}.preview-table .column-heading>span{min-width:0;overflow:hidden;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.preview-table .column-heading strong,.preview-table .column-heading em{flex:none;display:flex;align-items:center;gap:2px;padding:2px 4px;border:1px solid rgba(255,255,255,.32);color:#fff;font-size:5px;font-style:normal;text-transform:uppercase}.preview-table th small{display:block;color:#acd5e7;font-size:6px;font-weight:500}.column-profile{margin-top:3px;display:grid;grid-template-columns:1fr 1fr;gap:2px 5px;border-top:1px solid rgba(255,255,255,.22);padding-top:4px}.column-profile>span{overflow:hidden;color:#d7ebf4;font-size:5px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.column-profile>span.profile-alert{color:#ffd7d9;font-weight:900}.column-search{margin:0 6px 6px;padding:3px 5px;display:flex;align-items:center;gap:4px;border:1px solid rgba(255,255,255,.28);background:#0419274d}.column-search input{min-width:0;width:100%;padding:2px;border:0;outline:0;background:transparent;color:#fff;font-size:6px}.column-search input::placeholder{color:#acd5e7}.preview-table td{max-width:240px;padding:5px 8px;overflow:hidden;border-right:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--ink);text-overflow:ellipsis;white-space:nowrap}.preview-table tbody tr:nth-child(2n) td{background:var(--nav-light)}.preview-table td.selected{box-shadow:inset 2px 0 color-mix(in srgb,var(--amber-bright) 65%,transparent),inset -2px 0 color-mix(in srgb,var(--amber-bright) 65%,transparent)}.preview-table td.primary-key{background:color-mix(in srgb,var(--green) 12%,var(--paper))}.preview-table tbody tr:nth-child(2n) td.primary-key{background:color-mix(in srgb,var(--green) 18%,var(--paper))}.preview-table th.transformed-column{box-shadow:inset 0 -4px 0 var(--step-color)}.preview-table td.transformed-column{background:color-mix(in srgb,var(--step-color) 11%,var(--paper));box-shadow:inset 2px 0 0 var(--step-color)}.query-settings>label,.step-editor>label,.step-column-field{padding:6px 9px;display:grid;gap:3px}.query-settings label>span,.step-editor label>span,.step-column-field>span{color:var(--muted);font-size:7px;font-weight:800;text-transform:uppercase}.query-settings input:not([type=checkbox]),.query-settings select,.step-editor input:not([type=checkbox]),.step-editor select{width:100%;min-height:30px;border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);font-size:8px}.query-settings select[multiple],.step-editor select[multiple]{min-height:90px}.settings-heading{display:block;padding:10px 9px 5px;border-top:1px solid var(--line);color:var(--heading);font-size:8px;text-transform:uppercase}.step-history-heading{min-height:36px;padding-right:7px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto 27px 27px;align-items:center;gap:3px}.step-history-heading .settings-heading{padding:0 9px;border:0}.step-history-heading>span{color:var(--muted);font-size:7px;font-weight:800}.applied-steps{padding:4px 7px 8px;display:grid;gap:2px}.applied-steps>button,.applied-steps>div{min-height:30px;border:1px solid transparent;display:grid;grid-template-columns:1fr 24px 24px 24px;background:transparent}.applied-steps>button{grid-template-columns:18px 1fr;align-items:center;color:var(--ink);font-size:8px;text-align:left}.applied-steps>button.active,.applied-steps>div.active{border-color:var(--amber-bright);background:var(--blue-soft)}.applied-steps>div{border-left:4px solid var(--step-color)}.applied-steps>div.future-step{opacity:.42;border-left-style:dashed}.applied-steps>div button{min-width:0;padding:0;border:0;display:grid;place-content:center;background:transparent;color:var(--muted)}.applied-steps>div button:first-child{padding-left:6px;justify-content:start;color:var(--ink);font-size:8px;text-align:left}.step-tone-blue{--step-color: #2386c8}.step-tone-amber{--step-color: #e5a72d}.step-tone-coral{--step-color: #e56b5d}.step-tone-red{--step-color: var(--red)}.step-tone-green{--step-color: #15935c}.step-tone-teal{--step-color: var(--accent-cyan)}.step-tone-violet{--step-color: #8759b3}.step-editor{margin:0 7px 8px;padding:7px 0;border:1px solid var(--line);border-left:3px solid var(--teal)}.step-editor>strong{padding:0 9px;color:var(--heading);font-size:8px;text-transform:uppercase}.step-editor .step-enabled{grid-template-columns:17px 1fr;align-items:center}.step-editor .step-enabled input{width:auto}.fuzzy-column-picker{position:relative;min-width:0}.fuzzy-column-picker>summary{min-height:30px;padding:6px 7px;border:1px solid var(--line-strong);display:flex;align-items:center;gap:5px;background:var(--paper);color:var(--ink);font-size:8px;list-style:none;cursor:pointer}.fuzzy-column-picker>summary::-webkit-details-marker{display:none}.fuzzy-column-picker.compact>summary{min-width:145px;min-height:27px;padding:4px 6px}.fuzzy-column-panel{position:absolute;z-index:20;top:calc(100% + 3px);right:0;width:min(310px,80vw);padding:7px;border:1px solid var(--line-strong);background:var(--paper);box-shadow:0 10px 28px #0003}.step-editor .fuzzy-column-panel,.aggregation-editor .fuzzy-column-panel{right:auto;left:0;width:100%}.fuzzy-column-panel>label{min-height:30px;padding:4px 6px;border:1px solid var(--line-strong);display:flex;align-items:center;gap:5px}.fuzzy-column-panel>label input{min-width:0;min-height:22px!important;border:0!important;outline:0}.fuzzy-column-actions{padding:5px 0;display:flex;justify-content:flex-end;gap:4px}.fuzzy-column-actions button{padding:4px 6px;border:1px solid var(--line);background:transparent;color:var(--heading);font-size:7px}.fuzzy-column-results{max-height:190px;overflow-y:auto;display:grid}.fuzzy-column-results button{min-height:27px;padding:4px 5px;border:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:17px 1fr;align-items:center;background:transparent;color:var(--ink);text-align:left}.fuzzy-column-results button.selected{background:color-mix(in srgb,var(--teal) 12%,var(--paper));color:var(--heading)}.fuzzy-column-results button span{color:var(--green)}.fuzzy-column-results button strong{overflow:hidden;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.fuzzy-column-panel>small{display:block;padding:8px;color:var(--muted);font-size:7px;text-align:center}.key-summary{margin:7px;padding:7px;border:1px solid var(--line);border-left:3px solid var(--green)}.key-summary.unsaved{border-left-color:var(--amber-bright)}.key-summary>span{display:flex;align-items:center;gap:5px;color:var(--green);font-size:8px}.key-summary.unsaved>span{color:var(--amber)}.key-summary>span em{margin-left:auto;color:inherit;font-size:6px;font-style:normal;text-transform:uppercase}.key-summary small{display:block;margin-top:5px;color:var(--muted);font-size:7px;line-height:1.4}.key-summary>div{margin-top:5px;display:flex;flex-wrap:wrap;gap:3px}.key-summary button{padding:3px 5px;border:1px solid color-mix(in srgb,var(--green) 55%,var(--line));display:flex;align-items:center;gap:3px;background:color-mix(in srgb,var(--green) 12%,var(--paper));color:var(--green);font-size:7px;font-weight:800}.key-summary .save-keys-button{width:100%;min-height:27px;margin-top:7px;justify-content:center;border-color:var(--amber);background:var(--amber-soft);color:#85580d}.key-summary .save-keys-button:disabled{border-color:var(--line);background:var(--nav-light);color:var(--muted)}.missing-kinds{margin:5px 9px;padding:6px;border:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.missing-kinds legend{padding:0 4px;color:var(--muted);font-size:7px;font-weight:800;text-transform:uppercase}.missing-kinds label{display:flex;align-items:center;gap:3px;color:var(--ink);font-size:7px;text-transform:uppercase}.missing-kinds input{width:auto}.aggregation-editor{margin:0 7px 10px;border:1px solid var(--line)}.aggregation-editor summary{padding:8px;color:var(--heading);font-size:8px;font-weight:800}.aggregation-editor>div{padding:6px;display:grid;grid-template-columns:1fr 72px;gap:4px;border-top:1px solid var(--line)}.aggregation-editor>div>input,.aggregation-editor>div>label{grid-column:1 / -1}.aggregation-editor>div>button{width:28px;height:28px;border:1px solid var(--line);background:transparent;color:var(--red)}body.dark-theme .transform-toolbar,body.dark-theme .upload-results,body.dark-theme .transform-ribbon,body.dark-theme .query-pane,body.dark-theme .preview-pane,body.dark-theme .query-settings{border-color:#294255;background:var(--paper)}body.dark-theme .query-pane>header,body.dark-theme .query-settings>header,body.dark-theme .preview-pane>header,body.dark-theme .source-list details button,body.dark-theme .preview-table tbody tr:nth-child(2n) td{background:#10283a}body.dark-theme .output-table-field input,body.dark-theme .transform-dialog input,body.dark-theme .transform-dialog select,body.dark-theme .fuzzy-column-picker>summary,body.dark-theme .fuzzy-column-panel,body.dark-theme .query-settings input:not([type=checkbox]),body.dark-theme .query-settings select,body.dark-theme .step-editor input:not([type=checkbox]),body.dark-theme .step-editor select{border-color:#294255;background:#0c1e2c;color:#d7e2ec}body.dark-theme .transform-dialog{background:#0c1e2c}body.dark-theme .preview-table td.transformed-column{background:color-mix(in srgb,var(--step-color) 18%,#0c1e2c)}body.dark-theme .model-save-button.unsaved,body.dark-theme .key-summary .save-keys-button{background:#f2b84b1f;color:#f6c55f}body.dark-theme .measure-catalog article code,body.dark-theme .measure-source-note{background:#10283a}body.dark-theme .preview-table td.primary-key{background:#12382f}body.dark-theme .preview-table tbody tr:nth-child(2n) td.primary-key{background:#174538}@media(max-width:1350px){.builder-workspace{grid-template-columns:185px minmax(610px,1fr) 250px}.transform-layout{grid-template-columns:190px minmax(570px,1fr) 275px}}@media(max-width:980px){.builder-toolbar{flex-wrap:wrap}.builder-toolbar>div:first-child{min-width:100%}.builder-workspace{grid-template-columns:170px minmax(620px,1fr);overflow-x:auto}.builder-inspector{grid-column:1 / -1}.runtime-body{grid-template-columns:110px minmax(0,1fr)}.runtime-grid{display:block}.runtime-component{height:320px;margin-bottom:7px}.runtime-filter{height:70px}.control-dashboard-layout{grid-template-columns:minmax(700px,1fr) 260px;overflow-x:auto}.control-summary{grid-template-columns:repeat(3,1fr)}.new-user-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.login-flow{display:none}.kpi-band{grid-template-columns:1fr 1fr}.kpi{padding:14px}.kpi strong{font-size:16px}.kpi.featured strong{font-size:17px}.page-intro h2{font-size:15px}.table-title{align-items:flex-start}.table-title .button{min-width:37px;padding:0 9px}.decision-buttons{flex-direction:column-reverse}.decision-buttons .button{width:100%}.export-row{align-items:flex-start;flex-direction:column}}.main-content.analytics-content{width:min(1700px,100%);padding:18px clamp(14px,1.8vw,28px) 48px}.sales-analytics{display:grid;gap:8px;transition:opacity .18s ease}.sales-analytics.is-loading{opacity:.6;pointer-events:none}.analytics-heading{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:16px}.analytics-heading h2{margin:2px 0 0;color:var(--teal-dark);font-size:18px}.analytics-heading>div>span{margin-top:4px;display:flex;align-items:center;gap:5px;color:var(--muted);font-size:8px}.analytics-filter-ribbon{padding:7px;border:1px solid var(--teal);display:grid;grid-template-columns:repeat(5,minmax(115px,1fr));gap:5px;background:var(--surface-strong)}.analytics-multi-filter,.month-filter,.rank-filter{min-width:0}.filter-label,.month-filter>span{display:block;margin:0 0 3px 2px;color:#dce8f4;font-size:7px;font-weight:800}.analytics-multi-filter details{position:relative}.analytics-multi-filter summary{width:100%;height:27px;padding:0 7px;border:1px solid var(--accent-slate);border-radius:2px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px;background:var(--surface-strong);color:var(--on-strong);cursor:pointer;list-style:none}.analytics-multi-filter summary::-webkit-details-marker{display:none}.analytics-multi-filter summary>span{overflow:hidden;font-size:8px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.analytics-multi-filter details[open] summary{border-color:var(--amber-bright);box-shadow:0 0 0 1px var(--amber-bright)}.analytics-multi-filter details[open] summary svg{transform:rotate(180deg)}.multi-filter-menu{position:absolute;z-index:30;top:calc(100% + 3px);left:0;width:max(100%,220px);max-height:230px;padding:4px;overflow-y:auto;border:1px solid var(--line-strong);border-radius:3px;background:var(--paper);box-shadow:0 8px 20px #04162647}.multi-filter-menu button,.multi-filter-menu label{width:100%;min-height:25px;padding:4px 6px;border:0;border-radius:2px;display:grid;grid-template-columns:14px minmax(0,1fr);align-items:center;gap:6px;background:transparent;color:var(--ink);font-size:8px;text-align:left}.multi-filter-menu button:hover,.multi-filter-menu label:hover{background:var(--blue-soft)}.multi-filter-menu button svg{visibility:hidden}.multi-filter-menu button.selected svg{visibility:visible;color:var(--heading)}.multi-filter-menu input{width:13px;height:13px;margin:0;accent-color:var(--amber-bright)}.multi-filter-menu label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-filter-controls{display:grid;grid-template-columns:minmax(56px,1fr) 48px minmax(60px,.95fr);gap:3px}.rank-filter-controls label{min-width:0}.rank-filter-controls label>span{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.rank-filter-controls select,.rank-filter-controls input,.rank-mode-toggle button{width:100%;min-width:0;height:27px;margin:0;padding:0 5px;border:1px solid var(--accent-slate);border-radius:2px;background:var(--surface-strong);color:var(--on-strong);font-size:8px;font-weight:750}.rank-filter-controls input{padding-right:1px;font-variant-numeric:tabular-nums;text-align:center}.rank-mode-toggle{min-width:0;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,.75fr)}.rank-mode-toggle button{padding:0 3px;border-radius:0;font-size:7px}.rank-mode-toggle button:first-child{border-radius:2px 0 0 2px}.rank-mode-toggle button:last-child{margin-left:-1px;border-radius:0 2px 2px 0}.rank-mode-toggle button.active{position:relative;border-color:var(--amber-bright);background:var(--amber-bright);color:var(--ink)}.rank-filter-controls select:focus-visible,.rank-filter-controls input:focus-visible,.rank-mode-toggle button:focus-visible{position:relative;z-index:1;outline:2px solid var(--amber-bright);outline-offset:1px}.rank-filter.is-all .rank-filter-controls label:not(:last-child){opacity:.48}.rank-filter-controls :disabled{cursor:not-allowed}.month-filter{grid-column:1 / -1}.month-filter>div{display:grid;grid-template-columns:repeat(13,minmax(26px,1fr));gap:3px}.month-filter button{height:25px;border:1px solid var(--accent-slate);border-radius:2px;background:var(--surface-strong);color:var(--on-strong);font-size:8px;font-weight:800}.month-filter button.active,.month-filter button:hover{border-color:var(--amber-bright);background:var(--amber-bright);color:var(--ink)}.analytics-warning{padding:7px 10px;border-left:3px solid var(--amber-bright);background:var(--amber-soft);color:var(--amber);font-size:9px}.cross-filter-band{min-height:34px;padding:5px 8px;border:1px solid var(--line-strong);border-left:4px solid var(--amber-bright);display:flex;align-items:center;flex-wrap:wrap;gap:6px;background:var(--paper)}.cross-filter-band>strong{margin-right:3px;color:var(--ink);font-size:8px;text-transform:uppercase}.cross-filter-band>span{min-height:22px;padding:3px 4px 3px 8px;border-radius:3px;display:inline-flex;align-items:center;gap:5px;background:var(--blue-soft);color:var(--teal-dark);font-size:8px;font-weight:800}.cross-filter-band button{width:18px;height:18px;padding:0;border:0;display:grid;place-items:center;background:transparent;color:inherit}.analytics-top-grid{display:grid;grid-template-columns:1.28fr 1.72fr;gap:8px;min-height:520px}.analytics-middle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;height:420px}.analytics-bottom-grid{display:grid;grid-template-columns:1.52fr .88fr .88fr;gap:8px;height:420px}.analytics-panel{min-width:0;overflow:hidden;border:1px solid var(--line-strong);border-radius:5px;background:var(--paper);box-shadow:0 3px 8px #17365d1f}.analytics-panel>h3{height:28px;margin:0;padding:7px 10px;overflow:hidden;background:var(--surface-strong);color:var(--on-strong);font-size:10px;text-align:center;white-space:nowrap;text-overflow:ellipsis}.analytics-panel-body{height:calc(100% - 28px);min-width:0}.year-panel .analytics-panel-body{padding:7px}.year-performance{table-layout:fixed;font-variant-numeric:tabular-nums}.year-performance th{height:32px;padding:7px 5px;background:var(--surface-strong);color:var(--on-strong);font-size:9px;text-align:right}.year-performance th:first-child,.year-performance td:first-child{width:20%;text-align:left}.year-performance th:nth-child(n+2):nth-child(-n+4){width:12.5%}.year-performance th:nth-child(n+5){width:21.25%}.year-performance td{height:50px;padding:8px 5px;border-bottom:1px solid var(--line);color:var(--ink);font-size:10px;font-weight:720;text-align:right}.year-performance td:nth-child(n+5){font-weight:850}.positive{color:var(--accent-green)!important}.negative{color:var(--red)!important}.neutral{color:var(--muted)!important}.scatter-panel .analytics-panel-body{padding:2px}.bubble-chart-layout{width:100%;height:100%;display:grid;grid-template-rows:minmax(0,1fr) 34px}.enhanced-scatter-panel .bubble-chart-layout{grid-template-rows:minmax(0,1fr) 64px 34px}.bubble-chart-canvas{min-width:0;min-height:0}.bubble-name-rail{min-width:0;padding:3px 6px;overflow:auto;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:18px;gap:1px 6px;background:var(--paper)}.secondary-scatter-panel .bubble-name-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.bubble-name-rail button{min-width:0;padding:1px 3px;border:1px solid transparent;border-radius:2px;display:grid;grid-template-columns:7px minmax(28px,1fr) auto auto;align-items:center;gap:3px;background:transparent;color:var(--ink);text-align:left}.bubble-name-rail button:hover{border-color:var(--line-strong);background:var(--blue-soft)}.bubble-name-rail button.selected{border-color:var(--amber-bright);background:var(--amber-soft)}.bubble-name-rail i{width:7px;height:7px;border-radius:50%}.bubble-name-rail span{overflow:hidden;font-size:6px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.bubble-name-rail small{font-size:7px;font-weight:900;font-variant-numeric:tabular-nums;white-space:nowrap}.bubble-name-rail small b{color:var(--muted);font-size:5px;font-weight:850;text-transform:uppercase}.runtime-bubble-view{width:100%;height:100%;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) 34px}.runtime-bubble-canvas{min-width:0;min-height:0}.axis-zoom-controls{position:relative;z-index:2;min-width:0;min-height:34px;padding:4px 7px;border-top:1px solid var(--line-strong);display:grid;grid-template-columns:16px 1.15fr 1fr 1fr 24px;align-items:center;gap:7px;background:var(--blue-soft);color:var(--ink)}.axis-zoom-controls label{min-width:0;display:grid;grid-template-columns:auto minmax(45px,1fr);align-items:center;gap:5px}.axis-zoom-controls label span{font-size:8px;font-weight:850;white-space:nowrap}.axis-zoom-controls input[type=range]{width:100%;height:16px;margin:0;appearance:none;background:transparent;cursor:ew-resize}.axis-zoom-controls input[type=range]:disabled{cursor:not-allowed;opacity:.45}.axis-zoom-controls input[type=range]::-webkit-slider-runnable-track{height:4px;border:1px solid var(--line-strong);border-radius:2px;background:var(--paper)}.axis-zoom-controls input[type=range]::-webkit-slider-thumb{width:12px;height:12px;margin-top:-5px;appearance:none;border:2px solid var(--paper);border-radius:50%;background:var(--amber-bright);box-shadow:0 0 0 1px var(--line-strong)}.axis-zoom-controls input[type=range]::-moz-range-track{height:4px;border:1px solid var(--line-strong);border-radius:2px;background:var(--paper)}.axis-zoom-controls input[type=range]::-moz-range-thumb{width:10px;height:10px;border:2px solid var(--paper);border-radius:50%;background:var(--amber-bright);box-shadow:0 0 0 1px var(--line-strong)}.axis-zoom-controls .icon-button{width:24px;height:24px;border:1px solid var(--line);border-radius:3px;background:var(--paper)}.analytics-tabs{min-height:34px;display:grid;grid-template-columns:repeat(9,1fr);border:1px solid var(--line-strong);background:var(--paper)}.analytics-tabs button{min-width:0;border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);font-size:8px;font-weight:750}.analytics-tabs button:last-child{border-right:0}.analytics-tabs button.active{background:var(--surface-strong);color:var(--on-strong)}.performance-panel .analytics-panel-body{overflow:hidden}.analytics-table-wrap{width:100%;height:100%;overflow:auto;scrollbar-gutter:stable}.analytics-table{width:max-content;min-width:100%;table-layout:auto;font-variant-numeric:tabular-nums}.analytics-table th{position:sticky;top:0;z-index:1;padding:6px 4px;border-right:1px solid rgba(255,255,255,.18);background:var(--surface-strong);color:var(--on-strong);font-size:6px;line-height:1.15;text-align:right}.analytics-table th:first-child{min-width:180px;text-align:left}.analytics-table th:not(:first-child){min-width:92px}.analytics-table td{height:30px;padding:4px;border-bottom:1px solid var(--line);color:var(--ink);font-size:8px;text-align:right;white-space:nowrap}.analytics-table td:first-child{font-weight:700;text-align:left}.analytics-table tbody tr:nth-child(2n) td{background:var(--nav-light)}.analytics-table tbody tr{cursor:pointer}.analytics-table tbody tr:hover td{background:var(--blue-soft)}.analytics-table tbody tr.selected td{background:var(--amber-soft);box-shadow:inset 0 1px var(--amber-bright),inset 0 -1px var(--amber-bright)}.ranked-bar-scroll{width:100%;height:100%;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable}.ranked-bar-canvas{width:100%;min-height:100%}.analytics-loading{min-height:520px;display:grid;place-content:center;justify-items:center;gap:13px;color:var(--muted);font-size:10px}.analytics-loading span{width:28px;height:28px;border:3px solid var(--line);border-top-color:var(--heading);border-radius:50%;animation:spin .7s linear infinite}.recharts-cartesian-grid line{stroke:var(--line)}.recharts-text{fill:var(--muted)}.recharts-default-tooltip{border:1px solid var(--line)!important;border-radius:4px;background:var(--paper)!important;font-size:8px}.recharts-tooltip-label,.recharts-tooltip-item{color:var(--ink)!important}.chart-value-label{fill:var(--ink);font-size:10px;font-weight:850}.chart-value-label.in-bar{fill:#fff;font-size:9px}.month-bar,.current-year-bar{transition:filter .18s ease,opacity .18s ease}body.dark-theme .current-year-bar{filter:drop-shadow(0 0 2px rgba(93,158,198,.42))}.bubble-point text{fill:var(--ink);font-size:9px;font-weight:850;paint-order:stroke;stroke:var(--paper);stroke-width:3px;stroke-linejoin:round}.enhanced-scatter-panel .bubble-point text:not(.bubble-volume){font-size:7px;font-weight:750}.enhanced-scatter-panel .bubble-label-bg{fill-opacity:.94}.bubble-point .bubble-volume{fill:var(--muted);font-size:8px}.enhanced-scatter-panel .bubble-point .bubble-volume{fill:var(--ink);font-size:10px;font-weight:950}.bubble-point .bubble-ugp-diff{font-size:8px;font-weight:950}.bubble-point .bubble-ugp-diff.positive{fill:var(--accent-green)!important}.bubble-point .bubble-ugp-diff.negative{fill:var(--red)!important}.bubble-point .bubble-ugp-diff.neutral{fill:var(--muted)!important}.bubble-point{cursor:pointer}.bubble-point text,.bubble-point .bubble-label-bg{pointer-events:none}.bubble-point circle{pointer-events:all}.bubble-point.selected circle{fill-opacity:.68;stroke-width:3px}.bubble-label-bg{fill:var(--paper);fill-opacity:.82;stroke:var(--line);stroke-width:.5px}.price-current-label .up{fill:var(--accent-green)}.price-current-label .down{fill:var(--red)}.price-current-label{fill:var(--ink);font-size:9px;font-weight:850;paint-order:stroke;stroke:var(--paper);stroke-width:3px}.price-label-bg{fill:var(--paper);fill-opacity:.92;stroke:var(--line);stroke-width:.5px}body.dark-theme .analytics-heading h2{color:#d9f0ff}body.dark-theme .analytics-filter-ribbon{border-color:#2b5f82;background:#102e48}body.dark-theme .analytics-multi-filter summary,body.dark-theme .month-filter button,body.dark-theme .rank-filter-controls select,body.dark-theme .rank-filter-controls input,body.dark-theme .rank-mode-toggle button{border-color:#3c627d;background:#173d5b;color:#f4f8fc}body.dark-theme .rank-mode-toggle button.active{border-color:var(--amber-bright);background:var(--amber-bright);color:#172536}body.dark-theme .multi-filter-menu{border-color:#294255;background:#0c1e2c}body.dark-theme .multi-filter-menu button,body.dark-theme .multi-filter-menu label{color:#d7e2ec}body.dark-theme .month-filter button.active{background:var(--amber-bright);color:#172536}body.dark-theme .cross-filter-band{background:var(--paper)}body.dark-theme .cross-filter-band>span{background:#173d5b;color:#d9f0ff}body.dark-theme .bubble-name-rail{background:var(--paper)}body.dark-theme .bubble-name-rail button{color:#d9f0ff}body.dark-theme .analytics-panel>h3,body.dark-theme .analytics-table th,body.dark-theme .year-performance th{background:#124c6b}body.dark-theme .analytics-panel,body.dark-theme .analytics-tabs{border-color:#294255;background:var(--paper);box-shadow:none}body.dark-theme .year-performance td,body.dark-theme .analytics-table td{border-color:#263d50;color:#d7e2ec}body.dark-theme .analytics-table tbody tr:nth-child(2n) td{background:#10202d}body.dark-theme .analytics-table tbody tr:hover td{background:#143148}body.dark-theme .analytics-table tbody tr.selected td{background:#3a321d}body.dark-theme .recharts-default-tooltip{background:#0c1e2c!important}body.dark-theme .recharts-tooltip-label,body.dark-theme .recharts-tooltip-item{color:#d7e2ec!important}@media(max-width:1180px){.analytics-top-grid{grid-template-columns:1fr}.scatter-panel{grid-column:1 / -1;height:300px}.analytics-middle-grid{grid-template-columns:1fr 1fr;height:auto}.analytics-middle-grid .analytics-panel{height:300px}.analytics-middle-grid .enhanced-scatter-panel{grid-column:1 / -1;height:400px}.analytics-bottom-grid{grid-template-columns:1fr 1fr;height:auto}.analytics-bottom-grid .analytics-panel{height:380px}.performance-panel{grid-column:1 / -1}}@media(max-width:760px){.main-content.analytics-content{padding:12px 8px 40px}.analytics-heading{align-items:flex-start}.analytics-filter-ribbon{grid-template-columns:repeat(2,minmax(0,1fr))}.rank-filter-controls{grid-template-columns:minmax(52px,1fr) 46px minmax(58px,1fr)}.month-filter>div{grid-template-columns:repeat(7,1fr)}.analytics-top-grid,.analytics-middle-grid,.analytics-bottom-grid{display:grid;grid-template-columns:1fr;height:auto}.analytics-top-grid .analytics-panel,.analytics-middle-grid .analytics-panel,.analytics-bottom-grid .analytics-panel{grid-column:auto;height:320px}.analytics-top-grid .enhanced-scatter-panel,.analytics-middle-grid .enhanced-scatter-panel{height:400px}.year-panel{height:390px!important}.analytics-tabs{grid-template-columns:repeat(3,1fr)}.analytics-tabs button{min-height:32px;border-bottom:1px solid var(--line)}}.relationship-workspace{min-width:1040px;color:var(--ink)}.relationship-toolbar,.relationship-quick-link{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--line);background:var(--paper);border-radius:6px}.relationship-toolbar{margin-bottom:8px}.relationship-toolbar>div:first-child{margin-right:auto}.relationship-toolbar p{margin:0 0 2px;color:var(--muted);font-size:11px;text-transform:uppercase}.relationship-toolbar h2{margin:0;font-size:20px}.relationship-search{width:min(340px,28vw);display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--paper);padding:0 9px;border-radius:4px}.relationship-search input{width:100%;border:0;background:transparent;min-height:34px;color:var(--ink)}.compact-check{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-size:12px;color:var(--muted)}.relationship-quick-link{margin-bottom:8px;flex-wrap:wrap}.relationship-quick-link select{min-width:130px;max-width:205px;min-height:34px}.relationship-quick-link strong{margin-right:4px}.relationship-body{display:grid;grid-template-columns:250px minmax(0,1fr);height:calc(100vh - 245px);min-height:650px;border:1px solid var(--line);border-radius:6px;overflow:hidden}.relationship-list{padding:12px;overflow:auto;background:var(--paper);border-right:1px solid var(--line)}.relationship-list h3{margin:6px 0 10px;font-size:12px;text-transform:uppercase;color:var(--muted)}.relationship-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:7px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.relationship-list article>span{padding:3px 5px;border-radius:3px;font-size:9px;font-weight:800}.relationship-list article>span.enforced{background:#17a34a29;color:var(--accent-green)}.relationship-list article>span.semantic{background:#f7bf4a29;color:#bf8300}.relationship-list article strong,.relationship-list article small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.relationship-list article strong{font-size:10px}.relationship-list article small{font-size:9px;color:var(--muted);margin-top:3px}.relationship-list>label{display:flex;gap:7px;align-items:center;padding:5px 0;font-size:11px}.relationship-canvas-scroll{overflow:auto;background-color:var(--paper);background-image:radial-gradient(var(--line) 1px,transparent 1px);background-size:20px 20px}.relationship-canvas{position:relative}.relationship-canvas>svg{position:absolute;inset:0;pointer-events:none;overflow:visible}.relationship-canvas path{fill:none;stroke:var(--amber-tint);stroke-width:2;opacity:.88}.relationship-canvas path.enforced{stroke:var(--accent-green);stroke-width:2.5}.relationship-canvas path.semantic{stroke-dasharray:7 5}.relationship-table{position:absolute;top:0;left:0;width:286px;border:1px solid var(--line);background:var(--paper);box-shadow:0 5px 18px #00000024;border-radius:5px;overflow:hidden}.relationship-table:not(.collapsed){z-index:2}.relationship-table>header{height:54px;display:flex;align-items:center;gap:8px;padding:8px 10px;cursor:grab;background:var(--surface-strong);color:#fff;touch-action:none;user-select:none}.relationship-table>header:active{cursor:grabbing}.relationship-table.collapsed{box-shadow:0 3px 10px #0000001c}.relationship-table>header>div{min-width:0;flex:1}.relationship-table .relationship-fold{width:28px;height:28px;flex:0 0 28px;display:grid;place-items:center;padding:0;border:1px solid rgba(255,255,255,.28);border-radius:4px;background:#ffffff14;color:#fff;cursor:pointer}.relationship-table .relationship-fold:hover{background:#ffffff2e}.relationship-table>header strong,.relationship-table>header small{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:196px}.relationship-table>header strong{font-size:12px}.relationship-table>header small{font-size:9px;color:#bad0df;margin-top:3px}.relationship-columns{background:var(--paper)}.relationship-column{height:31px;display:grid;grid-template-columns:20px 14px minmax(0,1fr) auto;align-items:center;gap:4px;padding:0 8px;border-top:1px solid var(--line);font-size:10px}.relationship-column.key{background:#199eaf17;color:var(--accent-green)}.relationship-column>button{width:18px;height:18px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--muted);background:var(--paper);cursor:grab}.relationship-key-marker{width:14px;height:14px;display:grid;place-items:center;color:var(--accent-green)}.relationship-column>.relationship-column-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-weight:650}.relationship-column>small{color:var(--muted);max-width:88px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modeling-studio,.submission-builder{color:var(--ink);min-width:1040px}.modeling-heading,.submission-builder-toolbar{min-height:72px;display:flex;align-items:center;gap:9px;padding:12px 16px;border:1px solid var(--line);background:var(--paper);border-radius:6px;margin-bottom:8px}.modeling-heading>div:first-child,.submission-builder-toolbar>div:first-child{margin-right:auto}.modeling-heading p,.submission-builder-toolbar p{margin:0 0 3px;text-transform:uppercase;color:var(--muted);font-size:10px}.modeling-heading h2,.submission-builder-toolbar h2{margin:0;font-size:19px}.runtime-badges{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.runtime-badges span{padding:4px 7px;border-radius:3px;font-size:9px;font-weight:800;border:1px solid currentColor}.runtime-badges .ready{color:var(--accent-green);background:#17a34a14}.runtime-badges .missing{color:var(--red);background:#df404814}.modeling-layout{display:grid;grid-template-columns:235px minmax(550px,1fr) 235px;min-height:calc(100vh - 195px);border:1px solid var(--line);background:var(--paper);border-radius:6px;overflow:hidden}.modeling-fields,.experiment-history{padding:12px;background:var(--paper);overflow:auto}.modeling-fields{border-right:1px solid var(--line)}.experiment-history{border-left:1px solid var(--line)}.modeling-fields h3,.experiment-history h3,.recipe-strip h3{display:flex;align-items:center;gap:6px;margin:2px 0 10px;font-size:12px}.modeling-fields select{width:100%}.model-column-list{margin-top:10px}.model-column-list>div{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:5px;align-items:center;min-height:31px;padding:0 5px;border-bottom:1px solid var(--line);cursor:grab;font-size:10px}.model-column-list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650}.model-column-list small{color:var(--muted);font-size:8px}.modeling-canvas{padding:14px;overflow:auto;background-color:var(--canvas, var(--teal-soft));background-image:radial-gradient(var(--line) 1px,transparent 1px);background-size:18px 18px}body.dark-theme .modeling-canvas{background-color:#081722}.model-setup{display:grid;grid-template-columns:2fr 1fr 1.4fr .7fr;gap:8px;padding:12px;border:1px solid var(--line);background:var(--paper);border-radius:5px}.model-setup label,.submission-template-heading label,.submission-properties>label{display:grid;gap:4px;font-size:10px;color:var(--muted)}.model-drop-row{display:grid;grid-template-columns:1fr 2fr;gap:9px;margin-top:9px}.model-drop-row>section{min-height:112px;border:1px dashed var(--accent-cyan);padding:10px;background:var(--paper);border-radius:5px}.model-drop-row strong{font-size:11px}.model-drop-row p{color:var(--muted);font-size:10px}.model-drop-row button,.recipe-strip button{padding:5px 7px;margin:6px 5px 0 0;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:3px;font-size:9px}.recipe-strip{margin-top:9px;padding:12px;border:1px solid var(--line);background:var(--paper);border-radius:5px}.recipe-strip button.active{border-color:var(--accent-cyan);background:#199eaf21;color:#0c8290}.model-actions{display:flex;justify-content:flex-end;gap:8px;margin:9px 0}.model-results{border:1px solid var(--line);background:var(--paper);border-radius:5px;padding:12px}.model-results>header{display:flex;justify-content:space-between}.model-results>header div{display:flex;gap:6px;align-items:center}.model-results>header span{color:var(--accent-green);font-size:10px;font-weight:800;text-transform:uppercase}.model-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:7px;margin-top:10px}.model-metrics article{padding:10px;border-left:4px solid var(--amber-tint);background:#199eaf12}.model-metrics span,.model-metrics strong{display:block}.model-metrics span{color:var(--muted);font-size:9px;text-transform:uppercase}.model-metrics strong{font-size:17px;margin-top:3px}.prediction-chart{display:grid;grid-template-columns:300px 1fr;gap:16px;align-items:center;margin-top:10px}.prediction-chart svg{max-width:300px;border:1px solid var(--line);background:var(--paper)}.prediction-chart line{stroke:var(--amber-tint);stroke-width:2}.prediction-chart circle{fill:var(--accent-cyan);opacity:.48}.prediction-chart img{width:100%;max-width:520px;border:1px solid var(--line)}.prediction-chart.r-result{grid-template-columns:minmax(300px,520px) 1fr}.r-visual-image{width:100%;height:100%;display:grid;place-items:center;overflow:hidden}.r-visual-image img{width:100%;height:100%;object-fit:contain}.r-visual-status{height:100%;display:grid;place-content:center;text-align:center;gap:4px;padding:12px;color:var(--muted)}.r-visual-status strong{color:var(--ink)}.prediction-chart div span,.prediction-chart div small{display:block;margin-top:5px;color:var(--muted)}.experiment-history>div:first-child{display:flex;justify-content:space-between;align-items:center}.experiment-row{display:grid;grid-template-columns:minmax(0,1fr) auto;border:1px solid var(--line);margin-bottom:6px;border-radius:4px}.experiment-row.active{border-color:var(--amber-tint);box-shadow:inset 3px 0 var(--amber-tint)}.experiment-row>button:first-child{min-width:0;text-align:left;padding:9px;border:0;background:transparent;color:var(--ink)}.experiment-history strong,.experiment-history span,.experiment-history small{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.experiment-history span,.experiment-history small{margin-top:3px;color:var(--muted);font-size:9px}.submission-builder-layout{display:grid;grid-template-columns:220px minmax(550px,1fr) 285px;min-height:calc(100vh - 195px);border:1px solid var(--line);background:var(--paper);border-radius:6px;overflow:hidden}.submission-palette,.submission-properties{padding:12px;overflow:auto;background:var(--paper)}.submission-palette{border-right:1px solid var(--line)}.submission-properties{border-left:1px solid var(--line)}.submission-palette h3,.submission-properties h3{margin:5px 0 9px;font-size:11px;text-transform:uppercase;color:var(--muted)}.submission-palette p,.submission-properties p{color:var(--muted);font-size:10px}.submission-palette>button{width:100%;min-height:34px;display:flex;align-items:center;gap:7px;text-align:left;padding:7px;border:0;border-bottom:1px solid var(--line);color:var(--ink);background:transparent;cursor:grab}.submission-palette>button.active{background:#f7bf4a21;box-shadow:inset 3px 0 var(--amber-tint)}.submission-palette>button span,.submission-palette>button small{display:block}.submission-palette>button small{color:var(--muted);font-size:8px}.submission-form-canvas{padding:16px;overflow:auto;background-color:var(--canvas, var(--teal-soft));background-image:radial-gradient(var(--line) 1px,transparent 1px);background-size:18px 18px}body.dark-theme .submission-form-canvas{background-color:#081722}.submission-template-heading{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;padding:12px;background:var(--paper);border:1px solid var(--line);border-radius:5px 5px 0 0}.submission-preview{min-height:520px;background:var(--paper);border:1px solid var(--line);border-top:0}.submission-preview>header{padding:14px;background:var(--surface-strong);color:#fff}.submission-preview>header strong,.submission-preview>header span{display:block}.submission-preview>header span{color:#bad0df;margin-top:3px;font-size:10px}.empty-submission-canvas{min-height:250px;display:grid;place-content:center;justify-items:center;color:var(--muted)}.submission-preview article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;margin:9px;padding:10px;border:1px solid var(--line);border-radius:4px;cursor:pointer}.submission-preview article.selected{border-color:var(--amber-tint);box-shadow:0 0 0 1px var(--amber-tint)}.submission-preview article>div:nth-child(2){display:grid;gap:4px}.submission-preview article label{font-size:10px;font-weight:700}.submission-preview article>div:last-child{display:flex}.submission-properties>label{margin-bottom:9px}.submission-properties textarea{min-height:70px}.approval-stage{display:grid;grid-template-columns:1fr 88px auto;gap:4px;margin-bottom:5px}.dynamic-submission-forms{display:grid;grid-template-columns:250px minmax(0,760px);gap:14px;align-items:start;max-width:1050px;margin:0 auto}.dynamic-submission-forms>aside,.dynamic-submission-forms>main{background:var(--paper);border:1px solid var(--line);border-radius:6px}.dynamic-submission-forms>aside{padding:12px}.dynamic-submission-forms>aside h3{margin:4px 0 10px;font-size:12px;text-transform:uppercase;color:var(--muted)}.dynamic-submission-forms>aside>button{width:100%;display:flex;gap:8px;align-items:center;text-align:left;padding:9px;margin-bottom:5px;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:4px}.dynamic-submission-forms>aside>button.active{border-color:var(--amber-tint);box-shadow:inset 3px 0 var(--amber-tint)}.dynamic-submission-forms>aside strong,.dynamic-submission-forms>aside small{display:block}.dynamic-submission-forms>aside small{margin-top:2px;color:var(--muted)}.dynamic-submission-forms>main>header{padding:18px 20px;color:#fff;background:var(--surface-strong);border-radius:5px 5px 0 0}.dynamic-submission-forms>main>header p,.dynamic-submission-forms>main>header h2{margin:0}.dynamic-submission-forms>main>header p{color:#bad0df;font-size:10px;text-transform:uppercase}.dynamic-submission-forms>main>header h2{margin-top:3px;font-size:21px}.dynamic-submission-forms>main>header div{display:flex;gap:6px;margin-top:12px}.dynamic-submission-forms>main>header span{padding:4px 7px;border:1px solid #54809c;font-size:9px}.dynamic-form-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:20px}.dynamic-form-fields label{display:grid;gap:5px;font-size:10px;font-weight:700}.dynamic-form-fields textarea{min-height:85px}.dynamic-form-fields>button{grid-column:1 / -1;justify-self:end}.dynamic-submit-result{padding:60px 20px;text-align:center;color:var(--accent-green)}.dynamic-submit-result h3{color:var(--ink)}.dynamic-submit-result p{color:var(--muted)}.dynamic-submission-forms:has(.dynamic-pricing-template){max-width:none;display:block}.dynamic-submission-forms:has(.dynamic-pricing-template)>aside{margin-bottom:10px;display:flex;align-items:center;gap:8px;overflow-x:auto}.dynamic-submission-forms:has(.dynamic-pricing-template)>aside h3{margin:0 10px 0 0;white-space:nowrap}.dynamic-submission-forms:has(.dynamic-pricing-template)>aside>button{width:auto;min-width:190px;margin:0}.dynamic-submission-forms>main.dynamic-pricing-template{border:0;background:transparent}.dynamic-pricing-template .dynamic-pricing-form>.page-intro{padding:14px 16px;border:1px solid var(--line);border-left:5px solid var(--submission-accent);border-radius:6px;background:var(--paper)}.pricing-workspace-preview{border-left:4px solid var(--amber-tint)!important}.pricing-workspace-mini{padding:10px;border:1px dashed var(--line-strong);display:grid;gap:4px;background:var(--blue-soft)}.pricing-workspace-mini strong{color:var(--heading);font-size:10px}.pricing-workspace-mini span{color:var(--muted);font-size:9px}.workspace-layer-panel{margin:12px -4px;padding:8px;border:1px solid var(--line);background:color-mix(in srgb,var(--blue-soft) 45%,var(--paper))}.workspace-layer-panel h3{display:flex;align-items:center;gap:5px}.workspace-layer-panel details{margin-bottom:7px;border:1px solid var(--line)}.workspace-layer-panel summary{display:flex;justify-content:space-between;padding:7px;color:var(--ink);font-size:9px;font-weight:800;cursor:pointer}.workspace-layer-panel details>button,.workspace-column-list button,.submission-measure-library button{width:100%;min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px;align-items:center;padding:6px;border:0;border-top:1px solid var(--line);background:var(--paper);color:var(--ink);text-align:left;cursor:pointer}.workspace-layer-panel details>button span,.workspace-column-list button span,.submission-measure-library button span{overflow:hidden;font-size:9px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.workspace-layer-panel details>button small,.workspace-column-list button small,.submission-measure-library button small{grid-column:2;overflow:hidden;color:var(--muted);font-size:7px;text-overflow:ellipsis;white-space:nowrap}.workspace-layer-panel button.active{background:color-mix(in srgb,var(--amber-tint) 17%,var(--paper));box-shadow:inset 3px 0 var(--amber-tint)}.workspace-layer-panel button.add-layer{display:flex;justify-content:center;color:var(--heading);font-weight:800}.workspace-column-list,.submission-measure-library{max-height:205px;overflow:auto}.submission-measure-library{border:1px solid var(--line)}.submission-measure-library button{cursor:grab}.pricing-workspace-preview>div:nth-child(2){align-content:start;grid-template-rows:auto auto}.workspace-composer{height:auto;align-content:start;overflow:auto;background:color-mix(in srgb,var(--paper) 92%,var(--blue-soft))}.workspace-composer-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px;padding-bottom:5px;border-bottom:1px solid var(--line)}.workspace-composer-sections{display:flex;gap:3px;overflow-x:auto}.workspace-composer-sections button{min-width:90px;display:grid;gap:2px;padding:5px;border:1px solid var(--line);border-left:3px solid var(--line-strong);background:var(--paper);color:var(--ink);text-align:left}.workspace-composer-summary{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:5px}.workspace-composer-summary button{min-width:0;min-height:54px;display:grid;gap:3px;padding:7px;border:1px solid var(--line);border-top:3px solid var(--amber-tint);background:var(--paper);color:var(--ink);text-align:left}.workspace-composer-summary button span{font-size:8px;font-weight:800;text-transform:uppercase}.workspace-composer-summary button strong{overflow:hidden;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.workspace-composer-customer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px;padding:6px;border:1px solid var(--line);border-left:4px solid var(--red);background:var(--paper);color:var(--ink);text-align:left}.workspace-composer-customer button{display:grid;gap:2px;padding:5px;border:1px solid var(--line);background:var(--paper);color:var(--ink);text-align:left}.workspace-composer-customer button:last-child{grid-template-columns:auto 1fr;align-items:center;color:var(--heading);font-size:8px;font-weight:800}.workspace-inline-add{justify-content:center;justify-items:center;border-style:dashed!important;color:var(--heading)!important}.workspace-composer-sections .workspace-inline-add{min-width:112px;grid-template-columns:auto 1fr;align-items:center}.workspace-composer-summary .summary-add{grid-column:span 2;border-top-color:var(--accent-cyan)}.workspace-composer-table{display:flex;overflow-x:auto;border:1px solid var(--line);background:var(--paper)}.workspace-composer-table button{flex:0 0 auto;min-height:52px;display:grid;align-content:center;gap:2px;padding:5px;border:0;border-right:1px solid var(--line);border-top:3px solid transparent;background:var(--paper);color:var(--ink);font-size:8px}.workspace-composer-table button.calculated{background:color-mix(in srgb,var(--blue-soft) 65%,var(--paper))}.workspace-composer-table .workspace-picker-column{min-width:94px;justify-items:start;border-top-color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 10%,var(--paper));color:var(--heading);font-weight:800}.workspace-composer-table button small{max-width:85px;overflow:hidden;color:var(--muted);font-size:6px;text-overflow:ellipsis;white-space:nowrap}.workspace-composer-table .workspace-add-column{position:sticky;right:0;z-index:2;min-width:78px;justify-items:center;border:1px dashed var(--accent-cyan);border-top:3px solid var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 12%,var(--paper));color:var(--heading);font-weight:850;box-shadow:-8px 0 12px color-mix(in srgb,var(--paper) 88%,transparent)}.workspace-composer-table .workspace-add-column:hover{background:color-mix(in srgb,var(--accent-cyan) 22%,var(--paper))}.workspace-composer button{cursor:pointer}.workspace-composer button.active{outline:2px solid var(--amber-tint);outline-offset:-2px}.measure-drop-target{position:relative}.measure-drop-target:after{content:"Σ";position:absolute;top:3px;right:4px;color:var(--heading);font-size:8px;font-weight:900}.workspace-composer-footer{display:flex;justify-content:space-between;gap:8px;padding-top:4px}.workspace-component-properties{margin:-2px -3px 12px;padding:9px;border:1px solid var(--amber-tint);background:color-mix(in srgb,var(--amber-tint) 8%,var(--paper))}.workspace-component-properties h4{margin:11px 0 7px;padding-top:8px;border-top:1px solid var(--line);color:var(--ink);font-size:10px;text-transform:uppercase}.workspace-component-properties>label{display:grid;gap:4px;margin-bottom:9px;color:var(--muted);font-size:9px}.workspace-component-properties>label>input:not([type=checkbox]),.workspace-component-properties>label>select{width:100%;min-width:0}.workspace-component-properties>label small{color:var(--muted);font-size:8px;line-height:1.35}.workspace-property-heading{display:grid;gap:3px;margin-bottom:9px}.workspace-property-heading span{color:var(--muted);font-size:8px;text-transform:uppercase}.workspace-property-heading strong{font-size:12px}.workspace-component-actions{display:flex;align-items:center;gap:5px;margin-bottom:8px}.workspace-component-actions .compact-check{margin:0 0 0 auto}.measure-binding-field small{color:var(--muted);font-size:8px;line-height:1.35}.picker-source-callout{display:flex;gap:7px;align-items:flex-start;margin-bottom:9px;padding:8px;border-left:3px solid var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 9%,var(--paper));color:var(--muted);font-size:9px;line-height:1.35}.picker-column-config{display:grid;gap:4px;max-height:320px;margin:10px 0;padding:7px;overflow:auto;border:1px solid var(--line);background:var(--paper)}.picker-column-config>header{display:flex;gap:6px;align-items:center;padding-bottom:6px;border-bottom:1px solid var(--line)}.picker-column-config>header div{display:grid;gap:2px}.picker-column-config>header span{color:var(--muted);font-size:8px}.picker-column-config-row{display:grid;grid-template-columns:minmax(80px,.8fr) minmax(95px,1fr) auto auto;gap:5px;align-items:center}.picker-column-config-row code{overflow:hidden;color:var(--heading);font-size:8px;text-overflow:ellipsis}.picker-column-config-row input[type=text]{min-width:0}.picker-column-config-row label{display:flex;gap:3px;align-items:center;color:var(--muted);font-size:8px;white-space:nowrap}.approval-stage{grid-template-columns:1fr 88px auto;padding-bottom:7px;border-bottom:1px solid var(--line)}.approval-stage>label{grid-column:1 / -1}.approval-stage>label select{min-height:72px}.submission-builder-layout{grid-template-columns:minmax(210px,16vw) minmax(0,1fr) minmax(330px,24vw);min-height:calc(100dvh - 190px)}.submission-form-canvas{min-width:0;padding:10px}.submission-template-heading{grid-template-columns:repeat(3,minmax(0,1fr))}.submission-preview{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:54px;gap:8px;align-content:start;min-height:700px;padding:8px}.submission-preview>header{grid-column:1 / -1;grid-row:1;margin:-8px -8px 0}.empty-submission-canvas{grid-column:1 / -1;grid-row:2 / span 5}.submission-preview article{position:relative;min-width:0;min-height:0;height:100%;margin:0;padding:9px;overflow:hidden;align-self:stretch;color:var(--submission-block-color);background:var(--submission-block-bg);border-left:4px solid var(--submission-block-accent);cursor:move}.submission-preview article.minimized{align-items:center}.submission-preview article.selected{z-index:2}.submission-preview article>div:nth-child(2){min-width:0;height:100%;overflow:auto}.submission-block-actions{position:absolute;top:5px;right:5px;z-index:3;border:1px solid var(--line);background:var(--paper)}.submission-block-actions .icon-button{width:24px;height:24px}.submission-drag-handle{align-self:start;margin-top:3px}.submission-resize-handle{position:absolute;right:1px;bottom:1px;width:16px;height:16px;border:0;background:linear-gradient(135deg,transparent 45%,var(--submission-block-accent) 46% 58%,transparent 59% 68%,var(--submission-block-accent) 69%);cursor:nwse-resize}.submission-visual-library{display:grid;grid-template-columns:1fr 1fr;gap:4px;max-height:270px;margin-bottom:12px;overflow:auto}.submission-visual-library button{min-width:0;min-height:42px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:5px;padding:6px;color:var(--ink);text-align:left;border:1px solid var(--line);background:var(--paper);cursor:grab}.submission-visual-library button span{overflow:hidden;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.analysis-visual-mini{height:100%;min-height:70px;display:grid;place-content:center;justify-items:center;gap:5px;background:linear-gradient(to top,color-mix(in srgb,var(--submission-block-accent) 20%,transparent),transparent 65%),repeating-linear-gradient(to right,transparent 0 19%,color-mix(in srgb,var(--line) 65%,transparent) 20%)}.analysis-visual-mini strong{font-size:11px}.analysis-visual-mini span{color:var(--muted);font-size:9px}.canvas-section-mini{height:100%;min-height:64px;padding:12px;border:1px dashed var(--line-strong);color:var(--muted)}.submission-layout-properties,.submission-color-properties{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:10px}.submission-layout-properties label,.submission-color-properties label{display:grid;gap:3px;color:var(--muted);font-size:9px}.submission-color-properties{grid-template-columns:repeat(3,1fr)}.submission-color-properties input[type=color]{width:100%;min-height:32px;padding:2px}.dynamic-submission-forms{max-width:none;grid-template-columns:minmax(210px,15vw) minmax(0,1fr)}.submission-runtime-canvas{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:64px;gap:10px;width:100%;min-width:0;padding:10px;align-content:start}.submission-runtime-item{min-width:0;min-height:0;overflow:auto;color:var(--ink);border:1px solid var(--line);border-left:4px solid var(--analysis-accent, var(--amber-bright));background:var(--paper)}.submission-runtime-item.minimized{display:flex;align-items:center;min-height:44px;padding:9px 12px;overflow:hidden}.pricing-runtime-item{border:0;background:transparent}.pricing-runtime-item:not(.minimized){overflow:visible}.pricing-runtime-item .dynamic-pricing-form{min-width:0}.dynamic-canvas-field{display:grid;align-content:start;gap:7px;padding:12px;font-weight:700}.dynamic-canvas-field input,.dynamic-canvas-field select,.dynamic-canvas-field textarea{width:100%}.submission-empty-section{display:grid;align-content:start;gap:6px;padding:12px}.submission-empty-section span{color:var(--muted)}.submission-analysis-visual{border-top:4px solid var(--analysis-accent);border-left-width:1px}.submission-analysis-visual>header{display:flex;align-items:center;gap:7px;min-height:38px;padding:8px 10px;color:var(--ink);border-bottom:1px solid var(--line)}.submission-analysis-kpi{height:calc(100% - 38px);display:grid;place-content:center;justify-items:center}.submission-analysis-kpi strong{color:var(--analysis-accent);font-size:clamp(22px,3em,42px)}.submission-analysis-kpi span{margin-top:5px;color:var(--muted);font-size:10px}.submission-analysis-kpi.with-sub-value{grid-template-rows:auto auto;padding:14px;border-left:4px solid var(--analysis-accent)}.submission-analysis-kpi.with-sub-value span{padding-top:8px;border-top:1px solid var(--line);font-size:11px;font-weight:750}.analysis-visual-mini small{max-width:100%;overflow:hidden;color:var(--muted);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.submission-analysis-visual table{width:calc(100% - 18px);margin:9px;border-collapse:collapse}.submission-analysis-visual td{padding:6px;border-bottom:1px solid var(--line)}.submission-analysis-visual td:last-child{text-align:right;font-weight:800}.submission-analysis-chart{display:grid;gap:8px;padding:12px}.submission-analysis-chart>div{display:grid;grid-template-columns:74px minmax(30px,1fr) auto;align-items:center;gap:6px}.submission-analysis-chart span,.submission-analysis-chart b{font-size:9px}.submission-analysis-chart i{display:block;height:12px;background:var(--analysis-accent)}.submission-runtime-submit{display:flex;justify-content:flex-end;align-items:center;padding:8px 0}.app-shell{width:100%;min-height:100dvh;font-size:calc(16px * var(--app-ui-scale, 1))}.submission-form-tag{display:inline-block;max-width:210px;padding:4px 6px;border-left:3px solid var(--amber-bright);background:color-mix(in srgb,var(--amber-bright) 12%,var(--paper));overflow:hidden;color:var(--ink);font-size:calc(9px * var(--app-ui-scale, 1));font-weight:750;text-overflow:ellipsis;white-space:nowrap}.transform-workspace,.dashboard-builder,.dashboard-hub,.relationship-workspace,.control-panel,.submission-builder{font-size:calc(12px * var(--app-ui-scale, 1))}.transform-workspace,.transform-toolbar,.transform-ribbon{min-width:0}.transform-toolbar{flex-wrap:wrap}.transform-toolbar>div:first-child{margin-right:auto}.transform-ribbon{flex-wrap:wrap}.transform-layout{min-width:0;grid-template-columns:minmax(175px,15vw) minmax(0,1fr) minmax(260px,21vw)}.builder-workspace{min-width:0;grid-template-columns:minmax(170px,14vw) minmax(0,1fr) minmax(225px,19vw)}.relationship-workspace,.modeling-studio,.submission-builder{min-width:0}.workspace-composer-routes{display:flex;flex-wrap:wrap;gap:6px;padding:7px;border-top:1px solid var(--line)}.workspace-composer-routes>button{min-height:38px;display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid var(--line);border-left:3px solid var(--accent-purple);background:var(--paper);color:var(--ink)}.workspace-composer-routes>button span{font-size:8px;font-weight:850}.workspace-composer-routes>button small{color:var(--muted);font-size:7px}.workspace-composer-routes>button.active{outline:2px solid var(--amber-tint)}.status-pending_specialist{background:color-mix(in srgb,var(--accent-purple) 16%,var(--paper));color:var(--accent-purple)}.status-specialist_returned{background:color-mix(in srgb,var(--accent-cyan) 15%,var(--paper));color:#14788a}@media(max-width:900px){.specialist-route-box>div{grid-template-columns:1fr}}.transform-toolbar span,.output-table-field>span,.layout-template-field>span{font-size:calc(9px * var(--app-ui-scale, 1))}.transform-toolbar input,.transform-toolbar select,.transform-toolbar .button,.transform-ribbon button,.transform-ribbon strong,.query-pane input,.query-item,.source-list,.query-settings input,.query-settings select,.step-editor input,.step-editor select{font-size:calc(10px * var(--app-ui-scale, 1))}.query-pane>header strong,.query-settings>header strong,.preview-pane>header strong{font-size:calc(11px * var(--app-ui-scale, 1))}.query-settings label>span,.step-editor label>span,.step-column-field>span,.settings-heading,.step-editor>strong{font-size:calc(9px * var(--app-ui-scale, 1))}.applied-steps>button,.applied-steps>div button:first-child,.fuzzy-column-picker>summary,.fuzzy-column-results button strong,.key-summary>span,.key-summary small,.key-summary button{font-size:calc(9px * var(--app-ui-scale, 1))}.preview-table th,.preview-table td{font-size:calc(9px * var(--app-ui-scale, 1))}.builder-library h3,.builder-inspector h3,.builder-property-label,.runtime-component h3,.runtime-filter,.runtime-table,.builder-library button,.builder-inspector label,.builder-inspector input,.builder-inspector select,.builder-inspector textarea{font-size:calc(10px * var(--app-ui-scale, 1))}.dashboard-builder .builder-toolbar>div:first-child span,.dashboard-builder .canvas-meta span,.dashboard-builder .canvas-size-controls label>span,.dashboard-builder .properties-panel label>span,.dashboard-builder .model-panel label>span,.dashboard-builder .conditional-formatting label>span,.dashboard-builder .formatting-controls label>span{font-size:calc(9px * var(--app-ui-scale, 1))}.dashboard-builder .builder-page-tabs button:not(.icon-button),.dashboard-builder .library-group>button,.dashboard-builder .library-group>div>div,.dashboard-builder .builder-component-head span,.dashboard-builder .properties-panel input:not([type=checkbox]),.dashboard-builder .properties-panel select,.dashboard-builder .measure-builder input,.dashboard-builder .measure-builder textarea,.dashboard-builder .measure-builder select,.dashboard-builder .data-panel summary,.dashboard-builder .field-chip span,.dashboard-builder .component-audience label,.dashboard-builder .page-audience-editor>label,.dashboard-builder .access-panel>p{font-size:calc(10px * var(--app-ui-scale, 1))}.dashboard-control .control-tabs button,.dashboard-control .control-table-panel table,.dashboard-control .control-table-panel td input,.dashboard-control .control-table-panel td select,.dashboard-control .audience-section label,.dashboard-control .page-access-list details,.dashboard-control .new-user-grid input,.dashboard-control .new-user-grid select{font-size:calc(10px * var(--app-ui-scale, 1))}.data-field-catalog{max-height:42vh;margin:7px;border:1px solid var(--line);overflow-y:auto}.data-field-catalog>div{position:sticky;top:0;z-index:2;min-height:34px;padding:0 8px;display:flex;align-items:center;justify-content:space-between;background:var(--nav-light);border-bottom:1px solid var(--line)}.data-field-catalog>div strong{font-size:calc(10px * var(--app-ui-scale, 1))}.data-field-catalog>div span{color:var(--muted);font-size:calc(9px * var(--app-ui-scale, 1))}.data-field-catalog details+details{border-top:1px solid var(--line)}.data-field-catalog summary{min-height:36px;padding:5px 7px;display:grid;grid-template-columns:14px minmax(0,1fr) auto;align-items:center;gap:5px;cursor:pointer}.data-field-catalog summary>span strong,.data-field-catalog summary>span small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-field-catalog summary strong{font-size:calc(9px * var(--app-ui-scale, 1))}.data-field-catalog summary small{color:var(--muted);font-size:calc(8px * var(--app-ui-scale, 1))}.data-field-catalog summary em{min-width:22px;padding:2px 5px;border-radius:9px;background:var(--blue-soft);color:var(--heading);font-size:8px;font-style:normal;text-align:center}.data-field-catalog details>div{padding:0 5px 5px}.data-field-catalog details button{width:100%;min-height:28px;padding:3px 5px;border:0;border-top:1px solid var(--line);display:grid;grid-template-columns:14px minmax(0,1fr) auto;align-items:center;gap:5px;background:transparent;color:var(--ink);text-align:left}.data-field-catalog details button span{overflow:hidden;font-size:calc(9px * var(--app-ui-scale, 1));text-overflow:ellipsis;white-space:nowrap}.data-field-catalog details button small{color:var(--muted);font-size:calc(8px * var(--app-ui-scale, 1))}.data-field-catalog details button.key{background:color-mix(in srgb,var(--green) 13%,var(--paper));color:var(--green)}.data-field-catalog details button.selected{background:color-mix(in srgb,var(--amber-bright) 22%,var(--paper));box-shadow:inset 3px 0 var(--amber-bright);color:var(--ink)}body.dark-theme .data-field-catalog{border-color:#294255}body.dark-theme .data-field-catalog>div{background:#10283a}.semantic-model-builder{display:grid;gap:12px;color:var(--ink)}.semantic-model-header{padding:16px 18px;display:flex;align-items:end;justify-content:space-between;gap:20px;border:1px solid var(--line);border-left:5px solid var(--accent-purple);border-radius:6px;background:var(--paper)}.semantic-model-header>div:first-child span{color:var(--accent-purple);font-size:9px;font-weight:850;text-transform:uppercase}.semantic-model-header h2{margin:3px 0 4px;font-size:21px}.semantic-model-header p{max-width:620px;margin:0;color:var(--muted);font-size:11px}.semantic-model-header>div:last-child{display:grid;grid-template-columns:190px minmax(230px,1fr) auto;align-items:end;gap:7px}.semantic-model-header label span{display:block;margin-bottom:4px;color:var(--muted);font-size:9px;font-weight:750}.semantic-model-header input{width:100%;min-height:34px;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink)}.semantic-model-summary{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:6px;background:var(--paper);overflow:hidden}.semantic-model-summary>div{min-height:68px;padding:12px 16px;display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:9px}.semantic-model-summary>div+div{border-left:1px solid var(--line)}.semantic-model-summary svg{color:var(--accent-purple)}.semantic-model-summary strong{font-size:20px}.semantic-model-summary span{color:var(--muted);font-size:10px}.semantic-model-grid{min-height:520px;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:8px}.semantic-selection-panel{min-width:0;border:1px solid var(--line);border-radius:6px;background:var(--paper);overflow:hidden}.semantic-selection-panel>header{min-height:43px;padding:7px 10px;display:flex;align-items:center;gap:7px;background:var(--nav-light);border-bottom:1px solid var(--line)}.semantic-selection-panel>header>span{margin-left:auto;color:var(--muted);font-size:9px}.semantic-selection-panel>header label{margin-left:auto;display:flex;align-items:center;gap:5px}.semantic-selection-panel>header input{width:170px;min-height:28px;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink);font-size:10px}.semantic-selection-panel>div{max-height:500px;overflow:auto}.semantic-selection-panel details+details{border-top:1px solid var(--line)}.semantic-selection-panel summary{list-style:none;cursor:pointer}.semantic-selection-panel summary>button{width:100%;min-height:44px;padding:6px 9px;border:0;display:grid;grid-template-columns:17px minmax(0,1fr);text-align:left;background:transparent;color:var(--ink)}.semantic-selection-panel summary>button.selected{background:color-mix(in srgb,var(--accent-purple) 13%,var(--paper));box-shadow:inset 3px 0 var(--accent-purple)}.semantic-selection-panel summary>button strong,.semantic-selection-panel summary>button small{grid-column:2;display:block}.semantic-selection-panel summary>button strong{font-size:10px}.semantic-selection-panel summary>button small{color:var(--muted);font-size:8px}.semantic-columns{padding:5px 8px 9px 28px;display:grid;gap:3px;background:color-mix(in srgb,var(--nav-light) 70%,var(--paper))}.semantic-columns>span{padding:4px 6px;display:flex;justify-content:space-between;border-left:2px solid var(--line);font-size:9px}.semantic-columns>span.key{border-color:var(--green);color:var(--green)}.semantic-columns small{color:var(--muted)}.semantic-measures details>summary{min-height:34px;padding:8px 10px;display:flex;justify-content:space-between;font-size:10px;font-weight:800}.semantic-measures details>summary em{color:var(--muted);font-size:9px;font-style:normal}.semantic-measures details>div button{width:100%;min-height:36px;padding:5px 9px 5px 17px;border:0;border-top:1px solid var(--line);display:flex;align-items:center;gap:7px;background:transparent;color:var(--ink);text-align:left}.semantic-measures details>div button.selected{background:color-mix(in srgb,var(--green) 11%,var(--paper));color:var(--green)}.semantic-measures button strong,.semantic-measures button small{display:block}.semantic-measures button strong{font-size:9px}.semantic-measures button small{color:var(--muted);font-size:8px}.semantic-links article{min-height:66px;padding:9px 10px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line)}.semantic-links article span{min-width:0}.semantic-links article strong,.semantic-links article small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.semantic-links article strong{font-size:9px}.semantic-links article small{margin:3px 0;color:var(--accent-purple);font-size:8px;text-transform:uppercase}.semantic-links p,.saved-semantic-models p{padding:16px;color:var(--muted);font-size:10px}.saved-semantic-models{border:1px solid var(--line);border-radius:6px;background:var(--paper)}.saved-semantic-models>header{min-height:40px;padding:0 11px;display:flex;align-items:center;gap:7px;border-bottom:1px solid var(--line);background:var(--nav-light)}.saved-semantic-models>header span{margin-left:auto;color:var(--muted)}.saved-semantic-models>div{padding:8px;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px}.saved-semantic-models button{min-height:62px;padding:9px;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink);text-align:left}.saved-semantic-models button strong,.saved-semantic-models button span,.saved-semantic-models button small{display:block}.saved-semantic-models button span,.saved-semantic-models button small{margin-top:3px;color:var(--muted);font-size:9px}.runtime-component:has(.streamlit-surface),.runtime-component:has(.streamlit-chart){border-top:3px solid #ff4b4b!important}.runtime-streamlit-slider{height:100%;padding:7px 10px;display:grid;align-content:center;gap:6px}.runtime-streamlit-slider span{font-weight:750}.runtime-streamlit-slider input{width:100%;accent-color:#ff4b4b}.data-management{display:grid;gap:12px;color:var(--ink)}.data-management-heading{padding:18px;border:1px solid var(--line);border-left:5px solid var(--accent-orange);border-radius:6px;display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--paper)}.data-management-heading p{margin:0;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}.data-management-heading h2{margin:3px 0 5px;font-size:22px}.data-management-heading span{color:var(--muted);font-size:12px}.data-management-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.data-refresh{width:36px;height:36px;border:1px solid var(--line);border-radius:4px}.data-management-summary{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:6px;overflow:hidden;background:var(--paper)}.data-management-summary>div{min-height:74px;padding:14px 18px;display:flex;align-items:center;gap:12px}.data-management-summary>div+div{border-left:1px solid var(--line)}.data-management-summary svg{color:var(--accent-orange)}.data-management-summary span,.data-management-summary strong{display:block}.data-management-summary span{color:var(--muted);font-size:11px}.data-management-summary strong{margin-bottom:3px;color:var(--ink);font-size:19px}.data-asset-list{display:grid;gap:8px}.data-asset-list>article{border:1px solid var(--line);border-radius:6px;background:var(--paper);overflow:hidden}.data-asset-list>article>header{min-height:58px;padding:9px 12px;display:grid;grid-template-columns:34px minmax(0,1fr) auto 34px;align-items:center;gap:9px;background:var(--nav-light)}.data-asset-status{width:32px;height:32px;display:grid;place-items:center;border-radius:4px;color:var(--green);background:color-mix(in srgb,var(--green) 12%,var(--paper))}.data-asset-list header strong,.data-asset-list header span{display:block}.data-asset-list header strong{font-size:12px}.data-asset-list header span,.data-asset-list header time{margin-top:2px;color:var(--muted);font-size:10px}.data-asset-list .danger{width:32px;height:32px;color:var(--red)}.data-asset-list details{border-top:1px solid var(--line)}.data-asset-list details summary{min-height:44px;padding:7px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer}.data-asset-list details summary strong,.data-asset-list details summary small{display:block}.data-asset-list details summary strong{font-size:11px}.data-asset-list details summary small,.data-asset-list details summary em{color:var(--muted);font-size:9px;font-style:normal}.data-asset-columns{padding:8px 12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:5px;background:var(--paper)}.data-asset-columns>span{min-height:31px;padding:5px 7px;border:1px solid var(--line);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:5px}.data-asset-columns>span.key{border-color:color-mix(in srgb,var(--green) 55%,var(--line));background:color-mix(in srgb,var(--green) 10%,var(--paper));color:var(--green)}.data-asset-columns strong{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.data-asset-columns small{color:var(--muted);font-size:8px}.data-asset-error{margin:0;padding:8px 12px;color:var(--red);font-size:10px}.data-management-empty{min-height:260px;display:grid;place-content:center;justify-items:center;gap:6px;border:1px dashed var(--line-strong);color:var(--muted)}.postgres-control{display:grid;gap:12px;color:var(--ink)}.postgres-control-heading{min-height:100px;padding:18px 20px;border:1px solid var(--line);border-left:5px solid var(--green-bright);border-radius:6px;display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--paper)}.postgres-control-heading p,.postgres-vault>header p,.postgres-activity>header p,.postgres-query-workspace>header p{margin:0;color:var(--muted);font-size:9px;font-weight:850;text-transform:uppercase}.postgres-control-heading h2{margin:3px 0 5px;font-size:22px}.postgres-control-heading span{color:var(--muted);font-size:11px}.postgres-principles{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:6px;overflow:hidden;background:var(--paper)}.postgres-principles article{min-height:76px;padding:13px 16px;display:flex;align-items:center;gap:11px}.postgres-principles article+article{border-left:1px solid var(--line)}.postgres-principles article:nth-child(1) svg{color:var(--green)}.postgres-principles article:nth-child(2) svg{color:var(--amber)}.postgres-principles article:nth-child(3) svg{color:var(--red)}.postgres-principles strong,.postgres-principles span{display:block}.postgres-principles strong{font-size:12px}.postgres-principles span{margin-top:3px;color:var(--muted);font-size:9px;line-height:1.45}.postgres-tabs{min-height:43px;display:flex;align-items:stretch;border:1px solid var(--line);border-radius:6px;background:var(--paper);overflow-x:auto}.postgres-tabs button{min-width:150px;padding:0 13px;border:0;border-right:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:7px;background:transparent;color:var(--muted);font-size:10px;font-weight:800;white-space:nowrap}.postgres-tabs button.active{background:var(--surface-strong);color:var(--on-strong);box-shadow:inset 0 -3px var(--amber-bright)}.postgres-tabs em{min-width:20px;padding:2px 5px;border-radius:9px;background:color-mix(in srgb,currentColor 12%,transparent);font-size:8px;font-style:normal}.postgres-explorer{min-height:650px;border:1px solid var(--line);border-radius:6px;display:grid;grid-template-columns:230px minmax(0,1fr);background:var(--paper);overflow:hidden}.postgres-table-catalog{min-width:0;border-right:1px solid var(--line);background:var(--nav-light)}.postgres-search{min-height:44px;padding:7px 9px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:7px;color:var(--muted)}.postgres-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:10px}.postgres-table-catalog>div{max-height:760px;overflow-y:auto}.postgres-table-catalog>div>button{width:100%;min-height:51px;padding:7px 9px;border:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:17px minmax(0,1fr);align-items:center;gap:7px;background:transparent;color:var(--ink);text-align:left}.postgres-table-catalog>div>button.active{background:color-mix(in srgb,var(--green) 11%,var(--paper));box-shadow:inset 4px 0 var(--green-bright)}.postgres-table-catalog strong,.postgres-table-catalog small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.postgres-table-catalog strong{font-size:10px}.postgres-table-catalog small{margin-top:3px;color:var(--muted);font-size:8px}.postgres-query-workspace{min-width:0}.postgres-query-workspace>header{min-height:69px;padding:10px 13px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--nav-light)}.postgres-query-workspace>header h3{margin:2px 0 3px;font-size:16px}.postgres-query-workspace>header span{color:var(--muted);font-size:9px}.postgres-capability{padding:6px 8px;border:1px solid var(--line);display:flex;align-items:center;gap:5px;color:var(--green);font-size:9px;font-weight:800;white-space:nowrap}.postgres-query-controls{padding:10px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1.1fr repeat(2,.8fr) 1.15fr .9fr 1fr auto;gap:6px;align-items:end}.postgres-query-controls label{min-width:0;display:grid;gap:4px}.postgres-query-controls label>span{color:var(--muted);font-size:8px;font-weight:800;text-transform:uppercase}.postgres-query-controls input,.postgres-query-controls select{width:100%;min-width:0;height:34px;padding:0 7px;border:1px solid var(--line-strong);border-radius:3px;background:var(--paper);color:var(--ink);font-size:9px}.postgres-query-controls .button{height:34px;white-space:nowrap}.postgres-column-picker{border-bottom:1px solid var(--line)}.postgres-column-picker summary{min-height:37px;padding:0 11px;display:flex;align-items:center;justify-content:space-between;color:var(--ink);font-size:9px;font-weight:800;cursor:pointer}.postgres-column-picker summary span{color:var(--muted);font-weight:650}.postgres-column-picker>div{max-height:210px;padding:7px;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:4px;overflow-y:auto;background:var(--nav-light)}.postgres-column-picker label{min-width:0;min-height:34px;padding:4px 6px;border:1px solid var(--line);display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;background:var(--paper)}.postgres-column-picker strong,.postgres-column-picker small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.postgres-column-picker strong{font-size:9px}.postgres-column-picker small{margin-top:2px;color:var(--muted);font-size:7px}.postgres-results-toolbar{min-height:46px;padding:6px 9px;display:flex;align-items:center;justify-content:space-between;gap:8px}.postgres-results-toolbar>span{color:var(--muted);font-size:9px}.postgres-results-toolbar>div{display:flex;gap:5px;flex-wrap:wrap}.button.danger{border-color:color-mix(in srgb,var(--red) 45%,var(--line));color:var(--red);background:var(--paper)}.postgres-readonly-note{margin:0;padding:7px 10px;border-top:1px solid var(--line);display:flex;gap:6px;color:var(--muted);background:var(--nav-light);font-size:9px}.postgres-table-scroll{width:100%;max-width:100%;overflow:auto}.postgres-table-scroll table{width:100%;border-collapse:collapse;font-size:9px;white-space:nowrap}.postgres-table-scroll th{position:sticky;top:0;z-index:1;height:34px;padding:6px 8px;border:1px solid var(--line);background:var(--surface-strong);color:var(--on-strong);text-align:left;font-size:8px;text-transform:uppercase}.postgres-table-scroll td{max-width:260px;height:35px;padding:5px 8px;border:1px solid var(--line);overflow:hidden;color:var(--ink);text-overflow:ellipsis}.postgres-table-scroll tr.selected td{background:color-mix(in srgb,var(--amber-bright) 14%,var(--paper))}.postgres-table-scroll .select-cell{width:34px;min-width:34px;text-align:center}.postgres-results footer{min-height:45px;padding:6px 9px;display:flex;align-items:center;justify-content:flex-end;gap:9px}.postgres-results footer span{color:var(--muted);font-size:9px}.postgres-query-empty{min-height:270px;display:grid;place-content:center;justify-items:center;gap:6px;color:var(--muted);text-align:center}.postgres-query-empty strong{color:var(--ink);font-size:12px}.postgres-query-empty span{max-width:430px;font-size:9px;line-height:1.55}.postgres-vault,.postgres-activity,.postgres-mv-list{border:1px solid var(--line);border-radius:6px;background:var(--paper);overflow:hidden}.postgres-vault>header,.postgres-activity>header,.postgres-mv-list>header{min-height:67px;padding:10px 13px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--nav-light)}.postgres-vault h3,.postgres-activity h3,.postgres-mv-list h3{margin:2px 0;font-size:15px}.postgres-vault header span,.postgres-activity header span,.postgres-mv-list header span{color:var(--muted);font-size:9px}.postgres-materialized{display:grid;gap:10px}.postgres-mv-assessment{min-height:150px;padding:16px;border:1px solid var(--line);border-left:5px solid var(--accent-purple);border-radius:6px;display:grid;grid-template-columns:1.1fr .9fr;gap:16px;background:var(--paper)}.postgres-mv-assessment>div{display:flex;align-items:flex-start;gap:12px}.postgres-mv-assessment>div>svg{color:var(--accent-purple)}.postgres-mv-assessment small,.postgres-mv-assessment strong{display:block}.postgres-mv-assessment small{color:var(--muted);font-size:8px;text-transform:uppercase}.postgres-mv-assessment strong{margin:4px 0 7px;font-size:18px}.postgres-mv-assessment p{margin:0;color:var(--muted);font-size:10px;line-height:1.55}.postgres-mv-assessment dl{margin:0;display:grid;grid-template-columns:.6fr 1.4fr;border:1px solid var(--line)}.postgres-mv-assessment dl>div{padding:11px}.postgres-mv-assessment dl>div+div{border-left:1px solid var(--line)}.postgres-mv-assessment dt{color:var(--muted);font-size:8px;text-transform:uppercase}.postgres-mv-assessment dd{margin:5px 0 0;font-size:11px;font-weight:800;line-height:1.45}.postgres-mv-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.postgres-mv-grid article{min-height:110px;padding:13px;border:1px solid var(--line);border-radius:6px;background:var(--paper)}.postgres-mv-grid header{display:flex;align-items:center;gap:7px;color:var(--green);font-size:11px}.postgres-mv-grid p,.postgres-mv-grid ul{margin:9px 0 0;color:var(--muted);font-size:9px;line-height:1.6}.postgres-mv-list>article{min-height:60px;padding:9px 12px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:9px}.postgres-mv-list>article>svg{color:var(--accent-purple)}.postgres-mv-list article strong,.postgres-mv-list article span{display:block}.postgres-mv-list article strong{font-size:11px}.postgres-mv-list article span{margin-top:3px;color:var(--muted);font-size:8px}.postgres-action{padding:3px 6px;border-radius:3px;color:var(--green);background:color-mix(in srgb,var(--green) 10%,var(--paper));font-size:8px;font-weight:850;text-transform:uppercase}.postgres-action.permanent_delete{color:var(--red);background:color-mix(in srgb,var(--red) 9%,var(--paper))}@media(max-width:1100px){.postgres-query-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.postgres-query-controls .button{align-self:end}}.main-content.analytics-content:has(.dashboard-hub){width:100%;max-width:none;overflow:visible}.dashboard-hub{min-height:0}.dashboard-hub-tabs{align-items:center}.dashboard-hub-tabs button.dashboard-fullscreen{min-width:132px;margin-left:auto;border-left:1px solid var(--line)}.dashboard-native-viewport{min-width:0;overflow:visible}.dashboard-hub.is-fullscreen{width:100vw;height:100vh;padding:8px;overflow:auto;background:var(--canvas)}.dashboard-hub.is-fullscreen .dashboard-native-viewport{min-width:1280px}@media(max-width:1350px){.builder-workspace{grid-template-columns:165px minmax(0,1fr) 225px}.transform-layout{grid-template-columns:175px minmax(0,1fr) 260px}}@media(max-width:1050px){.builder-workspace,.transform-layout{grid-template-columns:160px minmax(0,1fr);overflow:visible}.builder-inspector,.query-settings{grid-column:1 / -1;max-height:none}.data-field-catalog{max-height:280px}.relationship-toolbar{flex-wrap:wrap}.relationship-toolbar>div:first-child{width:100%}.relationship-body{grid-template-columns:190px minmax(0,1fr)}}@media(max-width:760px){.app-shell.sidebar-collapsed{display:block}.app-shell.sidebar-collapsed .sidebar{width:270px;padding:23px 14px 16px}.app-shell.sidebar-collapsed .brand>div,.app-shell.sidebar-collapsed .sidebar nav button>span,.app-shell.sidebar-collapsed .sidebar nav button>em,.app-shell.sidebar-collapsed .sidebar-guide>div,.app-shell.sidebar-collapsed .user-card>div,.app-shell.sidebar-collapsed .user-card>button{display:block}.app-shell.sidebar-collapsed .sidebar nav button{justify-content:flex-start;padding:0 12px}.desktop-sidebar-toggle{display:none}.global-text-scale{display:flex}.semantic-model-header{align-items:stretch;flex-direction:column}.semantic-model-header>div:last-child{grid-template-columns:1fr}.semantic-model-grid{grid-template-columns:1fr}.transform-layout,.builder-workspace{display:block}.query-pane,.preview-pane,.query-settings,.builder-library,.builder-canvas,.builder-inspector{margin-bottom:8px;min-height:300px}.relationship-body{display:block;height:auto;min-height:0;overflow:visible}.relationship-list{max-height:260px;border-right:0;border-bottom:1px solid var(--line)}.relationship-canvas-scroll{height:620px}.data-management-heading{align-items:flex-start;flex-direction:column}.data-management-actions{justify-content:flex-start}.data-management-summary{grid-template-columns:1fr}.data-management-summary>div+div{border-left:0;border-top:1px solid var(--line)}.data-asset-list>article>header{grid-template-columns:34px minmax(0,1fr) 34px}.data-asset-list header time{display:none}.postgres-control-heading{align-items:flex-start;flex-direction:column}.postgres-principles,.postgres-mv-assessment,.postgres-mv-grid{grid-template-columns:1fr}.postgres-principles article+article{border-left:0;border-top:1px solid var(--line)}.postgres-explorer{display:block}.postgres-table-catalog{border-right:0;border-bottom:1px solid var(--line)}.postgres-table-catalog>div{max-height:220px}.postgres-query-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.postgres-results-toolbar{align-items:flex-start;flex-direction:column}.postgres-mv-assessment dl{grid-template-columns:1fr}.postgres-mv-assessment dl>div+div{border-left:0;border-top:1px solid var(--line)}}.field-wells{display:flex;flex-direction:column;gap:8px;padding:10px;overflow-y:auto}.wells-empty{margin:12px;color:var(--muted);font-size:11px;line-height:1.5}.field-well{border:1px dashed var(--line-strong);border-radius:8px;padding:7px 8px 8px;background:var(--nav-light);transition:border-color .15s ease,background-color .15s ease}.field-well.is-target{border-color:var(--blue);border-style:solid;background:var(--blue-soft)}.field-well.is-blocked{opacity:.45}.field-well>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px}.field-well>header span{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.field-well>header em{font-style:normal;font-size:10px;color:var(--faint)}.well-hint{margin:2px 0 0;font-size:10px;color:var(--faint);line-height:1.4}.well-chip{display:flex;align-items:center;gap:5px;margin-bottom:4px;padding:4px 6px;background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--blue);border-radius:5px;font-size:11px;cursor:grab}.well-chip:last-child{margin-bottom:0}.well-chip.measure{border-left-color:var(--amber)}.well-chip span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.well-chip button{display:flex;padding:1px;border:0;background:none;color:var(--faint);border-radius:3px}.well-chip button:hover{background:var(--red-soft);color:var(--red)}.well-chip:active{cursor:grabbing}.field-picker{margin-top:6px;border-top:1px solid var(--line);padding-top:8px}.field-picker-search{width:100%;margin-bottom:6px;padding:5px 7px;border:1px solid var(--line);border-radius:6px;font-size:11px}.field-picker-group{display:flex;align-items:center;gap:4px;width:100%;padding:4px 2px;border:0;background:none;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.field-picker-group em{margin-left:auto;font-style:normal;color:var(--faint)}.field-picker-group svg{transition:transform .15s ease}.field-picker-group svg.collapsed{transform:rotate(-90deg)}.field-picker-list{max-height:230px;overflow-y:auto}.picker-field{display:flex;align-items:center;gap:5px;padding:3px 6px;border-radius:5px;font-size:11px;cursor:grab;border-left:3px solid transparent}.picker-field:hover{background:var(--blue-soft);border-left-color:var(--blue)}.picker-field.measure:hover{border-left-color:var(--amber)}.picker-field span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-field small{color:var(--faint);font-size:9px}.format-pane{display:flex;flex-direction:column;overflow-y:auto;padding-bottom:16px}.format-reset{align-self:flex-end;display:flex;align-items:center;gap:4px;margin:6px 10px 2px;font-size:10px}.format-section{border-bottom:1px solid var(--line)}.format-section-head{display:flex;align-items:center;gap:6px;width:100%;padding:8px 10px;border:0;background:none;font-size:11px;font-weight:700;color:var(--ink);text-align:left}.format-section-head:hover{background:var(--nav-light)}.format-section-head svg{transition:transform .15s ease;color:var(--faint)}.format-section.open .format-section-head svg{transform:rotate(90deg)}.format-section-body{display:flex;flex-direction:column;gap:7px;padding:2px 10px 12px}.format-row{display:grid;grid-template-columns:1fr 1fr;gap:7px}.format-field{display:flex;flex-direction:column;gap:3px;min-width:0}.format-field>span{font-size:10px;color:var(--muted);font-weight:600}.format-field input[type=text],.format-field input[type=number],.format-field select{width:100%;padding:4px 6px;border:1px solid var(--line);border-radius:5px;font-size:11px;background:var(--paper)}.format-toggle{display:flex;align-items:center;gap:6px;font-size:11px;cursor:pointer}.format-toggle input{accent-color:var(--blue)}.format-color{display:flex;align-items:center;gap:4px}.format-color input[type=color]{width:26px;height:24px;padding:0;border:1px solid var(--line);border-radius:4px;background:none}.format-color input[type=text]{flex:1;min-width:0;font-family:Roboto Mono,monospace;font-size:10px}.palette-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px}.palette-swatch{display:flex;flex-direction:column;gap:3px;padding:4px;border:1px solid var(--line);border-radius:6px;background:var(--paper)}.palette-swatch.selected{border-color:var(--blue);box-shadow:0 0 0 2px var(--blue-soft)}.palette-strip{display:flex;height:12px;border-radius:3px;overflow:hidden}.palette-strip i{flex:1}.palette-swatch small{font-size:9px;color:var(--muted)}body.dark-theme .field-well{background:#ffffff06;border-color:var(--line)}body.dark-theme .field-well.is-target{background:#7fb3e81f;border-color:#7fb3e8}body.dark-theme .well-chip{background:var(--nav-light);border-color:var(--line-strong);border-left-color:#7fb3e8}body.dark-theme .well-chip.measure{border-left-color:var(--amber-bright)}body.dark-theme .well-chip button:hover{background:#ff59622e;color:var(--red)}body.dark-theme .field-picker-search,body.dark-theme .format-field input[type=text],body.dark-theme .format-field input[type=number],body.dark-theme .format-field select{background:var(--nav-light);border-color:var(--line-strong);color:var(--ink)}body.dark-theme .picker-field:hover{background:#7fb3e81f;border-left-color:#7fb3e8}body.dark-theme .picker-field.measure:hover{border-left-color:var(--amber-bright)}body.dark-theme .format-section{border-bottom-color:var(--line)}body.dark-theme .format-section-head:hover{background:#ffffff0a}body.dark-theme .format-color input[type=color]{border-color:var(--line-strong)}body.dark-theme .palette-swatch{background:var(--nav-light);border-color:var(--line-strong)}body.dark-theme .palette-swatch.selected{border-color:#7fb3e8;box-shadow:0 0 0 2px #7fb3e838}body.dark-theme .runtime-component,body.dark-theme .builder-component{background:var(--paper);border-color:var(--line);color:var(--ink)}body.dark-theme .runtime-skeleton{background:linear-gradient(90deg,var(--nav-light),rgba(255,255,255,.05),var(--nav-light))}body.dark-theme .recharts-cartesian-axis-tick text,body.dark-theme .recharts-legend-item-text,body.dark-theme .recharts-label,body.dark-theme .chart-value-label{fill:var(--muted);color:var(--muted)}body.dark-theme .recharts-cartesian-grid line{stroke:var(--line)}body.dark-theme .recharts-tooltip-wrapper .recharts-default-tooltip{background:var(--nav-light)!important;border-color:var(--line-strong)!important;color:var(--ink)!important}body.dark-theme .bubble-label-bg{fill:#0a1722d1;stroke:var(--line)}body.dark-theme input[type=checkbox],body.dark-theme input[type=radio]{accent-color:var(--amber-bright);color-scheme:dark}body.dark-theme .canvas-size-controls .canvas-checkbox{border-color:var(--line-strong);background:var(--nav-light)}body.dark-theme .canvas-size-controls .canvas-checkbox>span{color:var(--ink)}body.dark-theme input[type=color]{background:var(--nav-light);border-color:var(--line-strong)}body.dark-theme .builder-panel-title{color:var(--amber-bright);border-bottom-color:var(--line)}body.dark-theme .canvas-meta em{color:var(--muted)}.build-panel{display:flex;flex-direction:column;min-height:0;height:100%}.build-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.build-tabs button{display:flex;align-items:center;justify-content:center;gap:4px;padding:8px 4px;border:0;border-bottom:2px solid transparent;background:none;font-size:10px;font-weight:700;color:var(--muted)}.build-tabs button:hover{background:var(--nav-light);color:var(--ink)}.build-tabs button.active{color:var(--heading);border-bottom-color:var(--heading);background:var(--teal-soft)}.build-panel>.field-wells,.build-panel>.format-pane,.build-panel>.visual-gallery{flex:1;min-height:0}.visual-gallery{overflow-y:auto;padding:8px 10px 16px}.visual-gallery h4{margin:10px 0 5px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.visual-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.visual-tile{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 3px;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--ink);transition:border-color .12s ease,background-color .12s ease,transform .12s ease}.visual-tile:hover{border-color:var(--heading);background:var(--teal-soft);transform:translateY(-1px)}.visual-tile.selected{border-color:var(--heading);background:var(--teal-soft);box-shadow:0 0 0 2px var(--blue-soft)}.visual-tile svg{width:26px;height:17px;fill:var(--teal);stroke:var(--teal)}.visual-tile span{font-size:8.5px;line-height:1.15;text-align:center}.visual-tile em{font-style:normal;font-size:7px;color:var(--faint)}body.dark-theme .build-tabs{border-bottom-color:var(--line)}body.dark-theme .build-tabs button:hover{background:#ffffff0d;color:var(--ink)}body.dark-theme .build-tabs button.active{color:var(--amber-bright);border-bottom-color:var(--amber-bright);background:#f3c45c1a}body.dark-theme .visual-tile{background:var(--nav-light);border-color:var(--line-strong)}body.dark-theme .visual-tile:hover,body.dark-theme .visual-tile.selected{border-color:var(--amber-bright);background:#f3c45c1f}body.dark-theme .visual-tile svg{fill:var(--amber-bright);stroke:var(--amber-bright)}.runtime-visual-empty,.runtime-visual-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;height:100%;padding:10px;text-align:center;font-size:10px;color:var(--muted);line-height:1.4}.runtime-visual-error{color:var(--red)}.runtime-visual-error strong{font-size:11px}.runtime-visual-error span{color:var(--muted);font-size:9px}.runtime-table-wrap.density-compact td,.runtime-table-wrap.density-compact th{padding:2px 6px}.runtime-table-wrap.density-spacious td,.runtime-table-wrap.density-spacious th{padding:9px 10px}.runtime-table-wrap table.banded tbody tr:nth-child(2n){background:var(--nav-light)}.runtime-table-wrap tfoot td{font-weight:800;border-top:2px solid var(--line-strong)}body.dark-theme .runtime-table-wrap table.banded tbody tr:nth-child(2n){background:#ffffff09}.pivot-wrap{height:calc(100% - 27px);overflow:auto}.pivot{border-collapse:separate;border-spacing:0;font-size:8px;width:max-content;min-width:100%}.pivot th,.pivot td{padding:6px;white-space:nowrap;border-bottom:1px solid var(--line)}.pivot thead th{position:sticky;background:var(--nav-light);color:var(--muted);font-weight:700;text-align:right;z-index:2}.pivot thead tr:first-child th{top:0}.pivot thead tr:last-child:not(:only-child) th{top:22px}.pivot .pivot-col-group{text-align:center;border-left:1px solid var(--line-strong)}.pivot .pivot-corner{left:0;top:0;text-align:left;z-index:3}.pivot tbody th{position:sticky;left:0;z-index:1;background:var(--paper);text-align:left;font-weight:600}.pivot tbody td{text-align:right}.pivot thead th.is-sortable{cursor:pointer;user-select:none}.pivot thead th.is-sortable:hover{color:var(--ink);background:var(--blue-soft)}.pivot thead th.is-sortable svg{vertical-align:-1px;margin-left:3px;color:var(--blue-bright)}.pivot .is-collapsible{cursor:pointer;user-select:none}.pivot .is-collapsible svg{vertical-align:-2px;margin-right:2px;color:var(--muted)}.pivot .is-collapsible:hover{color:var(--blue-bright)}.pivot tr.pivot-subtotal th,.pivot tr.pivot-subtotal td{font-weight:800;background:var(--blue-soft)}.pivot tr.pivot-grand th,.pivot tr.pivot-grand td{font-weight:800;background:var(--nav-light);border-top:2px solid var(--line-strong)}.pivot .pivot-blank{color:var(--muted);opacity:.55}.pivot-wrap.density-compact .pivot th,.pivot-wrap.density-compact .pivot td{padding:2px 6px}.pivot-wrap.density-compact .pivot thead tr:last-child:not(:only-child) th{top:14px}.pivot-wrap.density-spacious .pivot th,.pivot-wrap.density-spacious .pivot td{padding:9px 10px}.pivot-wrap.density-spacious .pivot thead tr:last-child:not(:only-child) th{top:28px}body.dark-theme .pivot thead th{background:#10283a}body.dark-theme .pivot thead th.is-sortable:hover{background:#1c3d55;color:var(--ink)}body.dark-theme .pivot tbody th{background:var(--paper)}body.dark-theme .pivot th,body.dark-theme .pivot td{border-color:#263d50}body.dark-theme .pivot tr.pivot-subtotal th,body.dark-theme .pivot tr.pivot-subtotal td{background:#ffffff0d}body.dark-theme .pivot tr.pivot-grand th,body.dark-theme .pivot tr.pivot-grand td{background:#10283a}.conditional-rules{display:flex;flex-direction:column;gap:6px;margin:8px 0}.conditional-rules>strong{font-size:10px;font-weight:700;color:var(--muted)}.conditional-rule{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr auto;gap:5px;align-items:center;padding:6px;border:1px solid var(--line);border-radius:6px;background:var(--nav-light)}.conditional-rule select,.conditional-rule input{min-width:0;padding:4px 6px;border:1px solid var(--line);border-radius:5px;font-size:11px;background:var(--paper);color:var(--ink)}.step-note{margin:8px 0;font-size:11px;color:var(--muted)}body.dark-theme .conditional-rule{background:#ffffff08;border-color:var(--line-strong)}body.dark-theme .conditional-rule select,body.dark-theme .conditional-rule input{background:var(--nav-light);border-color:var(--line-strong);color:var(--ink)}.distribution-plot{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.distribution-plot svg{width:100%;height:100%}.distribution-plot text{font-family:inherit}.runtime-slicer{display:flex;flex-direction:column;gap:5px;padding:6px 8px;min-height:0}.runtime-slicer select,.runtime-slicer input[type=date]{width:100%;padding:5px 7px;border:1px solid var(--line);border-radius:6px;font-size:11px;background:var(--paper);color:var(--ink)}.runtime-slicer-search label{display:flex;align-items:center;gap:5px;padding:5px 7px;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--muted)}.runtime-slicer-search input{flex:1;min-width:0;border:0;background:none;font-size:11px;color:var(--ink)}.runtime-slicer-search input:focus{outline:none}.runtime-slicer-search button{display:flex;padding:1px;border:0;background:none;color:var(--faint);border-radius:3px}.runtime-slicer-search button:hover{color:var(--red);background:var(--red-soft)}.runtime-slicer-search small{font-size:9px;color:var(--faint)}.runtime-slicer-dates{flex-direction:row;align-items:center;flex-wrap:wrap}.runtime-slicer-buttons{flex-direction:row;flex-wrap:wrap;gap:4px;overflow-y:auto}.runtime-slicer-buttons button{padding:3px 9px;border:1px solid var(--line-strong);border-radius:999px;background:var(--paper);color:var(--ink);font-size:10px;font-weight:600}.runtime-slicer-buttons button:hover{border-color:var(--heading)}.runtime-slicer-buttons button.selected{color:#fff}.slicer-summary{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;padding:5px 8px;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--ink);font-size:11px}.slicer-summary svg{transition:transform .15s ease;color:var(--faint);flex-shrink:0}.slicer-summary svg.open{transform:rotate(180deg)}.slicer-summary span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slicer-menu{display:flex;flex-direction:column;gap:3px;min-height:0;padding:5px;border:1px solid var(--line);border-radius:6px;background:var(--paper)}.slicer-search{display:flex;align-items:center;gap:4px;padding:3px 5px;border-bottom:1px solid var(--line);color:var(--faint)}.slicer-search input{flex:1;min-width:0;border:0;background:none;font-size:11px;color:var(--ink)}.slicer-search input:focus{outline:none}.slicer-options{display:flex;flex-direction:column;gap:1px;overflow-y:auto;min-height:0}.slicer-option{display:flex;align-items:center;gap:5px;padding:3px 6px;border:0;border-radius:4px;background:none;color:var(--muted);font-size:11px;text-align:left}.slicer-option svg{opacity:0;flex-shrink:0}.slicer-option:hover{background:var(--teal-soft);color:var(--ink)}.slicer-option.selected{color:var(--ink);font-weight:700}.slicer-option.selected svg{opacity:1;color:var(--heading)}.slicer-empty{margin:4px 6px;font-size:10px;color:var(--faint)}.slicer-chips{display:flex;flex-wrap:wrap;gap:3px}.slicer-chips span{display:inline-flex;align-items:center;gap:3px;padding:1px 5px;border-radius:999px;background:var(--teal-soft);color:var(--heading);font-size:9px;font-weight:700}.slicer-chips span button{display:flex;padding:0;border:0;background:none;color:inherit}.slicer-chips em{font-style:normal;font-size:9px;color:var(--faint)}body.dark-theme .runtime-slicer select,body.dark-theme .runtime-slicer input[type=date],body.dark-theme .runtime-slicer-search label,body.dark-theme .slicer-summary,body.dark-theme .slicer-menu,body.dark-theme .runtime-slicer-buttons button{background:var(--nav-light);border-color:var(--line-strong);color:var(--ink)}body.dark-theme .slicer-option:hover{background:#ffffff0f}body.dark-theme .slicer-option.selected svg{color:var(--amber-bright)}body.dark-theme .slicer-chips span{background:#f3c45c24;color:var(--amber-bright)}.gauge-view{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:100%;height:100%;padding:4px}.gauge-view svg{width:100%;height:100%;max-height:150px}.gauge-legend{display:flex;gap:8px;align-items:baseline;font-size:9px;color:var(--muted)}.gauge-legend em{font-style:normal;color:var(--faint)}.selectable-chart-mark{cursor:pointer}.selectable-chart-mark:hover{filter:brightness(1.12)}body.dark-theme .sidebar nav button.nav-tone-tidymodels.active{background:#14364f;box-shadow:inset 4px 0 var(--blue)}body.dark-theme .sidebar nav button.nav-tone-tidymodels:not(.active){background:#7fb3e81a;box-shadow:inset 3px 0 #7fb3e88c}body.dark-theme .sidebar nav button.nav-tone-control.active{background:#38265c;box-shadow:inset 4px 0 var(--accent-purple)}body.dark-theme .sidebar nav button.nav-tone-control:not(.active){background:#c0a3e01f;box-shadow:inset 3px 0 #c0a3e08c}body.dark-theme .submission-form-tag{background:#f3c45c21;border-left-color:var(--amber-bright);color:var(--ink)}body.dark-theme .runtime-navigation button.active,body.dark-theme .runtime-page-rail button.active,body.dark-theme .dashboard-hub-tabs button.active,body.dark-theme .analytics-tabs button.active{background:#14364f;color:var(--ink)}body.dark-theme .runtime-page-rail button.active span{color:var(--muted)}body.dark-theme .brand-mark{background:#d13a44;color:#fff}body.dark-theme .specialist-route-button{border-color:#5b3a8c!important;background:#5b3a8c!important;color:var(--ink)!important}body.dark-theme .pricing-grid th.restricted-submission-column,body.dark-theme .detail-table th.restricted-submission-column{color:var(--on-strong);box-shadow:inset 0 3px #ffffff24}.model-note{margin:8px 0 0;font-size:10px;color:var(--muted)}.applied-steps{padding:5px 8px;border-left:3px solid var(--accent-cyan);background:var(--nav-light)}.feature-importance{margin-top:12px}.feature-importance>header{display:flex;flex-direction:column;gap:2px;margin-bottom:7px}.feature-importance>header strong{font-size:11px;color:var(--heading)}.feature-importance>header span{font-size:9px;color:var(--muted)}.feature-importance ol{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.feature-importance li{display:grid;grid-template-columns:minmax(70px,1.1fr) 3fr auto auto;gap:8px;align-items:center;font-size:10px}.importance-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.importance-track{height:9px;border-radius:999px;background:var(--nav-light);overflow:hidden}.importance-track i{display:block;height:100%;border-radius:999px}.importance-share{font-variant-numeric:tabular-nums;color:var(--muted)}.importance-direction{font-size:9px;font-variant-numeric:tabular-nums}.importance-direction.positive{color:var(--green)}.importance-direction.negative{color:var(--red)}.importance-direction.muted{color:var(--faint)}.residual-plot{display:flex;gap:12px;align-items:center;margin-top:12px;padding:8px;border:1px solid var(--line);border-radius:8px}.residual-plot svg{width:300px;max-width:62%}.residual-plot>div{display:flex;flex-direction:column;gap:3px}.residual-plot strong{font-size:11px;color:var(--heading)}.residual-plot span{font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}.residual-plot small{font-size:9px;color:var(--faint);line-height:1.4}.model-column-list .health-good{border-left:3px solid var(--green-bright)}.model-column-list .health-warn{border-left:3px solid var(--amber-bright)}.model-column-list .health-bad{border-left:3px solid var(--red);opacity:.72}body.dark-theme .applied-steps{background:#ffffff0a}body.dark-theme .importance-track{background:#ffffff14}body.dark-theme .residual-plot{border-color:var(--line-strong)}.builder-component{cursor:grab}.builder-component:active{cursor:grabbing}.builder-resize-handle{position:absolute;width:9px;height:9px;padding:0;border:1px solid var(--surface-strong);border-radius:2px;background:var(--paper);opacity:0;pointer-events:none;z-index:3}.builder-component.selected .builder-resize-handle{opacity:1;pointer-events:auto}.handle-nw{top:-5px;left:-5px;cursor:nwse-resize}.handle-n{top:-5px;left:50%;margin-left:-4.5px;cursor:ns-resize}.handle-ne{top:-5px;right:-5px;cursor:nesw-resize}.handle-e{top:50%;right:-5px;margin-top:-4.5px;cursor:ew-resize}.handle-se{bottom:-5px;right:-5px;cursor:nwse-resize}.handle-s{bottom:-5px;left:50%;margin-left:-4.5px;cursor:ns-resize}.handle-sw{bottom:-5px;left:-5px;cursor:nesw-resize}.handle-w{top:50%;left:-5px;margin-top:-4.5px;cursor:ew-resize}.canvas-guide{position:absolute;background:var(--amber-bright);pointer-events:none;z-index:9}.canvas-guide-x{top:0;bottom:0;width:1px}.canvas-guide-y{left:0;right:0;height:1px}.align-tools{display:inline-flex;align-items:center;gap:2px;padding:0 4px}.align-tools button{display:grid;place-items:center;width:26px;height:26px;padding:0;border:1px solid transparent;border-radius:5px;background:none}.align-tools button:hover:not(:disabled){border-color:var(--line-strong);background:var(--nav-light)}.align-tools button:disabled{opacity:.3}.align-divider{width:1px;height:18px;margin:0 3px;background:var(--line)}.align-glyph{display:block;width:14px;height:14px;background-repeat:no-repeat}.align-left{background-image:linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--muted),var(--muted)),linear-gradient(var(--muted),var(--muted));background-size:1px 14px,10px 4px,6px 4px;background-position:0 0,2px 2px,2px 8px}.align-right{background-image:linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--muted),var(--muted)),linear-gradient(var(--muted),var(--muted));background-size:1px 14px,10px 4px,6px 4px;background-position:13px 0,2px 2px,6px 8px}.align-center{background-image:linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--muted),var(--muted)),linear-gradient(var(--muted),var(--muted));background-size:1px 14px,12px 4px,6px 4px;background-position:7px 0,1px 2px,4px 8px}.align-top{background-image:linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--muted),var(--muted)),linear-gradient(var(--muted),var(--muted));background-size:14px 1px,4px 10px,4px 6px;background-position:0 0,2px 2px,8px 2px}.align-bottom{background-image:linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--muted),var(--muted)),linear-gradient(var(--muted),var(--muted));background-size:14px 1px,4px 10px,4px 6px;background-position:0 13px,2px 2px,8px 6px}.align-middle{background-image:linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--muted),var(--muted)),linear-gradient(var(--muted),var(--muted));background-size:14px 1px,4px 12px,4px 6px;background-position:0 7px,2px 1px,8px 4px}.align-dist-h{background-image:linear-gradient(var(--muted),var(--muted)),linear-gradient(var(--muted),var(--muted)),linear-gradient(var(--muted),var(--muted));background-size:3px 12px,3px 12px,3px 12px;background-position:0 1px,5.5px 1px,11px 1px}.align-dist-v{background-image:linear-gradient(var(--muted),var(--muted)),linear-gradient(var(--muted),var(--muted)),linear-gradient(var(--muted),var(--muted));background-size:12px 3px,12px 3px,12px 3px;background-position:1px 0,1px 5.5px,1px 11px}.stack-front{background-image:linear-gradient(var(--muted),var(--muted)),linear-gradient(var(--ink),var(--ink));background-size:9px 9px,9px 9px;background-position:5px 5px,0 0}.stack-back{background-image:linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--muted),var(--muted));background-size:9px 9px,9px 9px;background-position:5px 5px,0 0}.stack-forward{background-image:linear-gradient(var(--muted),var(--muted)),linear-gradient(var(--ink),var(--ink));background-size:8px 8px,8px 8px;background-position:6px 6px,1px 1px}.stack-backward{background-image:linear-gradient(var(--ink),var(--ink)),linear-gradient(var(--muted),var(--muted));background-size:8px 8px,8px 8px;background-position:6px 6px,1px 1px}body.dark-theme .builder-resize-handle{background:var(--ink);border-color:var(--paper)}body.dark-theme .align-tools button:hover:not(:disabled){background:#ffffff0f}.well-period{max-width:82px;padding:1px 2px;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--muted);font-size:9px;cursor:pointer}.well-period:hover{border-color:var(--blue);color:var(--ink)}body.dark-theme .well-period{background:var(--nav-light);border-color:var(--line-strong);color:var(--muted)}.server-visual{display:flex;align-items:center;justify-content:center;margin:0;width:100%;height:100%;overflow:hidden}.server-visual img{max-width:100%;max-height:100%;object-fit:contain}.server-visual.is-refreshing img{opacity:.55;transition:opacity .15s ease}.small-multiples{display:grid;gap:6px;width:100%;height:100%;overflow:auto;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-auto-rows:minmax(110px,1fr)}.small-multiple{display:flex;flex-direction:column;min-height:0;border:1px solid var(--line);border-radius:6px;overflow:hidden}.small-multiple>header{padding:3px 6px;background:var(--nav-light);border-bottom:1px solid var(--line);font-size:9px;font-weight:800;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.small-multiple>div{flex:1;min-height:0}.small-multiples-note{grid-column:1 / -1;margin:0;padding:4px;font-size:9px;color:var(--faint);text-align:center}body.dark-theme .small-multiple{border-color:var(--line-strong)}body.dark-theme .small-multiple>header{background:#ffffff0a;border-bottom-color:var(--line-strong)}.submission-visual-item{display:flex;flex-direction:column;min-height:0;gap:4px}.submission-visual-item>strong{font-size:10px;color:var(--heading)}.submission-visual-body{flex:1;min-height:120px;border:1px solid var(--line);border-radius:6px;background:var(--paper);overflow:hidden}body.dark-theme .submission-visual-body{border-color:var(--line-strong)}.ideas-board{display:flex;flex-direction:column;gap:12px;height:100%;min-height:0}.ideas-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.ideas-header h2{display:flex;align-items:center;gap:8px;margin:0;font-size:15px;color:var(--heading)}.ideas-header p{margin:4px 0 0;font-size:12px;color:var(--muted)}.ideas-actions{display:flex;gap:8px;flex-shrink:0}.ideas-canvas{position:relative;flex:1;min-height:min(640px,64vh);overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--paper);background-image:radial-gradient(var(--line) 1px,transparent 1px);background-size:26px 26px;touch-action:none}.ideas-links{position:absolute;inset:0;pointer-events:none}.idea-bubble{position:absolute;border-radius:50%;border:2px solid;cursor:grab;display:flex;align-items:center;justify-content:center;padding:6px;font-size:10px;line-height:1.15;text-align:center;color:var(--heading);transition:box-shadow .12s ease,transform .12s ease}.idea-bubble:hover{transform:scale(1.04);box-shadow:0 4px 14px #0000002e;z-index:2}.idea-bubble:active{cursor:grabbing}.idea-bubble.is-open{box-shadow:0 0 0 3px var(--teal);z-index:3}.idea-bubble-title{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.idea-bubble-count{position:absolute;top:-4px;right:-4px;min-width:16px;height:16px;border-radius:8px;background:var(--teal);color:var(--on-strong);font-size:9px;display:flex;align-items:center;justify-content:center;padding:0 4px}.ideas-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:12px}.ideas-legend{display:flex;gap:14px;flex-wrap:wrap;list-style:none;margin:0;padding:0;font-size:11px;color:var(--muted)}.ideas-legend li{display:flex;align-items:center;gap:5px}.ideas-legend i{width:9px;height:9px;border-radius:50%;display:inline-block}.ideas-table-wrapper{flex:1;overflow:auto;border:1px solid var(--line);border-radius:10px}.ideas-table{width:100%;border-collapse:collapse;font-size:12px}.ideas-table th{position:sticky;top:0;background:var(--canvas);text-align:left;padding:8px 10px;color:var(--muted);font-weight:600;border-bottom:1px solid var(--line)}.ideas-table td{padding:7px 10px;border-bottom:1px solid var(--line);color:var(--ink)}.ideas-table tbody tr{cursor:pointer}.ideas-table tbody tr:hover{background:var(--canvas)}.ideas-table tr.is-sub td:first-child{padding-left:22px;color:var(--muted)}.idea-chip{display:inline-block;padding:1px 7px;border-radius:9px;background:var(--canvas);border:1px solid var(--line);font-size:10px}.idea-popup-backdrop{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;background:#00000073;padding:24px}.idea-popup{width:min(760px,100%);max-height:86vh;overflow:auto;padding:18px 20px;background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 46px #0000004d;display:flex;flex-direction:column;gap:12px}.idea-popup header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.idea-popup h3{margin:0;font-size:15px;color:var(--heading)}.idea-popup header p{display:flex;gap:10px;flex-wrap:wrap;margin:6px 0 0;font-size:11px;color:var(--muted)}.idea-summary{margin:0;font-size:12px;color:var(--ink);line-height:1.5}.idea-lists{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.idea-lists h4{margin:0 0 6px;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.idea-lists ul{margin:0;padding-left:16px;font-size:12px;color:var(--ink);line-height:1.6}.idea-blank{margin:0;font-size:11px;color:var(--muted);font-style:italic}.idea-popup footer{display:flex;justify-content:space-between;gap:10px;padding-top:6px;border-top:1px solid var(--line)}.idea-popup footer>div{display:flex;gap:8px}.idea-field{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--muted)}.idea-field input,.idea-field textarea,.idea-field select{padding:6px 8px;border:1px solid var(--line);border-radius:6px;background:var(--canvas);color:var(--ink);font:inherit;font-size:12px}.idea-field input[type=range]{padding:0;border:none;background:none}.idea-field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.gallery{display:flex;flex-direction:column;gap:14px}.gallery-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap}.gallery-header h2{display:flex;align-items:center;gap:8px;margin:0;font-size:15px;color:var(--heading)}.gallery-header p{margin:4px 0 0;font-size:12px;color:var(--muted);max-width:62ch}.gallery-actions{display:flex;gap:8px;align-items:center}.gallery-search{display:flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--muted)}.gallery-search input{border:none;background:none;outline:none;font:inherit;font-size:12px;color:var(--ink);width:210px}.gallery-heading{display:flex;align-items:center;gap:7px;margin:14px 0 0;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.gallery-empty{font-size:12px;color:var(--muted);font-style:italic;margin:0}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:12px}.gallery-card{display:flex;flex-direction:column;gap:9px;padding:13px 15px;background:var(--paper);border:1px solid var(--line);border-radius:10px}.gallery-card.is-open{border-color:var(--teal)}.gallery-card>header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.gallery-card header div{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.gallery-card strong{font-size:13px;color:var(--heading)}.gallery-card small{font-size:10.5px;color:var(--faint);white-space:nowrap}.gallery-status{font-size:9.5px;text-transform:uppercase;letter-spacing:.04em;padding:1px 6px;border-radius:8px;border:1px solid var(--line);color:var(--muted)}.gallery-status.published{border-color:var(--green);color:var(--green)}.gallery-status.draft{border-color:var(--amber);color:var(--amber)}.gallery-description{margin:0;font-size:11.5px;color:var(--muted)}.gallery-route{margin:0;font-size:11px;color:var(--muted)}.gallery-counts{display:flex;flex-wrap:wrap;gap:12px;list-style:none;margin:0;padding:0}.gallery-counts li{font-size:10.5px;color:var(--muted)}.gallery-counts b{display:block;font-size:15px;color:var(--heading);line-height:1.2}.gallery-counts.wide{gap:18px;padding:10px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.gallery-expand{align-self:flex-start;background:none;border:none;padding:0;font:inherit;font-size:11px;color:var(--heading);cursor:pointer;text-decoration:underline}.gallery-expand:disabled{opacity:.5;cursor:default}.gallery-detail{border-top:1px solid var(--line);padding-top:9px;font-size:11.5px;color:var(--muted)}.gallery-detail h5{margin:8px 0 3px;font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--faint)}.gallery-detail ul{margin:0;padding-left:16px}.gallery-chips{display:flex;flex-wrap:wrap;gap:4px;margin:0}.gallery-chips code{font-size:10px;padding:1px 5px;border-radius:4px;background:var(--canvas);border:1px solid var(--line);color:var(--ink)}.gallery-card footer{display:flex;gap:7px;margin-top:auto;padding-top:8px;border-top:1px solid var(--line)}.gallery-import{width:min(620px,100%)}.gallery-verdict{font-size:12px;display:flex;align-items:center;gap:7px;margin:0}.gallery-verdict.ok{color:var(--green)}.gallery-verdict.bad{display:block;color:var(--red)}.gallery-verdict.bad strong{display:block;margin-bottom:4px}.gallery-verdict.bad ul{margin:0;padding-left:18px}.gallery-warnings{font-size:11.5px;color:var(--muted)}.gallery-warnings h5{margin:0 0 3px;font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--faint)}.gallery-warnings ul{margin:0;padding-left:18px}.theme-logo{display:grid;place-items:center;padding:0;border:none;background:none;cursor:pointer}.theme-logo:hover .pencil-mark{transform:scale(1.06)}.pencil-mark{transition:transform .12s ease;display:block}.brand-mark{width:38px;height:38px;border-radius:10px;background:var(--paper);border:1px solid var(--line)}body.dark-theme .brand-mark{background:var(--canvas);border-color:var(--line-strong)}.login-logo{width:54px;height:54px;border-radius:14px;background:#ffffffeb}.pencil-lockup{display:flex;align-items:center;gap:12px}.pencil-wordmark{display:flex;flex-direction:column;line-height:1;letter-spacing:.14em}.pencil-wordmark strong{font-size:calc(var(--mark-size) * .42);font-weight:700;color:var(--heading)}.pencil-wordmark em{font-size:calc(var(--mark-size) * .26);font-style:normal;color:var(--muted);letter-spacing:.24em}.branding-editor{display:flex;flex-direction:column;gap:14px;max-width:780px}.branding-preview{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.branding-preview .preview-text{display:flex;flex-direction:column;gap:1px}.branding-preview strong{font-size:14px;color:var(--heading)}.branding-preview span{font-size:11px;color:var(--muted)}.branding-preview small{font-size:10px;color:var(--faint)}.branding-group-rows{display:flex;flex-direction:column;gap:7px}.branding-group-row{display:grid;grid-template-columns:160px 1fr auto;gap:8px;align-items:center}.branding-colour{display:flex;align-items:center;gap:8px}.branding-colour input[type=color]{width:40px;height:30px;padding:0;border:1px solid var(--line);border-radius:6px;background:none;cursor:pointer}.tracker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.tracker-card{display:flex;flex-direction:column;gap:8px;align-items:flex-start;padding:18px 20px;text-align:left;cursor:pointer;background:var(--paper);border:1px solid var(--line);border-radius:12px;font:inherit;color:var(--ink);transition:border-color .12s ease,transform .12s ease}.tracker-card:hover{border-color:var(--teal);transform:translateY(-2px)}.tracker-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--canvas);color:var(--heading);border:1px solid var(--line)}.tracker-card strong{font-size:15px;color:var(--heading);line-height:1.3}.tracker-total{font-size:11px;color:var(--muted)}.tracker-stats{display:flex;gap:18px;margin:4px 0 0}.tracker-stats div{display:flex;flex-direction:column}.tracker-stats dt{font-size:9.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--faint)}.tracker-stats dd{margin:0;font-size:16px;color:var(--heading)}.tracker-figures{margin:2px 0 0;font-size:11px;color:var(--muted)}.tracker-latest{margin:0;font-size:10px;color:var(--faint)}.tracker-back{align-self:flex-start;margin-bottom:6px}.brand-image{object-fit:contain;display:block;border-radius:6px}.preview-thumb{position:relative;width:100%;background:var(--canvas);border:1px solid var(--line);border-radius:8px;overflow:hidden}.preview-block{position:absolute;border:1.5px solid var(--teal);border-radius:4px;background:color-mix(in srgb,var(--teal) 10%,transparent);display:flex;align-items:center;justify-content:center;padding:2px;overflow:hidden}.preview-block span{font-size:8px;color:var(--muted);text-align:center;line-height:1.15;overflow:hidden}.preview-empty{font-size:11px;color:var(--muted);font-style:italic;margin:0}.preview-pages{display:flex;flex-direction:column;gap:14px}.preview-page-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 5px;font-size:12px;color:var(--heading)}.gallery-access{display:flex;flex-wrap:wrap;gap:5px;align-items:center;font-size:10.5px;color:var(--muted)}.gallery-access .chip{padding:1px 6px;border-radius:8px;border:1px solid var(--line);background:var(--canvas)}.gallery-access .chip.warn{border-color:var(--amber);color:var(--amber)}.preview-fields{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}.preview-fields li{display:flex;gap:8px;align-items:baseline;font-size:11.5px}.preview-fields code{font-size:10px;color:var(--faint)}.hint{margin:2px 0 8px;font-size:11px;color:var(--muted);line-height:1.5}.hint code{font-size:10.5px;padding:1px 4px;border-radius:3px;background:var(--canvas);border:1px solid var(--line);color:var(--ink)}.branding-editor h3{margin:0;font-size:15px;color:var(--heading)}.branding-editor h4{margin:0 0 4px;font-size:12px;color:var(--ink)}.branding-editor code{font-size:10.5px;color:var(--muted)}.spreadsheet-workspace{display:grid;grid-template-columns:1fr 260px;grid-template-rows:auto 1fr;gap:10px;height:calc(100vh - 96px);min-height:460px}.spreadsheet-bar{grid-column:1 / -1;display:flex;align-items:center;gap:12px;padding:8px 12px;background:var(--nav-light);border:1px solid var(--line);border-radius:6px}.spreadsheet-title{display:flex;align-items:center;gap:6px;font-weight:700;font-size:12px}.spreadsheet-hint{flex:1;color:var(--muted);font-size:10px}.spreadsheet-hint code{background:var(--paper);padding:2px 6px;border-radius:4px;border:1px solid var(--line)}.spreadsheet-grid{min-height:380px;border:1px solid var(--line);border-radius:6px;overflow:hidden}.spreadsheet-side{overflow:auto;font-size:10px;display:flex;flex-direction:column;gap:12px}.spreadsheet-side h4{margin:0 0 6px;font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.spreadsheet-side details{border:1px solid var(--line);border-radius:5px;padding:6px 8px;margin-bottom:6px;background:var(--paper)}.spreadsheet-side summary{cursor:pointer;font-weight:600}.spreadsheet-side summary em{color:var(--amber-bright);font-style:normal;font-weight:400}.spreadsheet-side .muted{color:var(--muted);margin:6px 0 3px}.spreadsheet-fields{display:flex;flex-wrap:wrap;gap:3px}.spreadsheet-fields code{background:var(--blue-soft);border-radius:3px;padding:1px 5px;font-size:9px}.spreadsheet-chip{cursor:grab}.spreadsheet-chip:active{cursor:grabbing}.pivot-well{border:1px dashed var(--line);border-radius:5px;padding:5px 7px;margin-bottom:5px;background:var(--paper);min-height:34px}.pivot-well.is-over{border-color:var(--blue-bright);background:var(--blue-soft);border-style:solid}.pivot-well-name{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600;margin-bottom:3px}.pivot-well-items{display:flex;flex-wrap:wrap;gap:3px;align-items:center}.pivot-chip{display:inline-flex;align-items:center;gap:3px;font-family:inherit;background:var(--blue-bright);color:#fff;border:none;border-radius:3px;padding:2px 5px;font-size:9px;cursor:pointer}.pivot-chip:hover{opacity:.85}.pivot-empty{color:var(--muted);font-style:normal;font-size:9px}.pivot-actions{display:flex;gap:5px;margin-top:6px}body.dark-theme .pivot-chip{color:#04121c}.spreadsheet-refusal{color:var(--muted);line-height:1.45;margin:0 0 6px}.spreadsheet-refusal code{color:var(--red);font-weight:700;margin-right:4px}.spreadsheet-note{color:var(--muted);line-height:1.45;border-top:1px solid var(--line);padding-top:8px}.spin{animation:spreadsheet-spin 1s linear infinite}@keyframes spreadsheet-spin{to{transform:rotate(360deg)}}@media(max-width:1100px){.spreadsheet-workspace{grid-template-columns:1fr;height:auto}.spreadsheet-grid{height:60vh}}.grants-page{display:flex;flex-direction:column;gap:14px;max-width:1080px}.grants-card{background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:14px 16px}.grants-card h3{display:flex;align-items:center;gap:6px;margin:0 0 6px;font-size:12px}.grants-card .muted{color:var(--muted);font-size:10px;line-height:1.5;margin:8px 0 4px}.grants-row{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;margin-bottom:8px}.grants-grow{flex:1;min-width:220px}.grants-table{width:100%;border-collapse:collapse;font-size:10px;margin-top:6px}.grants-table th{text-align:left;padding:6px;color:var(--muted);font-weight:600;border-bottom:1px solid var(--line)}.grants-table td{padding:6px;border-bottom:1px solid var(--line);vertical-align:top}.grants-table small{color:var(--muted)}.grants-table tr.is-inactive{opacity:.55}.grants-table em{color:var(--muted);font-style:normal}.assignments-page .cached-panel{margin-bottom:4px}.assign-flags{background:var(--amber-soft);border-color:var(--amber)}.assign-flags h3{color:var(--amber)}.assign-flags p{margin:6px 0;font-size:12px;line-height:1.6;color:var(--ink)}.assign-warn{display:inline-flex;align-items:center;gap:5px;color:var(--amber);font-weight:650}.grants-chips{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.grants-chips button{border:1px solid var(--line);background:var(--nav-light);color:var(--ink);border-radius:4px;padding:2px 7px;font-size:9px;cursor:pointer;font-family:inherit}.grants-chips button:hover{border-color:var(--blue-bright)}.grants-chips button.is-on{background:var(--blue-bright);border-color:var(--blue-bright);color:#fff;font-weight:600}.grants-breadth{display:flex;align-items:center;gap:6px;font-size:10px;line-height:1.5;padding:8px 10px;border-radius:5px;margin:10px 0;background:var(--blue-soft);color:var(--ink)}.grants-breadth.is-wide{background:var(--amber-soft);border:1px solid var(--amber-bright)}.grants-problem{display:flex;align-items:flex-start;gap:6px;font-size:10px;line-height:1.5;color:var(--red);margin:6px 0}body.dark-theme .grants-chips button.is-on{color:#04121c}.spreadsheet-template{display:flex;align-items:center;gap:6px;width:100%;text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:5px;padding:6px 8px;margin-bottom:4px;font-size:10px;font-family:inherit;color:var(--ink);cursor:pointer}.spreadsheet-template:hover:not(:disabled){border-color:var(--blue-bright);background:var(--blue-soft)}.spreadsheet-template:disabled{opacity:.6;cursor:default}.cached-tables-button{display:inline-flex;align-items:center;gap:6px;margin-left:10px;padding:7px 12px;border:0;border-radius:6px;background:var(--surface-strong);color:var(--on-strong);font-size:11px;font-weight:750;white-space:nowrap;box-shadow:0 2px 8px #17365d38}.cached-tables-button:hover{filter:brightness(1.12)}.cached-tables{display:flex;flex-direction:column;gap:14px;padding:4px 2px 28px}.cached-header{display:flex;flex-direction:column;gap:10px}.cached-header h2{display:flex;align-items:center;gap:8px;margin:0 0 4px;color:var(--heading);font-size:17px}.cached-header p{margin:0;max-width:76ch;font-size:12px;line-height:1.6}.cached-tables .ghost-button{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--line-strong);border-radius:6px;background:var(--paper);color:var(--muted);font-size:11px;font-weight:700}.cached-tables .ghost-button:hover{color:var(--ink);border-color:var(--faint)}.cached-panel{padding:16px 18px;border:1px solid var(--line);border-radius:10px;background:var(--paper);box-shadow:var(--shadow)}.cached-panel h3{display:flex;align-items:center;gap:7px;margin:0 0 12px;color:var(--heading);font-size:13px}.cached-panel h4{margin:0 0 6px;font-size:12px;color:var(--ink)}.cached-panel .muted{color:var(--muted);font-size:11.5px;line-height:1.6}.cached-plan .muted,.cached-plan p{color:var(--ink)}.cached-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:12px}.cached-form label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:700;color:var(--muted)}.cached-form label em{font-style:normal;font-weight:600;color:var(--muted)}.cached-form input,.cached-form select{padding:8px 10px;border:1px solid var(--line-strong);border-radius:6px;background:var(--paper);color:var(--ink);font-size:12px;font-weight:500}.cached-note{margin:10px 0 0;max-width:82ch}.cached-grain{margin-top:16px}.cached-grain p{max-width:82ch;margin:0 0 9px}.cached-chips{display:flex;flex-wrap:wrap;gap:6px}.cached-chips .chip,.cached-mode-buttons .chip{padding:5px 10px;border:1px solid var(--line-strong);border-radius:20px;background:var(--paper);color:var(--muted);font-size:11px;font-weight:650}.cached-chips .chip:hover,.cached-mode-buttons .chip:hover:not(:disabled){border-color:var(--faint);color:var(--ink)}.cached-chips .chip-on,.cached-mode-buttons .chip-on{background:var(--surface-strong);border-color:var(--surface-strong);color:var(--on-strong)}.cached-mode-buttons .chip:disabled{opacity:.6;cursor:default}.cached-plan{margin:14px 0;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--blue-soft)}.cached-stats{display:flex;flex-wrap:wrap;gap:22px}.cached-stats div{display:flex;flex-direction:column}.cached-stats strong{font-size:19px;color:var(--heading);line-height:1.2}.cached-stats span{font-size:10px;font-weight:750;text-transform:uppercase;color:var(--ink)}.cached-servable{display:flex;align-items:center;gap:6px;margin:12px 0 0;font-size:11.5px;color:var(--green);font-weight:650}.cached-refused{margin-top:10px}.cached-refused p{display:flex;align-items:center;gap:6px;margin:0 0 5px;font-size:11.5px;font-weight:700;color:var(--amber)}.cached-refused ul{margin:0;padding-left:20px}.cached-refused li{font-size:11.5px;color:var(--ink);line-height:1.7}.cached-refused code,.cached-card code{padding:1px 5px;border-radius:4px;background:var(--canvas);font-size:11px;color:var(--ink)}.cached-ok{display:flex;align-items:center;gap:6px;margin:10px 0 0;font-size:11.5px;font-weight:700;color:var(--green)}.cached-error{display:flex;align-items:center;gap:6px;margin:10px 0 0;font-size:11.5px;font-weight:700;color:var(--red)}.cached-tables .primary-button{margin-top:16px;padding:9px 18px;border:0;border-radius:6px;background:var(--surface-strong);color:var(--on-strong);font-size:12px;font-weight:750}.cached-tables .primary-button:hover:not(:disabled){filter:brightness(1.12)}.cached-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:12px}.cached-card{padding:14px 15px;border:1px solid var(--line);border-radius:9px;background:var(--canvas)}.cached-card.cached-off{opacity:.62}.cached-card header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:11px}.cached-card h4{margin:0 0 3px;font-size:13px}.cached-card .muted{margin:0;font-size:10.5px}.cached-badges{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.cached-badges .badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:20px;border:1px solid var(--line-strong);background:var(--paper);font-size:9.5px;font-weight:750;text-transform:uppercase;color:var(--muted)}.cached-badges .badge-warn{color:var(--amber);border-color:var(--amber);background:var(--amber-soft)}.cached-badges .badge-ok{color:var(--green);border-color:var(--green-bright);background:var(--green-soft)}.cached-grain-list{margin:10px 0 4px;font-size:11px;color:var(--muted);line-height:1.6}.cached-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.cached-actions button{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border:1px solid var(--line-strong);border-radius:6px;background:var(--paper);color:var(--ink);font-size:11px;font-weight:650}.cached-actions button:hover:not(:disabled){border-color:var(--faint)}.cached-actions button.danger{color:var(--red);border-color:color-mix(in srgb,var(--red) 40%,var(--line-strong))}.cached-modes{display:flex;flex-direction:column;gap:8px;margin-top:10px}.cached-mode-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--paper)}.cached-mode-row>div:first-child{display:flex;flex-direction:column;gap:2px}.cached-mode-row strong{font-size:12px}.cached-mode-row .muted{font-size:10px}.cached-mode-buttons{display:flex;flex-wrap:wrap;gap:4px}.notebooks-page .cached-form input{min-width:0}.notebooks-preview{margin-top:8px;max-height:260px;overflow:auto}.notebooks-folders-table{margin-top:14px}.cached-rebuild-all{display:inline-flex;align-items:center;gap:5px;margin-left:auto;font-family:inherit;font-size:10px;padding:4px 9px;border-radius:5px;cursor:pointer;color:var(--amber);background:var(--amber-soft);border:1px solid var(--amber)}.cached-rebuild-all:disabled{opacity:.6;cursor:default}.cached-rebuild-report{margin:8px 0 0;padding-left:18px;font-size:10px;line-height:1.7;color:var(--muted)}.cached-rebuild-report li.is-failed{color:var(--red)}.cached-explainer ul{margin:0;padding-left:20px}.cached-explainer li{margin-bottom:9px;font-size:12px;line-height:1.65;color:var(--muted)}.cached-explainer li strong{color:var(--ink)}.number-cell input.typed-measure{width:100%;padding:3px 5px;border:1px dashed var(--line-strong);border-radius:4px;background:transparent;color:var(--ink);font-size:inherit;font-weight:600;text-align:right;font-variant-numeric:tabular-nums}.number-cell input.typed-measure::placeholder{color:var(--muted);font-weight:500;opacity:1}.number-cell input.typed-measure:hover:not(:disabled){border-color:var(--faint)}.number-cell input.typed-measure:focus{outline:none;border-style:solid;border-color:var(--adjusted-edge)}.number-cell.manually-overridden input.typed-measure{border-style:solid;border-color:var(--adjusted-edge);background:var(--adjusted);color:var(--adjusted-ink);font-weight:750}
