@import"https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&family=Geist+Mono:wght@400;500&display=swap";.df-v2 .df-physics-equations{margin:36px 0 0;border-top:1px solid var(--border)}.df-v2 .df-physics-law{padding:18px 0 20px;border-bottom:1px solid var(--border)}.df-v2 .df-physics-law-label{display:flex;justify-content:space-between;align-items:baseline;gap:16px;color:var(--fg-tertiary);font-size:14px}.df-v2 .df-physics-law-label span:last-child{font:400 14px var(--font-mono);font-variant-numeric:tabular-nums}.df-v2 .df-physics-equation-scroll{overflow-x:auto;overflow-y:hidden;padding:6px 0 4px}.df-v2 .df-physics-math{display:block;color:var(--fg);font-size:18px}.df-v2 .df-physics-math .katex-display{margin:8px 0 0;text-align:left}.df-v2 .df-physics-math .katex-display>.katex{text-align:left}.df-v2 .df-physics-symbol{color:var(--fg)}.df-v2 .df-physics-scope ul{margin:0;padding:0;list-style:none}.df-v2 .df-physics-scope li{display:grid;grid-template-columns:132px minmax(0,1fr);gap:4px 24px;padding:14px 0;border-top:1px solid var(--border)}.df-v2 .df-physics-scope li:last-child{border-bottom:1px solid var(--border)}.df-v2 .df-physics-scope strong{padding-top:4px;color:var(--fg-tertiary);font-size:14px;font-weight:500}.df-v2 .df-physics-scope li span{max-width:40em;font-size:16px;line-height:1.6}.df-v2 .df-physics-symbols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 48px;margin:0}.df-v2 .df-physics-symbols>div{display:grid;grid-template-columns:76px minmax(0,1fr);gap:16px;align-items:baseline}.df-v2 .df-physics-symbols dd{margin:0;font-size:15px;line-height:1.5}.df-v2 .df-ref-details .df-physics-equations{margin-top:4px}.df-v2 .df-ref-details .df-physics-law:last-child{border-bottom:0}.df-v2 .df-physics-topic-footer{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:16px 32px;margin-top:40px}.df-v2 .df-physics-source-links{display:flex;flex-wrap:wrap;gap:8px 24px}.df-v2 .df-physics-source-links a{color:var(--fg-tertiary);font-size:14px;text-decoration:underline;text-decoration-color:var(--border-strong);text-underline-offset:4px}.df-v2 .df-physics-source-links a:hover{color:var(--fg)}@media (max-width: 600px){.df-v2 .df-physics-scope li,.df-v2 .df-physics-symbols{grid-template-columns:minmax(0,1fr)}}.df-v2 .df-public:is(.df-landing,.df-public-physics,.df-public-validation){color-scheme:dark;--bg: #141e2c;--bg-elev: #1b2738;--bg-sunk: #0f1723;--fg: #f3f1ea;--fg-secondary: #c5cedb;--fg-tertiary: #94a2b6;--border: rgba(197, 206, 219, .16);--border-strong: rgba(197, 206, 219, .34);--accent: #8fc4e8;--accent-soft: rgba(143, 196, 232, .16);--accent-fg: #141e2c;--red: #f0907a;--data: #d87534;--data-reference: #4f95d6;--gutter: clamp(20px, 4vw, 48px);--page: 1200px;--measure: min(calc(var(--page) - 2 * var(--gutter)), calc(100% - 2 * var(--gutter)));height:100%;overflow-y:auto;overflow-x:clip;background:var(--bg);color:var(--fg-secondary);font-family:var(--font-sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;scroll-padding-top:24px}.df-v2 .df-public :is(a,button,input,summary,[tabindex]):focus-visible{outline:2px solid var(--fg);outline-offset:3px}.df-v2 .df-public a{color:inherit}.df-v2 .df-public .btn{height:44px;padding:0 22px;border-radius:6px;font:600 15px/1 var(--font-sans)}.df-v2 .df-public .btn.primary{background:var(--fg);border-color:var(--fg);color:var(--bg);box-shadow:none;text-decoration:none}.df-v2 .df-public .btn.primary:hover{background:#fff;border-color:#fff;filter:none}.df-v2 .df-public .df-public-header{display:flex;justify-content:space-between;align-items:center;gap:16px 24px;flex-wrap:wrap;width:var(--measure);margin-inline:auto;padding-block:22px}.df-v2 .df-public .df-public-brand{display:inline-flex;align-items:center;gap:10px;color:var(--fg);text-decoration:none}.df-v2 .df-public .df-public-brand strong{font-size:19px;font-weight:600;letter-spacing:-.02em}.df-v2 .df-public .df-public-brand strong span{color:var(--accent)}.df-v2 .df-public .df-public-brand .brand-mark{width:26px;height:26px;border-radius:7px}.df-v2 .df-public .df-public-header nav{display:flex;align-items:center;gap:clamp(16px,2.4vw,32px)}.df-v2 .df-public .df-public-header nav>a:not(.btn){display:inline-flex;align-items:center;min-height:44px;color:var(--fg-secondary);font-size:15px;text-decoration:none}.df-v2 .df-public .df-public-header nav>a:not(.btn):hover{color:var(--fg)}.df-v2 .df-public .df-public-header nav>a[aria-current]{color:var(--fg);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:8px}.df-v2 .df-public .df-public-header .btn{height:36px;padding:0 16px;font-size:14px}.df-v2 .df-public-footer{width:var(--measure);margin-inline:auto;border-top:1px solid var(--border)}.df-v2 .df-public-footer-inner{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:16px 32px;padding:28px 0 44px;font-size:14px;color:var(--fg-tertiary)}.df-v2 .df-public-footer-brand{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 16px}.df-v2 .df-public-footer-brand strong{color:var(--fg);font-size:16px;font-weight:600;letter-spacing:-.02em}.df-v2 .df-public-footer-brand strong span{color:var(--accent)}.df-v2 .df-public-footer nav{display:flex;flex-wrap:wrap;gap:8px 28px}.df-v2 .df-public-footer nav a{color:var(--fg-secondary);text-decoration:none}.df-v2 .df-public-footer nav a:hover{color:var(--fg);text-decoration:underline;text-underline-offset:4px}.df-v2 .df-public :is(.df-lp-more,.df-lp-actions>a,.df-physics-benchmark-link){color:var(--fg);font-size:15px;font-weight:500;text-decoration:underline;text-decoration-color:var(--border-strong);text-decoration-thickness:1px;text-underline-offset:6px}.df-v2 .df-public :is(.df-lp-more,.df-lp-actions>a,.df-physics-benchmark-link):hover{text-decoration-color:var(--fg)}.df-v2 .df-public :is(.df-lp-more,.df-physics-benchmark-link):after{content:"→";display:inline-block;margin-left:.45em}.df-v2 .df-lp-hero{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(24px,4vw,64px);padding:clamp(32px,5vw,72px) 0 clamp(56px,7vw,104px) max(var(--gutter),calc((100% - var(--page)) / 2 + var(--gutter)))}.df-v2 .df-lp-copy{min-width:0}.df-v2 .df-lp-copy h1{margin:0;color:var(--fg);font:600 clamp(38px,4.7vw,64px)/1.05 var(--font-sans);letter-spacing:-.035em;text-wrap:balance}.df-v2 .df-lp-copy h1 em{font-style:normal;color:var(--accent)}.df-v2 .df-lp-description{max-width:30em;margin:28px 0 0;font-size:18px;line-height:1.6}.df-v2 .df-lp-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 28px;margin-top:36px}.df-v2 .df-lp-hero-note{margin:20px 0 0;color:var(--fg-tertiary);font-size:13.5px}.df-v2 .df-lp-art{min-width:0;margin:0}.df-v2 .df-lp-art img{display:block;width:100%;max-width:980px;height:auto}.df-v2 .df-lp-art figcaption{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px 24px;max-width:980px;padding-right:var(--gutter);color:var(--fg-tertiary);font:400 12px/1.5 var(--font-mono)}.df-v2 .df-lp-scale{white-space:nowrap}.df-v2 .df-lp-scale i{display:inline-block;width:96px;height:6px;margin:0 8px;border-radius:3px;vertical-align:middle;background:linear-gradient(90deg,#313695,#4575b4,#74add1,#e0f3f8,#fee090,#f46d43,#a50026)}.df-v2 .df-lp-section{width:var(--measure);margin-inline:auto;padding-block:clamp(56px,7vw,104px);border-top:1px solid var(--border)}.df-v2 .df-lp-section h2{margin:0;color:var(--fg);font:600 clamp(28px,3vw,40px)/1.12 var(--font-sans);letter-spacing:-.03em;text-wrap:balance}.df-v2 .df-lp-evidence{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:40px clamp(32px,5vw,72px);align-items:start}.df-v2 .df-lp-evidence-copy>p{max-width:32em;margin:24px 0 0;font-size:17px}.df-v2 .df-lp-evidence>:is(.df-cmp-scroll,.df-lp-more){grid-column:1 / -1;justify-self:start}.df-v2 .df-lp-evidence>.df-cmp-scroll{justify-self:stretch}.df-v2 .df-lp-more{display:inline-block}.df-v2 .df-lp-figure{min-width:0;margin:0;overflow-x:auto}.df-v2 .df-lp-figure svg{display:block;width:100%;min-width:520px;height:auto;touch-action:pan-y}.df-v2 .df-lp-figure figcaption{max-width:38em;margin-top:16px;color:var(--fg-tertiary);font-size:13.5px;line-height:1.55}.df-v2 .df-lp-figure figcaption strong{color:var(--fg-secondary);font-weight:500}.df-v2 .df-fig-grid{stroke:var(--border);stroke-width:1}.df-v2 .df-fig-tick{fill:var(--fg-tertiary);font:400 12px var(--font-mono)}.df-v2 .df-fig-axis{fill:var(--fg-tertiary);font:400 12px var(--font-sans)}.df-v2 .df-fig-band{fill:#4f95d638;stroke:#4f95d6b3;stroke-width:1}.df-v2 .df-fig-line{fill:none;stroke:var(--data);stroke-width:2.25;stroke-linejoin:round;stroke-linecap:round}.df-v2 .df-fig-end{fill:var(--data);stroke:var(--bg);stroke-width:2}.df-v2 .df-fig-label text{fill:var(--fg-secondary);font:400 12.5px var(--font-sans)}.df-v2 .df-fig-label text.value{fill:var(--fg);font:500 12.5px var(--font-mono)}.df-v2 .df-fig-hover line{stroke:var(--border-strong);stroke-width:1}.df-v2 .df-fig-hover circle{fill:var(--bg);stroke:var(--fg);stroke-width:1.5}.df-v2 .df-fig-hover text{fill:var(--fg-secondary);font:400 12px var(--font-mono);paint-order:stroke;stroke:var(--bg);stroke-width:4}.df-v2 .df-lp-coverage{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:32px clamp(32px,5vw,72px);align-items:start}.df-v2 .df-lp-coverage dl{margin:0}.df-v2 .df-lp-coverage dl>div{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,7fr);gap:8px 32px;padding:22px 0;border-top:1px solid var(--border)}.df-v2 .df-lp-coverage dl>div:first-child{padding-top:6px;border-top:0}.df-v2 .df-lp-coverage dt{color:var(--fg);font:600 18px/1.4 var(--font-sans);letter-spacing:-.01em}.df-v2 .df-lp-coverage dd{max-width:36em;margin:0;padding-top:3px}.df-v2 .df-lp-coverage .df-lp-more{grid-column:2;margin-top:0;justify-self:start}.df-v2 .df-lp-closing{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:24px 48px;padding-block:clamp(48px,6vw,80px)}.df-v2 .df-lp-closing h2{font-size:clamp(24px,2.4vw,30px)}.df-v2 .df-public #waitlist{scroll-margin-top:150px}.df-v2 .df-public .df-waitlist-form,.df-v2 .df-public .df-waitlist-success{width:min(560px,100%);margin-top:32px}.df-v2 .df-public .df-waitlist-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px}.df-v2 .df-public .df-waitlist-field{display:grid;gap:6px;min-width:0;color:var(--fg-secondary);font-size:13px;font-weight:500}.df-v2 .df-public .df-waitlist-fields input{width:100%;height:44px;padding:0 14px;color:var(--fg);background:var(--bg-sunk);border:1px solid var(--border-strong);border-radius:6px;outline:none;box-shadow:none;font:400 15px var(--font-sans)}.df-v2 .df-public .df-waitlist-fields input::placeholder{color:var(--fg-tertiary)}.df-v2 .df-public .df-waitlist-fields input:focus{border-color:var(--fg);box-shadow:none}.df-v2 .df-public .df-waitlist-fields .btn{grid-column:1 / -1;justify-content:center;height:44px}.df-v2 .df-public .df-waitlist-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.df-v2 .df-public .df-waitlist-turnstile{margin-top:10px;min-height:65px}.df-v2 .df-public .df-waitlist-note,.df-v2 .df-public .df-waitlist-message{margin:8px 0 0;color:var(--fg-tertiary);font-size:13px;line-height:1.5}.df-v2 .df-public .df-waitlist-message.error{color:var(--red)}.df-v2 .df-public .df-waitlist-success{display:flex;align-items:flex-start;gap:11px;padding:16px;color:var(--fg);background:var(--bg-elev);border:1px solid var(--border-strong);border-radius:6px}.df-v2 .df-public .df-waitlist-success>span{display:grid;place-items:center;width:27px;height:27px;flex:0 0 auto;color:var(--fg);background:var(--accent-soft);border-radius:50%}.df-v2 .df-public .df-waitlist-success strong{display:block;font-size:15px}.df-v2 .df-public .df-waitlist-success p{margin:3px 0 0;color:var(--fg-secondary);font-size:14px}.df-v2 .df-cmp-scroll{overflow-x:auto}.df-v2 .df-cmp{width:100%;border-collapse:collapse;font-size:15px;line-height:1.4}.df-v2 .df-cmp caption{padding-bottom:10px;text-align:left;color:var(--fg-tertiary);font:400 12px var(--font-mono)}.df-v2 .df-cmp :is(th,td){padding:12px 20px 12px 0;text-align:left;vertical-align:baseline;border-bottom:1px solid var(--border)}.df-v2 .df-cmp :is(th,td):last-child{padding-right:0}.df-v2 .df-cmp thead th{padding-block:8px;color:var(--fg-tertiary);font-size:13px;font-weight:500;border-bottom-color:var(--border-strong)}.df-v2 .df-cmp tbody th{color:var(--fg-secondary);font-weight:400}.df-v2 .df-cmp td{color:var(--fg-secondary);font:400 14px/1.4 var(--font-mono);font-variant-numeric:tabular-nums}.df-v2 .df-cmp td.df-cmp-ours{color:var(--fg);font-weight:500;white-space:nowrap}.df-v2 .df-cmp td.df-cmp-agreement{font-family:var(--font-sans);white-space:nowrap}.df-v2 .df-cmp-status{display:inline-flex;align-items:center;gap:8px}.df-v2 .df-cmp-status:before{content:"";width:7px;height:7px;border-radius:50%;border:1.5px solid var(--fg-tertiary)}.df-v2 .df-cmp-status.match:before{background:#6fbf8f;border-color:#6fbf8f}.df-v2 .df-cmp-status.outside:before{background:#e8795a;border-color:#e8795a;border-radius:1px}.df-v2 .df-cmp-agreement small{margin-left:10px;color:var(--fg-tertiary);font:400 12px var(--font-mono)}.df-v2 .df-ref-title{width:var(--measure);margin-inline:auto;padding:clamp(20px,3vw,40px) 0 28px;border-bottom:1px solid var(--border)}.df-v2 .df-ref-title h1{margin:0;color:var(--fg);font:600 clamp(30px,3.1vw,40px)/1.1 var(--font-sans);letter-spacing:-.03em}.df-v2 .df-ref-title p{max-width:44em;margin:10px 0 0;color:var(--fg-tertiary)}.df-v2 .df-ref-modules{display:flex;gap:28px;width:var(--measure);margin-inline:auto;border-bottom:1px solid var(--border);overflow-x:auto}.df-v2 .df-ref-modules a{margin-bottom:-1px;padding:14px 0;border-bottom:2px solid transparent;color:var(--fg-tertiary);font-size:15px;font-weight:500;text-decoration:none;white-space:nowrap}.df-v2 .df-ref-modules a:hover{color:var(--fg)}.df-v2 .df-ref-modules a[aria-current]{color:var(--fg);border-bottom-color:var(--fg)}.df-v2 .df-ref-layout{display:grid;grid-template-columns:216px minmax(0,1fr);gap:clamp(32px,5vw,72px);width:var(--measure);margin-inline:auto;padding:44px 0 clamp(64px,8vw,112px)}.df-v2 .df-ref-rail{position:sticky;top:24px;align-self:start}.df-v2 .df-ref-rail nav{display:flex;flex-direction:column}.df-v2 .df-ref-rail :is(a,button){display:block;padding:9px 0 9px 16px;border:0;border-left:1px solid var(--border);border-radius:0;background:none;color:var(--fg-tertiary);font:400 15px/1.35 var(--font-sans);text-align:left;text-decoration:none;cursor:pointer}.df-v2 .df-ref-rail small{display:block;margin-top:2px;color:var(--fg-tertiary);font-size:12.5px;line-height:1.4}.df-v2 .df-ref-rail :is(a,button):hover{color:var(--fg)}.df-v2 .df-ref-rail :is(a[aria-current],button[aria-selected=true]){color:var(--fg);font-weight:500;box-shadow:inset 2px 0 0 var(--fg);border-left-color:transparent}.df-v2 .df-ref-article{min-width:0}.df-v2 .df-ref-article h2{margin:0 0 16px;color:var(--fg);font:600 clamp(28px,2.8vw,36px)/1.15 var(--font-sans);letter-spacing:-.03em;text-wrap:balance}.df-v2 .df-ref-article h3{margin:48px 0 12px;color:var(--fg);font:600 22px/1.25 var(--font-sans);letter-spacing:-.02em}.df-v2 .df-ref-article h4{margin:20px 0 6px;color:var(--fg);font:600 15px/1.4 var(--font-sans)}.df-v2 .df-ref-article p{max-width:40em;margin:0 0 12px;font:400 16px/1.65 var(--font-sans)}.df-v2 .df-ref-article :is(.df-ref-lede,.df-physics-description){max-width:36em;margin-bottom:0;font-size:18px;line-height:1.55}.df-v2 .df-ref-details{border-top:1px solid var(--border)}.df-v2 .df-ref-details:last-of-type{border-bottom:1px solid var(--border)}.df-v2 .df-ref-details>summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;color:var(--fg);font-size:16px;font-weight:500;cursor:pointer;list-style:none}.df-v2 .df-ref-details>summary::-webkit-details-marker{display:none}.df-v2 .df-ref-details>summary:after{content:"+";color:var(--fg-tertiary);font:400 20px/1 var(--font-mono)}.df-v2 .df-ref-details[open]>summary:after{content:"−"}.df-v2 .df-ref-details>summary:hover:after{color:var(--fg)}.df-v2 .df-ref-details[open]{padding-bottom:20px}.df-v2 .df-ref-details>:is(p,h4):first-of-type{margin-top:0}.df-v2 .df-bm-cases{display:flex;flex-wrap:wrap;gap:0 32px;margin:36px 0 0;border-bottom:1px solid var(--border)}.df-v2 .df-bm-cases button{margin-bottom:-1px;padding:10px 0 12px;border:0;border-bottom:2px solid transparent;border-radius:0;background:none;color:var(--fg-tertiary);font:500 15px/1.4 var(--font-sans);text-align:left;cursor:pointer}.df-v2 .df-bm-cases button small{margin-left:8px;font-size:13px;font-weight:400}.df-v2 .df-bm-cases button:hover{color:var(--fg)}.df-v2 .df-bm-cases button[aria-selected=true]{color:var(--fg);border-bottom-color:var(--fg)}.df-v2 .df-bm-article .df-bm-cases+h3{margin-top:36px}.df-v2 .df-ref-article p:is(.df-bm-qualification,.df-bm-note,.df-bm-citation){max-width:46em;color:var(--fg-tertiary);font:400 14px/1.55 var(--font-sans)}.df-v2 .df-bm-article>.df-cmp-scroll{margin:28px 0 0}.df-v2 .df-bm-plots{margin-top:48px}.df-v2 .df-bm-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 32px;margin-top:20px}.df-v2 .df-bm-chart-grid>:only-child{grid-column:1 / -1}.df-v2 .df-public .spe1-chart-card{min-width:0;padding:14px 0 0;border:0;border-top:1px solid var(--border);border-radius:0;background:none;box-shadow:none}.df-v2 .df-public .spe1-chart-title{padding:0;color:var(--fg);font:600 14px/1.4 var(--font-sans)}.df-v2 .df-public .benchmark-chart-title-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:0}.df-v2 .df-public .benchmark-chart-title-row a{color:var(--fg-tertiary);font-size:12.5px;font-weight:400;text-decoration:underline;text-underline-offset:3px}.df-v2 .df-public .benchmark-chart-title-row a:hover{color:var(--fg)}.df-v2 .df-bm-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 24px;margin:4px 0 20px}.df-v2 .df-bm-facts dt{color:var(--fg-tertiary);font-size:13px}.df-v2 .df-bm-facts dd{margin:4px 0 0;color:var(--fg);font:400 14px/1.45 var(--font-mono)}.df-v2 .df-ref-article p.df-bm-citation{margin-top:28px}.df-v2 .df-bm-closing{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px 40px;margin-top:64px;padding-top:32px;border-top:1px solid var(--border)}.df-v2 .df-ref-article .df-bm-closing p{margin:0;color:var(--fg);font-size:20px;font-weight:600;letter-spacing:-.02em;line-height:1.3}@media (max-width: 900px){.df-v2 .df-lp-hero{grid-template-columns:minmax(0,1fr);padding-inline:var(--gutter) 0}.df-v2 .df-lp-copy{padding-right:var(--gutter)}.df-v2 .df-lp-evidence,.df-v2 .df-lp-coverage{grid-template-columns:minmax(0,1fr)}.df-v2 .df-lp-coverage .df-lp-more{grid-column:1}.df-v2 .df-ref-layout{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:24px}.df-v2 .df-ref-rail{position:static;margin-inline:calc(-1 * var(--gutter));padding-inline:var(--gutter);overflow-x:auto}.df-v2 .df-ref-rail nav{flex-direction:row;gap:24px;border-bottom:1px solid var(--border)}.df-v2 .df-ref-rail :is(a,button){flex:none;padding:10px 0 12px;border-left:0;white-space:nowrap}.df-v2 .df-ref-rail small{display:none}.df-v2 .df-ref-rail :is(a[aria-current],button[aria-selected=true]){box-shadow:inset 0 -2px 0 var(--fg)}.df-v2 .df-bm-chart-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width: 600px){.df-v2 .df-public .df-public-header nav{width:100%;justify-content:space-between}.df-v2 .df-public .df-waitlist-fields{grid-template-columns:1fr}.df-v2 .df-lp-coverage dl>div{grid-template-columns:minmax(0,1fr)}.df-v2 .df-bm-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.df-v2 .df-bm-cases button small{display:none}}@media (prefers-reduced-motion: reduce){.df-v2 .df-public{scroll-behavior:auto}.df-v2 .df-public .btn{transition:none}}:root{--font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Geist", sans-serif;--font-mono: "SF Mono", "Geist Mono", ui-monospace, Menlo, monospace;--bg: #f5f5f7;--bg-elev: #ffffff;--bg-sunk: #e5e5ea;--bg-rail: #f5f5f7;--viewport: #000000;--viewport-grid: #161617;--viewport-fg: #f5f5f7;--viewport-muted: #86868b;--fg: #1d1d1f;--fg-secondary: #515154;--fg-tertiary: #86868b;--fg-quaternary: #aeaeb2;--fg-on-dark: #f5f5f7;--border: #d2d2d7;--border-strong: #bcbcc0;--border-on-dark: rgba(255, 255, 255, .14);--accent: #0071e3;--accent-fg: #ffffff;--accent-soft: rgba(0, 113, 227, .08);--accent-border: rgba(0, 113, 227, .28);--warm: #ff9500;--warm-soft: rgba(255, 149, 0, .12);--green: oklch(.62 .13 150);--green-soft: oklch(.96 .02 150);--red: #ff3b30;--apple-glass: rgba(255, 255, 255, .82);--apple-glass-border: rgba(0, 0, 0, .08);--s-1: 4px;--s-2: 6px;--s-3: 8px;--s-4: 12px;--s-5: 16px;--s-6: 20px;--s-7: 24px;--s-8: 32px;--s-9: 48px;--r-1: 6px;--r-2: 8px;--r-3: 10px;--r-4: 14px;--r-5: 18px;--row-h: 32px;--topbar-h: 52px;--statusbar-h: 28px;--rail-w: 56px;--inspector-w: 304px;--sidebar-w: 288px;--shadow-1: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-2: 0 4px 12px rgba(0, 0, 0, .08), 0 1px 3px rgba(0, 0, 0, .05);--shadow-pop: 0 16px 40px rgba(0, 0, 0, .12), 0 2px 8px rgba(0, 0, 0, .06)}[data-theme=dark],.theme-dark,.df-v2.theme-dark{color-scheme:dark;--bg: #0f1723;--bg-elev: #1a2535;--bg-sunk: #222f42;--bg-rail: #131c2a;--viewport: #141e2c;--viewport-grid: #1b2738;--viewport-fg: #f3f1ea;--viewport-muted: #8593a8;--fg: #f3f1ea;--fg-secondary: #b4bfce;--fg-tertiary: #8593a8;--fg-quaternary: #4b5a70;--fg-on-dark: #f3f1ea;--border: rgba(197, 206, 219, .12);--border-strong: rgba(197, 206, 219, .24);--border-on-dark: rgba(197, 206, 219, .24);--accent: #8fc4e8;--accent-fg: #0f1723;--accent-soft: rgba(143, 196, 232, .14);--accent-border: rgba(143, 196, 232, .36);--warm: #ff9f0a;--warm-soft: rgba(255, 159, 10, .15);--green: oklch(.62 .13 150);--green-soft: oklch(.62 .13 150 / .15);--red: #ff453a;--apple-glass: rgba(20, 30, 44, .82);--apple-glass-border: rgba(197, 206, 219, .18);--shadow-1: 0 1px 3px rgba(0, 0, 0, .35);--shadow-2: 0 4px 16px rgba(0, 0, 0, .5);--shadow-pop: 0 20px 48px rgba(0, 0, 0, .7)}.df-v2.compact{--row-h: 26px;--topbar-h: 44px;--statusbar-h: 24px;--rail-w: 48px;--inspector-w: 272px;--sim-history-w: 332px;--sidebar-w: 258px;--s-4: 8px;--s-5: 12px}.df-v2{--sim-history-w: 304px}.df-v2 *,.df-v2 *:before,.df-v2 *:after{box-sizing:border-box}.df-v2{font-family:var(--font-sans);font-size:13px;line-height:1.4;color:var(--fg);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;height:100vh;overflow:hidden}.df-v2 .mesh-picker{position:relative}.df-v2 .mesh-picker-btn{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:5px;font-size:12px;font-family:var(--font-sans);color:var(--fg);background:none;border:none;cursor:pointer}.df-v2 .mesh-picker-btn:hover{background:var(--bg-sunk)}.df-v2 .mesh-picker-dropdown{position:absolute;top:calc(100% + 6px);left:0;z-index:200;background:var(--bg-elev);border:1px solid var(--border-strong);border-radius:8px;padding:4px;min-width:220px;box-shadow:0 8px 24px #00000073}.df-v2 .mesh-picker-item{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:5px;cursor:pointer;border:none;background:none;width:100%;text-align:left;color:var(--fg);font-size:12px}.df-v2 .mesh-picker-item:hover{background:var(--bg-sunk)}.df-v2 .mesh-picker-item.active{background:var(--accent-soft)}.df-v2 .mesh-picker-item .mpick-label{flex:1;font-weight:500}.df-v2 .mesh-picker-item .mpick-sub{font-size:11px;color:var(--fg-tertiary);font-family:var(--font-mono)}.df-v2 button{font-family:inherit;font-size:inherit;color:inherit;background:none;border:none;cursor:pointer;padding:0}.df-v2 input,.df-v2 select,.df-v2 textarea{font-family:inherit;font-size:inherit;color:inherit}.df-v2 .mono{font-family:var(--font-mono);font-feature-settings:"tnum" 1}.df-v2 .app{display:grid;grid-template-rows:auto minmax(0,1fr) var(--statusbar-h);height:100%}.df-v2 .topbar{display:grid;grid-template-columns:minmax(0,1fr) 440px minmax(0,1fr);min-height:var(--topbar-h);align-items:center;gap:var(--s-5);padding:0 var(--s-5);background:var(--bg-elev);border-bottom:1px solid var(--border);z-index:100;min-width:0;white-space:nowrap}.df-v2 .topbar-brand{display:flex;align-items:center;gap:var(--s-3);font-weight:600;letter-spacing:-.01em;font-size:14px;flex-shrink:0}.df-v2 .brand-mark{width:22px;height:22px;border-radius:6px;background:radial-gradient(circle at 30% 30%,oklch(.78 .16 250) 0%,transparent 50%),linear-gradient(135deg,#0d7dd4,#2074cf,#2a6cca 25%,#365abf 50%,#4134ab);position:relative;flex-shrink:0}.df-v2 .brand-mark:after{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border-radius:3px;background:repeating-linear-gradient(45deg,rgba(255,255,255,.35) 0 1.5px,transparent 1.5px 4px)}.df-v2 .project-name{display:flex;align-items:center;gap:var(--s-2);color:var(--fg-secondary);padding:4px 8px;border-radius:var(--r-2);cursor:pointer;white-space:nowrap;min-width:0;max-width:320px}.df-v2 .project-name:hover{background:var(--bg-sunk)}.df-v2 .project-name-sep{color:var(--fg-quaternary);flex-shrink:0}.df-v2 .project-name-current{color:var(--fg);font-weight:500;overflow:hidden;text-overflow:ellipsis;min-width:0}.df-v2 .topbar-identity{display:flex;align-items:center;gap:var(--s-5);min-width:0}.df-v2 .topbar-breadcrumbs{display:flex;align-items:center;min-width:0}.df-v2 .topbar-actions{grid-column:3;justify-self:end;min-width:0;max-width:100%;flex-wrap:wrap;justify-content:flex-end}.df-v2 .topbar>.stepper{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.df-v2 .topbar .step{justify-content:center}@media (max-width: 1400px){.df-v2 .topbar{grid-template-columns:minmax(0,1fr) auto;gap:0 var(--s-3)}.df-v2 .topbar-identity,.df-v2 .topbar-actions{min-height:var(--topbar-h)}.df-v2 .topbar-actions{grid-column:2;grid-row:1}.df-v2 .topbar.has-workflow{padding-bottom:6px}.df-v2 .topbar>.stepper{grid-column:1 / -1;grid-row:2;width:min(440px,100%);justify-self:center}}.df-v2 .topbar-actions{display:flex;gap:var(--s-2);align-items:center;flex-shrink:0}.df-v2 .body{display:grid;overflow:hidden;position:relative;min-width:0}.df-v2 .body.layout-wells{display:block;overflow:auto;background:var(--bg)}.df-v2 .well-library-page{min-height:100%;display:grid;grid-template-columns:minmax(0,1fr) 360px}.df-v2 .well-library-list{padding:32px;overflow:auto}.df-v2 .well-library-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}.df-v2 .well-library-heading h1{margin:3px 0 6px;font-size:25px;font-weight:650}.df-v2 .well-library-heading p{margin:0;color:var(--fg-tertiary);max-width:620px;line-height:1.5}.df-v2 .well-library-heading-actions{display:flex;gap:7px;flex:0 0 auto}.df-v2 .well-library-eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:700}.df-v2 .well-import-panel{margin:-8px 0 22px;padding:16px;border:1px solid var(--border-strong);border-radius:10px;background:var(--bg-elev);box-shadow:var(--shadow-sm)}.df-v2 .well-import-title{display:flex;justify-content:space-between;gap:16px}.df-v2 .well-import-title>div{display:flex;flex-direction:column;gap:3px}.df-v2 .well-import-title span,.df-v2 .well-import-templates>span{color:var(--fg-tertiary);font-size:11px}.df-v2 .well-import-templates{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:13px 0}.df-v2 .well-import-files{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:12px;border:1px solid var(--border);border-radius:7px;background:var(--bg)}.df-v2 .well-import-files label,.df-v2 .well-import-options label{min-width:0;color:var(--fg-tertiary);font-size:10px}.df-v2 .well-import-files label>span,.df-v2 .well-import-options label>span{display:block;margin-bottom:4px}.df-v2 .well-import-files input[type=file]{width:100%;padding:6px;font-size:10px}.df-v2 .well-import-or{grid-column:1 / -1;display:flex;align-items:center;gap:8px;color:var(--fg-quaternary);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.df-v2 .well-import-or:before,.df-v2 .well-import-or:after{content:"";height:1px;background:var(--border);flex:1}.df-v2 .well-import-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:11px}.df-v2 .well-import-preview{margin-top:11px;padding:10px;border:1px solid color-mix(in oklch,var(--green) 35%,var(--border));border-radius:7px;background:color-mix(in oklch,var(--green) 5%,var(--bg))}.df-v2 .well-import-preview>div{display:flex;justify-content:space-between;gap:12px;padding:4px 0}.df-v2 .well-import-preview span,.df-v2 .well-import-preview p{color:var(--fg-tertiary);font-size:11px}.df-v2 .well-import-preview p{margin:7px 0 0}.df-v2 .well-import-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:12px}.df-v2 .well-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:10px}.df-v2 .well-library-card{display:flex;align-items:center;gap:10px;min-width:0;padding:13px;color:var(--fg);text-align:left;border:1px solid var(--border);border-radius:8px;background:var(--bg-elev);cursor:pointer}.df-v2 .well-library-card:hover,.df-v2 .well-library-card.active{border-color:color-mix(in oklch,var(--accent) 60%,var(--border))}.df-v2 .well-library-card.active{background:color-mix(in oklch,var(--accent) 7%,var(--bg-elev))}.df-v2 .well-library-kind{width:30px;height:30px;border-radius:7px;display:grid;place-items:center;color:var(--accent);background:color-mix(in oklch,var(--accent) 10%,var(--bg));flex:0 0 auto}.df-v2 .well-library-kind.wellbore{color:var(--green);background:color-mix(in oklch,var(--green) 10%,var(--bg))}.df-v2 .well-library-card-copy{display:flex;flex-direction:column;min-width:0;flex:1}.df-v2 .well-library-card-copy strong,.df-v2 .well-library-card-copy small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.df-v2 .well-library-card-copy small{margin-top:3px;color:var(--fg-tertiary)}.df-v2 .well-library-delete{padding:5px;color:var(--fg-quaternary);border:0;border-radius:4px;background:transparent;cursor:pointer}.df-v2 .well-library-delete:hover{color:var(--red);background:color-mix(in oklch,var(--red) 8%,transparent)}.df-v2 .well-library-empty{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;border:1px dashed var(--border-strong);border-radius:10px;color:var(--fg-tertiary)}.df-v2 .well-library-empty strong{color:var(--fg)}.df-v2 .well-library-editor{border-left:1px solid var(--border);background:var(--bg-elev);min-height:0}.df-v2 .well-library-editor .inspector-scroll{padding:14px;display:flex;flex-direction:column;gap:7px}.df-v2 .well-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.df-v2 .well-choice{display:flex;align-items:center;gap:8px;min-width:0;padding:9px;color:var(--fg-secondary);text-align:left;border:1px solid var(--border);border-radius:7px;background:var(--bg);cursor:pointer}.df-v2 .well-choice:hover:not(:disabled){border-color:var(--border-strong)}.df-v2 .well-choice.active{color:var(--accent);border-color:color-mix(in oklch,var(--accent) 60%,var(--border));background:color-mix(in oklch,var(--accent) 7%,var(--bg))}.df-v2 .well-choice:disabled{cursor:default}.df-v2 .well-choice>span{display:flex;flex-direction:column;min-width:0}.df-v2 .well-choice strong{color:inherit;font-size:11px}.df-v2 .well-choice small{margin-top:2px;color:var(--fg-tertiary);font-size:9px;line-height:1.25}.df-v2 .well-choice-grid.compact .well-choice{min-height:48px;justify-content:center;text-align:center}.df-v2 .well-segmented{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:2px;border:1px solid var(--border);border-radius:7px;background:var(--bg)}.df-v2 .well-segmented button{padding:7px;color:var(--fg-tertiary);font-size:10px;border:0;border-radius:5px;background:transparent;cursor:pointer}.df-v2 .well-segmented button.active{color:var(--fg);background:var(--bg-elev);box-shadow:0 1px 3px #00000024}.df-v2 .well-segmented button:disabled{cursor:default}.df-v2 .well-editor-help{padding:7px 8px;color:var(--fg-tertiary);font-size:10px;line-height:1.4;border-left:2px solid var(--border-strong)}.df-v2 .well-library-coordinate-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.df-v2 .well-library-coordinate-grid label{min-width:0;color:var(--fg-tertiary);font-size:10px}.df-v2 .well-library-coordinate-grid .input{margin-top:4px;width:100%}.df-v2 .well-vertical-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.df-v2 .well-vertical-grid label{min-width:0;color:var(--fg-tertiary);font-size:10px}.df-v2 .well-vertical-grid .input{width:100%;margin-top:4px}.df-v2 .well-coordinate-table{overflow:hidden;border:1px solid var(--border);border-radius:7px;background:var(--bg)}.df-v2 .well-station-list{margin-top:10px;border:1px solid var(--border);border-radius:7px;background:var(--bg)}.df-v2 .well-station-list>summary{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;font-size:11px;font-weight:600;list-style:none}.df-v2 .well-station-list>summary::-webkit-details-marker{display:none}.df-v2 .well-station-list>summary:before{content:"▸";color:var(--fg-tertiary);font-size:13px}.df-v2 .well-station-list[open]>summary:before{content:"▾"}.df-v2 .well-station-list>summary span{margin-left:auto;color:var(--fg-tertiary);font-weight:400}.df-v2 .well-station-list>.well-editor-help{margin:0 10px 10px}.df-v2 .well-station-list>.well-coordinate-table{border:0;border-top:1px solid var(--border);border-radius:0 0 7px 7px}.df-v2 .well-perforation-list>.well-perf-toolbar,.df-v2 .well-perforation-list>.well-stage-filter{margin:10px 12px}.df-v2 .well-coordinate-header,.df-v2 .well-coordinate-row{display:grid;grid-template-columns:25px repeat(3,minmax(0,1fr)) 25px;gap:4px;align-items:center;padding:5px}.df-v2 .well-coordinate-header{color:var(--fg-quaternary);font-size:8px;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border)}.df-v2 .well-coordinate-row+.well-coordinate-row{border-top:1px solid color-mix(in oklch,var(--border) 65%,transparent)}.df-v2 .well-coordinate-row>span{color:var(--fg-quaternary);font-size:9px;text-align:center}.df-v2 .well-coordinate-row .input{min-width:0;width:100%;padding:5px;font-size:10px}.df-v2 .well-add-row{display:flex;align-items:center;justify-content:center;gap:5px;width:100%;padding:7px;color:var(--accent);font-size:10px;border:0;border-top:1px solid var(--border);background:transparent;cursor:pointer}.df-v2 .well-add-row:hover{background:color-mix(in oklch,var(--accent) 5%,transparent)}.df-v2 .well-geometry-summary{display:flex;align-items:center;gap:6px;padding:7px 8px;color:var(--green);font-size:10px;border:1px solid color-mix(in oklch,var(--green) 25%,var(--border));border-radius:6px;background:color-mix(in oklch,var(--green) 5%,transparent)}.df-v2 .well-perf-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--fg-tertiary);font-size:10px;line-height:1.35}.df-v2 .well-library-trajectory{min-height:150px;resize:vertical;line-height:1.5}.df-v2 .well-library-editor-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:8px}.df-v2 .well-library-imported-details{display:flex;flex-direction:column;gap:4px;margin-top:10px;padding:9px;border:1px solid var(--border);border-radius:6px;font-size:11px}.df-v2 .well-library-imported-details span{color:var(--fg-tertiary)}.df-v2 .well-library-imported-details a{color:var(--accent);text-decoration:none}.df-v2 .well-library-note{margin-top:10px;padding:9px;border:1px solid var(--border);border-radius:6px;color:var(--fg-tertiary);font-size:11px;line-height:1.45}.df-v2 .well-md-tvd-import{margin:12px 0;padding:12px;border:1px solid var(--border);border-radius:7px;background:var(--bg-elev)}.df-v2 .well-md-tvd-import summary{cursor:pointer;font-weight:600;font-size:12px}.df-v2 .well-md-tvd-import p{color:var(--fg-tertiary);font-size:11px;line-height:1.5}.df-v2 .well-md-tvd-import label>span{display:block;margin-bottom:4px;color:var(--fg-tertiary);font-size:11px}.df-v2 .well-md-tvd-import textarea{width:100%;min-height:130px;resize:vertical;line-height:1.4}.df-v2 .well-md-tvd-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:10px 0}@media (max-width: 920px){.df-v2 .well-library-page{grid-template-columns:1fr}.df-v2 .well-library-editor{border-left:0;border-top:1px solid var(--border)}.df-v2 .well-import-options{grid-template-columns:repeat(2,minmax(0,1fr))}}.df-v2 .inspector-popup{position:absolute;top:16px;right:16px;z-index:50;width:var(--inspector-w);background:var(--bg-elev);border:1px solid var(--border-strong);border-radius:10px;box-shadow:0 8px 32px #0000008c;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);overflow:hidden;animation:df-popup-in .14s ease}@keyframes df-popup-in{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.df-v2 .body.layout-mesh{grid-template-columns:var(--sidebar-w) minmax(0,1fr) var(--inspector-w)}.df-v2 .body.layout-mesh:has(>.mesh-workspace-viewing){grid-template-columns:minmax(0,1fr) var(--inspector-w)}.df-v2 .body.layout-mesh>.inspector,.df-v2 .body.layout-mesh>.center{min-height:0}.df-v2 .topbar-context-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;align-items:center}.df-v2 .workspace-action-error{padding:8px 12px;border-bottom:1px solid color-mix(in oklab,var(--red) 25%,var(--border));background:color-mix(in oklab,var(--red) 9%,var(--bg-elev));color:var(--red);font-size:11px;line-height:1.45}.df-v2 .mesh-workspace-history-row{margin-top:7px;border:1px solid var(--border);border-radius:7px;background:var(--bg);overflow:hidden}.df-v2 .mesh-workspace-history-row.active{border-color:color-mix(in oklch,var(--accent) 55%,var(--border));background:color-mix(in oklch,var(--accent) 7%,var(--bg))}.df-v2 .mesh-workspace-draft-section{padding-bottom:0}.df-v2 .mesh-workspace-draft-card,.df-v2 .mesh-workspace-draft-card .mesh-workspace-history-main{cursor:default}.df-v2 .mesh-workspace-draft-dot{background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.df-v2 .mesh-workspace-history-main{width:100%;display:flex;align-items:center;gap:8px;padding:8px;border:0;background:transparent;color:var(--fg);text-align:left;cursor:pointer}.df-v2 .mesh-workspace-status-dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}.df-v2 .mesh-workspace-history-name,.df-v2 .mesh-workspace-history-meta{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.df-v2 .mesh-workspace-history-name{font-size:11.5px;font-weight:600}.df-v2 .mesh-workspace-history-meta{margin-top:2px;color:var(--fg-tertiary);font-size:10px}.df-v2 .mesh-workspace-history-actions{display:flex;gap:2px;padding:5px 6px;border-top:1px solid var(--border)}.df-v2 .mesh-workspace-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.df-v2 .mesh-workspace-stat{display:flex;flex-direction:column;gap:2px;padding:8px;border-radius:6px;background:var(--bg-sunk)}.df-v2 .mesh-workspace-stat span{color:var(--fg-tertiary);font-size:9.5px;letter-spacing:.04em;text-transform:uppercase}.df-v2 .mesh-workspace-stat strong{font-size:11.5px;font-weight:600}.df-v2 .mesh-health-list{display:flex;flex-direction:column;gap:2px;overflow:hidden;border-radius:7px}.df-v2 .mesh-health-row{min-height:48px;display:flex;align-items:center;gap:16px;padding:0 16px;background:var(--bg-sunk);color:var(--fg)}.df-v2 .mesh-health-row>svg{flex:0 0 auto;color:var(--fg-secondary)}.df-v2 .mesh-health-row strong{font-size:13px;font-weight:600}.df-v2 .mesh-health-status-icon{width:23px;height:23px;flex:0 0 auto;display:grid;place-items:center;border-radius:50%;background:var(--fg-tertiary);color:#fff}.df-v2 .mesh-health-row.ready .mesh-health-status-icon{background:var(--green)}.df-v2 .mesh-workspace-primary-actions{display:flex;flex-direction:column;gap:10px;padding-top:14px}.df-v2 .mesh-workspace-primary-button,.df-v2 .mesh-workspace-copy-button{width:100%;min-height:44px;justify-content:center;font-size:13px}.df-v2 .mesh-workspace-primary-button{box-shadow:0 5px 14px color-mix(in oklch,var(--accent) 22%,transparent)}.df-v2 .mesh-workspace-config-group{border-bottom:1px solid var(--border)}.df-v2 .mesh-workspace-config-heading{width:100%;min-height:38px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:7px;padding:0 12px;border:0;background:var(--bg-sunk);color:var(--fg);cursor:pointer;font-size:11px;font-weight:700;letter-spacing:.045em;text-align:left;text-transform:uppercase}.df-v2 .mesh-workspace-config-heading>span:last-child{color:var(--fg-tertiary);font-family:var(--font-mono);font-size:10px;font-weight:500}.df-v2 .mesh-workspace-view-toggle{position:absolute;top:14px;left:50%;z-index:4;display:inline-flex;transform:translate(-50%);overflow:hidden;border:1px solid var(--border-on-dark);border-radius:7px;background:#141820e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.df-v2 .mesh-workspace-view-toggle .btn-overlay{min-width:84px;border-radius:0;border-right:1px solid var(--border-on-dark)}.df-v2 .mesh-workspace-view-toggle .btn-overlay:last-child{border-right:0}.df-v2 .mesh-workspace-view-toggle .btn-overlay.active{background:#3b82f640;color:#fff}.df-v2 .mesh-view-summary{position:absolute;top:14px;left:14px;z-index:4;min-width:252px;padding:13px 14px;border:1px solid var(--border-on-dark);border-radius:8px;background:#141820e6;color:var(--fg-on-dark);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 8px 24px #0000002e}.df-v2 .mesh-view-summary-title{display:flex;align-items:center;gap:8px}.df-v2 .mesh-view-summary-title strong{color:#fff;font-size:14px}.df-v2 .mesh-view-summary-title span{padding:2px 7px;border-radius:999px;background:#22c55e29;color:#86efac;font-size:10px;font-weight:600}.df-v2 .mesh-view-summary-meta{margin:6px 0 11px;color:var(--viewport-muted);font:10.5px var(--font-mono)}.df-v2 .mesh-view-summary .btn-overlay{border:1px solid var(--border-on-dark)}.df-v2 .mesh-view-summary .mesh-view-summary-action{width:auto;min-width:0;padding:0 10px;gap:6px;white-space:nowrap}.df-v2 .body.layout-sim,.df-v2 .body.layout-results{grid-template-columns:minmax(0,1fr)}.df-v2 .sim-main{display:flex;flex-direction:column;position:relative;min-width:0;overflow:hidden;background:var(--bg)}.df-v2 .sim-main .inspector.left{flex:1;min-height:0;height:auto;border-right:none}.df-v2 .sim-main>.sim-run-history{flex:0 0 auto;max-height:178px;min-height:82px;border-top:1px solid var(--border);border-right:0}.df-v2 .sim-main>.sim-run-history .sim-run-list{display:flex;gap:6px;overflow-x:auto;overflow-y:hidden;padding:8px 12px 10px}.df-v2 .sim-main>.sim-run-history .sim-run-row{flex:0 0 238px;border:1px solid var(--border);border-radius:var(--r-2)}.df-v2 .inspector-popup.mesh-preview{width:min(880px,calc(100% - 32px));max-height:calc(100% - 32px);display:flex;flex-direction:column}.df-v2 .mesh-preview-meta{display:flex;gap:6px;flex-wrap:wrap;padding:0 var(--s-5) var(--s-4);border-bottom:1px solid var(--border)}.df-v2 .mesh-preview-body{padding:var(--s-4);background:var(--bg-sunk);min-height:460px;height:min(68vh,760px)}.df-v2 .mesh-preview-body>.center{position:relative;height:100%;border:1px solid var(--border);border-radius:var(--r-3)}.df-v2 .stepper{display:flex;align-items:center;gap:2px;padding:3px;background:var(--bg-sunk);border:1px solid var(--border);border-radius:9999px;flex-shrink:0}.df-v2 .step{display:flex;align-items:center;gap:6px;height:26px;padding:0 12px;border-radius:9999px;font-size:12px;font-weight:500;color:var(--fg-secondary);cursor:pointer;transition:all .15s ease}.df-v2 .step:hover{color:var(--fg)}.df-v2 .step.active{background:var(--bg-elev);color:var(--fg);font-weight:600;box-shadow:0 1px 4px #0000001f}.df-v2 .step.done .step-num{background:var(--green);color:#fff;border-color:var(--green)}.df-v2 .step.active .step-num{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.df-v2 .step-num{width:17px;height:17px;border-radius:50%;border:1px solid var(--border-strong);display:inline-flex;align-items:center;justify-content:center;font-size:10.5px;font-family:var(--font-mono);color:var(--fg-tertiary);background:var(--bg-elev);font-weight:500}.df-v2 .statusbar{display:flex;align-items:center;gap:var(--s-5);padding:0 var(--s-5);background:var(--bg-elev);border-top:1px solid var(--border);font-size:11.5px;color:var(--fg-tertiary);font-family:var(--font-mono)}.df-v2 .statusbar .item{display:inline-flex;align-items:center;gap:6px}.df-v2 .statusbar .dot{width:6px;height:6px;border-radius:50%;background:var(--green)}.df-v2 .statusbar .dot.busy{background:var(--accent);animation:df-pulse 1.4s infinite}.df-v2 .statusbar .dot.err{background:var(--red)}@keyframes df-pulse{0%,to{opacity:1}50%{opacity:.35}}.df-v2 .da-pulse{animation:df-pulse 1.6s ease-in-out infinite}.df-v2 .df-sim-monitor{width:100%;min-height:100%;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:68px 28px 40px;background:radial-gradient(900px 520px at 50% -8%,var(--accent-soft) 0%,var(--bg) 55%);overflow-y:auto}.df-v2 .df-monitor-runline{position:absolute;top:26px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:12px}.df-v2 .df-monitor-runname{font-size:14px;font-weight:600;color:var(--fg)}.df-v2 .df-monitor-separator{width:4px;height:4px;border-radius:50%;background:var(--fg-tertiary)}.df-v2 .df-monitor-runstate{display:flex;align-items:center;gap:7px;font:12px var(--font-mono)}.df-v2 .df-monitor-model{font:12px var(--font-mono);color:var(--fg-tertiary)}.df-v2 .df-monitor-input-toggle{position:absolute;top:20px;right:24px;z-index:2}.df-v2 .df-command-center{width:min(1080px,100%);margin:0 auto}.df-v2 .df-command-inputs{width:min(1080px,100%);flex:0 0 auto;margin:0 auto 18px;padding:22px 24px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-3);box-shadow:var(--shadow-1)}.df-v2 .df-command-inputs-head h2{margin:0;color:var(--fg);font-size:16px}.df-v2 .df-command-inputs-head p{margin:4px 0 0;color:var(--fg-tertiary);font-size:11px}.df-v2 .df-command-input-groups{display:grid;grid-template-columns:repeat(3,1fr);gap:20px 28px;margin-top:20px}.df-v2 .df-command-input-group{min-width:0}.df-v2 .df-command-input-group h3{margin:0 0 8px;padding-bottom:7px;border-bottom:1px solid var(--border);color:var(--fg);font-size:11px;font-weight:650}.df-v2 .df-command-input-group dl{margin:0}.df-v2 .df-command-input-group dl>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:4px 0}.df-v2 .df-command-input-group dt{overflow:hidden;color:var(--fg-tertiary);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.df-v2 .df-command-input-group dd{max-width:150px;margin:0;overflow:hidden;color:var(--fg-secondary);font:10px var(--font-mono);text-align:right;text-overflow:ellipsis;white-space:nowrap}.df-v2 .df-command-input-json{margin-top:17px;padding-top:12px;border-top:1px solid var(--border)}.df-v2 .df-command-input-json>summary{cursor:pointer;color:var(--accent);font-size:11px;font-weight:600}.df-v2 .df-command-input-json pre{max-height:300px;margin:12px 0 0;padding:12px;overflow:auto;background:var(--bg-sunk);border-radius:var(--r-2);color:var(--fg-secondary);font:10.5px/1.55 var(--font-mono);white-space:pre-wrap}.df-v2 .df-command-status{text-align:center;margin-bottom:18px;color:var(--fg-tertiary);font-size:12px}.df-v2 .df-command-status-title{display:flex;align-items:center;justify-content:center;gap:9px;margin-bottom:5px;color:var(--fg);font-size:18px;font-weight:650}.df-v2 .df-command-status-title>span{width:10px;height:10px;border-radius:50%}.df-v2 .df-command-card,.df-v2 .df-command-metric,.df-v2 .df-command-activity{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-3)}.df-v2 .df-command-card h2{margin:0;font-size:15px;font-weight:650;color:var(--fg)}.df-v2 .df-command-progress{display:grid;grid-template-columns:1fr 190px;min-height:188px}.df-v2 .df-command-progress-main{padding:26px 30px;display:flex;flex-direction:column;justify-content:center}.df-v2 .df-command-progressbar{height:15px;margin:20px 0 13px;background:var(--bg-sunk);border-radius:999px;overflow:hidden}.df-v2 .df-command-progressbar i{display:block;height:100%;border-radius:inherit;transition:width .4s ease}.df-v2 .df-command-progress-main>strong{font:650 30px var(--font-sans);color:var(--fg);letter-spacing:-.025em}.df-v2 .df-command-progress-main>p{margin:5px 0 0;color:var(--fg-secondary);font:14px var(--font-mono)}.df-v2 .df-command-step-ring{border-left:1px solid var(--border);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;color:var(--fg-secondary);font-size:12px;font-weight:600}.df-v2 .df-command-step-ring b{color:var(--fg);font:600 15px var(--font-mono)}.df-v2 .df-command-step-ring small{margin-top:5px;color:var(--fg-secondary);font:12px var(--font-mono)}.df-v2 .df-command-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:12px}.df-v2 .df-command-metric{min-height:94px;padding:18px 20px;display:flex;flex-direction:column;justify-content:center}.df-v2 .df-command-metric>span{margin-bottom:8px;color:var(--fg-secondary);font-size:12px}.df-v2 .df-command-metric>strong{color:var(--fg);font:600 21px var(--font-mono);white-space:nowrap}.df-v2 .df-command-metric>small{margin-top:4px;color:var(--fg-tertiary);font-size:10px}.df-v2 .df-command-eta>strong{font-size:19px}.df-v2 .df-command-panels{display:grid;grid-template-columns:1.35fr 1fr;gap:12px;margin-top:12px}.df-v2 .df-command-stages,.df-v2 .df-command-health{min-height:205px;padding:22px 24px}.df-v2 .df-command-stage-track{display:grid;grid-template-columns:repeat(6,1fr);margin-top:38px}.df-v2 .df-command-stage{position:relative;min-width:0;text-align:center;color:var(--fg-tertiary)}.df-v2 .df-command-stage:before{content:"";position:absolute;top:12px;right:50%;width:100%;height:2px;background:var(--border-strong);z-index:0}.df-v2 .df-command-stage:first-child:before{display:none}.df-v2 .df-command-stage.done:before,.df-v2 .df-command-stage.active:before{background:var(--green)}.df-v2 .df-command-stage-marker{position:relative;z-index:1;width:25px;height:25px;margin:0 auto 10px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:2px solid var(--border-strong);background:var(--bg-elev);font:600 10px var(--font-mono)}.df-v2 .df-command-stage.done .df-command-stage-marker{border-color:var(--green);background:var(--green);color:#fff}.df-v2 .df-command-stage.active .df-command-stage-marker{border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.df-v2 .df-command-stage.failed .df-command-stage-marker{border-color:var(--red);color:var(--red)}.df-v2 .df-command-stage b{display:block;overflow:hidden;text-overflow:ellipsis;color:var(--fg-secondary);font-size:10.5px;white-space:nowrap}.df-v2 .df-command-stage.active b{color:var(--accent)}.df-v2 .df-command-stage small{display:block;margin-top:4px;font-size:9.5px;white-space:nowrap}.df-v2 .df-command-panelhead{display:flex;justify-content:space-between;align-items:center;gap:12px}.df-v2 .df-command-panelhead>span{color:var(--fg-secondary);font-size:10.5px;white-space:nowrap}.df-v2 .df-command-panelhead>span:before{content:"";display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:var(--green)}.df-v2 .df-command-panelhead>span.bad:before{background:var(--red)}.df-v2 .df-command-spark{height:75px;margin-top:19px;overflow:hidden;border-bottom:1px solid var(--border)}.df-v2 .df-command-spark-empty{height:100%;display:grid;place-items:center;text-align:center;color:var(--fg-tertiary);font-size:10.5px}.df-v2 .df-command-healthstats{display:grid;grid-template-columns:1fr 1fr;text-align:center;padding-top:13px;color:var(--fg-tertiary);font-size:9.5px}.df-v2 .df-command-healthstats span+span{border-left:1px solid var(--border)}.df-v2 .df-command-healthstats b{display:block;margin-bottom:3px;color:var(--fg);font:600 16px var(--font-mono)}.df-v2 .df-command-activity{margin-top:12px;overflow:hidden}.df-v2 .df-command-activity>summary{min-height:48px;padding:0 18px;display:grid;grid-template-columns:150px 1fr auto;align-items:center;gap:16px;cursor:pointer;list-style:none;color:var(--fg-secondary);font-size:12px}.df-v2 .df-command-activity>summary::-webkit-details-marker{display:none}.df-v2 .df-command-activity>summary>span{color:var(--fg);font-weight:600}.df-v2 .df-command-activity>summary>span:before{content:"›";display:inline-block;margin-right:10px;font-size:18px;transition:transform .15s ease}.df-v2 .df-command-activity[open]>summary>span:before{transform:rotate(90deg)}.df-v2 .df-command-activity>summary b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.df-v2 .df-command-activity time{color:var(--fg-tertiary);font:10.5px var(--font-mono);white-space:nowrap}.df-v2 .df-command-activity-body{border-top:1px solid var(--border);padding:8px 18px 15px}.df-v2 .df-command-event{display:grid;grid-template-columns:8px 1fr auto;align-items:start;gap:11px;padding:9px 0}.df-v2 .df-command-event>i{width:7px;height:7px;margin-top:4px;border-radius:50%;background:var(--accent)}.df-v2 .df-command-event.success>i{background:var(--green)}.df-v2 .df-command-event.warning>i{background:var(--orange, #b7791f)}.df-v2 .df-command-event.error>i{background:var(--red)}.df-v2 .df-command-event b{display:block;color:var(--fg);font-size:11.5px}.df-v2 .df-command-event code{display:block;margin-top:3px;color:var(--fg-tertiary);font:10.5px var(--font-mono);white-space:normal;word-break:break-word}.df-v2 .df-command-rawlog{margin-top:6px;border-top:1px solid var(--border)}.df-v2 .df-command-rawlog>summary{padding-top:12px;cursor:pointer;color:var(--accent);font-size:11px;font-weight:600}.df-v2 .df-command-rawlog pre{max-height:260px;margin:12px 0 0;padding:12px;overflow:auto;background:var(--bg-sunk);border-radius:var(--r-2);color:var(--fg-secondary);font:10.5px/1.55 var(--font-mono);white-space:pre-wrap}.df-v2 .df-command-error{margin-top:12px;padding:12px;border:1px solid color-mix(in srgb,var(--red) 35%,transparent);border-radius:var(--r-2);color:var(--red);font:11px var(--font-mono);white-space:pre-wrap;word-break:break-word}@media (max-width: 1050px){.df-v2 .df-command-panels{grid-template-columns:1fr}.df-v2 .df-command-input-groups{grid-template-columns:repeat(2,1fr)}}@media (max-width: 760px){.df-v2 .df-sim-monitor{padding-inline:16px}.df-v2 .df-monitor-input-toggle{position:static;align-self:flex-end;margin:-48px 0 20px}.df-v2 .df-command-input-groups,.df-v2 .df-command-progress{grid-template-columns:1fr}.df-v2 .df-command-step-ring{border-left:0;border-top:1px solid var(--border);padding:18px}.df-v2 .df-command-metrics{grid-template-columns:1fr 1fr}.df-v2 .df-command-activity>summary{grid-template-columns:120px 1fr}.df-v2 .df-command-activity>summary time{display:none}}.df-v2 .df-container-init{width:300px;min-height:272px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.df-v2 .df-container-init-scene{width:260px;height:182px;overflow:visible}.df-v2 .df-container-init-shadow{fill:var(--bg-sunk)}.df-v2 .df-container-init-box{fill:var(--accent-soft);stroke:var(--accent);stroke-width:2.5}.df-v2 .df-container-init-stack path,.df-v2 .df-container-init-carry path{fill:none;stroke:var(--accent);stroke-width:1.5;opacity:.55}.df-v2 .df-container-init-head{fill:var(--bg-elev);stroke:var(--fg-secondary);stroke-width:3}.df-v2 .df-container-init-body,.df-v2 .df-container-init-arm{fill:none;stroke:var(--fg-secondary);stroke-width:5;stroke-linecap:round;stroke-linejoin:round}.df-v2 .df-container-init-person{transform-origin:91px 177px;animation:df-container-person 2.4s ease-in-out infinite}.df-v2 .df-container-init-arm{transform-origin:119px 122px;animation:df-container-arm 2.4s ease-in-out infinite}.df-v2 .df-container-init-carry{transform-origin:154px 112px;animation:df-container-box 2.4s ease-in-out infinite}.df-v2 .df-container-init-stack .box-top{animation:df-container-stack 2.4s ease-in-out infinite}.df-v2 .df-container-init-label{margin-top:4px;font:650 11px var(--font-sans);color:var(--accent);letter-spacing:.14em;text-transform:uppercase}.df-v2 .df-container-init-message{margin-top:9px;font:500 14px var(--font-mono);color:var(--fg-secondary)}.df-v2 .df-container-init-dots{display:flex;gap:5px;margin-top:11px}.df-v2 .df-container-init-dots i{width:5px;height:5px;border-radius:50%;background:var(--accent);animation:df-container-dot 1.2s ease-in-out infinite}.df-v2 .df-container-init-dots i:nth-child(2){animation-delay:.15s}.df-v2 .df-container-init-dots i:nth-child(3){animation-delay:.3s}@keyframes df-container-person{0%,to{transform:translate(-3px) rotate(-1deg)}45%,60%{transform:translate(5px) rotate(2deg)}}@keyframes df-container-arm{0%,to{transform:rotate(-8deg)}48%,62%{transform:rotate(14deg)}}@keyframes df-container-box{0%,18%{transform:translate(-10px,7px) rotate(-5deg);opacity:1}58%,76%{transform:translate(40px,-16px) rotate(0);opacity:1}88%,to{transform:translate(40px,-16px);opacity:0}}@keyframes df-container-stack{0%,58%{transform:translateY(-7px);opacity:.55}72%,to{transform:translateY(0);opacity:1}}@keyframes df-container-dot{0%,to{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}@media (prefers-reduced-motion: reduce){.df-v2 .da-pulse,.df-v2 .df-container-init-person,.df-v2 .df-container-init-arm,.df-v2 .df-container-init-carry,.df-v2 .df-container-init-stack .box-top,.df-v2 .df-container-init-dots i{animation:none}}.df-v2 .sidebar{background:var(--bg-elev);border-right:1px solid var(--border);overflow-y:auto;display:flex;flex-direction:column}.df-v2 .sidebar-section{padding:var(--s-3) 0;border-bottom:1px solid var(--border)}.df-v2 .sidebar-section:last-child{border-bottom:none}.df-v2 .sidebar-head{display:flex;align-items:center;justify-content:space-between;padding:0 var(--s-4);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--fg-tertiary);height:24px}.df-v2 .sidebar-row{display:flex;align-items:center;gap:var(--s-3);padding:0 var(--s-4);height:var(--row-h);font-size:12.5px;color:var(--fg-secondary);cursor:pointer;border-left:2px solid transparent}.df-v2 .sidebar-row:hover{background:var(--bg-sunk)}.df-v2 .sidebar-row.selected{background:var(--accent-soft);color:var(--fg);border-left-color:var(--accent)}.df-v2 .sidebar-row .swatch{width:10px;height:10px;border-radius:2px;flex-shrink:0}.df-v2 .center{position:relative;background:var(--viewport);overflow:hidden;color:var(--fg-on-dark)}.df-v2 .viewport-3d{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--viewport);overflow:hidden}.df-v2 .viewport-3d canvas{outline:none}.df-v2 .viewport-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.df-v2 .viewport-overlay>*{pointer-events:auto}.df-v2 .overlay-tl{position:absolute;top:var(--s-4);left:var(--s-4)}.df-v2 .overlay-tr{position:absolute;top:var(--s-4);right:var(--s-4)}.df-v2 .overlay-bl{position:absolute;bottom:var(--s-4);left:var(--s-4)}.df-v2 .overlay-br{position:absolute;bottom:var(--s-4);right:var(--s-4)}.df-v2 .chip{display:inline-flex;align-items:center;gap:var(--s-2);padding:5px 9px;background:#141820d9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border-on-dark);border-radius:var(--r-2);font-size:11.5px;color:var(--fg-on-dark);font-family:var(--font-mono)}.df-v2 .chip .label{color:var(--viewport-muted)}.df-v2 .btn-overlay{width:28px;height:28px;background:#141820d9;border:1px solid var(--border-on-dark);border-radius:var(--r-2);display:inline-flex;align-items:center;justify-content:center;color:var(--fg-on-dark);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.df-v2 .btn-overlay:hover{background:#1e2430f2}.df-v2 .btn-overlay.active{color:#7cbdff;color:oklch(.78 .16 250);border-color:#7cbdff;border-color:oklch(.78 .16 250)}.df-v2 .geometry-view-controls{display:flex;gap:6px;margin-bottom:8px;pointer-events:auto}.df-v2 .geometry-view-controls .btn-overlay{width:auto;min-width:36px;padding:0 10px;cursor:pointer}.df-v2 .mesh-focus-controls{display:grid;gap:8px;margin-bottom:8px;max-width:360px;white-space:normal}.df-v2 .mesh-focus-controls label{display:flex;align-items:center;gap:8px}.df-v2 .mesh-focus-controls select,.df-v2 .mesh-focus-controls input{min-width:0;color:#e1ebfa;background:#182332;border:1px solid #4b6079;border-radius:4px;padding:4px}.df-v2 .mesh-focus-controls input{width:90px}.df-v2 .mesh-preview-loading{position:absolute;top:132px;left:16px;right:16px;z-index:3;display:grid;gap:4px;padding:10px 12px;border:1px solid #405572;border-radius:6px;background:#141e2cf2;color:#e1ebfa;font-size:12px;pointer-events:none}.df-v2 .mesh-preview-loading span{color:#b8c9df}.df-v2 .mesh-wireframe-status{position:absolute;top:60px;left:50%;transform:translate(-50%);z-index:4;padding:8px 12px;border-radius:5px;background:#142032;color:#dce9fa;font-size:12px}.df-v2 .inspector{background:var(--bg-elev);border-left:1px solid var(--border);overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;min-width:0}.df-v2 .inspector.left{border-left:none;border-right:1px solid var(--border)}.df-v2 .inspector-scroll{overflow-x:hidden;min-width:0}.df-v2 .insp-section{min-width:0;overflow-x:hidden}.df-v2 .insp-head{padding:var(--s-4) var(--s-5);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:var(--s-3);flex-shrink:0}.df-v2 .insp-head-title{font-weight:600;font-size:13px;flex:1}.df-v2 .insp-head-sub{color:var(--fg-tertiary);font-size:11px;font-family:var(--font-mono)}.df-v2 .insp-section{padding:var(--s-4) var(--s-5);border-bottom:1px solid var(--border)}.df-v2 .insp-section:last-child{border-bottom:none}.df-v2 .insp-section-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--fg-tertiary);margin:0 0 var(--s-3);display:flex;align-items:center;justify-content:space-between}.df-v2 .field{display:grid;grid-template-columns:100px 1fr;align-items:center;gap:var(--s-3);margin-bottom:var(--s-2);min-width:0}.df-v2 .field-label{color:var(--fg-secondary);font-size:12px}.df-v2 .field-val{display:flex;align-items:center;gap:2px;min-width:0}.df-v2 .field-input{width:100%;min-width:0;padding:4px 8px;border:1px solid var(--border);border-radius:var(--r-1);background:var(--bg-elev);height:26px;font-family:var(--font-mono);font-size:12px;text-align:right}.df-v2 .field-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.df-v2 .field-unit{padding:0 6px;font-size:11px;color:var(--fg-tertiary);font-family:var(--font-mono);min-width:36px}.df-v2 .compact-field-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px;min-width:0}.df-v2 .compact-field-grid .field{display:flex;flex-direction:column;align-items:stretch;gap:2px;min-width:0;margin-bottom:0}.df-v2 .compact-field-grid .field-val{min-width:0}.df-v2 .compact-field-grid .field-unit{flex:0 0 auto;min-width:auto;padding-right:0}.df-v2 .import-note{margin:0 0 8px;padding:6px 8px;border:1px dashed var(--border);border-radius:var(--r-1);background:var(--bg-sunk);color:var(--fg-tertiary);font-size:10.5px;line-height:1.35}.df-v2 .row-actions{display:flex;gap:var(--s-2);margin-top:var(--s-3)}.df-v2 .sim-run-row{display:flex;flex-direction:column;gap:8px;padding:12px 14px 12px 18px;border-left:2px solid transparent;border-bottom:1px solid var(--border);background:var(--bg-elev);cursor:pointer;transition:background .15s ease,border-color .15s ease}.df-v2 .sim-run-row:hover{background:var(--bg-sunk)}.df-v2 .sim-run-row.active{background:linear-gradient(180deg,#476be51a,#476be50f);border-left-color:var(--accent)}.df-v2 .sim-run-main{display:flex;align-items:center;gap:8px;width:100%}.df-v2 .sim-run-name{font-size:13px;font-weight:600;color:var(--fg);line-height:1.25}.df-v2 .sim-run-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.df-v2 .sim-run-time{font-size:11px;color:var(--fg-tertiary);font-family:var(--font-mono)}.df-v2 .sim-run-actions{display:inline-flex;align-items:center;gap:3px;padding:3px;border:1px solid var(--border);border-radius:999px;background:var(--bg-sunk);width:max-content;margin-left:16px}.df-v2 .sim-run-action{height:24px;padding:0 10px;border-radius:999px;border:none;background:transparent;color:var(--fg-secondary);font-size:11.5px;font-weight:500;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.df-v2 .sim-run-action:hover{background:var(--bg-elev);color:var(--fg);box-shadow:var(--shadow-1)}.df-v2 .sim-run-action.danger{color:var(--red)}.df-v2 .sim-run-action.danger:hover{background:color-mix(in srgb,var(--red) 10%,var(--bg-elev));color:var(--red)}.df-v2 .sim-settings-workspace{background:var(--bg)}.df-v2 .sim-settings-head{min-height:72px;padding:12px 20px;background:var(--bg-elev);gap:10px}.df-v2 .sim-settings-heading-mark{width:32px;height:32px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:var(--accent);background:var(--accent-soft);border:1px solid var(--accent-border)}.df-v2 .sim-settings-heading-copy{min-width:0;flex:1}.df-v2 .sim-settings-title{color:var(--fg);font-size:17px;font-weight:650;letter-spacing:-.015em;line-height:1.2}.df-v2 .sim-settings-subtitle{margin-top:3px;color:var(--fg-tertiary);font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.df-v2 .sim-engine-badge,.df-v2 .sim-run-count{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:0 8px;border:1px solid var(--border);border-radius:999px;background:var(--bg-sunk);color:var(--fg-secondary);font-family:var(--font-mono);font-size:10.5px;font-weight:600}.df-v2 .sim-engine-badge.readonly{color:var(--warm);background:var(--warm-soft);border-color:color-mix(in srgb,var(--warm) 24%,var(--border))}.df-v2 .sim-settings-body{display:grid;grid-template-columns:166px minmax(320px,1fr) minmax(360px,.82fr);flex:1;min-height:0;overflow:hidden}.df-v2 .sim-settings-body{grid-template-columns:minmax(360px,420px) minmax(0,1fr)}.df-v2 .sim-settings-body>nav.sim-section-nav{display:none}.df-v2 .sim-settings-scroll{padding:14px 14px 28px}.df-v2 .sim-settings-card{max-width:none;margin-bottom:10px}.df-v2 .scenario-switcher{position:relative;margin-left:2px;min-width:0}.df-v2 .scenario-switcher summary{display:flex;align-items:center;gap:5px;min-width:0;height:28px;padding:0 8px;border:1px solid var(--border);border-radius:var(--r-2);background:var(--bg-elev);color:var(--fg-secondary);cursor:pointer;font-size:11px;list-style:none}.df-v2 .scenario-switcher summary::-webkit-details-marker{display:none}.df-v2 .scenario-switcher-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:160px}.df-v2 .scenario-switcher-count{display:inline-grid;place-items:center;min-width:16px;height:16px;border-radius:999px;background:var(--bg-sunk);color:var(--fg-tertiary);font-family:var(--font-mono);font-size:9px}.df-v2 .scenario-switcher-menu{position:absolute;z-index:20;top:calc(100% + 6px);right:0;width:min(360px,70vw);max-height:min(56vh,440px);overflow-y:auto;padding:6px;border:1px solid var(--border-strong);border-radius:var(--r-3);background:var(--bg-elev);box-shadow:var(--shadow-pop)}.df-v2 .scenario-switcher-menu .scenario-select{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:7px;width:100%;padding:8px;border:0;border-radius:var(--r-1);color:var(--fg-secondary);background:transparent;font-size:11px;text-align:left}.df-v2 .scenario-switcher-menu .scenario-select:hover,.df-v2 .scenario-switcher-menu .scenario-select.active{background:var(--bg-sunk);color:var(--fg)}.df-v2 .scenario-switcher-status{width:7px;height:7px;border-radius:50%;background:var(--accent)}.df-v2 .scenario-switcher-status.complete{background:var(--green)}.df-v2 .scenario-switcher-status.failed{background:var(--red)}.df-v2 .scenario-switcher-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.df-v2 .scenario-switcher-empty{padding:12px;color:var(--fg-tertiary);font-size:11px}.df-v2 .sim-settings-fieldset{min-width:0;min-height:0;margin:0;padding:0;border:0;display:flex;flex-direction:column}.df-v2 nav.sim-section-nav{position:static;top:auto;z-index:auto;display:block;flex-wrap:nowrap;gap:0;min-width:0;overflow-y:auto;padding:14px 10px 24px;background:var(--bg-elev);border-right:1px solid var(--border)}.df-v2 .sim-section-nav-group+.sim-section-nav-group{margin-top:14px}.df-v2 .sim-section-nav-group{position:relative}.df-v2 .sim-section-nav-group:before{content:"";position:absolute;z-index:0;top:29px;bottom:8px;left:16px;width:1px;background:var(--border)}.df-v2 .sim-section-nav-label{padding:0 7px 6px;color:var(--fg-tertiary);font-size:9px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.df-v2 .sim-section-nav button{position:relative;z-index:1;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;width:100%;height:auto;min-height:29px;padding:4px 6px;border:0;border-radius:6px;background:transparent;color:var(--fg-secondary);font-size:11px;font-weight:500;line-height:1.2;text-align:left}.df-v2 .sim-section-nav button:hover{border-color:transparent;color:var(--fg);background:color-mix(in srgb,var(--fg) 5%,transparent)}.df-v2 .sim-section-nav button.active{border-color:transparent;color:var(--accent);background:var(--accent-soft);font-weight:600}.df-v2 .sim-section-nav-dot{width:18px;height:18px;border:1px solid var(--border-strong);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-elev);color:var(--fg-tertiary);font-family:var(--font-mono);font-size:9px;font-weight:600}.df-v2 .sim-section-nav button.active .sim-section-nav-dot{color:var(--accent-fg);background:#2f6fed;border-color:#2f6fed}.df-v2 .sim-settings-scroll{min-width:0;min-height:0;overflow-y:auto;padding:16px 18px 32px;scroll-behavior:smooth}.df-v2 .sim-workbench-mode{display:inline-flex;align-items:center;gap:5px;min-height:24px;margin-left:auto;padding:0 8px;border:1px solid var(--accent-border);border-radius:999px;background:var(--accent-soft);color:var(--accent);font-family:var(--font-mono);font-size:10px;font-weight:600;white-space:nowrap}.df-v2 .sim-workbench-error{display:grid;place-content:center;gap:8px;min-height:240px;padding:24px;color:var(--fg-secondary);background:var(--bg-elev)}.df-v2 .sim-workbench-error span{color:var(--fg-tertiary);font-size:12px}.df-v2 .reservoir-view{display:flex;flex-direction:column;min-width:0;min-height:640px;height:calc(100dvh - 148px);overflow:hidden;background:var(--bg-sunk);border-left:1px solid var(--border)}.df-v2 .reservoir-view-live{color:var(--green);font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.07em}.df-v2 .reservoir-view .mesh-preview-body{flex:1 1 auto;min-height:0;height:auto;padding:8px}.df-v2 .reservoir-view .mesh-preview-body>.center{min-height:0;height:100%}.df-v2 .reservoir-view-context{position:absolute;z-index:2;top:12px;right:56px;display:flex;max-width:calc(100% - 260px);align-items:center;gap:7px;padding:5px 8px;border:1px solid var(--border-on-dark);border-radius:5px;background:#141820e0;box-shadow:0 8px 18px #00000038;color:var(--viewport-muted);font-family:var(--font-mono);font-size:10px;pointer-events:none}.df-v2 .reservoir-view-context span+span:before{content:"·";margin-right:7px;color:var(--fg-tertiary)}.df-v2 .reservoir-view-context .reservoir-view-context-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--fg-on-dark)}.df-v2 .reservoir-view-context .reservoir-view-live{color:var(--green)}.df-v2 .reservoir-view-context .reservoir-view-live:before{color:var(--fg-tertiary)}.df-v2 .sim-readiness{flex:0 0 auto;padding:12px;border-top:1px solid var(--border);background:var(--bg-elev)}.df-v2 .sim-readiness.compact{padding:8px 12px}.df-v2 .sim-readiness.compact .sim-readiness-head{align-items:center}.df-v2 .sim-readiness.compact .sim-readiness-grid{display:flex;align-items:center;justify-content:flex-end;gap:4px 12px;margin:0}.df-v2 .sim-readiness.compact .sim-readiness-grid span{display:none}.df-v2 .sim-readiness.compact .sim-readiness-grid strong{font-family:var(--font-mono);font-size:10px;font-weight:600}.df-v2 .sim-readiness-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.df-v2 .sim-readiness-title{color:var(--fg);font-size:12px;font-weight:650}.df-v2 .sim-readiness-sub{margin-top:3px;color:var(--fg-tertiary);font-size:10.5px}.df-v2 .sim-readiness-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;margin-top:10px;font-size:10.5px}.df-v2 .sim-readiness-grid span{color:var(--fg-tertiary)}.df-v2 .sim-readiness-grid strong{color:var(--fg-secondary);font-family:var(--font-mono);font-size:10.5px;font-weight:500;text-align:right}.df-v2 .sim-readiness-warning{margin-top:9px;padding:7px 8px;border-left:2px solid var(--warm);background:var(--warm-soft);color:var(--fg-secondary);font-size:10.5px;line-height:1.4}.df-v2 .sim-settings-card{width:100%;max-width:1200px;margin:0 auto 14px;padding:0;overflow:hidden;border:1px solid var(--border);border-radius:10px;background:var(--bg-elev);box-shadow:var(--shadow-1);scroll-margin-top:16px}.df-v2 .sim-settings-card:last-child{border-bottom:1px solid var(--border)}.df-v2 .sim-settings-card-toggle{width:100%;min-height:48px;margin:0;padding:0 16px;justify-content:flex-start;color:var(--fg);font-size:13.5px;font-weight:650;letter-spacing:-.005em;text-align:left;text-transform:none}.df-v2 .sim-settings-card-toggle:hover{background:color-mix(in srgb,var(--fg) 3%,transparent)}.df-v2 .sim-settings-card-toggle[aria-expanded=true]{border-bottom:1px solid var(--border)}.df-v2 .sim-settings-card-body{min-width:0;padding:14px 16px 16px}.df-v2 .sim-settings-card-body>.field{max-width:760px;grid-template-columns:170px minmax(0,1fr)}.df-v2 .sim-settings-card .sim-settings-card{max-width:none;margin:12px 0 0;border-radius:8px;background:var(--bg-sunk);box-shadow:none}.df-v2 .sim-settings-card .sim-settings-card .sim-settings-card-toggle{min-height:38px;font-size:11.5px}.df-v2 .sim-settings-card .sim-settings-card .sim-settings-card-body{padding:10px 12px 12px}.df-v2 .sim-section-presets{display:flex;gap:7px;max-width:520px;margin-bottom:12px}.df-v2 .sim-bc-grid{display:grid;grid-template-columns:minmax(0,1fr);border:1px solid var(--border);border-radius:8px;overflow:hidden}.df-v2 .sim-bc-card{display:grid;grid-template-columns:52px minmax(0,1fr);column-gap:10px;row-gap:4px;align-items:center;min-width:0;padding:7px 12px;background:transparent}.df-v2 .sim-bc-card+.sim-bc-card{border-top:1px solid var(--border)}.df-v2 .sim-bc-card>:not(.sim-bc-side){grid-column:2}.df-v2 .sim-bc-card.sealed .sim-bc-side{color:var(--fg-secondary);font-weight:600}.df-v2 .sim-bc-side{display:block;margin:0;color:var(--fg);font-size:11px;font-weight:700}.df-v2 .sim-bc-fields{display:grid;grid-template-columns:minmax(90px,.85fr) minmax(120px,1.15fr);gap:6px;align-items:center}.df-v2 .sim-bc-fields .input{width:100%;min-width:0}.df-v2 .sim-bc-fields .field-unit{min-width:auto;padding-right:0}.df-v2 .sim-initial-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));gap:12px 16px;min-width:0}.df-v2 .sim-initial-grid>.field{min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:5px;margin:0}.df-v2 .sim-initial-grid>.field .pill{display:flex!important;min-height:26px}.df-v2 .sim-initial-grid>.field .pill button{flex:1}.df-v2 .sim-field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:0 20px}.df-v2 .sim-inline-help{grid-column:1 / -1;max-width:920px;line-height:1.5}.df-v2 .sim-well-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:10px;align-items:start}.df-v2 .sim-well-card{min-width:0;height:100%;margin-bottom:0!important;border:1px solid var(--border);background:var(--bg-elev)!important}.df-v2 .sim-run-history{background:var(--bg-elev)}.df-v2 .sim-run-history-head{min-height:56px;background:var(--bg-elev)}.df-v2 .sim-run-list{flex:1;min-height:0;overflow-y:auto;padding:8px}.df-v2 .sim-run-row{gap:7px;margin-bottom:5px;padding:11px 10px 11px 12px;border:1px solid transparent;border-radius:8px;background:transparent}.df-v2 .sim-run-row.active{border-color:var(--accent-border);background:var(--accent-soft)}.df-v2 .sim-run-name{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.df-v2 .sim-run-menu-trigger{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:6px;color:var(--fg-tertiary);font-size:19px;line-height:1}.df-v2 .sim-run-menu-trigger:hover,.df-v2 .sim-run-menu-trigger[aria-expanded=true]{color:var(--fg);background:var(--bg-elev);box-shadow:var(--shadow-1)}.df-v2 .sim-run-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:100%;margin:2px 0 0;padding:5px;border:1px solid var(--border);border-radius:7px;background:var(--bg-elev)}.df-v2 .sim-run-action{height:28px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;gap:4px;border-radius:5px;font-size:10.5px}.df-v2 .sim-run-action:hover{background:var(--bg-sunk);box-shadow:none}@media (max-width: 1280px){.df-v2 .sim-settings-body{grid-template-columns:minmax(330px,390px) minmax(0,1fr)}.df-v2 nav.sim-section-nav{padding-inline:7px}}@media (max-width: 1040px){.df-v2 .body.layout-sim{grid-template-columns:minmax(0,1fr)}.df-v2 .sim-settings-body{grid-template-columns:minmax(300px,360px) minmax(0,1fr)}.df-v2 nav.sim-section-nav{display:none}.df-v2 .sim-settings-scroll{padding-inline:12px}.df-v2 .sim-settings-subtitle{display:none}}@media (max-width: 820px){.df-v2 .sim-settings-body{grid-template-columns:1fr;overflow-y:auto}.df-v2 .sim-settings-scroll{min-height:440px}.df-v2 .reservoir-view{min-height:520px;border-top:1px solid var(--border);border-left:0}.df-v2 .sim-main>.sim-run-history{max-height:150px}.df-v2 .sim-bc-grid{grid-template-columns:1fr}}.df-v2 .btn{display:inline-flex;align-items:center;gap:var(--s-2);height:28px;padding:0 12px;border-radius:var(--r-1);font-size:12px;font-weight:500;border:1px solid var(--border);background:var(--bg-elev);color:var(--fg);white-space:nowrap;text-decoration:none;cursor:pointer;transition:background .12s ease,border-color .12s ease,transform .1s ease}.df-v2 .btn:hover{background:var(--bg-sunk);border-color:var(--border-strong)}.df-v2 .btn:active{transform:scale(.98)}.df-v2 .btn.primary{background:var(--fg);color:var(--bg-elev);border-color:var(--fg);font-weight:600;box-shadow:none}.df-v2 .btn.primary:hover{background:var(--fg);border-color:var(--fg);opacity:.86}.df-v2 .btn.ghost{border-color:transparent;background:transparent;color:var(--fg-secondary)}.df-v2 .btn.ghost:hover{background:var(--bg-sunk);color:var(--fg)}.df-v2 .btn.sm{height:24px;padding:0 9px;font-size:11px}.df-v2 .btn.lg{height:34px;padding:0 16px;font-size:13px}.df-v2 .btn.danger{color:var(--red)}.df-v2 .btn:disabled{opacity:.4;cursor:not-allowed}.df-v2 .spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.15);border-top-color:#7cbdff;border-top-color:oklch(.78 .16 250);border-radius:50%;animation:df-spin .8s linear infinite}@keyframes df-spin{to{transform:rotate(360deg)}}.df-v2 .input{height:30px;padding:0 10px;border:1px solid var(--border);background:var(--bg-elev);border-radius:var(--r-2);font-size:13px;width:100%}.df-v2 .input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.df-v2 .input.search{background:var(--bg-sunk);border-color:transparent}.df-v2 .badge{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:100px;font-size:11px;font-weight:500;background:var(--bg-sunk);color:var(--fg-secondary);border:1px solid var(--border)}.df-v2 .badge.accent{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-border)}.df-v2 .badge.warm{background:var(--warm-soft);color:var(--warm)}.df-v2 .badge.green{background:var(--green-soft);color:var(--green)}.df-v2 .badge.complete{background:var(--green-soft);color:var(--green);border-color:color-mix(in oklab,var(--green) 26%,var(--border))}.df-v2 .badge.warning{background:var(--warm-soft);color:var(--warm);border-color:color-mix(in oklab,var(--warm) 30%,var(--border))}.df-v2 .badge.dark{background:#141820d9;color:var(--fg-on-dark);border-color:var(--border-on-dark)}.df-v2 .pb-root{height:100%;display:grid;grid-template-columns:248px minmax(0,1fr);transition:grid-template-columns .15s ease}.df-v2 .pb-root:has(.pb-sidebar.collapsed){grid-template-columns:56px minmax(0,1fr)}.df-v2 .pb-sidebar{background:var(--bg-elev);border-right:1px solid var(--border);padding:var(--s-5);display:flex;flex-direction:column}.df-v2 .pb-sidebar.collapsed{padding:var(--s-5) var(--s-2);align-items:center;overflow:visible}.df-v2 .pb-sidebar.collapsed>*:not(.pb-sidebar-brand):not(.pb-sidebar-settings){display:none}.df-v2 .pb-sidebar.collapsed .pb-sidebar-settings{margin-top:auto;width:100%}.df-v2 .pb-sidebar.collapsed .pb-sidebar-allowance{display:none}.df-v2 .pb-sidebar.collapsed .settings-btn.compact{width:100%;padding:0;font-size:18px}.df-v2 .pb-sidebar.collapsed .settings-popover{left:calc(100% + 12px);bottom:0}.df-v2 .pb-sidebar-brand{display:flex;align-items:center;gap:var(--s-3);font-size:14px;font-weight:600;margin-bottom:var(--s-7);width:100%}.df-v2 .pb-sidebar.collapsed .pb-sidebar-brand{flex-direction:column;gap:var(--s-3);margin-bottom:var(--s-4)}.df-v2 .pb-sidebar.collapsed .pb-sidebar-brand>span{display:none}.df-v2 .sidebar-toggle{display:flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0;margin-left:auto;border-radius:var(--r-2);border:1px solid transparent;background:transparent;color:var(--fg-tertiary);cursor:pointer}.df-v2 .sidebar-toggle:hover{background:var(--bg-sunk);color:var(--fg);border-color:var(--border)}.df-v2 .pb-sidebar.collapsed .sidebar-toggle{margin-left:0}.df-v2 .pb-sidebar-nav{display:flex;flex-direction:column;gap:1px}.df-v2 .pb-sidebar .settings-menu{width:100%;justify-content:stretch}.df-v2 .pb-sidebar .settings-btn{width:100%;justify-content:center}.df-v2 .pb-sidebar .settings-popover{top:auto;bottom:calc(100% + 8px);left:0;right:auto}.df-v2 .settings-btn{border-radius:9999px;background:var(--bg-elev);border:1px solid var(--border);color:var(--fg);font-size:12px;font-weight:500;transition:all .12s ease}.df-v2 .settings-btn:hover{background:var(--bg-sunk);border-color:var(--border-strong)}.df-v2 .settings-popover{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-3);box-shadow:var(--shadow-pop);color:var(--fg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.df-v2 .settings-popover-title{color:var(--fg);font-weight:600}.df-v2 .settings-section{border-top:1px solid var(--border)}.df-v2 .settings-label{color:var(--fg-secondary);font-weight:600;font-size:10.5px}.df-v2 .settings-segment{background:var(--bg-sunk);border:1px solid var(--border);border-radius:9999px;padding:2px}.df-v2 .settings-segment span{border-radius:9999px;color:var(--fg-secondary);font-size:11.5px;font-weight:500;transition:all .12s ease}.df-v2 .settings-segment span.active{background:var(--bg-elev);color:var(--fg);font-weight:600;box-shadow:var(--shadow-1)}.df-v2 .settings-hint{color:var(--fg-tertiary);font-size:11px}.df-v2 .settings-email{color:var(--fg-secondary)}.df-v2 .pb-nav-item{display:flex;align-items:center;gap:var(--s-3);padding:0 var(--s-3);height:30px;border-radius:var(--r-2);color:var(--fg-secondary);font-size:12.5px;cursor:pointer}.df-v2 .pb-nav-item:hover{background:var(--bg-sunk);color:var(--fg)}.df-v2 .pb-nav-item.active{background:var(--accent-soft);color:var(--accent)}.df-v2 .pb-nav-item .count{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--fg-tertiary)}.df-v2 .pb-nav-section{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--fg-tertiary);margin:var(--s-5) 0 var(--s-2) var(--s-3)}.df-v2 .pb-main{min-width:0;overflow-y:auto;background:var(--bg)}.df-v2 .pb-error{display:flex;align-items:flex-start;gap:var(--s-3);margin-bottom:var(--s-4);padding:var(--s-3) var(--s-4);border:1px solid color-mix(in oklch,var(--red) 45%,transparent);border-radius:6px;background:color-mix(in oklch,var(--red) 10%,var(--bg-sunk));color:var(--fg);font-size:12px;line-height:1.45}.df-v2 .pb-error>span{flex:1}.df-v2 .pb-error-dismiss{flex:none;display:grid;place-items:center;width:20px;height:20px;padding:0;border:none;border-radius:4px;background:none;color:var(--fg-tertiary);cursor:pointer}.df-v2 .pb-error-dismiss:hover{background:var(--bg-sunk);color:var(--fg)}.df-v2 .pb-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 20px 14px;background:var(--bg-elev);border-bottom:1px solid var(--border)}.df-v2 .pb-header h1{margin:0;font-size:18px;font-weight:650;letter-spacing:-.015em}.df-v2 .pb-header .sub{margin-top:8px;color:var(--fg-secondary);font-size:11px}.df-v2 .pb-header>.btn{flex-shrink:0}.df-v2 .pb-content{padding:24px}.df-v2 .pb-create-form{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px}.df-v2 .pb-create-form label{font-size:13px;font-weight:600}.df-v2 .pb-create-form .input{width:300px;max-width:100%}.df-v2 .pb-table td:first-child{width:36%;overflow-wrap:anywhere}.df-v2 .pb-table td{height:70px}@media (max-width: 760px){.df-v2 .pb-content{padding:16px}.df-v2 .pb-header{flex-wrap:wrap}}.df-v2 .list{display:flex;flex-direction:column}.df-v2 .list-row{display:grid;align-items:center;height:var(--row-h);padding:0 var(--s-4);border-bottom:1px solid var(--border);font-size:12.5px;color:var(--fg-secondary);cursor:pointer}.df-v2 .list-row.head{font-size:11px;font-weight:600;color:var(--fg-tertiary);text-transform:uppercase;letter-spacing:.04em;background:var(--bg-sunk);cursor:default}.df-v2 .list-row:hover:not(.head){background:var(--bg-sunk)}.df-v2 .list-row.selected{background:var(--accent-soft);color:var(--fg)}.df-v2 .results-main{overflow-y:auto;overflow-x:hidden;background:var(--bg)}.df-v2 .results-view-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 20px;background:var(--bg-elev);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:4}.df-v2 .results-view-tabs{display:inline-flex;gap:2px;padding:2px;border-radius:7px;background:var(--bg-sunk)}.df-v2 .results-view-tabs button{height:25px;padding:0 11px;border-radius:5px;color:var(--fg-tertiary);font-size:11.5px;font-weight:600}.df-v2 .results-view-tabs button:hover{color:var(--fg)}.df-v2 .results-view-tabs button.active{color:var(--accent);background:var(--bg-elev);box-shadow:var(--shadow-1)}.df-v2 .results-grid{display:grid;grid-template-rows:minmax(420px,62vh) auto;min-height:100%}.df-v2 .heatmap-wrap{position:relative;min-height:420px;background:var(--viewport);border-bottom:1px solid var(--border-on-dark)}.df-v2 .charts-wrap{background:var(--bg);padding:var(--s-5);display:grid;grid-template-columns:1fr 1fr;gap:var(--s-4);align-content:start;overflow:visible}.df-v2 .chart-card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-3);padding:var(--s-4);display:flex;flex-direction:column;min-width:0}.df-v2 .chart-expand-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;flex:0 0 auto;border:1px solid var(--border);border-radius:var(--r-2);background:var(--bg-elev);color:var(--fg-tertiary);cursor:pointer;transition:color .12s ease,border-color .12s ease}.df-v2 .chart-expand-btn:hover{color:var(--accent);border-color:var(--accent)}.df-v2 .chart-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:var(--bg);display:flex;flex-direction:column;padding:var(--s-4)}.df-v2 .chart-modal{position:relative;width:100%;height:100%;max-height:none;display:flex;flex-direction:column;gap:var(--s-2)}.df-v2 .chart-modal>.chart-card{flex:1;overflow:auto;border-radius:var(--r-3)}.df-v2 .chart-modal-head{display:flex;justify-content:flex-end;flex:0 0 auto}.df-v2 .chart-modal-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--border-strong);border-radius:var(--r-2);background:var(--bg-elev);color:var(--fg);cursor:pointer;transition:background .12s ease,border-color .12s ease}.df-v2 .chart-modal-close:hover{background:var(--bg-sunk);border-color:var(--fg-tertiary)}.df-v2 .chart-title{display:flex;align-items:center;gap:var(--s-2);font-size:12px;font-weight:600;margin-bottom:var(--s-3)}.df-v2 .chart-title .unit{color:var(--fg-tertiary);font-weight:400;font-family:var(--font-mono);font-size:11px;margin-left:auto}.df-v2 .run-card{position:absolute;top:var(--s-4);left:50%;transform:translate(-50%);width:min(460px,calc(100% - 32px));background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-3);box-shadow:0 14px 40px #0f172a24;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:var(--s-5);color:var(--fg);z-index:20}.df-v2 .run-card .head{display:flex;align-items:center;gap:var(--s-3);margin-bottom:var(--s-4)}.df-v2 .run-card .title{font-weight:600;font-size:13px}.df-v2 .run-card .sub{font-family:var(--font-mono);font-size:11px;color:var(--fg-tertiary);margin-left:auto}.df-v2 .mesh-build-card{width:min(520px,calc(100% - 32px));padding:0;overflow:hidden}.df-v2 .mesh-build-body{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:18px}.df-v2 .mesh-build-thumbnail{display:flex;align-items:center;justify-content:center;min-height:112px;padding:12px;border-radius:7px;background:var(--bg-sunk);border:1px solid var(--border)}.df-v2 .mesh-build-thumbnail svg{display:block;width:100%;height:auto}.df-v2 .mesh-build-domain{fill:var(--bg-elev);stroke:var(--border-strong)}.df-v2 .mesh-build-lines{fill:none;stroke-width:1;vector-effect:non-scaling-stroke}.df-v2 .mesh-build-lines.muted{stroke:var(--fg-quaternary)}.df-v2 .mesh-build-lines.active{stroke:var(--accent);stroke-width:1.15}.df-v2 .mesh-build-fill{fill:color-mix(in oklch,var(--accent) 12%,transparent);stroke:none}.df-v2 .mesh-build-content{min-width:0}.df-v2 .mesh-build-title-row{display:flex;justify-content:space-between;gap:12px}.df-v2 .mesh-build-name{font-size:15px;line-height:1.2;font-weight:650;color:var(--fg)}.df-v2 .mesh-build-heading{display:flex;align-items:center;gap:7px;margin-top:5px;font-size:12px;color:var(--fg-secondary)}.df-v2 .mesh-build-heading .spinner{width:12px;height:12px;border-width:2px}.df-v2 .mesh-build-elapsed{white-space:nowrap;font:10.5px var(--font-mono);color:var(--fg-tertiary)}.df-v2 .mesh-build-stage-row{display:flex;justify-content:space-between;gap:12px;margin-top:14px;font-size:11px;color:var(--fg-secondary)}.df-v2 .mesh-build-stage-row span:last-child{font-family:var(--font-mono);color:var(--fg-tertiary)}.df-v2 .mesh-build-card .run-bar{height:4px;margin-top:7px;background:var(--bg-sunk)}.df-v2 .mesh-build-card .run-bar-fill{background:var(--accent)}.df-v2 .mesh-build-ticks{display:flex;justify-content:space-between;padding:0 1px;margin-top:8px}.df-v2 .mesh-build-ticks span{width:7px;height:7px;border:1px solid var(--border-strong);border-radius:50%;background:var(--bg-elev)}.df-v2 .mesh-build-ticks span.active{border-color:var(--accent);background:var(--accent)}.df-v2 .mesh-build-status{margin-top:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;color:var(--fg-tertiary)}.df-v2 .mesh-build-footer{display:flex;align-items:center;gap:12px;min-height:50px;padding:10px 18px;border-top:1px solid var(--border);background:color-mix(in oklch,var(--bg-sunk) 55%,var(--bg-elev));font-size:10.5px;color:var(--fg-tertiary)}.df-v2 .mesh-build-actions{display:flex;gap:7px;margin-left:auto;flex-shrink:0}@media (max-width: 720px){.df-v2 .mesh-build-body{grid-template-columns:96px 1fr;gap:12px;padding:14px}.df-v2 .mesh-build-thumbnail{min-height:92px;padding:8px}.df-v2 .mesh-build-footer>span{display:none}}.df-v2 .run-bar{height:4px;background:#ffffff14;border-radius:2px;overflow:hidden}.df-v2 .run-bar-fill{height:100%;background:linear-gradient(90deg,#2389e2,#7cbdff);background:linear-gradient(90deg,#2389e2,color(xyz 0.453 0.477 1.248));transition:width .3s ease}.df-v2 .run-step{display:flex;align-items:center;gap:var(--s-3);padding:6px 0;font-size:12px}.df-v2 .run-step .num{width:18px;height:18px;border-radius:50%;border:1px solid var(--border-on-dark);display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-family:var(--font-mono);color:var(--viewport-muted);flex-shrink:0}.df-v2 .run-step.done .num{background:var(--green);color:#fff;border-color:var(--green)}.df-v2 .run-step.active .num{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.df-v2 .run-step .elapsed{margin-left:auto;font-family:var(--font-mono);font-size:10.5px;color:var(--viewport-muted)}.df-v2 .run-step.pending{opacity:.45}.df-v2 .run-step .label{flex:1}.df-v2 .log-strip{margin-top:var(--s-4);padding-top:var(--s-3);border-top:1px solid var(--border);font-family:var(--font-mono);font-size:10.5px;color:var(--fg-tertiary);max-height:80px;overflow-y:auto}.df-v2 .log-strip>div{padding:1px 0}.df-v2 .log-strip .ts{color:#4c759f;margin-right:6px}.df-v2 .pill{display:inline-flex;background:var(--bg-sunk);padding:2px;border-radius:var(--r-2);gap:1px}.df-v2 .pill button{height:22px;padding:0 10px;border-radius:4px;font-size:11.5px;color:var(--fg-secondary)}.df-v2 .pill button.on{background:var(--bg-elev);color:var(--fg);font-weight:500;box-shadow:var(--shadow-1)}.df-v2 .opt-card{border:1px solid var(--border);border-radius:var(--r-3);padding:var(--s-4);cursor:pointer}.df-v2 .opt-card:hover{border-color:var(--border-strong)}.df-v2 .opt-card.on{border-color:var(--accent);background:var(--accent-soft)}.df-v2 .opt-card-title{font-weight:500;font-size:12.5px}.df-v2 .opt-card-desc{color:var(--fg-tertiary);font-size:11.5px;margin-top:2px}.df-v2 .menu{position:absolute;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-3);box-shadow:var(--shadow-pop);padding:4px;min-width:200px;z-index:50}.df-v2 .menu-item{display:flex;align-items:center;gap:var(--s-3);height:28px;padding:0 8px;border-radius:var(--r-1);font-size:12.5px;cursor:pointer}.df-v2 .menu-item:hover{background:var(--bg-sunk)}.df-v2 .empty-state{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s-5);color:var(--viewport-muted);text-align:center;pointer-events:none}.df-v2 .empty-state .title{color:var(--fg-on-dark);font-size:16px;font-weight:500}.df-v2 .empty-state .sub{font-size:12.5px;max-width:360px;line-height:1.5}.df-v2 .empty-state .tools{display:flex;gap:var(--s-3);margin-top:var(--s-4);pointer-events:auto}.df-v2 .mesh-empty-watermark{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:14px;color:#adbed621;font-size:clamp(38px,5vw,72px);font-weight:650;letter-spacing:-.055em;pointer-events:none;-webkit-user-select:none;user-select:none}.df-v2 .mesh-empty-watermark .brand-mark{width:clamp(48px,5.8vw,80px);height:clamp(48px,5.8vw,80px);border-radius:clamp(13px,1.4vw,22px);opacity:.42;filter:grayscale(.2) saturate(.7)}.df-v2 .mesh-empty-watermark .brand-mark:after{inset:clamp(9px,1vw,14px);border-radius:clamp(7px,.8vw,11px)}.df-v2 .mesh-empty-watermark span span{color:#67a3f63d}.df-v2 .kbd-key{display:inline-flex;align-items:center;justify-content:center;height:18px;min-width:18px;padding:0 4px;background:var(--bg-elev);border:1px solid var(--border);border-bottom-width:2px;border-radius:4px;font-family:var(--font-mono);font-size:10.5px;color:var(--fg-secondary)}.df-v2 .hint{font-size:11.5px;color:var(--fg-tertiary);line-height:1.5}.df-v2 ::-webkit-scrollbar{width:10px;height:10px}.df-v2 ::-webkit-scrollbar-track{background:transparent}.df-v2 ::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:5px;border:2px solid transparent;background-clip:padding-box}.df-v2 ::-webkit-scrollbar-thumb:hover{background:var(--fg-quaternary);border:2px solid transparent;background-clip:padding-box}.df-signin{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(135deg,#f5f7faf5,#eef2f7f5),#f6f7f9}.df-signin-stack{width:min(400px,100%);display:grid;justify-items:center;gap:14px}.df-signin-back{padding:6px 10px;color:#64748b;background:transparent;border:0;border-radius:6px;font:500 13px/1.4 system-ui,-apple-system,sans-serif;cursor:pointer}.df-signin-back:hover{color:#1e293b;background:#ffffffb3}.df-v2 .df-workspace-selector,.df-v2 .df-project-browser{--bg: #f6f8fb;--bg-elev: #ffffff;--bg-sunk: #eef2f7;--fg: #1d2735;--fg-secondary: #4b596b;--fg-tertiary: #65748a;--border: #dce3ed;--border-strong: #b8c5d7;--accent: #2563eb;--accent-soft: rgba(37,99,235,.08);--accent-border: rgba(37,99,235,.35);--workspace-hover: #fbfcff;--workspace-rail: #ffffff;color-scheme:light}.df-v2 .df-workspace-selector[data-theme=dark],.df-v2 .df-project-browser[data-theme=dark]{--bg: #141e2c;--bg-elev: #1b2738;--bg-sunk: #0f1723;--fg: #f3f1ea;--fg-secondary: #c5cedb;--fg-tertiary: #94a2b6;--border: rgba(197,206,219,.16);--border-strong: rgba(197,206,219,.34);--accent: #8fc4e8;--accent-soft: rgba(143,196,232,.12);--accent-border: rgba(143,196,232,.55);--workspace-hover: #1e2c3e;--workspace-rail: #0f1723;color-scheme:dark}.df-v2 .df-workspace-selector .pb-main{background:var(--bg);color:var(--fg)}.df-v2 .df-workspace-selector .df-workspace-rail{background:var(--workspace-rail)}.df-v2 .df-workspace-topbar{height:76px;padding:0 36px;display:flex;align-items:center;border-bottom:1px solid var(--border);background:var(--bg)}.df-v2 .df-workspace-wordmark{font-size:19px;font-weight:600;letter-spacing:-.65px;color:var(--fg)}.df-v2 .df-workspace-wordmark span{color:#0071e3}.df-v2 .df-workspace-content{max-width:1120px;margin:0 auto;padding:54px 36px 70px}.df-v2 .df-workspace-intro h1{font-size:39px;font-weight:600;letter-spacing:-1.35px;margin:0 0 34px;line-height:1.12}.df-v2 .df-modules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.df-v2 .df-module-card{min-width:0;min-height:350px;display:flex;flex-direction:column;text-align:left;font:inherit;color:var(--fg);padding:28px;background:var(--bg-elev);border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:border-color .15s,background .15s}.df-v2 .df-module-card:hover{border-color:var(--accent-border);background:var(--workspace-hover)}.df-v2 .df-module-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:28px}.df-v2 .df-module-icon{width:48px;height:48px;display:grid;place-items:center;flex-shrink:0;border-radius:13px;color:#0071e3;background:#ebf4fd}.df-v2 .df-module-icon.fracture{color:#ff9500;background:#fff2e0}.df-v2 .df-module-icon.pvt{color:#8270cb;background:#f0eef9}.df-v2 .df-module-badge{display:flex;align-items:center;gap:6px;font:10px/1.4 var(--font-mono);letter-spacing:1px;text-transform:uppercase;color:var(--fg-tertiary)}.df-v2 .df-module-badge.ready{color:#348253}.df-v2 .df-workspace-selector[data-theme=dark] .df-module-badge.ready{color:#a4cbb6}.df-v2 .df-module-badge.ready:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.df-v2 .df-module-title{font-size:21px;font-weight:550;letter-spacing:-.65px;line-height:1.25;margin-bottom:13px}.df-v2 .df-module-tagline{font-size:13px;color:var(--fg-secondary);line-height:1.7;min-height:65px}.df-v2 .df-module-tags{display:flex;flex-wrap:wrap;column-gap:5px;margin:20px 0 26px}.df-v2 .df-module-tag{font:11px/1.7 var(--font-mono);color:var(--fg-tertiary)}.df-v2 .df-module-tag:not(:last-child):after{content:" ·"}.df-v2 .df-module-cta{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;font-weight:500;color:var(--accent);border-top:1px solid var(--border);padding-top:17px;margin-top:auto;width:100%}.df-v2 .df-module-cta svg{transition:transform .15s;flex-shrink:0}.df-v2 .df-module-card:hover .df-module-cta svg{transform:translate(3px)}.df-v2 .df-workspace-admin{display:flex;align-items:center;gap:14px;width:100%;margin-top:28px;border:0;border-top:1px solid var(--border);border-radius:0;background:transparent;padding:23px 0;text-align:left;font:inherit;color:var(--fg);cursor:pointer}.df-v2 .df-workspace-admin:hover .df-workspace-admin-cta{color:var(--accent)}.df-v2 .df-workspace-admin-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;flex-shrink:0;color:#429c5a;background:#e9f6eb}.df-v2 .df-workspace-admin-copy{display:flex;flex-direction:column;gap:4px}.df-v2 .df-workspace-admin-title{display:flex;flex-wrap:wrap;align-items:center;gap:13px;font-size:14px;font-weight:500}.df-v2 .df-workspace-admin-title>span{font:10px/1.4 var(--font-mono);color:var(--fg-tertiary);text-transform:uppercase;letter-spacing:1px}.df-v2 .df-workspace-admin-description{font-size:12px;color:var(--fg-tertiary);line-height:1.6}.df-v2 .df-workspace-admin-cta{display:flex;align-items:center;gap:16px;margin-left:auto;padding-left:16px;font-size:12px;color:var(--fg-secondary);white-space:nowrap}.df-v2 .df-workspace-admin-cta svg{flex-shrink:0}.df-v2 .df-workspace-selector button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}@media (min-width: 1500px){.df-v2 .df-workspace-content{padding-top:72px}}@media (max-width: 1100px){.df-v2 .df-workspace-content{padding:42px 28px}.df-v2 .df-modules{gap:12px}.df-v2 .df-module-card{padding:24px 20px}.df-v2 .df-workspace-topbar{padding:0 28px}}@media (max-width: 810px){.df-v2 .df-modules{grid-template-columns:minmax(0,1fr)}.df-v2 .df-module-card{min-height:0;padding:22px}.df-v2 .df-module-head{margin-bottom:18px}.df-v2 .df-module-tagline{min-height:0}.df-v2 .df-module-tags{margin:14px 0 20px}.df-v2 .df-workspace-content{padding:38px 24px 44px}.df-v2 .df-workspace-intro h1{font-size:32px;margin-bottom:28px}.df-v2 .df-workspace-admin{flex-wrap:wrap;gap:12px}.df-v2 .df-workspace-admin-copy{flex:1;min-width:140px}.df-v2 .df-workspace-admin-cta{width:100%;margin-left:52px;padding-left:0}}@media (max-width: 760px){.df-v2 .df-workspace-selector,.df-v2 .df-workspace-selector:has(.pb-sidebar.collapsed){grid-template-columns:56px minmax(0,1fr)}.df-v2 .df-workspace-selector .pb-main{grid-column:2}.df-v2 .df-workspace-topbar{height:64px;padding:0 22px}}@media (max-width: 430px){.df-v2 .df-workspace-content{padding:30px 16px}.df-v2 .df-workspace-topbar{padding:0 16px}.df-v2 .df-module-card{padding:20px}.df-v2 .df-module-title{font-size:20px}}@media (prefers-reduced-motion: reduce){.df-v2 .df-module-card,.df-v2 .df-module-cta svg{transition:none}.df-v2 .df-module-card:hover .df-module-cta svg{transform:none}}.df-v2 .df-module-badge.admin{color:var(--green);background:var(--green-soft)}.df-v2 .admin-root{grid-template-columns:220px minmax(0,1fr)}.df-v2 .admin-root:has(.pb-sidebar.collapsed){grid-template-columns:56px minmax(0,1fr)}.df-v2 .admin-root .pb-sidebar{background:color-mix(in oklch,var(--bg-elev) 88%,var(--green) 12%)}.df-v2 .admin-root .brand-mark{background:var(--green)}.df-v2 .admin-operator-label{margin-left:auto;padding:2px 6px;border-radius:999px;color:var(--green);background:var(--green-soft);font:600 9px/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.df-v2 .admin-side-copy{display:flex;flex-direction:column;gap:5px;margin:var(--s-6) 0}.df-v2 .admin-side-copy strong{font-size:12px}.df-v2 .admin-side-copy span{color:var(--fg-tertiary);font-size:11px;line-height:1.55}.df-v2 .admin-root .pb-nav-item{width:100%}.df-v2 .admin-root .pb-nav-item.active{color:var(--green);background:var(--green-soft)}.df-v2 .admin-sidebar-account{margin-top:auto;padding-top:var(--s-4);border-top:1px solid var(--border)}.df-v2 .admin-main{padding:var(--s-6)}.df-v2 .admin-header{align-items:center}.df-v2 .admin-header>div{display:flex;flex-direction:column;gap:3px}.df-v2 .admin-error{display:flex;gap:var(--s-3);align-items:center;margin-bottom:var(--s-4);padding:var(--s-3) var(--s-4);border:1px solid color-mix(in oklch,var(--red) 32%,transparent);border-radius:var(--r-3);color:var(--red);background:color-mix(in oklch,var(--red) 7%,transparent);font-size:12px}.df-v2 .admin-error span{color:var(--fg-secondary)}.df-v2 .admin-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-3);margin-bottom:var(--s-5)}.df-v2 .admin-summary-card{display:flex;flex-direction:column;min-width:0;padding:var(--s-4);border:1px solid var(--border);border-radius:var(--r-3);background:var(--bg-elev)}.df-v2 .admin-summary-card>span{color:var(--fg-tertiary);font:600 10px/1.2 var(--font-mono);letter-spacing:.05em;text-transform:uppercase}.df-v2 .admin-summary-card strong{margin:8px 0 4px;font:600 24px/1.1 var(--font-mono);letter-spacing:-.03em}.df-v2 .admin-summary-card small{color:var(--fg-tertiary);font-size:10.5px}.df-v2 .admin-summary-card.credit strong{color:var(--green)}.df-v2 .admin-summary-card.net{border-color:color-mix(in oklch,var(--accent) 24%,var(--border))}.df-v2 .admin-toolbar{display:flex;align-items:center;gap:var(--s-3);margin-bottom:var(--s-3)}.df-v2 .admin-toolbar>span{margin-left:auto;color:var(--fg-tertiary);font-size:11px}.df-v2 .admin-toolbar select{width:auto;min-width:150px}.df-v2 .admin-search{display:flex;align-items:center;gap:var(--s-2);width:min(360px,42vw);height:32px;padding:0 10px;border:1px solid var(--border);border-radius:var(--r-2);background:var(--bg-elev);color:var(--fg-tertiary)}.df-v2 .admin-search:focus-within{border-color:var(--accent)}.df-v2 .admin-search input{flex:1;min-width:0;border:0;outline:0;color:var(--fg);background:transparent;font-size:12px}.df-v2 .admin-workspace{display:grid;grid-template-columns:minmax(620px,1.45fr) minmax(330px,.75fr);gap:var(--s-4);min-height:0}.df-v2 .admin-table-wrap{min-width:0;overflow:auto;border:1px solid var(--border);border-radius:var(--r-3);background:var(--bg-elev)}.df-v2 .admin-table{width:100%;min-width:760px;border-collapse:collapse;font-size:11.5px}.df-v2 .admin-table th{position:sticky;top:0;z-index:1;padding:10px 12px;text-align:left;color:var(--fg-tertiary);background:var(--bg-sunk);border-bottom:1px solid var(--border);font:600 9.5px/1.2 var(--font-mono);text-transform:uppercase;letter-spacing:.05em}.df-v2 .admin-table td{padding:12px;border-bottom:1px solid color-mix(in oklch,var(--border) 62%,transparent);vertical-align:middle;color:var(--fg-secondary)}.df-v2 .admin-table tbody tr{cursor:pointer;transition:background .12s ease}.df-v2 .admin-table tbody tr:hover{background:color-mix(in oklch,var(--accent) 4%,transparent)}.df-v2 .admin-table tbody tr.selected{background:color-mix(in oklch,var(--accent) 8%,transparent);box-shadow:inset 3px 0 var(--accent)}.df-v2 .admin-table td:first-child>strong{display:block;max-width:240px;overflow:hidden;text-overflow:ellipsis;color:var(--fg);font-size:11.5px}.df-v2 .admin-table td>small{display:block;margin-top:4px;color:var(--fg-tertiary);font-size:9.5px}.df-v2 .admin-badges{display:flex;gap:4px;align-items:center;margin-top:5px}.df-v2 .admin-badge{padding:1px 5px;border-radius:999px;color:var(--fg-tertiary);background:var(--bg-sunk);font:600 8.5px/1.5 var(--font-mono);text-transform:uppercase}.df-v2 .admin-badge.postpaid{color:var(--warm);background:var(--warm-soft)}.df-v2 .admin-badge.prepaid{color:var(--accent);background:color-mix(in oklch,var(--accent) 10%,transparent)}.df-v2 .admin-badge.admin{color:var(--green);background:var(--green-soft)}.df-v2 .admin-badge.suspended,.df-v2 .admin-badge.warning{color:var(--red);background:color-mix(in oklch,var(--red) 10%,transparent)}.df-v2 .admin-compute-line{display:flex;align-items:baseline;gap:4px}.df-v2 .admin-compute-line strong{color:var(--fg);font:600 12px/1.2 var(--font-mono)}.df-v2 .admin-compute-line span{color:var(--fg-tertiary);font-size:9px}.df-v2 .admin-usage-bar{position:relative;width:110px;height:4px;margin:6px 0;overflow:hidden;border-radius:99px;background:var(--bg-sunk)}.df-v2 .admin-usage-bar span{position:absolute;inset:0 auto 0 0;border-radius:inherit}.df-v2 .admin-usage-bar .raw{background:color-mix(in oklch,var(--warm) 45%,transparent)}.df-v2 .admin-usage-bar .net{background:var(--accent)}.df-v2 .admin-usage-note{margin-top:5px;color:var(--fg-tertiary);font-size:9.5px}.df-v2 .admin-job-counts{display:flex;flex-direction:column;gap:2px;font:500 10px/1.3 var(--font-mono)}.df-v2 .admin-job-counts .complete{color:var(--green)}.df-v2 .admin-job-counts .failed{color:var(--red)}.df-v2 .admin-detail{min-width:0;align-self:start;padding:var(--s-4);border:1px solid var(--border);border-radius:var(--r-3);background:var(--bg-elev);overflow:hidden}.df-v2 .admin-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-3)}.df-v2 .admin-detail-head h2{max-width:280px;margin:3px 0 0;overflow:hidden;text-overflow:ellipsis;font-size:15px}.df-v2 .admin-kicker{color:var(--fg-tertiary);font:600 9px/1.2 var(--font-mono);text-transform:uppercase;letter-spacing:.06em}.df-v2 .admin-detail-head .admin-badges{margin-top:0}.df-v2 .admin-period{margin:10px 0;color:var(--fg-tertiary);font-size:9.5px}.df-v2 .admin-balance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid var(--border);border-radius:var(--r-2)}.df-v2 .admin-balance-grid>div{display:flex;flex-direction:column;gap:3px;padding:9px;background:var(--bg-sunk)}.df-v2 .admin-balance-grid span{color:var(--fg-tertiary);font-size:9px}.df-v2 .admin-balance-grid strong{font:600 13px/1.2 var(--font-mono)}.df-v2 .admin-balance-grid .credit strong{color:var(--green)}.df-v2 .admin-detail>.admin-usage-bar{width:100%;height:5px;margin:9px 0 0}.df-v2 .admin-detail-section{margin-top:var(--s-5);padding-top:var(--s-4);border-top:1px solid var(--border)}.df-v2 .admin-detail-section h3{display:flex;justify-content:space-between;margin:0 0 10px;color:var(--fg-secondary);font-size:11px}.df-v2 .admin-detail-section h3 span{color:var(--fg-tertiary);font-weight:400}.df-v2 .admin-health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.df-v2 .admin-health-grid>div{display:flex;flex-direction:column;gap:3px;padding:8px;border-radius:var(--r-2);background:var(--bg-sunk)}.df-v2 .admin-health-grid strong{font:600 14px/1.2 var(--font-mono)}.df-v2 .admin-health-grid span{color:var(--fg-tertiary);font-size:8.5px;line-height:1.35}.df-v2 .admin-health-grid .complete strong{color:var(--green)}.df-v2 .admin-health-grid .failed strong{color:var(--red)}.df-v2 .admin-usage-trend{display:flex;align-items:flex-end;gap:4px;height:80px;margin-top:10px;padding:8px 6px 18px;border-radius:var(--r-2);background:var(--bg-sunk)}.df-v2 .admin-usage-trend>div{position:relative;flex:1;height:100%}.df-v2 .admin-usage-trend span{position:absolute;inset:auto 1px 0;min-height:3px;border-radius:2px 2px 0 0;background:var(--accent)}.df-v2 .admin-usage-trend small{position:absolute;top:calc(100% + 4px);left:50%;color:var(--fg-tertiary);font:400 7px/1 var(--font-mono);transform:translate(-50%) rotate(-35deg)}.df-v2 .admin-footprint{display:flex;flex-wrap:wrap;gap:5px}.df-v2 .admin-footprint span{padding:5px 7px;border-radius:var(--r-2);background:var(--bg-sunk);color:var(--fg-tertiary);font-size:9.5px}.df-v2 .admin-footprint strong{color:var(--fg);font-family:var(--font-mono)}.df-v2 .admin-storage-split{margin-top:6px;color:var(--fg-tertiary);font-size:9px}.df-v2 .admin-credit-form{display:grid;grid-template-columns:86px minmax(0,1fr) auto;gap:7px;align-items:end}.df-v2 .admin-credit-form label{display:flex;flex-direction:column;gap:4px;color:var(--fg-tertiary);font-size:9px}.df-v2 .admin-credit-form .input{width:100%;box-sizing:border-box}.df-v2 .admin-credit-form .admin-form-error{grid-column:1 / -1;color:var(--red);font-size:10px}.df-v2 .admin-credit-note{margin:7px 0 0;color:var(--fg-tertiary);font-size:9px;line-height:1.45}.df-v2 .admin-credit-history{display:flex;flex-direction:column;gap:1px;max-height:150px;margin-top:9px;overflow-y:auto}.df-v2 .admin-credit-history>div{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:2px 7px;padding:7px;background:var(--bg-sunk);font-size:9.5px}.df-v2 .admin-credit-history strong{grid-row:1 / 3;color:var(--green);font-family:var(--font-mono)}.df-v2 .admin-credit-history .reversal strong{color:var(--red)}.df-v2 .admin-credit-history span{color:var(--fg-secondary)}.df-v2 .admin-credit-history small{color:var(--fg-tertiary)}.df-v2 .admin-credit-history .admin-reverse-button{grid-column:3;grid-row:1 / 3;align-self:center;padding:3px 7px;font-size:9px}.df-v2 .admin-reversal-form{display:grid;grid-template-columns:86px minmax(0,1fr);gap:7px;margin-top:9px;padding:10px;border:1px solid color-mix(in oklch,var(--red) 25%,var(--border));border-radius:var(--r-2);background:color-mix(in oklch,var(--red) 4%,var(--bg-sunk))}.df-v2 .admin-reversal-head{grid-column:1 / -1;display:flex;justify-content:space-between;gap:8px;font-size:10px}.df-v2 .admin-reversal-head span{color:var(--fg-tertiary)}.df-v2 .admin-reversal-form label{display:flex;flex-direction:column;gap:4px;color:var(--fg-tertiary);font-size:9px}.df-v2 .admin-reversal-form .input{width:100%;box-sizing:border-box}.df-v2 .admin-reversal-form .admin-form-error{grid-column:1 / -1;color:var(--red);font-size:10px}.df-v2 .admin-reversal-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:6px}.df-v2 .admin-reversal-actions .danger{color:#fff;border-color:var(--red);background:var(--red)}.df-v2 .admin-event-list{display:flex;flex-direction:column;max-height:260px;overflow-y:auto}.df-v2 .admin-event-row{display:grid;grid-template-columns:7px minmax(0,1fr) auto;gap:7px;align-items:center;padding:7px 2px;border-bottom:1px solid color-mix(in oklch,var(--border) 60%,transparent)}.df-v2 .admin-event-row>div{display:flex;flex-direction:column;gap:2px;min-width:0}.df-v2 .admin-event-row strong{overflow:hidden;text-overflow:ellipsis;color:var(--fg-secondary);font-size:9.5px}.df-v2 .admin-event-row small,.df-v2 .admin-event-row>span:last-child{color:var(--fg-tertiary);font:400 8.5px/1.2 var(--font-mono)}.df-v2 .admin-status-dot{width:6px;height:6px;border-radius:50%;background:var(--fg-tertiary)}.df-v2 .admin-status-dot.complete{background:var(--green)}.df-v2 .admin-status-dot.failed{background:var(--red)}.df-v2 .admin-status-dot.canceled{background:var(--warm)}.df-v2 .admin-empty{padding:var(--s-7);color:var(--fg-tertiary);text-align:center;font-size:11px}.df-v2 .admin-empty.compact{padding:var(--s-4)}.df-v2 .admin-account-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.df-v2 .admin-account-form label{display:flex;flex-direction:column;gap:4px;color:var(--fg-tertiary);font-size:9px}.df-v2 .admin-account-form label.wide{grid-column:1 / -1}.df-v2 .admin-account-form .btn{justify-self:start}.df-v2 .admin-alert{margin-top:9px;padding:8px;border:1px solid color-mix(in oklch,var(--warm) 35%,var(--border));border-radius:var(--r-2);color:var(--warm);background:var(--warm-soft);font-size:10px}.df-v2 .admin-audit-list{display:flex;flex-direction:column;gap:1px;max-height:150px;margin-top:9px;overflow:auto}.df-v2 .admin-audit-list>div{display:grid;grid-template-columns:minmax(120px,.7fr) 1fr;gap:3px 8px;padding:7px;background:var(--bg-sunk);font-size:9px}.df-v2 .admin-audit-list strong{color:var(--fg-secondary);text-transform:capitalize}.df-v2 .admin-audit-list span,.df-v2 .admin-audit-list small{color:var(--fg-tertiary)}.df-v2 .admin-audit-list small{grid-column:1 / -1}.df-v2 .admin-operations{display:flex;flex-direction:column;gap:var(--s-4)}.df-v2 .admin-ops-card{overflow:auto;border:1px solid var(--border);border-radius:var(--r-3);background:var(--bg-elev)}.df-v2 .admin-ops-card>h2{margin:var(--s-4) var(--s-4) 2px;font-size:14px}.df-v2 .admin-ops-card>p{margin:0 var(--s-4) var(--s-3);color:var(--fg-tertiary);font-size:10px}.df-v2 .admin-ops-card>.admin-toolbar{padding:var(--s-3);margin:0;border-bottom:1px solid var(--border)}.df-v2 .admin-ops-card .admin-table{min-width:1050px}.df-v2 .admin-ops-card .admin-table tbody tr{cursor:default}.df-v2 .admin-error-cell{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--red)!important}.df-v2 .admin-row-actions{display:flex;gap:5px}.df-v2 .admin-badge.failed{color:var(--red);background:color-mix(in oklch,var(--red) 10%,transparent)}.df-v2 .admin-badge.complete{color:var(--green);background:var(--green-soft)}.df-v2 .admin-badge.pending,.df-v2 .admin-badge.queued,.df-v2 .admin-badge.running{color:var(--accent);background:color-mix(in oklch,var(--accent) 10%,transparent)}@media (max-width: 1250px){.df-v2 .admin-workspace{grid-template-columns:1fr}.df-v2 .admin-detail{width:auto}}@media (max-width: 820px){.df-v2 .admin-root{grid-template-columns:1fr}.df-v2 .admin-root .pb-sidebar{display:none}.df-v2 .admin-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.df-v2 .admin-main{padding:var(--s-4)}}.df-v2 .allowance-badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;white-space:nowrap}.df-v2 .allowance-badge.compact{flex-direction:column;align-items:stretch;gap:4px}.df-v2 .allowance-pill{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border:1px solid var(--border);border-radius:999px;background:var(--bg-elevated, transparent);color:var(--fg-secondary);cursor:help}.df-v2 .allowance-pill .allowance-key{color:var(--fg-quaternary)}.df-v2 .allowance-pill .allowance-val{font-variant-numeric:tabular-nums;color:var(--fg-primary)}.df-v2 .allowance-pill.blocked{border-color:var(--red);color:var(--red)}.df-v2 .allowance-pill.blocked .allowance-key,.df-v2 .allowance-pill.blocked .allowance-val{color:var(--red)}.df-v2 .admin-sub-switch{display:inline-flex;align-items:center;gap:6px;padding:2px 8px 2px 3px;border-radius:999px;cursor:pointer;border:1px solid var(--border);background:var(--bg-sunk);color:var(--fg-tertiary);font:600 9px/1.6 var(--font-mono);text-transform:uppercase;letter-spacing:.02em;transition:background .12s,border-color .12s,color .12s}.df-v2 .admin-sub-switch.compact{padding:1px 6px 1px 2px;font-size:8.5px}.df-v2 .admin-sub-switch:disabled{cursor:not-allowed;opacity:.6}.df-v2 .admin-sub-knob{position:relative;width:22px;height:12px;border-radius:999px;flex-shrink:0;background:color-mix(in oklch,var(--fg-quaternary) 45%,transparent);transition:background .12s}.df-v2 .admin-sub-switch.compact .admin-sub-knob{width:18px;height:10px}.df-v2 .admin-sub-knob:after{content:"";position:absolute;top:2px;left:2px;width:8px;height:8px;border-radius:50%;background:var(--bg);transition:transform .12s}.df-v2 .admin-sub-switch.compact .admin-sub-knob:after{width:6px;height:6px}.df-v2 .admin-sub-switch.on{border-color:color-mix(in oklch,var(--green) 45%,transparent);color:var(--green);background:var(--green-soft)}.df-v2 .admin-sub-switch.on .admin-sub-knob{background:var(--green)}.df-v2 .admin-sub-switch.on .admin-sub-knob:after{transform:translate(10px)}.df-v2 .admin-sub-switch.compact.on .admin-sub-knob:after{transform:translate(8px)}.df-v2 .admin-sub-switch.off{border-color:color-mix(in oklch,var(--red) 40%,transparent);color:var(--red);background:color-mix(in oklch,var(--red) 8%,transparent)}.df-v2 .admin-detail>.admin-sub-switch{align-self:flex-start;margin-top:6px}.df-v2 .sim-main>.df-sim-monitor{flex:1;min-height:0;height:auto}.df-v2 .sim-settings-head{flex-wrap:wrap;overflow:visible;position:relative;z-index:30}.df-v2 .sim-settings-heading-copy{min-width:220px}.df-v2 .sim-header-actions,.df-v2 .sim-saved-notice,.df-v2 .scenario-manager-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.df-v2 .sim-saved-notice{padding:6px 20px;border-bottom:1px solid var(--border);color:var(--fg-secondary);font-size:12px}.df-v2 .scenario-switcher{margin:0}.df-v2 .scenario-switcher>summary{height:auto;min-height:28px;border:0;padding:0;justify-content:flex-start;color:var(--fg)}.df-v2 .scenario-switcher .sim-settings-title{overflow-wrap:anywhere}.df-v2 .scenario-switcher-menu{left:0;right:auto;width:min(460px,85vw);padding:12px}.df-v2 .scenario-manager-head{justify-content:space-between;margin-bottom:10px}.df-v2 .scenario-manager-list{margin-top:8px}.df-v2 .scenario-manager-row{display:flex;align-items:flex-start;gap:8px;padding:6px;border-bottom:1px solid var(--border)}.df-v2 .scenario-manager-row.active{background:var(--accent-soft)}.df-v2 .scenario-switcher-menu .scenario-select{display:flex;flex-direction:column;align-items:flex-start;flex:1;min-width:0;gap:5px}.df-v2 .scenario-switcher-name{max-width:100%}.df-v2 .scenario-meta{color:var(--fg-tertiary);font-size:11px}.df-v2 .simulation-actions{position:relative;flex-shrink:0}.df-v2 .simulation-actions>summary{cursor:pointer;list-style:none;display:grid;place-items:center;min-width:32px;min-height:30px;border:1px solid var(--border);border-radius:var(--r-2);font-size:20px}.df-v2 .simulation-actions>summary::-webkit-details-marker{display:none}.df-v2 .simulation-actions-menu{position:absolute;right:0;top:100%;z-index:40;width:240px;padding:6px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-2);box-shadow:var(--shadow-pop)}.df-v2 .simulation-actions-menu button{display:block;width:100%;padding:9px;text-align:left;background:transparent;border:0;color:var(--fg);font-size:12px;cursor:pointer}.df-v2 .simulation-actions-menu button:hover{background:var(--bg-sunk)}.df-v2 .simulation-actions-menu button.danger{color:var(--red);border-top:1px solid var(--border)}.df-v2 .simulation-actions-menu button:disabled{opacity:.5;cursor:default}.df-v2 .scenario-manager-row .simulation-actions[open]{flex:1}.df-v2 .scenario-manager-row:has(.simulation-actions[open]){flex-wrap:wrap}.df-v2 .scenario-manager-row .simulation-actions-menu{position:static;box-shadow:none;width:100%}.df-v2 .sim-region-heading{font-size:13px;margin:18px 0 12px;padding-top:12px;border-top:1px solid var(--border)}.df-v2 .sim-settings-body{display:flex}.df-v2 .sim-settings-fieldset{flex:0 0 auto;width:380px;min-width:300px;max-width:60%;resize:horizontal;overflow:auto}.df-v2 .sim-settings-body>.reservoir-view{flex:1;min-width:0}@media (max-width: 800px){.df-v2 .sim-settings-body{flex-direction:column;overflow:auto}.df-v2 .sim-settings-fieldset{width:100%;max-width:none;max-height:45vh;resize:none}.df-v2 .sim-settings-body>.reservoir-view{min-height:360px}}.df-v2 .sim-settings-subtitle.sim-tracing-id{font-family:var(--font-mono);white-space:normal;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text}.df-v2 .sim-input-workbench{position:relative;display:flex;flex:1;min-width:0;min-height:0;overflow:hidden}.df-v2 .sim-input-summary{flex:0 0 280px;min-width:0;overflow:auto;padding:20px 14px;background:var(--bg-elev);border-right:1px solid var(--border)}.df-v2 .sim-input-summary-heading{display:grid;gap:5px;padding:0 8px 18px}.df-v2 .sim-input-summary-heading strong{font-size:13px}.df-v2 .sim-input-summary-heading span,.df-v2 .sim-input-summary-hint{font-size:12px;line-height:1.5;color:var(--fg-tertiary)}.df-v2 .sim-input-summary-card{display:flex;gap:10px;align-items:flex-start;width:100%;padding:15px 10px;margin-bottom:8px;border:1px solid var(--border);border-radius:8px;background:var(--bg-elev);color:var(--fg);text-align:left;cursor:pointer}.df-v2 .sim-input-summary-card:hover,.df-v2 .sim-input-summary-card.active{border-color:var(--accent);background:var(--accent-soft)}.df-v2 .sim-input-summary-card:disabled{cursor:default;opacity:.65}.df-v2 .sim-input-summary-card.active:disabled{opacity:1}.df-v2 .sim-input-summary-number{font:10px var(--font-mono);color:var(--fg-tertiary);padding-top:3px}.df-v2 .sim-input-summary-copy{display:grid;flex:1;gap:5px;min-width:0}.df-v2 .sim-input-summary-copy strong{font-size:12px;font-weight:600}.df-v2 .sim-input-summary-copy>span{font-size:11px;color:var(--fg-secondary);line-height:1.45;overflow-wrap:anywhere}.df-v2 .sim-input-summary-action{color:var(--accent);font-size:10px;white-space:nowrap;padding-top:2px}.df-v2 .sim-input-summary-copy>.sim-input-summary-error{color:var(--red)}.df-v2 .sim-input-reservoir{flex:1;min-width:0;min-height:0;display:flex}.df-v2 .sim-input-reservoir>.reservoir-view{width:100%;height:100%;min-height:0;flex:1;border:0}.df-v2 .sim-input-editor{display:flex;flex-direction:column;min-width:500px;width:720px;flex-shrink:0;max-width:calc(100% - 280px);background:var(--bg-elev);border-right:1px solid var(--border);z-index:10;overflow:hidden;box-shadow:6px 0 22px #0000000a;container-type:inline-size}.df-v2 .sim-input-editor.docked{resize:horizontal}.df-v2 .sim-input-editor.floating{position:fixed;z-index:80;width:760px;height:720px;min-height:280px;max-height:calc(100dvh - 16px);max-width:calc(100vw - 16px);border:1px solid var(--border);border-radius:12px;box-shadow:0 18px 70px #0005;resize:both}.df-v2 .sim-input-editor.maximized{position:absolute;top:8px;right:8px;bottom:8px;left:8px;width:auto;min-width:0;max-width:none;border:1px solid var(--border);border-radius:10px;z-index:60}.df-v2 .sim-input-editor-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 20px;border-bottom:1px solid var(--border);flex-shrink:0}.df-v2 .sim-input-editor.floating .sim-input-editor-header{cursor:move;touch-action:none;-webkit-user-select:none;user-select:none}.df-v2 .sim-input-editor-header h2{font-size:16px;margin:0 0 5px}.df-v2 .sim-input-editor-header span{font-size:11px;color:var(--fg-tertiary)}.df-v2 .sim-input-editor-tools{display:flex;gap:5px}.df-v2 .sim-input-editor-scroll{flex:1;min-height:0;overflow:auto;padding:16px 24px}.df-v2 .sim-input-editor-fields{min-width:0;margin:0;padding:0;border:0}.df-v2 .sim-input-editor-section{margin-bottom:20px;min-width:0}.df-v2 .sim-input-editor-section>h3{font-size:12px;letter-spacing:.035em;text-transform:uppercase;padding-bottom:10px;margin:0 0 14px;border-bottom:1px solid var(--border);color:var(--fg-secondary)}.df-v2 .sim-input-editor .field{grid-template-columns:minmax(110px,.8fr) minmax(0,1.2fr);gap:12px;margin-bottom:8px}.df-v2 .sim-input-editor .field-val{min-width:0;gap:7px}.df-v2 .sim-input-editor .field-input{min-width:60px;width:100%}.df-v2 .sim-input-editor .field-label{line-height:1.45}.df-v2 .sim-input-editor .field-unit{flex-shrink:0;white-space:nowrap}.df-v2 .sim-input-editor .input{min-width:0;max-width:100%}.df-v2 .sim-input-editor-footer{display:flex;align-items:center;gap:8px;border-top:1px solid var(--border);padding:14px 20px;flex-shrink:0;background:var(--bg-elev)}.df-v2 .sim-input-editor-footer>span{flex:1;font-size:11px;line-height:1.4;color:var(--fg-tertiary)}@container (max-width: 430px){.df-v2 .sim-input-editor-fields .field{display:flex;flex-direction:column;align-items:stretch;gap:5px}}@media (max-width: 1150px){.df-v2 .sim-input-summary{flex-basis:250px}.df-v2 .sim-input-editor.docked{position:absolute;left:250px;right:0;top:0;bottom:0;width:auto;min-width:0;max-width:none;resize:none}}@media (max-width: 700px){.df-v2 .sim-settings-body{overflow:hidden}.df-v2 .sim-input-workbench{flex-direction:column;overflow:auto}.df-v2 .sim-input-summary{flex:0 0 auto;width:100%;max-height:45vh;box-sizing:border-box}.df-v2 .sim-input-reservoir{min-height:300px}.df-v2 .sim-input-editor.docked,.df-v2 .sim-input-editor.floating,.df-v2 .sim-input-editor.maximized{position:fixed;top:8px!important;right:8px!important;bottom:8px!important;left:8px!important;width:auto;height:auto;min-width:0;max-width:none;max-height:none;resize:none;z-index:80}.df-v2 .sim-input-editor-header{flex-wrap:wrap;padding:14px}.df-v2 .sim-input-editor-scroll{padding:16px}.df-v2 .sim-input-editor-footer{padding:12px;flex-wrap:wrap}.df-v2 .sim-input-editor-footer>span{flex-basis:100%}}.df-v2 .sim-workspace-toolbar{flex-shrink:0;flex-wrap:wrap}.df-v2 .sim-workspace-toolbar .sim-settings-heading-copy{flex:1}.df-v2 .sim-workspace-tabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 20px;border-bottom:1px solid var(--border);background:var(--bg-elev);flex-shrink:0}.df-v2 .sim-workspace-tabs .active{color:var(--accent);background:var(--accent-soft);border-color:var(--accent)}.df-v2 .sim-workspace-tabs>span{font-size:12px;color:var(--fg-secondary);margin-left:auto}.df-v2 .sim-input-view{display:flex;flex:1;min-height:0;overflow:hidden}.df-v2 .sim-input-view[hidden]{display:none}.df-v2 .sim-input-actions{padding:8px 20px;display:flex;justify-content:flex-end;border-bottom:1px solid var(--border);flex-shrink:0}.df-v2 .sim-workspace-error{padding:12px 20px;color:var(--red)}@media (max-width: 700px){.df-v2 .sim-workspace-toolbar{padding:10px}.df-v2 .sim-workspace-tabs{padding:8px 10px}.df-v2 .sim-workspace-tabs>span{width:100%;margin-left:0}}.df-v2 .body.layout-mesh{position:relative}.df-v2 .mesh-input-summary{border:0;padding:18px 12px}.df-v2 .mesh-input-next{display:flex;gap:10px;padding:16px 11px;border-top:1px solid var(--border);margin-top:18px}.df-v2 .mesh-input-next strong{font-size:12px}.df-v2 .mesh-input-next p{color:var(--fg-tertiary);font-size:11px;line-height:1.6;margin:6px 0 0}.df-v2 .body.layout-mesh:has(>.mesh-input-editor:not([hidden])){grid-template-columns:var(--sidebar-w) 480px minmax(240px,1fr) var(--inspector-w);overflow-x:auto}.df-v2 .mesh-input-editor{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg-elev);border-right:1px solid var(--border);overflow:hidden}.df-v2 .mesh-input-editor[hidden],.df-v2 .mesh-input-editor [hidden]{display:none}.df-v2 .mesh-input-editor-scroll{overflow:auto;min-height:0;flex:1;padding:20px 24px}.df-v2 .mesh-input-editor .mesh-workspace-config-heading{display:none}.df-v2 .mesh-input-editor .insp-section{padding:0 0 24px;margin-bottom:24px}.df-v2 .mesh-input-editor .insp-section-title{padding-bottom:12px;border-bottom:1px solid var(--border);margin-bottom:18px}.df-v2 .mesh-input-editor .field{grid-template-columns:minmax(130px,.8fr) minmax(0,1.2fr)}.df-v2 .mesh-input-editor .mesh-engine-help{grid-column:1 / -1;line-height:1.6;margin:6px 0 12px}.df-v2 .mesh-input-editor .field-label,.df-v2 .mesh-input-editor .field-val{flex:1}.df-v2 .mesh-workspace-history-actions{flex-wrap:wrap}@media (max-width: 900px){.df-v2 .body.layout-mesh{grid-template-columns:220px minmax(240px,1fr) 220px;overflow-x:auto}.df-v2 .body.layout-mesh:has(>.mesh-input-editor:not([hidden])){grid-template-columns:220px 420px minmax(240px,1fr) 220px}.df-v2 .body.layout-mesh:has(>.mesh-workspace-viewing){grid-template-columns:minmax(240px,1fr) 220px}}.df-v2 .body.layout-mesh{grid-template-columns:var(--sidebar-w) minmax(0,1fr)}.df-v2 .body.layout-mesh:has(>.mesh-workspace-viewing){grid-template-columns:minmax(0,1fr)}.df-v2 .body.layout-mesh:has(>.mesh-input-editor:not([hidden])){grid-template-columns:var(--sidebar-w) 480px minmax(240px,1fr)}.df-v2 .mesh-header-selector{display:flex;align-items:center;gap:6px;position:relative}.df-v2 .mesh-switcher>summary{padding:0 8px;border:1px solid var(--border)}.df-v2 .mesh-switcher .scenario-switcher-menu{left:auto;right:0}.df-v2 .mesh-selector-error{position:absolute;top:100%;right:0;width:300px;padding:10px;background:var(--bg-elev);color:var(--red);border:1px solid var(--border);z-index:50}@media (max-width: 900px){.df-v2 .body.layout-mesh{grid-template-columns:220px minmax(240px,1fr)}.df-v2 .body.layout-mesh:has(>.mesh-input-editor:not([hidden])){grid-template-columns:220px 420px minmax(240px,1fr)}}.df-v2 .sim-navigation-actions{margin-left:auto;min-width:0}.df-v2 .sim-navigation-actions[hidden]{display:none}.df-v2 .sim-navigation-actions .sim-header-actions{justify-content:flex-end}.df-v2 .sim-run-blocker{max-width:440px;color:var(--fg-secondary);font-size:11px;line-height:1.4}.df-v2 .mesh-switcher .scenario-manager-row{flex-wrap:wrap}.df-v2 .mesh-switcher .scenario-select{flex-basis:100%}.df-v2 .mesh-row-actions{display:flex;flex-wrap:wrap;gap:4px;padding:0 8px 4px}.df-v2 .mesh-delete-action{color:var(--red)}.df-v2 .body.layout-mesh{grid-template-rows:auto minmax(0,1fr)}.df-v2 .mesh-workspace-header{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;background:var(--bg-elev);border-bottom:1px solid var(--border);position:relative;z-index:60}.df-v2 .mesh-workspace-header-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.df-v2 .mesh-workspace-header .mesh-switcher>summary{border:0;padding:0;font-size:16px;font-weight:600}.df-v2 .mesh-workspace-header .scenario-switcher-label{max-width:320px}.df-v2 .mesh-workspace-header .scenario-meta{font-size:11px;font-weight:400}.df-v2 .mesh-workspace-header .scenario-switcher-menu,.df-v2 .mesh-workspace-header .simulation-actions-menu{left:0;right:auto}@media (max-width: 700px){.df-v2 .mesh-workspace-header{flex-wrap:wrap;padding:12px}}.df-v2 .mesh-input-fields{border:0;margin:0;padding:0;min-width:0}.df-v2 .mesh-start-notice{position:absolute;z-index:15;top:100px;left:24px;padding:24px;border-radius:8px;background:var(--bg-elev);color:var(--fg)}.df-v2 .mesh-start-notice p{color:var(--fg-secondary);font-size:12px}.draft-navigation-dialog{width:min(480px,calc(100vw - 32px));box-sizing:border-box;border:1px solid var(--border);border-radius:12px;padding:24px;background:var(--bg-elev);color:var(--fg);font:14px system-ui,sans-serif;box-shadow:0 20px 70px #0004}.draft-navigation-dialog::backdrop{background:#10182866}.draft-navigation-dialog h2{margin:0 0 12px;font-size:18px}.draft-navigation-dialog p{line-height:1.5}.draft-navigation-dialog>div{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:24px}.draft-navigation-dialog button{padding:8px 12px;border:1px solid var(--border);border-radius:6px;background:var(--bg-elev);color:var(--fg);cursor:pointer}.draft-navigation-dialog button:last-child{background:var(--fg);color:var(--bg-elev);border-color:var(--fg)}.draft-navigation-dialog button:disabled{opacity:.5;cursor:default}.df-v2 .simulation-overview{flex:1;min-height:0;overflow:auto;padding:24px}.df-v2 .simulation-list-tools{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px}.df-v2 .simulation-list-tools input{width:300px;max-width:100%}.df-v2 .simulation-list-tools select{width:auto}.df-v2 .simulation-list-tools>span{margin-left:auto;font-size:12px;color:var(--fg-secondary)}.df-v2 .simulation-table-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:10px;background:var(--bg-elev)}.df-v2 .simulation-table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}.df-v2 .simulation-table th{padding:12px 16px;font-size:11px;font-weight:600;color:var(--fg-secondary);background:var(--bg)}.df-v2 .simulation-table td{padding:16px;border-top:1px solid var(--border)}.df-v2 .simulation-table tbody tr{cursor:pointer}.df-v2 .simulation-table tbody tr:hover,.df-v2 .simulation-table tbody tr:focus-within{background:var(--accent-soft)}.df-v2 .simulation-name-link,.df-v2 .simulation-back-link{border:0;background:none;color:var(--accent);cursor:pointer;font:inherit;padding:0;text-align:left}.df-v2 .simulation-name-link{font-weight:600;overflow-wrap:anywhere}.df-v2 .simulation-name-link:hover,.df-v2 .simulation-back-link:hover{text-decoration:underline}.df-v2 .simulation-back-link{display:block;font-size:12px;margin-bottom:8px}.df-v2 .simulation-list-id{color:var(--fg-secondary);font-size:11px;margin-top:5px}.df-v2 .simulation-list-action{text-align:right;white-space:nowrap}.df-v2 .simulation-list-empty{padding:64px 24px;text-align:center;color:var(--fg)}.df-v2 .simulation-list-empty p{color:var(--fg-secondary);margin:12px 0 20px}.df-v2 .simulation-table .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width: 700px){.df-v2 .simulation-overview{padding:12px}.df-v2 .simulation-table{min-width:620px}.df-v2 .simulation-list-tools>span{width:100%;margin-left:0}}.df-v2 .simulation-list-action .btn+.btn{margin-left:8px}.df-v2 .simulation-delete-button{color:var(--red)}.df-v2 .body.layout-mesh:has(>.mesh-overview){grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.df-v2 .mesh-overview{grid-column:1 / -1;min-width:0}.df-v2 .run-summary{padding:28px;overflow:auto;flex:1;min-height:0}.df-v2 .run-summary-header{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:24px}.df-v2 .run-summary-header h2{margin:10px 0}.df-v2 .run-summary-header .btn+.btn{margin-left:8px}.df-v2 .run-summary p,.df-v2 .run-summary small{color:var(--fg-secondary);font-size:12px}.df-v2 .run-summary-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.df-v2 .run-summary section,.df-v2 .run-summary-logs{background:var(--bg-elev);border:1px solid var(--border);border-radius:10px;padding:20px}.df-v2 .run-summary-cards strong{display:block;font-size:26px;margin:14px 0}.df-v2 .run-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.df-v2 .run-summary h3{margin:0 0 18px}.df-v2 .run-summary dl>div{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid var(--border);font-size:13px}.df-v2 .run-summary dd{margin:0;text-align:right;overflow-wrap:anywhere;min-width:0}.df-v2 .run-summary-logs{margin-top:20px}.df-v2 .run-summary-logs summary{cursor:pointer}.df-v2 .run-summary pre{white-space:pre-wrap;max-height:400px;overflow:auto}@media (max-width: 900px){.df-v2 .run-summary-cards,.df-v2 .run-summary-grid{grid-template-columns:1fr 1fr}}@media (max-width: 600px){.df-v2 .run-summary{padding:12px}.df-v2 .run-summary-cards,.df-v2 .run-summary-grid{grid-template-columns:1fr}}.df-v2 .simulation-tracing-id{font-family:var(--font-mono);overflow-wrap:anywhere;-webkit-user-select:text;user-select:text}.df-v2 .rock-base-properties{padding:14px;border:1px solid var(--border);border-radius:8px;margin-bottom:14px}.df-v2 .rock-base-properties h3{font-size:12px;margin:0 0 14px}.df-v2 .rock-section-help{font-size:11px;line-height:1.5;color:var(--fg-tertiary);margin:4px 0 0}.df-v2 .rock-layer-stack{border:1px solid var(--border);border-radius:8px;padding:12px;margin-bottom:10px}.df-v2 .rock-layer-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;font-size:11px;border-top:1px solid var(--border)}.df-v2 .rock-layer-row>div{min-width:0}.df-v2 .rock-layer-row>button{flex-shrink:0}.df-v2 .rock-layer-identity{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:baseline;margin-bottom:5px}.df-v2 .rock-layer-identity>span{color:var(--fg-secondary);font-variant-numeric:tabular-nums}.df-v2 .rock-region-import{border:1px solid var(--border);border-radius:8px;padding:12px;margin-top:14px}.df-v2 .rock-region-import summary{font-size:12px;font-weight:600;cursor:pointer}.df-v2 .rock-region-import summary span{font-size:11px;font-weight:400;color:var(--fg-tertiary);margin-left:8px}.df-v2 .rock-import-controls{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:14px}.df-v2 .rock-import-controls .field{display:flex;flex-direction:column;align-items:stretch;gap:6px;margin:0;min-width:0}.df-v2 .rock-import-controls .input{width:100%;min-width:0}.df-v2 .rock-import-controls>button{grid-column:1 / -1;justify-self:end}.df-v2 .rock-region-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:12px;margin-top:10px;align-items:end}.df-v2 .rock-region-editor .field,.df-v2 .rock-permeability-grid .field{display:flex;flex-direction:column;align-items:stretch;gap:6px;margin-bottom:0;min-width:0}.df-v2 .rock-region-editor .field-label,.df-v2 .rock-permeability-grid .field-label{white-space:normal;overflow-wrap:anywhere;line-height:1.4}.df-v2 .rock-region-editor .field-val,.df-v2 .rock-permeability-grid .field-val{width:100%;min-width:0;gap:6px}.df-v2 .rock-region-editor .field-unit,.df-v2 .rock-permeability-grid .field-unit{flex-shrink:0}.df-v2 .rock-region-editor .input,.df-v2 .rock-region-editor .field-input{width:100%;min-width:0;max-width:100%}.df-v2 .rock-region-grid>.btn{justify-self:end}.df-v2 .rock-variability{container-type:inline-size;display:grid;gap:12px;margin-top:10px;padding:14px;border:1px solid var(--border);border-radius:8px}.df-v2 .rock-variability h4{margin:4px 0 0;padding-top:12px;border-top:1px solid var(--border);font-size:12px}.df-v2 .rock-variability .compact-field-grid{gap:12px}.df-v2 .variability-grid-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.df-v2 .rock-variability .field{display:flex;flex-direction:column;align-items:stretch;gap:6px;margin:0;min-width:0}.df-v2 .rock-variability .field-val{display:flex;gap:0;width:100%;min-width:0;border:1px solid var(--border);border-radius:var(--r-1);background:var(--bg-elev);overflow:hidden}.df-v2 .rock-variability .field-val:focus-within{outline:2px solid var(--accent);outline-offset:1px}.df-v2 .rock-variability .field-val input{flex:1;min-width:0;width:100%;border:0;border-radius:0}.df-v2 .rock-variability .field-val .field-unit{flex:0 0 auto;width:auto;min-width:0;padding:0 8px;margin:0;display:flex;align-items:center;background:var(--bg-sunk)}@container (max-width: 420px){.df-v2 .variability-grid-three,.df-v2 .rock-variability .compact-field-grid{grid-template-columns:1fr}}.df-v2 .material-region-mode{display:flex;gap:6px;margin-top:12px}.df-v2 .material-region-mode-help{font-size:11px;color:var(--fg-tertiary);line-height:1.5;margin:6px 0 10px}.df-v2 .rock-layer-stack>summary{font-size:12px;font-weight:600;cursor:pointer}.df-v2 .rock-layer-stack[open]>summary{margin-bottom:10px}.df-v2 .rock-layer-row{padding:6px 0}.df-v2 .rock-layer-row>div{display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px}.df-v2 .rock-layer-row .rock-layer-identity{margin-bottom:0}.feature-section{padding:14px 0;border-bottom:1px solid var(--border)}.feature-section h3{display:flex;gap:8px;align-items:center;margin:0 0 12px}.feature-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:8px 0}.feature-actions>select{flex:1;min-width:140px}.feature-help{font-size:12px;color:var(--fg-secondary);line-height:1.5;margin:6px 0}.feature-card{border:1px solid var(--border);border-radius:7px;padding:10px;margin-top:10px}.feature-card details{font-size:12px}.feature-card summary{cursor:pointer}.df-v2 .inspector-popup{color:var(--fg);max-height:calc(100% - 32px);overflow-y:auto}.df-v2 .results-grid.engineering-results-grid{display:flex;flex-direction:column;min-height:0}.df-v2 .engineering-workspace{padding:var(--s-5);display:flex;flex-direction:column;gap:16px;color:var(--fg)}.df-v2 .engineering-tabs{display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid var(--border);padding-bottom:12px}.df-v2 .engineering-tabs button{padding:9px 16px;border:1px solid var(--border);border-radius:6px;background:var(--bg-elev);color:var(--fg-secondary);cursor:pointer}.df-v2 .engineering-tabs button[aria-selected=true]{color:var(--accent);border-color:var(--accent)}.df-v2 .engineering-provenance{color:var(--fg-tertiary);font-size:12px;line-height:1.5}.df-v2 .engineering-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.df-v2 .engineering-kpis span{font-size:12px;color:var(--fg-tertiary)}.df-v2 .engineering-kpis strong{font:18px var(--font-mono);margin-top:10px}.df-v2 .engineering-diagnostics{display:grid;gap:16px}.df-v2 .component-history-controls{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.df-v2 .component-history-controls select,.df-v2 .component-history-controls button{color:var(--fg);background:var(--bg-elev);border:1px solid var(--border);border-radius:6px;padding:8px}.df-v2 .engineering-diagnostics dl>div{display:flex;justify-content:space-between;gap:20px;padding:5px 0}.df-v2 .engineering-diagnostics dd{font-family:var(--font-mono)}.df-v2 .engineering-workspace h3,.df-v2 .engineering-kpis strong{color:var(--fg)}.df-v2 .engineering-workspace>div[hidden]{display:none}.df-v2 .engineering-kpis{margin-bottom:16px}.df-v2 .engineering-workspace table{width:100%;border-collapse:collapse}.df-v2 .engineering-workspace th,.df-v2 .engineering-workspace td{text-align:left;padding:10px;border-bottom:1px solid var(--border)}.df-v2 .results-run-selector{display:flex;align-items:center;gap:12px;color:var(--fg);flex:1 1 300px;min-width:0}.df-v2 .results-run-selector .input{width:min(100%,420px);min-width:0}.df-v2 .results-export-message{padding:8px 20px;font-size:12px;color:var(--fg-secondary)}.df-v2 .spatial-tab-viewer{height:max(480px,calc(100vh - 280px))}.df-v2 .well-perforation-table .well-coordinate-header,.df-v2 .well-perforation-table .well-coordinate-row{grid-template-columns:44px repeat(3,minmax(0,1fr)) 25px}.df-v2 .results-view-bar>.row-actions{align-items:center;flex-wrap:wrap;margin-top:0}.df-v2 .results-time-selector{display:flex;align-items:center;gap:8px;color:var(--fg);font-size:13px;white-space:nowrap}.df-v2 .results-time-selector .input{width:112px;color:var(--fg);background:var(--bg-elev);border-color:var(--fg-secondary)}.df-v2 .body.layout-wells{overflow:hidden}.df-v2 .well-workbench{height:100%;min-height:0;grid-template-columns:250px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.df-v2 .well-workbench-header{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:14px 20px;border-bottom:1px solid var(--border);background:var(--bg-elev)}.df-v2 .well-workbench-header h2{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:4px 0 0;font-size:17px}.df-v2 .well-workbench-header .well-library-heading-actions{flex-wrap:wrap}.df-v2 .well-workbench .well-library-list{padding:16px 12px;min-height:0;background:var(--bg)}.df-v2 .well-workbench-sidebar-heading{display:flex;align-items:center;justify-content:space-between;padding:0 4px 12px;font-weight:600}.df-v2 .well-workbench .well-library-grid{display:flex;flex-direction:column;gap:8px}.df-v2 .well-workbench .well-library-card{padding:10px;gap:7px;flex-wrap:wrap}.df-v2 .well-workbench .well-library-kind{display:none}.df-v2 .well-workbench .well-library-card-copy{flex-basis:calc(100% - 28px)}.df-v2 .well-workbench .well-library-card-copy small{white-space:normal;font-size:11px}.df-v2 .well-workbench .well-library-empty{padding:12px;text-align:center;min-height:200px}.df-v2 .well-workbench .well-library-editor{overflow:auto;min-width:0}.df-v2 .well-workbench .inspector-scroll{padding:20px 26px;gap:12px}.df-v2 .well-workbench .inspector-scroll>section:not([hidden]){display:flex;flex-direction:column;gap:12px}.df-v2 .well-workbench-details{max-width:760px}.df-v2 .well-workbench [hidden]{display:none!important}.df-v2 .well-workbench-sections{display:flex;flex-direction:column;gap:8px;margin-top:24px}.df-v2 .well-workbench-section{display:flex;align-items:flex-start;gap:12px;width:100%;text-align:left;padding:13px 10px;border:1px solid var(--border);border-radius:7px;background:var(--bg-elev);color:var(--fg);cursor:pointer}.df-v2 .well-workbench-section>span:first-child{font-family:var(--font-mono);color:var(--fg-tertiary);font-size:11px;padding-top:2px}.df-v2 .well-workbench-section small{display:block;color:var(--fg-tertiary);margin-top:5px;font-size:11px}.df-v2 .well-workbench-section.active{border-color:var(--accent);background:color-mix(in oklch,var(--accent) 7%,var(--bg-elev))}.df-v2 .well-layout-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 20px}.df-v2 .well-layout-fields label{color:var(--fg-tertiary);font-size:11px}.df-v2 .well-layout-fields input{width:100%;margin-top:5px}.df-v2 .well-workbench .well-vertical-grid,.df-v2 .well-workbench .well-library-coordinate-grid{max-width:900px}.df-v2 .well-workbench .well-coordinate-header,.df-v2 .well-workbench .well-coordinate-row{grid-template-columns:88px repeat(3,minmax(0,1fr)) 30px;gap:10px;padding:8px 12px}.df-v2 .well-workbench .well-coordinate-header{font-size:11px}.df-v2 .well-workbench .well-coordinate-row.active{background:color-mix(in oklch,var(--accent) 8%,var(--bg-elev))}.df-v2 .well-row-select{border:0;background:transparent;color:var(--fg);cursor:pointer;padding:4px;font-size:11px}.df-v2 .well-row-select[aria-pressed=true]{color:var(--accent);font-weight:600}.df-v2 .well-stage-filter{display:flex;align-items:center;gap:10px;color:var(--fg-tertiary)}.df-v2 .well-stage-filter .input{width:auto;min-width:150px}.df-v2 .well-workbench .well-import-panel{margin:20px}.df-v2 .well-schematic{border:1px solid var(--border);border-radius:7px;background:var(--bg);padding:14px 16px;min-width:0}.df-v2 .well-schematic-heading{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:12px;margin-bottom:6px}.df-v2 .well-schematic-heading span,.df-v2 .well-schematic p{color:var(--fg-tertiary);font-size:11px}.df-v2 .well-schematic svg{display:block;overflow:hidden}.df-v2 .well-schematic svg text{fill:var(--fg-secondary);font-size:11px;font-family:var(--font-mono)}.df-v2 .well-schematic-grid{stroke:var(--border);stroke-width:1}.df-v2 .well-schematic-path{stroke:var(--accent);stroke-width:3}.df-v2 .well-profile-diagram{padding:18px 20px}.df-v2 .well-profile-section-title,.df-v2 .well-profile-stage-header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:18px;font-size:12px}.df-v2 .well-profile-section-title strong,.df-v2 .well-profile-stage-header strong{font-weight:600}.df-v2 .well-profile-section-title span,.df-v2 .well-profile-stage-header span{color:var(--fg-tertiary);font-size:11px}.df-v2 .well-profile-line{fill:none;stroke:var(--fg);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.df-v2 .well-profile-stage-band{fill:color-mix(in oklch,var(--accent) 12%,var(--bg))}.df-v2 .well-profile-stage-active{fill:var(--accent)}.df-v2 .well-profile-stage-cut{stroke:var(--bg);stroke-width:1}.df-v2 .well-profile-legend{display:flex;flex-wrap:wrap;gap:16px;margin:2px 0 18px;color:var(--fg-tertiary);font-size:11px}.df-v2 .well-profile-legend span{display:inline-flex;align-items:center;gap:6px}.df-v2 .well-profile-line-key:before{content:"";width:18px;height:3px;background:var(--fg)}.df-v2 .well-profile-perf-key:before{content:"";width:3px;height:15px;background:var(--warm)}.df-v2 .well-profile-stage-header{padding-top:16px;border-top:1px solid var(--border)}.df-v2 .well-profile-stage-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:14px 0 0}.df-v2 .well-profile-stage-controls label{display:flex;align-items:center;gap:7px;color:var(--fg-tertiary);font-size:11px}.df-v2 .well-profile-stage-controls select{min-width:115px}.df-v2 .well-profile-perf-tick{stroke:var(--warm);stroke-width:2.5;stroke-linecap:round}.df-v2 .well-profile-perf-tick.selected{stroke-width:4}.df-v2 .well-profile-stage-detail{display:flex;align-items:baseline;flex-wrap:wrap;gap:14px;padding:12px 0;border-top:1px solid var(--border);font-size:11px}.df-v2 .well-profile-stage-detail span,.df-v2 .well-profile-selected-perf{color:var(--fg-tertiary)}.df-v2 .well-profile-selected-perf{font-size:11px}@media (max-width: 560px){.df-v2 .well-profile-section-title,.df-v2 .well-profile-stage-header{align-items:flex-start;flex-direction:column;gap:4px}}@media (max-width: 900px){.df-v2 .well-workbench{grid-template-columns:210px minmax(0,1fr)}.df-v2 .well-workbench .inspector-scroll{padding:16px}.df-v2 .well-layout-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 650px){.df-v2 .body.layout-wells{overflow:auto}.df-v2 .well-workbench{height:auto;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto}.df-v2 .well-workbench-header{padding:12px}.df-v2 .well-workbench .well-library-list{max-height:310px}.df-v2 .well-workbench-sections{flex-direction:row;margin-top:12px;gap:4px}.df-v2 .well-workbench-section{gap:4px;padding:8px 5px;font-size:11px}.df-v2 .well-workbench-section small{display:none}.df-v2 .well-workbench .well-library-editor{border-left:0;border-top:1px solid var(--border)}.df-v2 .well-workbench .well-coordinate-header,.df-v2 .well-workbench .well-coordinate-row{grid-template-columns:55px repeat(3,minmax(0,1fr)) 24px;gap:4px;padding:7px 4px}.df-v2 .well-workbench .well-coordinate-row .input{padding:5px 3px}}.df-v2 .well-workbench-header .well-library-heading-actions{min-width:0;max-width:100%;flex:0 1 auto}.df-v2 .well-workbench .well-library-list{display:flex;flex-direction:column}.df-v2 .well-workbench .well-library-grid{min-height:0;overflow:auto}.df-v2 .well-workbench-sections{flex-shrink:0}.df-v2 .well-workbench .well-perforation-table .well-coordinate-header,.df-v2 .well-workbench .well-perforation-table .well-coordinate-row{grid-template-columns:88px 90px repeat(3,minmax(0,1fr)) 30px}.df-v2 .well-workbench .well-row-md{font-family:var(--font-mono);color:var(--fg-tertiary);font-size:11px}@media (max-width: 650px){.df-v2 .well-workbench .well-library-list{max-height:none}.df-v2 .well-workbench .well-library-grid{max-height:180px}.df-v2 .well-workbench .well-perforation-table{overflow-x:auto}.df-v2 .well-workbench .well-perforation-table .well-coordinate-header,.df-v2 .well-workbench .well-perforation-table .well-coordinate-row{min-width:480px;grid-template-columns:55px 65px repeat(3,minmax(0,1fr)) 24px}}.df-v2 .engineering-compare{display:flex;flex-direction:column;gap:16px;color:var(--fg)}.df-v2 .engineering-compare>*{flex-shrink:0}.df-v2 .compare-well-details{padding:var(--s-4);border:1px solid var(--border);border-radius:var(--r-3);background:var(--bg-elev)}.df-v2 .compare-well-details>summary{cursor:pointer;font-size:12px;font-weight:600;color:var(--fg)}.df-v2 .compare-well-details[open]>summary{margin-bottom:var(--s-4)}.df-v2 .compare-controls,.df-v2 .compare-tabs,.df-v2 .compare-run-legend{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.df-v2 .engineering-compare select,.df-v2 .engineering-compare input{color:var(--fg);background:var(--bg-elev);border:1px solid var(--fg-secondary);border-radius:5px;padding:6px;max-width:100%}.df-v2 .compare-controls label{display:flex;align-items:center;gap:8px}.df-v2 .compare-run-legend span{padding:5px 12px;font-size:12px}.df-v2 .compare-chart-grid,.df-v2 .compare-spatial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.df-v2 .compare-table{overflow-x:auto}.df-v2 .compare-table table{width:100%;border-collapse:collapse;font-size:12px}.df-v2 .compare-table td,.df-v2 .compare-table th{text-align:left;vertical-align:top;padding:10px;border-bottom:1px solid var(--border)}.df-v2 .compare-table small{display:block;color:var(--fg-secondary);margin-top:4px}.df-v2 .compare-table code{white-space:pre-wrap;overflow-wrap:anywhere;display:block;max-width:500px;max-height:180px;overflow:auto}@media (max-width:1100px){.df-v2 .compare-chart-grid,.df-v2 .compare-spatial-grid{grid-template-columns:1fr}}.df-v2 .chart-card.compare-controls{flex-direction:row;justify-content:flex-start}.df-v2 .compare-header{display:flex;align-items:center;flex-wrap:wrap;gap:12px;min-height:32px;color:var(--fg)}.df-v2 .compare-header-actions{margin-left:auto;display:flex;gap:8px}.df-v2 .compare-run-picker summary{cursor:pointer}.df-v2 .compare-run-menu{position:absolute;z-index:30;top:calc(100% + 8px);left:0;width:360px;max-width:calc(100vw - 48px);max-height:55vh;overflow:auto;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--bg-elev);box-shadow:0 8px 24px #0002}.df-v2 .compare-run-menu-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px}.df-v2 .compare-run-menu h4{margin:12px 0 6px;font-size:11px}.df-v2 .compare-run-option{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:7px 8px;border:0;border-radius:5px;background:transparent;color:var(--fg);cursor:pointer}.df-v2 .compare-run-option[aria-pressed=true]{background:var(--accent-soft);color:var(--accent)}.df-v2 .compare-run-option small{display:block;margin-top:2px}.df-v2 .engineering-compare{gap:10px}.df-v2 .compare-context-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px}.df-v2 .compare-run-legend span{padding:3px 8px}.df-v2 .compare-notes{font-size:11px}.df-v2 .compare-notes summary{cursor:pointer;color:var(--fg-secondary)}.df-v2 .compare-notes[open]{flex-basis:100%}@media (max-width:600px){.df-v2 .compare-run-picker{position:static}.df-v2 .compare-run-menu{left:16px;top:auto;margin-top:8px}}.df-v2 .compare-performance{gap:6px}.df-v2 .compare-performance-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.df-v2 .compare-performance-heading h3{margin:0;font-size:14px}.df-v2 .compare-performance-heading label,.df-v2 .compare-summary-key,.df-v2 .compare-data-notices{font-size:11px}.df-v2 .compare-data-notices summary{cursor:pointer}.df-v2 .compare-summary-table{max-height:260px}.df-v2 .compare-summary-table td,.df-v2 .compare-summary-table th{padding:6px 10px;white-space:nowrap}.df-v2 .compare-summary-table td{text-align:right;font-family:var(--font-mono);font-size:.94em;font-variant-numeric:tabular-nums}.df-v2 .compare-summary-table th:not(:first-child){text-align:right}.df-v2 .compare-summary-table thead th{position:sticky;top:0;z-index:1;background:var(--bg-elev)}.df-v2 .compare-summary-table th:first-child{max-width:250px;overflow:hidden;text-overflow:ellipsis}.df-v2 .compare-summary-table small{font-size:10px;font-weight:400;margin-top:2px}.df-v2 .compare-summary-table td:focus{outline:2px solid var(--accent);outline-offset:-2px}.df-v2 .compare-summary-key{color:var(--fg-secondary)}.df-v2 .well-workbench{grid-template-columns:230px minmax(480px,1fr) minmax(320px,1fr)}.df-v2 .well-preview-panel{min-width:0;overflow:auto;border-left:1px solid var(--border);background:var(--bg)}.df-v2 .well-preview-panel .well-schematic{position:static;margin:16px;max-width:none}.df-v2 .well-workbench .inspector-scroll>section{padding-bottom:16px;border-bottom:1px solid var(--border)}.df-v2 .well-profile-connection{fill:var(--green);stroke:var(--bg-elev);stroke-width:2;cursor:pointer}.df-v2 .well-point-preview{padding:20px;font-size:12px}.df-v2 .well-point-preview p{color:var(--fg-tertiary)}.df-v2 .well-point-preview>div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border)}@media (max-width: 1150px){.df-v2 .well-workbench{grid-template-columns:190px minmax(0,1fr) minmax(300px,1fr)}.df-v2 .well-workbench .inspector-scroll{padding:16px}.df-v2 .well-layout-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.df-v2 .body.layout-wells{overflow:auto}.df-v2 .well-workbench{height:auto;grid-template-columns:180px minmax(0,1fr);grid-template-rows:auto auto auto}.df-v2 .well-preview-panel{grid-column:2;grid-row:2;border-bottom:1px solid var(--border)}.df-v2 .well-workbench .well-library-editor{grid-column:2;grid-row:3;overflow:visible}.df-v2 .well-workbench .well-library-list{grid-row:2 / 4}}@media (max-width: 650px){.df-v2 .well-workbench{grid-template-columns:minmax(0,1fr)}.df-v2 .well-workbench .well-library-list{grid-column:1;grid-row:2}.df-v2 .well-preview-panel{grid-column:1;grid-row:3}.df-v2 .well-workbench .well-library-editor{grid-column:1;grid-row:4}}.df-v2 .sim-fracture-override-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr));gap:10px 12px}.df-v2 .sim-fracture-override-fields>.field{display:flex;flex-direction:column;align-items:stretch;min-width:0;gap:5px;margin-bottom:0}.df-v2 .sim-fracture-override-fields .field-label{white-space:normal;overflow-wrap:anywhere}.df-v2 .sim-fracture-override-fields .field-input{flex:1;width:100%;min-width:0}.df-v2 .df-project-browser .pb-main{background:var(--bg);color:var(--fg)}.df-v2 .df-project-browser .pb-sidebar{background:var(--workspace-rail)}.df-v2 .df-project-browser .projects-main{width:100%;max-width:1120px;margin:0 auto;padding:48px 36px 60px}.df-v2 .df-project-browser .projects-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.df-v2 .df-project-browser .projects-title{display:flex;align-items:center;gap:14px;min-width:0}.df-v2 .df-project-browser .projects-heading h1{margin:0;font-size:36px;line-height:1.12;letter-spacing:-1.3px;font-weight:600}.df-v2 .df-project-browser .project-count{padding-top:7px;font:12px/1.4 var(--font-mono);color:var(--fg-tertiary);white-space:nowrap}.df-v2 .df-project-browser .new-project{display:flex;align-items:center;gap:8px;padding:10px 14px;border:0;border-radius:7px;background:var(--accent);color:#fff;font:inherit;font-size:13px;font-weight:500;white-space:nowrap;cursor:pointer}.df-v2 .df-project-browser[data-theme=dark] .new-project{color:#141e2c}.df-v2 .df-project-browser .new-project:hover{filter:brightness(.95)}.df-v2 .df-project-browser .new-project:disabled{opacity:.45;cursor:not-allowed}.df-v2 .df-project-browser .project-toolbar{margin:30px 0 18px;display:flex;align-items:center;justify-content:space-between;gap:20px}.df-v2 .df-project-browser .search{display:flex;align-items:center;gap:9px;width:min(330px,100%);padding:10px 12px;border:1px solid var(--border);border-radius:7px;background:var(--bg-elev);color:var(--fg-tertiary)}.df-v2 .df-project-browser .search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.df-v2 .df-project-browser .search svg{width:16px;height:16px;flex-shrink:0}.df-v2 .df-project-browser .search input{width:100%;min-width:0;border:0;outline:0;background:none;color:var(--fg);font:inherit;font-size:13px}.df-v2 .df-project-browser .search input::placeholder{color:var(--fg-tertiary)}.df-v2 .df-project-browser .search kbd{border:1px solid var(--border);border-radius:3px;padding:1px 4px;font:11px/1.2 var(--font-mono)}.df-v2 .df-project-browser .sort{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--fg-tertiary);white-space:nowrap}.df-v2 .df-project-browser .sort select{max-width:165px;padding:5px 0;border:0;background:transparent;color:var(--fg-secondary);font:inherit;font-size:12px;cursor:pointer}.df-v2 .df-project-browser .project-table-wrap{background:var(--bg-elev);border:1px solid var(--border);border-radius:8px;overflow:visible}.df-v2 .df-project-browser table{width:100%;border-collapse:collapse;table-layout:fixed}.df-v2 .df-project-browser th{padding:15px 18px;border-bottom:1px solid var(--border);color:var(--fg-tertiary);font-size:11px;font-weight:500;text-align:left}.df-v2 .df-project-browser th:first-child{width:51%}.df-v2 .df-project-browser th:nth-child(2){width:8%}.df-v2 .df-project-browser th:nth-child(3){width:11%}.df-v2 .df-project-browser th:nth-child(4){width:14%}.df-v2 .df-project-browser th:last-child{width:16%}.df-v2 .df-project-browser td{height:77px;padding:16px 18px;border-bottom:1px solid var(--border);font-size:12px;color:var(--fg-secondary)}.df-v2 .df-project-browser tbody tr:last-child td{border-bottom:0}.df-v2 .df-project-browser tbody tr{transition:background .15s}.df-v2 .df-project-browser tbody tr:hover{background:var(--workspace-hover)}.df-v2 .df-project-browser tbody tr:first-child td:first-child{border-top-left-radius:0}.df-v2 .df-project-browser tbody tr:last-child td:first-child{border-bottom-left-radius:8px}.df-v2 .df-project-browser tbody tr:last-child td:last-child{border-bottom-right-radius:8px}.df-v2 .df-project-browser .numeric{text-align:right;font-variant-numeric:tabular-nums}.df-v2 .df-project-browser td.numeric{font-family:var(--font-mono)}.df-v2 .df-project-browser .project-name{display:flex;align-items:center;gap:12px;width:100%;padding:0;border:0;background:none;text-align:left;font:inherit;font-size:12px;font-weight:500;color:var(--fg);line-height:1.55;cursor:pointer}.df-v2 .df-project-browser .project-name>span:last-child{overflow-wrap:anywhere}.df-v2 .df-project-browser .project-name:hover{color:var(--accent)}.df-v2 .df-project-browser .folder{display:grid;place-items:center;flex-shrink:0;width:17px;height:17px;color:var(--fg-tertiary)}.df-v2 .df-project-browser .folder svg{width:17px;height:17px;stroke-width:1.4}.df-v2 .df-project-browser .activity{font-size:11px;color:var(--fg-tertiary);white-space:nowrap}.df-v2 .df-project-browser .actions{text-align:right;white-space:nowrap;overflow:visible}.df-v2 .df-project-browser .open-project{display:inline-flex;align-items:center;gap:7px;padding:5px 0;border:0;background:none;color:var(--accent);font:inherit;font-size:11px;cursor:pointer}.df-v2 .df-project-browser .more-wrap{position:relative;display:inline-block;margin-left:10px}.df-v2 .df-project-browser .more{display:inline-flex;align-items:center;justify-content:center;width:24px;height:28px;padding-bottom:9px;border:1px solid transparent;border-radius:5px;background:none;color:var(--fg-tertiary);font-size:21px;line-height:12px;letter-spacing:1px;cursor:pointer}.df-v2 .df-project-browser .more:hover,.df-v2 .df-project-browser .more[aria-expanded=true]{background:var(--bg);border-color:var(--border);color:var(--fg-secondary)}.df-v2 .df-project-browser .action-menu{position:absolute;right:0;top:34px;z-index:10;min-width:145px;padding:5px;border:1px solid var(--border);border-radius:8px;background:var(--bg-elev);box-shadow:0 8px 28px #0002;text-align:left}.df-v2 .df-project-browser .action-menu button{display:block;width:100%;padding:9px 10px;border:0;border-radius:4px;background:none;color:var(--fg-secondary);font:inherit;font-size:11px;text-align:left;cursor:pointer}.df-v2 .df-project-browser .action-menu button:hover{background:var(--bg)}.df-v2 .df-project-browser .action-menu button.delete{color:var(--red)}.df-v2 .df-project-browser button:focus-visible,.df-v2 .df-project-browser select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.df-v2 .df-project-browser .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.df-v2 .df-project-browser .hf-project-table th:first-child{width:59%}.df-v2 .df-project-browser .hf-project-table th:nth-child(2){width:11%}.df-v2 .df-project-browser .hf-project-table th:nth-child(3){width:14%}.df-v2 .df-project-browser .hf-project-table th:last-child{width:16%}@media (max-width: 1000px){.df-v2 .df-project-browser th,.df-v2 .df-project-browser td{padding-left:12px;padding-right:12px}.df-v2 .df-project-browser th:first-child{width:46%}.df-v2 .df-project-browser th:nth-child(2){width:9%}.df-v2 .df-project-browser th:nth-child(3){width:13%}.df-v2 .df-project-browser th:nth-child(4){width:15%}.df-v2 .df-project-browser th:last-child{width:17%}.df-v2 .df-project-browser .more-wrap{margin-left:5px}.df-v2 .df-project-browser .project-name{gap:8px}}@media (max-width: 760px){.df-v2 .df-project-browser,.df-v2 .df-project-browser:has(.pb-sidebar.collapsed){grid-template-columns:56px minmax(0,1fr)}.df-v2 .df-project-browser .pb-sidebar:not(.collapsed){position:absolute;inset:0 auto 0 0;width:248px;z-index:60;box-shadow:var(--shadow-pop)}.df-v2 .df-project-browser .pb-main{grid-column:2}.df-v2 .df-project-browser .projects-main{padding:32px 22px 44px}.df-v2 .df-project-browser .projects-heading{flex-wrap:wrap;gap:16px}.df-v2 .df-project-browser .projects-heading h1{font-size:30px}.df-v2 .df-project-browser .project-toolbar{flex-direction:column;align-items:stretch;gap:10px;margin-top:24px}.df-v2 .df-project-browser .search{width:100%}.df-v2 .df-project-browser .sort{align-self:flex-end}.df-v2 .df-project-browser .project-table thead,.df-v2 .df-project-browser .project-table tbody,.df-v2 .df-project-browser thead tr{display:block}.df-v2 .df-project-browser .project-table th:first-child{display:block;width:100%}.df-v2 .df-project-browser th:not(:first-child){display:none}.df-v2 .df-project-browser tbody tr{display:grid;grid-template-columns:1fr auto;padding:16px;gap:8px 12px;border-bottom:1px solid var(--border);position:relative}.df-v2 .df-project-browser tbody tr:last-child{border-bottom:0}.df-v2 .df-project-browser td{display:block;height:auto;padding:0;border:0}.df-v2 .df-project-browser td:first-child{grid-column:1 / -1}.df-v2 .df-project-browser .numeric{text-align:left}.df-v2 .df-project-browser td.numeric{font-size:11px}.df-v2 .df-project-browser td.mesh-count{grid-column:1;grid-row:2;margin-left:25px}.df-v2 .df-project-browser td.mesh-count:after{content:" meshes"}.df-v2 .df-project-browser td.sim-count{grid-column:1;grid-row:3;margin-left:25px}.df-v2 .df-project-browser td.sim-count:after{content:" simulations"}.df-v2 .df-project-browser td.activity{grid-column:1;grid-row:4;margin-left:25px}.df-v2 .df-project-browser .actions{grid-column:2;grid-row:2 / 5;align-self:center}.df-v2 .df-project-browser .hf-project-table td.sim-count{grid-row:2}.df-v2 .df-project-browser .hf-project-table td.activity{grid-row:3}}@media (max-width: 430px){.df-v2 .df-project-browser .projects-main{padding:30px 16px 40px}.df-v2 .df-project-browser .new-project{font-size:12px}}@media (prefers-reduced-motion: reduce){.df-v2 .df-project-browser tbody tr{transition:none}}.df-v2 .df-workspace-selector,.df-v2 .df-project-browser{--overview-header-h: 68px;--overview-brand-size: 27px}.df-v2 .df-workspace-selector,.df-v2 .df-workspace-selector:has(.pb-sidebar.collapsed){grid-template-columns:64px minmax(0,1fr)}.df-v2 .df-workspace-selector .df-workspace-rail,.df-v2 .df-project-browser .pb-sidebar.collapsed{padding:calc((var(--overview-header-h) - var(--overview-brand-size)) / 2) 10px 16px}.df-v2 .df-workspace-selector .pb-sidebar-brand .brand-mark,.df-v2 .df-project-browser .pb-sidebar-brand .brand-mark{width:var(--overview-brand-size);height:var(--overview-brand-size)}.df-v2 .df-workspace-rail .pb-sidebar-brand{margin:0 0 28px}.df-v2 .df-workspace-selector .pb-sidebar.collapsed>.df-workspace-rail-current{display:grid}.df-v2 .df-workspace-rail-current{width:36px;height:36px;place-items:center;border-radius:9px;color:var(--accent);background:var(--accent-soft)}.df-v2 .df-workspace-selector .pb-sidebar-settings{margin-top:auto;border-top:0;padding-top:18px}.df-v2 .df-workspace-selector .df-workspace-topbar,.df-v2 .df-project-browser .df-workspace-topbar{height:var(--overview-header-h)}.df-v2 .df-project-browser{grid-template-columns:232px minmax(0,1fr)}.df-v2 .df-project-browser:has(.pb-sidebar.collapsed){grid-template-columns:64px minmax(0,1fr)}.df-v2 .df-project-browser .pb-sidebar{padding:0 16px 18px}.df-v2 .df-project-browser .pb-sidebar-brand{min-height:var(--overview-header-h);margin:0;gap:9px;font-size:16px}.df-v2 .df-project-browser .pb-sidebar.collapsed .pb-sidebar-brand{min-height:auto;gap:12px}.df-v2 .df-project-browser .pb-sidebar.collapsed>.df-project-sidebar-nav{display:block;width:100%}.df-v2 .df-sidebar-workspaces{display:flex;align-items:center;gap:10px;width:100%;margin:20px 0 34px;padding:12px 10px;border:0;border-radius:7px;background:transparent;color:var(--fg-secondary);font:inherit;font-size:12px;text-align:left;cursor:pointer}.df-v2 .df-sidebar-workspaces svg{flex-shrink:0}.df-v2 .df-sidebar-workspaces:hover{color:var(--accent);background:var(--accent-soft)}.df-v2 .df-sidebar-section{padding:0 11px;margin-bottom:12px;text-transform:uppercase;letter-spacing:1.1px;font-size:9px;font-weight:650;color:var(--fg-tertiary)}.df-v2 .df-sidebar-projects{display:flex;align-items:center;gap:10px;border-radius:8px;padding:12px 11px;font-size:12px;color:var(--accent);background:var(--accent-soft)}.df-v2 .df-sidebar-projects svg{flex-shrink:0}.df-v2 .df-sidebar-count{margin-left:auto;font-size:10px;color:var(--fg-tertiary)}.df-v2 .df-project-browser .pb-sidebar-settings{margin-top:auto;border-top:1px solid var(--border);padding-top:18px}.df-v2 .df-sidebar-account{display:flex;align-items:center;gap:10px;padding:0 9px 16px;min-width:0}.df-v2 .df-sidebar-avatar{display:grid;place-items:center;background:var(--bg);color:var(--fg-secondary);width:30px;height:30px;border-radius:50%;font-size:11px;flex-shrink:0}.df-v2 .df-sidebar-account>div{min-width:0}.df-v2 .df-sidebar-account strong{display:block;font-size:11px;font-weight:550;color:var(--fg-secondary);margin-bottom:4px}.df-v2 .df-sidebar-account div>span{display:block;font-size:10px;color:var(--fg-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.df-v2 .df-project-browser .pb-sidebar .settings-btn:not(.compact){display:flex;align-items:center;gap:10px;justify-content:flex-start;padding:10px;height:auto;border:0;border-radius:7px;background:transparent;box-shadow:none;font-size:11px;font-weight:400;color:var(--fg-secondary)}.df-v2 .df-project-browser .pb-sidebar .settings-btn:not(.compact):before{content:"⚙";font-size:17px}.df-v2 .df-project-browser .pb-sidebar .settings-btn:hover{background:var(--accent-soft)}.df-v2 .df-project-browser .pb-sidebar.collapsed .df-sidebar-section,.df-v2 .df-project-browser .pb-sidebar.collapsed .df-sidebar-projects>span,.df-v2 .df-project-browser .pb-sidebar.collapsed .df-sidebar-workspaces>span,.df-v2 .df-project-browser .pb-sidebar.collapsed .df-sidebar-account{display:none}.df-v2 .df-project-browser .pb-sidebar.collapsed .df-sidebar-workspaces{margin:20px 0 18px;justify-content:center;padding:12px 0}.df-v2 .df-project-browser .pb-sidebar.collapsed .df-sidebar-projects{justify-content:center;padding:12px 0}.df-v2 .df-project-browser .pb-sidebar.collapsed .pb-sidebar-settings{border-top:0}.df-v2 .df-project-breadcrumb{display:flex;align-items:center;gap:12px;font-size:11px;color:var(--fg-tertiary)}.df-v2 .df-project-breadcrumb>span:nth-child(2){opacity:.5}.df-v2 .df-project-breadcrumb strong{font-weight:500;color:var(--fg-secondary)}@media (max-width: 760px){.df-v2 .df-project-browser,.df-v2 .df-project-browser:has(.pb-sidebar.collapsed){grid-template-columns:64px minmax(0,1fr)}.df-v2 .df-project-browser .pb-sidebar:not(.collapsed){width:232px}.df-v2 .df-project-breadcrumb{gap:8px;font-size:10px}.df-v2 .df-workspace-selector,.df-v2 .df-project-browser{--overview-header-h: 64px}}.df-v2 .topbar.flow-project-shell{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:minmax(68px,auto) 54px;padding:0 36px;gap:0 24px}.df-v2 .flow-project-shell .topbar-identity{grid-column:1;grid-row:1;min-height:68px}.df-v2 .flow-project-shell .topbar-actions{grid-column:2;grid-row:1}.df-v2 .flow-project-shell>.project-tabs{grid-column:1 / -1;grid-row:2;justify-self:center;display:flex;justify-content:center;width:auto;max-width:100%;height:54px;padding:0;gap:40px;border:0;border-radius:0;background:transparent;box-shadow:none;overflow-x:auto}.df-v2 .flow-project-shell:after{content:"";position:absolute;left:0;right:0;top:68px;border-top:1px solid var(--border);pointer-events:none}.df-v2 .topbar.flow-project-shell{position:relative}.df-v2 .project-tabs .step{display:flex;align-items:center;gap:8px;padding:0 10px;min-width:max-content;height:54px;background:none;border:0;border-bottom:2px solid transparent;border-radius:0;box-shadow:none;font-size:12px;font-weight:400;color:var(--fg-secondary)}.df-v2 .project-tabs .step.active{background:none;box-shadow:none;color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.df-v2 .project-tabs .step:hover{color:var(--accent)}.df-v2 .project-tab-count{font-size:9px;padding:2px 5px;border-radius:4px;background:var(--bg);color:var(--fg-tertiary)}.df-v2 .project-tabs .active .project-tab-count{color:var(--accent);background:var(--accent-soft)}.df-v2 .flow-project-shell .topbar-actions>.btn{border:0;background:none;box-shadow:none;font-size:10px;color:var(--fg-secondary)}.df-v2 .project-list-overview{display:block;height:100%;width:100%;max-width:1400px;margin:0 auto;padding:46px 36px 56px;overflow:auto;background:var(--bg)}.df-v2 .project-list-overview>.sim-workspace-toolbar{padding:0;border:0;background:transparent;min-height:0;margin-bottom:29px;gap:20px}.df-v2 .project-list-overview .sim-settings-title{font-size:29px;font-weight:620;letter-spacing:-.8px;line-height:1.25;margin-bottom:10px}.df-v2 .project-list-overview .sim-settings-subtitle{font-size:12px;color:var(--fg-secondary)}.df-v2 .project-list-overview .sim-workspace-toolbar>.btn{border-radius:9px;padding:10px 14px;font-size:12px}.df-v2 .project-list-overview .simulation-overview{padding:0;overflow:visible}.df-v2 .project-list-overview .simulation-list-tools{gap:10px;margin-bottom:16px}.df-v2 .project-list-overview .simulation-list-tools .input{font-size:11px;height:38px;border-radius:7px;background:var(--bg-elev)}.df-v2 .project-list-overview .simulation-list-tools input{width:290px}.df-v2 .overview-sort{display:flex;align-items:center;gap:9px;font-size:10px;color:var(--fg-tertiary);margin-left:auto}.df-v2 .project-list-overview .overview-sort .input{background:transparent;border-color:transparent;color:var(--fg-secondary)}.df-v2 .project-list-overview .simulation-table-scroll{overflow:visible;border-radius:12px}.df-v2 .project-list-overview .simulation-table{table-layout:fixed;font-size:11px}.df-v2 .project-list-overview .simulation-table th{background:var(--bg-elev);color:var(--fg-tertiary);font-size:10px;font-weight:500;padding:15px 18px}.df-v2 .project-list-overview .simulation-table th:first-child{border-top-left-radius:12px;width:36%}.df-v2 .project-list-overview .simulation-table th:last-child{border-top-right-radius:12px;width:16%}.df-v2 .project-list-overview .simulation-table td{padding:18px;height:78px;color:var(--fg-secondary)}.df-v2 .project-list-overview .simulation-table td:first-child{position:relative;padding-left:64px}.df-v2 .overview-item-icon{position:absolute;left:18px;top:22px;display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:var(--bg);border:1px solid var(--border);color:var(--fg-tertiary)}.df-v2 .project-list-overview .simulation-name-link{color:var(--fg);font-size:12px;font-weight:550}.df-v2 .project-list-overview .simulation-name-link:hover{color:var(--accent);text-decoration:none}.df-v2 .overview-identifier{display:flex;align-items:center;flex-wrap:wrap;gap:5px;font-family:var(--font-mono);font-size:9px;color:var(--fg-tertiary);margin-top:4px;overflow-wrap:anywhere}.df-v2 .overview-identifier button{border:0;background:none;color:var(--fg-tertiary);padding:0 3px;cursor:pointer}.df-v2 .project-list-overview .badge{font-size:10px;padding:4px 7px;border-radius:5px;font-weight:500}.df-v2 .project-list-overview .simulation-list-action>.btn{padding:6px 0;border:0;background:none;box-shadow:none;color:var(--accent);font-size:10px}.df-v2 .project-list-overview .simulation-list-action>.btn>span{margin-left:6px}.df-v2 .overview-actions{display:inline-block;position:relative;margin-left:12px;vertical-align:middle}.df-v2 .overview-actions summary{list-style:none;color:var(--fg-tertiary);cursor:pointer;border-radius:6px;padding:5px;font-size:19px;line-height:16px}.df-v2 .overview-actions summary::-webkit-details-marker{display:none}.df-v2 .overview-actions summary:hover{color:var(--accent);background:var(--accent-soft)}.df-v2 .overview-actions-menu{position:absolute;right:0;top:100%;z-index:50;min-width:150px;padding:5px;border:1px solid var(--border);border-radius:8px;background:var(--bg-elev);box-shadow:var(--shadow-pop)}.df-v2 .project-list-overview .overview-actions-menu .btn{display:block;width:100%;margin:0;border:0;border-radius:4px;background:none;box-shadow:none;text-align:left;justify-content:flex-start;padding:9px 10px;font-size:11px}.df-v2 .overview-actions-menu .btn:hover{background:var(--bg)}.df-v2 .overview-list-footer{padding:15px 18px;border:1px solid var(--border);border-top:0;border-radius:0 0 10px 10px;background:var(--bg-elev);color:var(--fg-tertiary);font-size:10px}.df-v2 .project-list-overview .simulation-table-scroll:has(+.overview-list-footer){border-bottom-left-radius:0;border-bottom-right-radius:0}.df-v2 .project-list-overview .simulation-table tbody tr:focus-within{background:transparent}.df-v2 .project-list-overview .simulation-table tbody tr:hover{background:color-mix(in srgb,var(--accent-soft) 45%,var(--bg-elev))}.df-v2 .project-list-overview button:focus-visible,.df-v2 .overview-actions summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (max-width: 1000px){.df-v2 .topbar.flow-project-shell{padding:0 24px}.df-v2 .project-list-overview{padding:32px 24px 48px}.df-v2 .project-list-overview .simulation-table th:first-child{width:31%}.df-v2 .project-list-overview .simulation-table th:last-child{width:21%}}@media (max-width: 760px){.df-v2 .topbar.flow-project-shell{padding:0 16px;gap:0 10px;grid-template-rows:minmax(64px,auto) 49px}.df-v2 .flow-project-shell:after{top:64px}.df-v2 .flow-project-shell .topbar-identity{min-height:64px;gap:8px}.df-v2 .flow-project-shell .topbar-brand>span{display:none}.df-v2 .flow-project-shell .topbar-actions{gap:4px}.df-v2 .flow-project-shell .topbar-actions>.btn{font-size:9px;padding:4px}.df-v2 .flow-project-shell>.project-tabs{gap:12px;height:49px}.df-v2 .project-tabs .step{height:49px;padding:0 4px;font-size:11px;gap:4px}.df-v2 .project-tabs .step>svg,.df-v2 .project-tab-count{display:none}.df-v2 .flow-project-shell .mesh-picker{display:none}.df-v2 .project-list-overview{padding:30px 20px 48px}.df-v2 .project-list-overview .simulation-list-tools input{width:100%}.df-v2 .overview-sort{margin-left:auto}.df-v2 .project-list-overview .simulation-table{min-width:0}.df-v2 .project-list-overview .simulation-table thead{display:none}.df-v2 .project-list-overview .simulation-table tbody{display:block}.df-v2 .project-list-overview .simulation-table tr{display:grid;grid-template-columns:1fr 1fr;padding:16px;gap:9px;border-top:1px solid var(--border)}.df-v2 .project-list-overview .simulation-table td{height:auto;padding:0;border:0;font-size:10px}.df-v2 .project-list-overview .simulation-table td:first-child{grid-column:1 / -1;padding-left:46px;min-height:34px}.df-v2 .project-list-overview .overview-item-icon{left:0;top:0}.df-v2 .project-list-overview .simulation-table td:nth-child(2){grid-column:1;grid-row:2;padding-left:46px}.df-v2 .project-list-overview .simulation-table td:nth-child(3){grid-column:2;grid-row:2;text-align:right}.df-v2 .project-list-overview .simulation-table td:nth-child(4){grid-column:1;grid-row:3;padding-left:46px}.df-v2 .project-list-overview .simulation-table td:nth-child(5){grid-column:1;grid-row:4;padding-left:46px}.df-v2 .project-list-overview .simulation-table td:last-child{grid-column:2;grid-row:3 / 5;align-self:center}.df-v2 .mesh-overview .simulation-table td:nth-child(2){grid-column:2;text-align:right;padding-left:0}.df-v2 .mesh-overview .simulation-table td:nth-child(3){grid-column:1;text-align:left;padding-left:46px}}.df-v2 .project-list-overview .sim-settings-subtitle{display:block}.df-v2 .mesh-overview.project-list-overview .simulation-table th:nth-child(4),.df-v2 .mesh-overview.project-list-overview .simulation-table td:nth-child(4){text-align:right;font-variant-numeric:tabular-nums}@media (max-width: 760px){.df-v2 .mesh-overview.project-list-overview .simulation-table td:nth-child(4){text-align:left}.df-v2 .mesh-overview.project-list-overview .simulation-table td:nth-child(4):after{content:" cells"}}.df-v2 .sim-detail-workspace>.sim-workspace-toolbar{padding:16px 32px;gap:14px;min-height:0}.df-v2 .sim-detail-workspace .simulation-back-link{color:var(--fg-tertiary);font-size:10px;margin-bottom:7px}.df-v2 .sim-detail-workspace .scenario-switcher .sim-settings-title{font-size:20px;letter-spacing:-.5px;line-height:1.4}.df-v2 .sim-detail-workspace .sim-tracing-id{display:block;font-size:9px;color:var(--fg-tertiary);margin-top:4px}.df-v2 .sim-detail-workspace>.sim-workspace-toolbar>.badge{font-size:10px;font-weight:500;border-radius:5px}.df-v2 .sim-detail-workspace .sim-header-actions .btn{border-radius:8px;font-size:11px;padding:9px 12px}.df-v2 .sim-detail-workspace>.sim-workspace-tabs{min-height:49px;padding:0 32px;gap:27px}.df-v2 .sim-detail-workspace>.sim-workspace-tabs>.btn{align-self:stretch;padding:0 3px;border:0;border-bottom:2px solid transparent;border-radius:0;background:none;box-shadow:none;color:var(--fg-secondary);font-size:11px}.df-v2 .sim-detail-workspace>.sim-workspace-tabs>.btn.active{color:var(--accent);border-bottom-color:var(--accent)}.df-v2 .sim-detail-workspace .sim-detail-readonly{margin-left:auto;color:var(--fg-tertiary);font-size:10px}.df-v2 .sim-detail-workspace .sim-navigation-actions:empty{display:none}.df-v2 .sim-detail-workspace .sim-input-summary{flex-basis:260px;padding:24px 16px}.df-v2 .sim-detail-workspace .sim-input-summary-heading{border-bottom:1px solid var(--border);padding:0 10px 19px;margin-bottom:10px}.df-v2 .sim-detail-workspace .sim-input-summary-heading strong{font-size:12px;font-weight:600}.df-v2 .sim-detail-workspace .sim-input-summary-heading>span{font-size:10px}.df-v2 .sim-detail-workspace .sim-input-summary-card{padding:16px 10px;margin-bottom:0;border:1px solid transparent;border-bottom-color:var(--border);border-radius:0;background:none}.df-v2 .sim-detail-workspace .sim-input-summary-card:hover{border-radius:8px;background:color-mix(in srgb,var(--accent-soft) 50%,var(--bg-elev))}.df-v2 .sim-detail-workspace .sim-input-summary-card.active{border-color:var(--accent-border);border-radius:9px;background:var(--accent-soft)}.df-v2 .sim-detail-workspace .sim-input-summary-copy strong{font-size:11px;font-weight:550}.df-v2 .sim-detail-workspace .sim-input-summary-copy>span{font-size:10px;line-height:1.8;color:var(--fg-secondary)}.df-v2 .sim-detail-workspace .sim-input-summary-copy>.sim-input-summary-error{color:var(--red)}.df-v2 .sim-detail-workspace .sim-input-summary-action{color:var(--fg-tertiary);font-size:9px}.df-v2 .sim-detail-workspace .sim-input-reservoir{padding:18px;background:var(--bg)}.df-v2 .sim-detail-workspace .sim-input-reservoir>.reservoir-view{border:1px solid var(--border);border-radius:12px;overflow:hidden}.df-v2 .sim-detail-workspace .sim-input-editor.docked{position:absolute;left:278px;top:18px;bottom:18px;width:620px;min-width:360px;max-width:calc(100% - 296px);border:1px solid var(--border);border-radius:12px;box-shadow:8px 0 30px #34445a0d}.df-v2 .sim-detail-workspace .sim-input-editor-header{padding:18px 20px}.df-v2 .sim-detail-workspace .sim-input-editor-header h2{color:var(--fg);font-size:16px;letter-spacing:-.3px}.df-v2 .sim-detail-workspace .sim-input-editor-header span{font-size:10px}.df-v2 .sim-detail-workspace .sim-input-editor-footer{padding:14px 20px}.df-v2 .reservoir-deck-viewer.canvas-light{--reservoir-background: #f7fafd;--reservoir-panel: rgba(255,255,255,.95);--reservoir-border: #dfe7f0;--reservoir-text: #637b97}.df-v2 .reservoir-deck-viewer.canvas-dark{--reservoir-background: #141e2c;--reservoir-panel: rgba(31,44,62,.95);--reservoir-border: #36465c;--reservoir-text: #b0bfd1}.df-v2 .reservoir-controls-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:11px;color:var(--reservoir-text)}.df-v2 .reservoir-controls-heading strong{font-weight:550}.df-v2 .reservoir-controls-heading button{font-size:10px;border:0;background:none;color:var(--reservoir-text);padding:3px;cursor:pointer}.df-v2 .reservoir-display-controls{max-width:calc(100% - 24px);box-sizing:border-box}.df-v2 .reservoir-display-controls label{font-size:10px}.df-v2 .reservoir-display-controls .reservoir-display-fields>div,.df-v2 .reservoir-display-controls .reservoir-display-fields>label{margin-top:8px}.df-v2 .reservoir-orbit-hint{font-size:9px;color:var(--reservoir-text);opacity:.8}.df-v2 .reservoir-canvas-theme{position:absolute;right:16px;top:58px;z-index:2;border:1px solid var(--reservoir-border);border-radius:6px;padding:6px 8px;background:var(--reservoir-panel);color:var(--reservoir-text);font-size:10px;cursor:pointer}.df-v2 .reservoir-view:has(.canvas-light) .reservoir-view-context{background:#ffffffeb;color:#637b97;border-color:#dfe7f0;box-shadow:none;font-size:10px}.df-v2 .reservoir-view:has(.canvas-light) .reservoir-view-context-name{color:#637b97}@media (max-width: 1100px){.df-v2 .sim-detail-workspace>.sim-workspace-toolbar{padding:16px 24px}.df-v2 .sim-detail-workspace .sim-input-summary{flex-basis:230px;padding:22px 10px}.df-v2 .sim-detail-workspace .sim-input-editor.docked{left:248px;width:calc(100% - 266px);min-width:0;max-width:none}}@media (max-width: 700px){.df-v2 .sim-detail-workspace>.sim-workspace-toolbar{padding:15px 20px;gap:12px}.df-v2 .sim-detail-workspace .sim-header-actions{flex-wrap:wrap}.df-v2 .sim-detail-workspace>.sim-workspace-tabs{padding:0 20px;gap:18px}.df-v2 .sim-detail-workspace .sim-detail-readonly{font-size:9px;padding:8px 0}.df-v2 .sim-detail-workspace .sim-input-summary{display:flex;flex-wrap:nowrap;gap:8px;width:100%;padding:16px;overflow-x:auto;max-height:none}.df-v2 .sim-detail-workspace .sim-input-summary-heading{display:none}.df-v2 .sim-detail-workspace .sim-input-summary-card{flex:0 0 180px;border:1px solid var(--border);border-radius:8px;padding:12px}.df-v2 .sim-detail-workspace .sim-input-summary-hint{flex:0 0 180px}.df-v2 .sim-detail-workspace .sim-input-reservoir{min-height:560px;padding:12px}.df-v2 .sim-detail-workspace .sim-input-editor.docked{position:fixed;top:8px;right:8px;bottom:8px;left:8px;width:auto;height:auto;min-width:0;max-width:none;max-height:none;resize:none;z-index:80}.df-v2 .reservoir-view-context{max-width:calc(100% - 24px)}}@media (max-width: 700px){.df-v2 .sim-detail-workspace .sim-input-editor.docked,.df-v2 .sim-detail-workspace .sim-input-editor.floating,.df-v2 .sim-detail-workspace .sim-input-editor.maximized{z-index:120}}.df-v2 .body.layout-mesh:has(>.mesh-workspace-header){grid-template-columns:260px minmax(0,1fr);gap:0;background:var(--bg);position:relative}.df-v2 .body.layout-mesh:has(>.mesh-workspace-header):has(>.mesh-input-editor:not([hidden])){grid-template-columns:260px 480px minmax(0,1fr)}.df-v2 .mesh-workspace-header{padding:16px 32px;min-height:98px;box-sizing:border-box}.df-v2 .mesh-workspace-header .simulation-back-link{font-size:10px;color:var(--fg-tertiary);margin-bottom:7px}.df-v2 .mesh-workspace-header .mesh-switcher>summary{font-size:20px;font-weight:600;letter-spacing:-.5px}.df-v2 .mesh-workspace-header .scenario-meta{font-size:10px;padding:4px 7px;border:1px solid var(--border);border-radius:5px;color:var(--fg-secondary);background:var(--bg)}.df-v2 .mesh-detail-meta{font-size:10px;color:var(--fg-tertiary);margin-top:6px}.df-v2 .mesh-workspace-header-actions{gap:10px}.df-v2 .mesh-workspace-header-actions .btn{border-radius:8px;font-size:11px;padding:9px 12px}.df-v2 .mesh-workspace-header-actions>.badge{font-size:9px;font-weight:500;border-radius:5px}.df-v2 .mesh-input-sidebar{grid-row:2;grid-column:1;border:0;border-right:1px solid var(--border)}.df-v2 .mesh-input-sidebar .insp-head{padding:12px 22px;background:var(--bg-elev)}.df-v2 .mesh-input-sidebar .insp-head-title{font-size:10px;color:var(--fg-secondary);font-weight:550}.df-v2 .mesh-input-sidebar .insp-head-sub{font-size:9px;color:var(--fg-tertiary)}.df-v2 .mesh-input-summary{padding:24px 16px}.df-v2 .mesh-input-summary .sim-input-summary-heading{padding:0 10px 19px;border-bottom:1px solid var(--border);margin-bottom:10px}.df-v2 .mesh-input-summary .sim-input-summary-heading strong{font-size:12px;font-weight:600}.df-v2 .mesh-input-summary .sim-input-summary-heading>span{font-size:10px;line-height:1.8}.df-v2 .mesh-input-summary .sim-input-summary-card{padding:16px 10px;margin-bottom:0;border:1px solid transparent;border-bottom-color:var(--border);border-radius:0;background:none}.df-v2 .mesh-input-summary .sim-input-summary-card:hover{background:color-mix(in srgb,var(--accent-soft) 50%,var(--bg-elev));border-radius:8px}.df-v2 .mesh-input-summary .sim-input-summary-card.active{border-color:var(--accent-border);background:var(--accent-soft);border-radius:9px}.df-v2 .mesh-input-summary .sim-input-summary-copy strong{font-size:11px;font-weight:550}.df-v2 .mesh-input-summary .sim-input-summary-copy>span{font-size:10px;line-height:1.8;color:var(--fg-secondary)}.df-v2 .mesh-input-summary .sim-input-summary-action{color:var(--fg-tertiary);font-size:9px}.df-v2 .mesh-input-next{padding:18px 10px;margin-top:0;border:0}.df-v2 .mesh-input-next strong{font-size:11px;font-weight:550}.df-v2 .mesh-input-next p{font-size:10px;line-height:1.8}.df-v2 .mesh-input-editor{grid-column:2;grid-row:2;margin:18px 0 18px 18px;border:1px solid var(--border);border-radius:12px;box-shadow:4px 0 24px #34445a08;z-index:20}.df-v2 .mesh-input-editor .sim-input-editor-header{padding:20px 22px}.df-v2 .mesh-input-editor .sim-input-editor-header h2{font-size:16px;letter-spacing:-.3px}.df-v2 .mesh-input-editor .sim-input-editor-header span{font-size:10px;line-height:1.6}.df-v2 .mesh-input-editor .sim-input-editor-header .btn{font-size:10px;border:0;box-shadow:none;background:none;color:var(--fg-secondary)}.df-v2 .mesh-input-editor-scroll{padding:22px}.df-v2 .mesh-input-editor-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--border);padding:14px 22px;flex-shrink:0}.df-v2 .mesh-input-editor-footer>span{color:var(--fg-tertiary);font-size:10px;line-height:1.6}.df-v2 .mesh-input-editor-footer .btn{color:var(--accent);font-size:10px}.df-v2 .body.layout-mesh:has(>.mesh-workspace-header)>.mesh-workspace-editing{grid-row:2;grid-column:2;margin:18px;border:1px solid var(--border);border-radius:12px;overflow:hidden;min-width:0}.df-v2 .body.layout-mesh:has(>.mesh-workspace-header):has(>.mesh-input-editor:not([hidden]))>.mesh-workspace-editing{grid-column:3}.df-v2 .body.layout-mesh:has(>.mesh-workspace-header) .viewport-overlay .chip{background:#1e2b3cf0;border-color:#35465c;color:#acbdd1;border-radius:8px;box-shadow:0 4px 12px #0000000a;font-family:var(--font-sans);font-size:10px;padding:8px 10px;max-width:min(360px,calc(100vw - 48px));box-sizing:border-box;flex-wrap:wrap}.df-v2 .body.layout-mesh:has(>.mesh-workspace-header) .viewport-overlay .chip .label{color:#8ea4be;font-size:9px}.df-v2 .body.layout-mesh:has(>.mesh-workspace-header) .viewport-overlay .btn-overlay{background:#1e2b3cf0;border-color:#35465c;color:#acbdd1;border-radius:6px;font-size:10px}.df-v2 .mesh-input-sidebar button:focus-visible,.df-v2 .mesh-input-editor button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (max-width: 1400px){.df-v2 .body.layout-mesh:has(>.mesh-workspace-header):has(>.mesh-input-editor:not([hidden])){grid-template-columns:260px minmax(0,1fr)}.df-v2 .body.layout-mesh:has(>.mesh-workspace-header):has(>.mesh-input-editor:not([hidden]))>.mesh-workspace-editing{grid-column:2}.df-v2 .mesh-input-editor{width:min(620px,calc(100% - 36px));margin:18px;justify-self:start}}@media (max-width: 900px){.df-v2 .body.layout-mesh:has(>.mesh-workspace-header),.df-v2 .body.layout-mesh:has(>.mesh-workspace-header):has(>.mesh-input-editor:not([hidden])){grid-template-columns:230px minmax(0,1fr);overflow-x:hidden}.df-v2 .mesh-workspace-header{padding:16px 24px;flex-wrap:wrap}}@media (max-width: 700px){.df-v2 .body.layout-mesh:has(>.mesh-workspace-header),.df-v2 .body.layout-mesh:has(>.mesh-workspace-header):has(>.mesh-input-editor:not([hidden])){grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(420px,1fr);overflow-y:auto}.df-v2 .mesh-workspace-header{padding:15px 20px;gap:12px;grid-column:1}.df-v2 .mesh-workspace-header-actions{justify-content:flex-start;gap:7px}.df-v2 .mesh-workspace-header-actions .btn{font-size:10px;padding:8px 10px}.df-v2 .mesh-input-sidebar{grid-column:1;grid-row:2;border-right:0}.df-v2 .mesh-input-sidebar>.inspector-scroll{overflow-y:visible!important}.df-v2 .mesh-input-sidebar .insp-head{padding:10px 20px}.df-v2 .mesh-input-summary{display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;padding:14px 16px}.df-v2 .mesh-input-summary .sim-input-summary-heading{display:none}.df-v2 .mesh-input-summary .sim-input-summary-card{flex:0 0 180px;padding:12px;border:1px solid var(--border);border-radius:8px}.df-v2 .mesh-input-next{flex:0 0 160px;padding:12px}.df-v2 .body.layout-mesh:has(>.mesh-workspace-header)>.mesh-workspace-editing,.df-v2 .body.layout-mesh:has(>.mesh-workspace-header):has(>.mesh-input-editor:not([hidden]))>.mesh-workspace-editing{grid-column:1;grid-row:3;margin:12px;min-height:400px}.df-v2 .mesh-input-editor{position:fixed;top:8px;right:8px;bottom:8px;left:8px;width:auto;margin:0;z-index:120}.df-v2 .mesh-input-editor .sim-input-editor-header,.df-v2 .mesh-input-editor-scroll{padding:16px}}@media (min-width: 1401px){.df-v2 .sim-detail-workspace .sim-input-editor.docked{position:relative;inset:auto;width:480px;min-width:360px;max-width:calc(100% - 600px);margin:18px 0 18px 18px;flex:0 0 auto;resize:horizontal}}@media (min-width: 1101px) and (max-width: 1400px){.df-v2 .sim-detail-workspace .sim-input-editor.docked{position:absolute;inset:18px auto 18px 278px;width:min(620px,calc(100% - 296px));min-width:0;max-width:none;resize:none}}.df-v2 .results-page-heading{min-width:180px}.df-v2 .results-page-heading h1{font-size:20px;font-weight:600;letter-spacing:-.5px;margin:0 0 7px}.df-v2 .results-page-heading>span{font-size:10px;color:var(--fg-tertiary)}.df-v2 .results-view-bar{padding:22px 32px;gap:20px;flex-wrap:wrap;align-items:center}.df-v2 .results-view-bar .results-run-selector{margin-left:auto}.df-v2 .results-view-bar label{font-size:10px;color:var(--fg-secondary)}.df-v2 .results-view-bar .input{font-size:11px;border-radius:7px}.df-v2 .results-view-bar .btn{border-radius:7px;font-size:10px;padding:8px 11px}.df-v2 .engineering-workspace{width:100%;max-width:1400px;margin:0 auto;box-sizing:border-box;padding:0 36px 36px;gap:20px}.df-v2 .engineering-tabs{display:flex;gap:29px;align-items:stretch;min-height:54px;padding:0;border-bottom:1px solid var(--border);overflow-x:auto;flex-wrap:nowrap}.df-v2 .engineering-tabs>button{border:0;border-bottom:2px solid transparent;border-radius:0;padding:0 2px;background:none;color:var(--fg-secondary);font-size:11px;box-shadow:none;white-space:nowrap}.df-v2 .engineering-tabs>button[aria-selected=true]{color:var(--accent);border-color:var(--accent);background:none}.df-v2 .engineering-workspace>.engineering-provenance{font-size:10px;line-height:1.8;color:var(--fg-tertiary);margin:0}.df-v2 .engineering-kpis{gap:14px;margin-bottom:20px}.df-v2 .engineering-kpis .chart-card{min-height:108px;padding:18px 19px;border-radius:10px}.df-v2 .engineering-kpis span{font-size:10px;line-height:1.6}.df-v2 .engineering-kpis strong{font-family:var(--font-sans);font-size:24px;font-weight:550;letter-spacing:-.6px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.df-v2 .overview-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:24px}.df-v2 .engineering-workspace .chart-card{border-radius:12px;padding:20px;min-width:0}.df-v2 .engineering-workspace .chart-card h3{font-size:13px;font-weight:600;letter-spacing:-.1px}.df-v2 .engineering-workspace .chart-card p{font-size:11px;line-height:1.8;color:var(--fg-secondary)}.df-v2 .engineering-plot-shell{position:relative;width:100%;min-width:0;background:var(--bg-elev)}.df-v2 .engineering-plot-expand{position:absolute;right:6px;top:2px;z-index:4;width:28px;height:25px;border:1px solid var(--border);border-radius:5px;background:var(--bg-elev);color:var(--fg-tertiary);cursor:pointer;font-size:13px}.df-v2 .engineering-plot-expand:hover{color:var(--accent);border-color:var(--accent)}.engineering-plot-shell:fullscreen{padding:44px 24px 12px;box-sizing:border-box;background:var(--bg-elev,#fff);width:100vw;height:100vh}.engineering-plot-shell:fullscreen .engineering-plot-expand{width:auto;padding:4px 10px;right:16px;top:12px}.df-v2 .engineering-workspace table{font-size:11px}@media (max-width: 1000px){.df-v2 .results-view-bar{padding:20px 24px}.df-v2 .engineering-workspace{padding-left:24px;padding-right:24px}.df-v2 .results-view-bar .results-run-selector{margin-left:0}}@media (max-width: 760px){.df-v2 .results-view-bar{padding:20px;gap:14px}.df-v2 .results-view-bar .results-run-selector{width:100%}.df-v2 .results-view-bar .results-run-selector select{min-width:0;width:100%}.df-v2 .results-view-bar>.row-actions{flex-wrap:wrap;gap:7px}.df-v2 .engineering-workspace{padding:0 20px 30px}.df-v2 .engineering-tabs{gap:22px;min-height:49px}.df-v2 .engineering-tabs>button{font-size:10px}.df-v2 .engineering-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.df-v2 .engineering-kpis strong{font-size:21px}.df-v2 .engineering-kpis .chart-card{padding:15px 13px}.df-v2 .overview-chart-grid{grid-template-columns:minmax(0,1fr);gap:16px}.df-v2 .engineering-workspace .chart-card{padding:16px}}.df-v2 .center.results-main{width:100%;flex:1}.df-v2 .results-page-heading h1{color:var(--fg)}.engineering-plot-shell.is-expanded:not(:fullscreen){position:fixed;top:12px;right:12px;bottom:12px;left:12px;z-index:200;width:auto;height:calc(100vh - 24px);padding:44px 24px 12px;box-sizing:border-box;background:var(--bg-elev,#fff);border:1px solid var(--border,#e1e8f0);border-radius:12px;box-shadow:0 0 0 100vmax #14243b66}.engineering-plot-shell.is-expanded .engineering-plot-expand{width:auto;padding:4px 10px;top:12px;right:16px}.df-v2 .compare-page-inner{width:100%;max-width:1440px;box-sizing:border-box;margin:0 auto;padding:30px 36px 50px;display:flex;flex-direction:column;gap:24px}.df-v2 .compare-header{gap:18px;align-items:center}.df-v2 .compare-page-heading{margin-right:auto}.df-v2 .compare-page-heading h1{font-size:23px;font-weight:600;color:var(--fg);letter-spacing:-.6px;margin:0 0 8px}.df-v2 .compare-page-heading p{margin:0;font-size:11px;line-height:1.7;color:var(--fg-tertiary)}.df-v2 .compare-header-actions{margin-left:0;gap:8px}.df-v2 .compare-header .btn{font-size:11px;border-radius:8px;padding:9px 12px}.df-v2 .compare-header-actions>button:last-child{color:var(--accent);background:var(--accent-soft);border-color:var(--accent-border)}.df-v2 .compare-run-picker{position:relative}.df-v2 .compare-run-menu{right:0;left:auto;width:min(430px,calc(100vw - 40px));max-height:65vh;overflow:auto;border-radius:12px;box-shadow:var(--shadow-pop)}.df-v2 .compare-run-menu h4{font-size:10px;color:var(--fg-tertiary)}.df-v2 .compare-run-option strong{font-size:11px;font-weight:550}.df-v2 .engineering-compare{gap:20px}.df-v2 .engineering-compare .chart-card{border-radius:12px;padding:20px}.df-v2 .engineering-compare h3{font-size:13px;font-weight:600;color:var(--fg);margin-top:0}.df-v2 .engineering-compare p{color:var(--fg-secondary);font-size:11px;line-height:1.8}.df-v2 .engineering-compare .compare-controls{display:flex;flex-direction:row;align-items:flex-end;flex-wrap:wrap;gap:16px;padding:18px 20px}.df-v2 .engineering-compare .compare-controls>label{display:flex;flex-direction:column;align-items:stretch;gap:7px;font-size:10px;color:var(--fg-tertiary);min-width:110px;max-width:100%;flex:1 1 130px}.df-v2 .engineering-compare>.compare-controls:first-child>label:first-child{flex:2 1 270px}.df-v2 .engineering-compare select,.df-v2 .engineering-compare input:not([type=checkbox]){font-family:var(--font-sans);font-size:11px;padding:9px 10px;color:var(--fg-secondary);border-color:var(--border);border-radius:7px;min-width:0}.df-v2 .engineering-compare .compare-controls select{width:100%}.df-v2 .engineering-compare .compare-controls>.btn{font-size:10px;border-radius:7px;padding:9px 12px;white-space:nowrap}.df-v2 .compare-context-row{display:flex;flex-direction:column;align-items:stretch;gap:12px}.df-v2 .compare-run-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;width:100%}.df-v2 .compare-run-legend>span{display:block;padding:11px 12px;border:1px solid var(--border);border-left-width:4px;border-radius:7px;background:var(--bg-elev);font-size:10px;line-height:1.8;color:var(--fg-secondary);overflow-wrap:anywhere}.df-v2 .compare-notes{padding:3px 0;color:var(--fg-tertiary);font-size:10px;line-height:1.8}.df-v2 .compare-data-notices{border:1px solid var(--border);border-radius:8px;padding:12px 16px;background:var(--bg-elev);font-size:10px;color:var(--fg-secondary)}.df-v2 .compare-tabs{display:flex;gap:28px;min-height:49px;border-bottom:1px solid var(--border);padding:0;overflow-x:auto;flex-wrap:nowrap}.df-v2 .compare-tabs>.btn{align-self:stretch;border:0;border-bottom:2px solid transparent;border-radius:0;background:none;box-shadow:none;color:var(--fg-secondary);font-size:11px;padding:0 2px;white-space:nowrap}.df-v2 .compare-tabs>.btn[aria-selected=true]{color:var(--accent);border-bottom-color:var(--accent);background:none}.df-v2 .compare-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.df-v2 .engineering-compare>.compare-measurement-chart{width:100%;align-self:stretch;box-sizing:border-box}.df-v2 .engineering-compare .compare-measurement-chart>p{color:var(--fg-secondary);border-left:2px solid var(--warm);padding:8px 12px;background:var(--warm-soft);border-radius:0 6px 6px 0;font-size:10px}.df-v2 .engineering-compare .compare-table{overflow-x:auto}.df-v2 .engineering-compare table{font-size:11px}.df-v2 .engineering-compare th,.df-v2 .engineering-compare td{padding:12px}.df-v2 .compare-well-details{border:1px solid var(--border);border-radius:9px;padding:15px 18px;background:var(--bg-elev);font-size:11px}.df-v2 .compare-well-details>summary{color:var(--fg-secondary);cursor:pointer}.df-v2 .engineering-compare .compare-performance-heading{flex-wrap:wrap;gap:12px}.df-v2 .engineering-compare .compare-summary-key{color:var(--fg-tertiary);font-size:10px;line-height:1.7}@media (max-width: 1000px){.df-v2 .compare-page-inner{padding:24px}.df-v2 .compare-page-heading{flex:1 1 100%}}@media (max-width: 760px){.df-v2 .compare-page-inner{padding:22px 20px 36px;gap:20px}.df-v2 .compare-page-heading h1{font-size:22px}.df-v2 .compare-run-legend,.df-v2 .compare-chart-grid,.df-v2 .compare-spatial-grid{grid-template-columns:minmax(0,1fr)}.df-v2 .engineering-compare .compare-controls{gap:12px;padding:16px}.df-v2 .engineering-compare>.compare-controls:first-child>label:first-child{flex:1 1 100%}.df-v2 .engineering-compare .chart-card{padding:16px}.df-v2 .compare-tabs{gap:22px}.df-v2 .compare-tabs>.btn{font-size:10px}}.df-v2 .compare-measurement-chart .engineering-plot-shell{flex:0 0 auto;min-height:390px}.df-v2 .results-spatial-active{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.df-v2 .results-spatial-active>.results-view-bar{flex:0 0 auto;padding:16px 28px;position:relative}.df-v2 .results-spatial-active>.engineering-results-grid{flex:1;min-height:0;overflow:hidden}.df-v2 .results-spatial-active .engineering-workspace{position:relative;flex:0 0 auto;max-width:none;padding:0 28px;gap:0}.df-v2 .results-spatial-active .engineering-tabs{min-height:46px;padding-right:155px}.df-v2 .spatial-measurement-notes{position:absolute;right:28px;top:15px;font-size:10px;color:var(--fg-tertiary);z-index:5}.df-v2 .spatial-measurement-notes summary{cursor:pointer}.df-v2 .spatial-measurement-notes p{position:absolute;top:20px;right:0;width:min(300px,calc(100vw - 48px));box-sizing:border-box;padding:16px;line-height:1.8;border:1px solid var(--border);border-radius:8px;background:var(--bg-elev);box-shadow:var(--shadow-pop);color:var(--fg-secondary)}.df-v2 .results-spatial-active .spatial-tab-viewer{flex:1;min-height:0;height:auto;width:auto;margin:16px 20px 12px;border:1px solid var(--border);border-radius:12px;overflow:hidden;padding-bottom:60px;background:#141e2c;box-sizing:border-box;display:flex;flex-direction:column}.df-v2 .field3d-spatial-workspace{display:flex;flex:1;min-height:0;height:auto!important;width:100%;overflow:hidden}.df-v2 .field3d-viewer>.spatial-display-panel{z-index:2}.df-v2 .field3d-spatial-workspace>.spatial-display-panel{position:relative!important;inset:auto!important;flex:0 0 245px;width:245px;min-width:0!important;max-width:245px;box-sizing:border-box;padding:18px 16px!important;border:0!important;border-right:1px solid var(--border)!important;border-radius:0!important;background:var(--bg-elev)!important;color:var(--fg-secondary)!important;box-shadow:none!important;overflow-y:auto;z-index:3;gap:16px!important}.df-v2 .spatial-display-panel[hidden]{display:none!important}.df-v2 .spatial-display-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}.df-v2 .spatial-display-heading strong{font-size:12px;font-weight:600;color:var(--fg)}.df-v2 .spatial-display-heading button{border:0;background:none;color:var(--fg-tertiary);cursor:pointer;font-size:17px;padding:0 3px}.df-v2 .field3d-spatial-workspace .spatial-display-panel>div:not(.spatial-display-heading){flex-direction:column;align-items:stretch!important;gap:8px!important;padding-bottom:16px;border-bottom:1px solid var(--border)}.df-v2 .field3d-spatial-workspace .spatial-display-panel>div>span{font-size:10px;font-weight:500!important;min-width:0!important}.df-v2 .field3d-spatial-workspace .spatial-display-panel select,.df-v2 .field3d-spatial-workspace .spatial-display-panel input:not([type=range]){width:100%!important;min-width:0;box-sizing:border-box;background:var(--bg-elev)!important;border:1px solid var(--border)!important;color:var(--fg-secondary)!important;font-size:11px!important;border-radius:6px!important;padding:8px!important}.df-v2 .field3d-spatial-workspace .spatial-display-panel input[type=range]{flex:none!important;width:100%}.df-v2 .field3d-spatial-workspace>.spatial-canvas-region{position:relative!important;inset:auto!important;flex:1 1 0%;width:0;min-width:0;min-height:0;overflow:hidden}.df-v2 .field3d-spatial-workspace .spatial-cell-count,.df-v2 .field3d-spatial-workspace .spatial-cell-inspection,.df-v2 .field3d-spatial-workspace .spatial-field-legend{border-radius:9px!important;background:#1f2d3ff0!important;border-color:#394b63!important;color:#adbed3!important;box-shadow:none!important}.df-v2 .field3d-spatial-workspace .spatial-cell-count{font-size:10px!important;padding:8px 10px!important}.df-v2 .field3d-spatial-workspace .spatial-field-legend{bottom:62px!important;padding:13px!important}.df-v2 .field3d-spatial-workspace .spatial-cell-inspection{bottom:62px!important;max-width:calc(100% - 180px);max-height:45%;overflow:auto;pointer-events:auto}.df-v2 .spatial-show-controls{position:absolute;left:16px;top:14px;z-index:4;border:1px solid #394b63;border-radius:6px;padding:7px 9px;color:#acbed5;background:#202e40ed;font-size:10px;cursor:pointer}.df-v2 .spatial-camera-controls{position:absolute;left:16px;bottom:16px;display:flex;gap:3px;z-index:3;border:1px solid #394b63;border-radius:7px;padding:4px;background:#202e40ed}.df-v2 .spatial-camera-controls button{border:0;border-radius:4px;background:none;color:#acbed5;font-size:10px;padding:6px 8px;cursor:pointer}.df-v2 .spatial-camera-controls button:hover{color:#fff;background:#394b63}.df-v2 .spatial-canvas-actions{position:absolute;right:16px;bottom:16px;display:flex;gap:7px;z-index:3}.df-v2 .spatial-canvas-actions button{border:1px solid #394b63;border-radius:6px;padding:8px 10px;background:#202e40ed;color:#acbed5;font-size:10px;cursor:pointer}.df-v2 .results-spatial-active .spatial-playback{position:absolute!important;left:0!important;right:0;bottom:0!important;transform:none!important;width:100%;height:60px;box-sizing:border-box;border-radius:0!important;background:var(--bg-elev)!important;border:0!important;border-top:1px solid var(--border)!important;padding:12px 20px!important;gap:16px!important;z-index:4}.df-v2 .results-spatial-active .spatial-playback>input{width:auto!important;flex:1;min-width:40px}.df-v2 .results-spatial-active .spatial-playback>span{min-width:0!important;font:11px var(--font-sans);color:var(--fg-secondary)!important}.df-v2 .spatial-play-speed{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--fg-tertiary)}.df-v2 .spatial-play-speed select{padding:5px;border:1px solid var(--border);border-radius:5px;color:var(--fg-secondary);background:var(--bg-elev);font-size:10px}.spatial-tab-viewer:fullscreen{width:100vw!important;height:100vh!important;margin:0!important;background:#141e2c}@media (max-width: 760px){.df-v2 .results-spatial-active{overflow-y:auto}.df-v2 .results-spatial-active>.results-view-bar{padding:15px 20px}.df-v2 .results-spatial-active .engineering-workspace{padding:0 20px}.df-v2 .results-spatial-active .engineering-tabs{padding-right:0}.df-v2 .spatial-measurement-notes{position:relative;top:auto;right:auto;margin:8px 0}.df-v2 .results-spatial-active .spatial-tab-viewer{min-height:540px;margin:12px;padding-bottom:82px}.df-v2 .field3d-spatial-workspace>.spatial-display-panel{position:absolute!important;top:0!important;bottom:0!important;left:0!important;width:230px;max-width:230px;box-shadow:8px 0 30px #0004!important;z-index:5}.df-v2 .results-spatial-active .spatial-playback{flex-wrap:wrap;height:82px;padding:10px 12px!important;gap:8px!important}.df-v2 .results-spatial-active .spatial-playback>input{order:4;flex:1 1 100%}.df-v2 .results-spatial-active .spatial-playback>span{font-size:10px!important}.df-v2 .spatial-play-speed{margin-left:auto}.df-v2 .spatial-camera-controls{left:10px;gap:0;padding:3px}.df-v2 .spatial-camera-controls button{font-size:9px;padding:5px}.df-v2 .spatial-canvas-actions{right:10px;bottom:16px}.df-v2 .spatial-canvas-actions button{font-size:9px;padding:7px}.df-v2 .spatial-canvas-actions button:first-child{display:none}.df-v2 .field3d-spatial-workspace .spatial-cell-inspection{max-width:calc(100% - 24px)}}.df-v2 .topbar.flow-project-shell{padding:0 24px;grid-template-rows:minmax(60px,auto) 46px}.df-v2 .flow-project-shell .topbar-identity{min-height:60px;gap:18px}.df-v2 .flow-project-shell:after{top:60px}.df-v2 .flow-project-shell>.project-tabs{height:46px;gap:28px}.df-v2 .flow-project-shell .project-tabs .step{height:46px;padding:0 5px;gap:7px;font-size:11px}.df-v2 .flow-project-shell .project-tab-count{font-size:8px}.df-v2 .flow-project-shell .topbar-actions{min-height:60px}@media (min-width: 1400px){.df-v2 .topbar.flow-project-shell{grid-template-rows:60px;min-height:60px}.df-v2 .flow-project-shell:after{display:none}.df-v2 .flow-project-shell>.project-tabs{position:absolute;left:50%;top:0;transform:translate(-50%);grid-column:auto;grid-row:auto;height:60px;width:max-content;max-width:calc(100% - 800px);gap:24px}.df-v2 .flow-project-shell .project-tabs .step{height:60px;padding:0 8px}.df-v2 .flow-project-shell .topbar-identity{max-width:calc(50vw - 300px)}.df-v2 .flow-project-shell .topbar-breadcrumbs{flex:1;min-width:0}.df-v2 .flow-project-shell .project-name{max-width:100%;padding-left:0}.df-v2 .flow-project-shell .topbar-brand{font-size:14px;gap:9px}.df-v2 .flow-project-shell .brand-mark{width:25px;height:25px}}.df-v2 .project-list-overview{padding-top:24px;padding-bottom:40px}.df-v2 .project-list-overview>.sim-workspace-toolbar{margin-bottom:22px}.df-v2 .project-list-overview .sim-settings-title{font-size:26px;margin-bottom:7px}.df-v2 .project-list-overview .sim-settings-subtitle{font-size:11px}.df-v2 .project-list-overview .simulation-list-tools{margin-bottom:14px}.df-v2 .project-list-overview .sim-workspace-toolbar>.btn{padding:9px 13px;font-size:11px}.df-v2 .sim-detail-workspace>.sim-workspace-toolbar{padding:10px 24px;min-height:74px;box-sizing:border-box;gap:18px}.df-v2 .sim-detail-workspace .simulation-back-link{font-size:9px;margin-bottom:4px}.df-v2 .sim-detail-workspace .scenario-switcher .sim-settings-title{font-size:18px;line-height:1.3}.df-v2 .sim-detail-workspace .sim-tracing-id{font-size:9px;margin-top:4px}.df-v2 .sim-detail-workspace .sim-header-actions .btn{padding:7px 10px;font-size:10px;border-radius:6px}.df-v2 .sim-detail-workspace>.sim-workspace-tabs{min-height:42px;padding:0 24px;gap:24px}.df-v2 .sim-detail-workspace>.sim-workspace-tabs>.btn{font-size:10px}.df-v2 .sim-detail-workspace .sim-navigation-actions{align-self:center}.df-v2 .sim-detail-workspace .sim-navigation-actions .sim-header-actions{gap:8px}.df-v2 .sim-detail-workspace .sim-input-reservoir{padding:12px}.df-v2 .sim-detail-workspace .sim-input-editor.docked{margin-top:12px;margin-bottom:12px}@media (min-width: 761px) and (max-width: 1399px){.df-v2 .sim-detail-workspace .sim-input-editor.docked{top:12px;bottom:12px;margin-top:0;margin-bottom:0}}@media (max-width: 760px){.df-v2 .topbar.flow-project-shell{padding:0 18px;grid-template-rows:minmax(56px,auto) 44px}.df-v2 .flow-project-shell .topbar-identity,.df-v2 .flow-project-shell .topbar-actions{min-height:56px}.df-v2 .flow-project-shell .topbar-identity{gap:10px}.df-v2 .flow-project-shell:after{top:56px}.df-v2 .flow-project-shell>.project-tabs{height:44px;gap:20px}.df-v2 .flow-project-shell .project-tabs .step{height:44px;padding:0 4px;font-size:10px}.df-v2 .project-list-overview{padding-top:22px}.df-v2 .sim-detail-workspace>.sim-workspace-toolbar{padding:12px 18px;gap:12px}.df-v2 .sim-detail-workspace>.sim-workspace-tabs{padding:0 18px;gap:14px;min-height:44px}.df-v2 .sim-detail-workspace .sim-header-actions{flex-wrap:wrap}.df-v2 .sim-detail-workspace .sim-detail-readonly{flex-basis:100%}.df-v2 .sim-detail-workspace .sim-input-editor.docked{margin:0}}.reservoir-plot{min-width:0;flex:0 0 auto;color:var(--fg-secondary)}.reservoir-chart-toolbar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:flex-end;padding:4px 0 10px}.reservoir-chart-toolbar button{min-height:32px;padding:5px 10px;border:1px solid var(--border, #e2e8f0);border-radius:6px;background:var(--bg-elev, #fff);color:var(--fg-secondary, #475569);font:inherit;font-size:12px;cursor:pointer}.reservoir-chart-toolbar button[aria-pressed=true]{color:var(--accent);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--bg-elev))}.reservoir-chart-toolbar button:focus-visible{outline:2px solid var(--accent, #2563eb);outline-offset:3px}.reservoir-chart-toolbar button:disabled{opacity:.6;cursor:wait}.reservoir-chart-error{font-size:13px;color:var(--danger, #b91c1c)}.reservoir-plot.is-expanded,.reservoir-plot:fullscreen{overflow:auto;padding:16px 24px}.df-v2 .engineering-workspace .chart-card h3,.df-v2 .engineering-compare .chart-card h3{font-size:14px}.df-v2 .engineering-workspace .chart-card p,.df-v2 .engineering-compare .chart-card p{font-size:13px;line-height:1.6}.df-v2 .engineering-workspace,.df-v2 .engineering-compare{container-type:inline-size}@container (max-width: 899px){.df-v2 .overview-chart-grid,.df-v2 .compare-chart-grid{grid-template-columns:minmax(0,1fr)}}@media (pointer: coarse){.reservoir-chart-toolbar button{min-height:40px;min-width:40px}}.reservoir-run-color{--run-color: var(--run-color-light)}[data-theme=dark] .reservoir-run-color,.theme-dark .reservoir-run-color{--run-color: var(--run-color-dark)}.df-v2 .engineering-workspace .chart-title{font-size:14px}.df-v2 .engineering-workspace:has(.reservoir-plot.is-expanded),.df-v2 .engineering-compare:has(.reservoir-plot.is-expanded){container-type:normal}.reservoir-inspector{position:fixed;z-index:100;top:96px;right:20px;bottom:24px;width:min(400px,calc(100vw - 40px));box-sizing:border-box;display:flex;flex-direction:column;gap:16px;overflow-y:auto;border:1px solid var(--border);border-radius:12px;padding:20px;background:var(--bg-elev);color:var(--fg-secondary);font:13px var(--font-sans);box-shadow:0 12px 40px #0003}.reservoir-inspector-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.reservoir-inspector-heading strong{color:var(--fg);font-size:16px}.reservoir-inspector-heading small{margin-top:6px}.reservoir-inspector>p{margin:0;line-height:1.6}.reservoir-inspector-controls,.reservoir-legend-controls,.reservoir-event-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.reservoir-inspector input{width:130px}.reservoir-inspector button,.reservoir-html-legend button,.reservoir-events button{min-height:32px;border:1px solid var(--border);border-radius:5px;background:var(--bg-elev);color:var(--fg-secondary);padding:4px 8px;font-size:12px;cursor:pointer}.reservoir-inspector button:disabled{opacity:.45;cursor:default}.reservoir-inspector input,.reservoir-legend-controls input,.reservoir-chart-toolbar select{min-height:32px;border:1px solid var(--border);border-radius:5px;background:var(--bg-elev);color:var(--fg-secondary);font:inherit;max-width:100%}.reservoir-inspector-values{min-height:0;overflow:auto}.reservoir-inspector-values table{width:100%;text-align:left;border-collapse:collapse;table-layout:fixed}.reservoir-inspector-values th,.reservoir-inspector-values td{padding:10px 6px;border-bottom:1px solid var(--border);overflow-wrap:anywhere}.reservoir-inspector-values th:first-child{width:55%}.reservoir-inspector-values td,.reservoir-inspector-values th:last-child{text-align:right}.reservoir-inspector-values th small{margin-top:4px;font-weight:400}.reservoir-inspector small,.reservoir-legend-value small{display:block;font-size:11px;opacity:.8}.reservoir-html-legend{font-size:12px;padding:8px 0;color:var(--fg-secondary)}.reservoir-legend-scroll{max-height:240px;overflow:auto;margin-top:8px}.reservoir-legend-row{display:flex;align-items:center;gap:10px;padding:5px;border-bottom:1px solid var(--border)}.reservoir-legend-row>label{display:flex;align-items:center;gap:8px;flex:1;min-width:0;overflow-wrap:anywhere}.reservoir-legend-value{text-align:right;font-variant-numeric:tabular-nums}.reservoir-series-swatch{display:inline-block;flex:0 0 24px;border-top-width:2px}.reservoir-legend-group>strong{display:block;padding:8px 5px 2px}.reservoir-event-strip{position:relative;height:38px;margin:5px 85px;border-bottom:1px solid var(--border)}.reservoir-event-strip button{position:absolute;transform:translate(-50%);padding:0 3px;min-width:20px}.reservoir-event-list{max-height:160px;overflow:auto}.reservoir-event-filters{font-size:12px}.reservoir-inspector :focus-visible,.reservoir-html-legend :focus-visible,.reservoir-events :focus-visible{outline:2px solid var(--accent);outline-offset:2px}.reservoir-spatial-time{position:absolute;top:6px;left:10px;z-index:5;padding:5px;background:var(--bg-elev);color:var(--fg)}@media (max-width: 600px){.reservoir-legend-row{flex-wrap:wrap}.reservoir-legend-row>label{flex-basis:100%}.reservoir-legend-value{text-align:left}}@media (max-width: 600px){.reservoir-inspector{top:12px;right:12px;bottom:12px;width:calc(100vw - 24px)}}@media (pointer: coarse){.reservoir-inspector button,.reservoir-html-legend button,.reservoir-events button{min-height:40px}}*,*:before,*:after{box-sizing:border-box}:root{--accent: #2563eb;--bg: #f8fafc;--surface: #ffffff;--border: #e2e8f0;--text: #1e293b;--muted: #64748b}body{margin:0;font-family:system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text)}.app{display:flex;height:100vh;overflow:hidden}.workspace-tree-panel{width:360px;min-width:360px;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;transition:width .18s ease,min-width .18s ease}.workspace-tree-panel.is-collapsed{width:58px;min-width:58px}.project-tree-scroll{flex:1;overflow-y:auto;padding:20px 16px;display:flex;flex-direction:column;gap:12px}.project-tree-footer{padding:12px 16px;border-top:1px solid #f1f5f9}.project-rail{height:100%;padding:12px 8px;display:flex;flex-direction:column;align-items:center;gap:9px}.rail-btn,.icon-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);background:#fff;color:#475569;cursor:pointer;font-weight:800;line-height:1}.rail-btn{width:36px;height:36px;border-radius:8px;font-size:13px}.rail-btn:hover,.icon-btn:hover{background:#f8fafc;color:#0f172a}.sidebar-menu-icon{width:14px;display:flex;flex-direction:column;gap:3px}.sidebar-menu-icon span{height:2px;border-radius:999px;background:currentColor}.rail-btn-primary{border-color:#bfdbfe;background:#eff6ff;color:#2563eb;font-size:19px}.rail-divider{width:28px;height:1px;background:#e2e8f0;margin:2px 0}.rail-mesh-stack{display:flex;flex-direction:column;gap:8px;align-items:center}.rail-mesh-chip{width:28px;height:28px;padding:0;border-radius:7px;background:#fff;border:1px solid #e2e8f0;color:#64748b;cursor:pointer;font-size:11px;font-weight:800}.rail-mesh-chip:hover{background:#f8fafc;color:#1e293b}.rail-mesh-chip.active{background:#eff6ff;border-color:#bfdbfe;color:#2563eb}.rail-spacer{flex:1}.rail-units{font-size:10px}.project-tree{flex:1;min-height:0;display:flex;flex-direction:column;gap:14px}.project-tree-top{flex-shrink:0;display:flex;flex-direction:column;gap:16px}.project-back-btn{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;padding:4px 0;border:none;background:none;color:#64748b;cursor:pointer;font-size:12px;font-weight:650}.project-back-btn:hover{color:#1e293b}.tree-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #f1f5f9}.tree-section-title{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#64748b}.tree-section-count{margin-top:2px;color:#94a3b8;font-size:12px;font-weight:650}.tree-add-btn{width:30px;height:30px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#2563eb;cursor:pointer;font-size:18px;font-weight:850;line-height:1}.tree-add-btn:hover{background:#dbeafe}.project-tree-list{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:7px}.project-tree-empty{padding:8px 4px;color:#94a3b8;font-size:12px;font-style:italic}.tree-item-group{display:flex;flex-direction:column;gap:2px}.project-tree-row{min-height:42px;display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:background .12s ease,border-color .12s ease}.project-tree-row:hover{background:#f8fafc}.project-tree-row.mesh.selected{background:#eff6ff;border-color:#bfdbfe}.project-tree-row.sim{min-height:36px;margin-left:24px;color:#475569}.project-tree-row.sim.selected{background:#f0fdf4;border-color:#bbf7d0}.tree-icon{color:#334155;font-size:15px;line-height:1;flex-shrink:0}.tree-icon.sim{color:#64748b;font-size:12px}.tree-row-copy{min-width:0;flex:1;display:flex;flex-direction:column;gap:1px}.tree-row-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1e293b;font-size:13px;font-weight:750}.project-tree-row.sim .tree-row-name{color:#475569;font-size:12px;font-weight:650}.tree-row-meta{color:#94a3b8;font-size:11px;font-weight:650}.tree-row-delete{width:24px;height:24px;padding:0;border:none;border-radius:6px;background:transparent;color:#94a3b8;cursor:pointer;line-height:1;font-size:13px;font-weight:850;opacity:0;flex-shrink:0;transition:opacity .12s ease,background .12s ease,color .12s ease}.project-tree-row:hover .tree-row-delete,.tree-row-delete:focus-visible{opacity:1}.tree-row-delete:hover{background:#fee2e2;color:#dc2626}.tree-compare-btn{height:24px;padding:0 8px;border:1px solid #bfdbfe;border-radius:6px;background:#eff6ff;color:#2563eb;cursor:pointer;flex-shrink:0;font-size:11px;font-weight:800}.tree-compare-btn:hover{background:#dbeafe}.tree-compare-btn.selected{border-color:#bbf7d0;background:#f0fdf4;color:#166534}.workspace-main{flex:1;min-width:0;height:100vh;overflow:hidden;display:flex;flex-direction:column;background:#f8fafc}.workspace-header{min-height:74px;padding:12px 18px;border-bottom:1px solid var(--border);background:#fffffff5;display:flex;gap:12px;align-items:center;flex-shrink:0;position:sticky;top:0;z-index:10}.workspace-title-group{width:min(34vw,360px);min-width:0;flex:0 1 360px;display:flex;flex-direction:column;gap:4px}.workspace-project-line{min-width:0;display:flex;align-items:center;gap:9px}.icon-btn{width:32px;height:32px;border-radius:8px;flex-shrink:0}.workspace-project-name{min-width:0;font-size:15px;font-weight:800;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace-context-line{min-width:0;display:flex;align-items:center;gap:8px;padding-left:41px;font-size:12px;color:#334155;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace-context-meta{color:#94a3b8;font-weight:650;overflow:hidden;text-overflow:ellipsis}.workspace-tabs{flex:0 0 auto;display:flex;align-items:center;gap:3px;padding:3px;border:1px solid var(--border);border-radius:8px;background:#f8fafc}.workspace-tab{min-width:118px;height:32px;padding:0 12px;border:none;border-radius:6px;background:transparent;color:#64748b;font-size:13px;font-weight:750;cursor:pointer;white-space:nowrap}.workspace-tab:hover:not(:disabled):not(.active){background:#e2e8f0;color:#1e293b}.workspace-tab.active{background:#fff;color:#1e293b;box-shadow:0 1px 3px #0f172a14}.workspace-tab:disabled{opacity:.45;cursor:not-allowed}.workflow-strip{flex-shrink:0;display:flex;align-items:stretch;gap:12px;padding:10px 18px;border-bottom:1px solid #e2e8f0;background:#fff}.workflow-steps{min-width:0;flex:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.workflow-step{min-width:0;min-height:50px;display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;color:#64748b;text-align:left}.workflow-step.clickable{cursor:pointer}.workflow-step.clickable:hover{border-color:#bfdbfe;background:#eff6ff}.workflow-step.active{border-color:#93c5fd;background:#eff6ff;color:#1d4ed8}.workflow-step.complete{border-color:#bbf7d0;background:#f0fdf4;color:#166534}.workflow-step.locked{opacity:.58}.workflow-step-number{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:#fff;border:1px solid currentColor;font-size:12px;font-weight:850}.workflow-step-copy{min-width:0;display:flex;flex-direction:column;gap:2px}.workflow-step-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1e293b;font-size:13px;font-weight:850}.workflow-step-meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:currentColor;font-size:12px;font-weight:650}.workflow-primary-action{width:170px;padding:0 12px;border:1px solid #2563eb;border-radius:8px;background:#2563eb;color:#fff;cursor:pointer;font-size:13px;font-weight:850;white-space:nowrap}.workflow-primary-action:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8}.workflow-primary-action:disabled{border-color:#cbd5e1;background:#e2e8f0;color:#94a3b8;cursor:default}.compare-workspace{display:flex;flex-direction:column;gap:16px}.compare-picker{border:1px solid #e2e8f0;border-radius:10px;background:#fff;padding:14px}.compare-picker-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.compare-picker-header h2{margin:0;color:#1e293b;font-size:16px}.compare-picker-header p{margin:3px 0 0;color:#64748b;font-size:12px}.compare-picker-header button{height:30px;padding:0 10px;border:1px solid #cbd5e1;border-radius:7px;background:#fff;color:#475569;cursor:pointer;font-size:12px;font-weight:800}.compare-picker-header button:hover:not(:disabled){background:#f8fafc;color:#0f172a}.compare-picker-header button:disabled{opacity:.5;cursor:default}.compare-run-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px}.compare-run-chip{min-width:0;min-height:50px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;padding:8px 10px;border:1px solid #dbe3ee;border-radius:8px;background:#f8fafc;cursor:pointer;text-align:left}.compare-run-chip:hover{border-color:#bfdbfe;background:#eff6ff}.compare-run-chip.selected{border-color:#bbf7d0;background:#f0fdf4}.compare-run-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1e293b;font-size:13px;font-weight:800}.compare-run-meta{color:#64748b;font-size:12px;font-weight:700}.compare-run-chip.selected .compare-run-meta{color:#166534}.compare-empty{padding:14px;border:1px dashed #cbd5e1;border-radius:8px;background:#f8fafc;color:#94a3b8;font-size:13px;text-align:center}.workspace-actions{display:flex;align-items:center;gap:8px;justify-content:flex-end}.workspace-header-spacer{flex:1 1 auto;min-width:16px}.workspace-settings-slot{flex:0 0 auto}.secondary-action-btn,.primary-action-btn{border-radius:7px;font-size:13px;font-weight:750;cursor:pointer;white-space:nowrap}.secondary-action-btn{width:100%;padding:9px 0;background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.primary-action-btn{height:34px;padding:0 14px;background:#2563eb;color:#fff;border:1px solid #2563eb}.primary-action-btn:hover{background:#1d4ed8;border-color:#1d4ed8}.workspace-new-mesh-btn{flex:0 0 auto}.workspace-content{flex:1;min-height:0;overflow-y:auto;padding:28px 32px}.settings-menu{position:relative;display:inline-flex;align-items:center;justify-content:center}.settings-btn{height:34px;padding:0 12px;border:1px solid #e2e8f0;border-radius:7px;background:#fff;color:#475569;font-size:13px;font-weight:750;cursor:pointer;white-space:nowrap}.settings-btn:hover,.settings-btn[aria-expanded=true]{background:#f8fafc;color:#0f172a}.settings-btn.compact{width:36px;padding:0;font-size:12px}.settings-popover{position:absolute;top:calc(100% + 8px);right:0;width:292px;padding:12px;border:1px solid #dbe3ee;border-radius:10px;background:#fff;box-shadow:0 18px 40px #0f172a29;z-index:50;display:flex;flex-direction:column;gap:12px}.project-rail .settings-popover{left:0;right:auto}.settings-popover-title{font-size:13px;font-weight:800;color:#0f172a}.settings-section{display:flex;flex-direction:column;gap:7px;padding-top:10px;border-top:1px solid #f1f5f9}.settings-label{font-size:11px;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.06em}.settings-segment{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:3px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;cursor:pointer}.settings-segment span{height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;color:#64748b;font-size:12px;font-weight:800}.settings-segment span.active{background:#fff;color:#1e293b;box-shadow:0 1px 3px #0f172a14}.settings-hint{font-size:12px;color:#94a3b8}.settings-email{color:#1e293b;font-size:13px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-link-btn{align-self:flex-start;padding:0;border:none;background:none;color:#2563eb;cursor:pointer;font-size:12px;font-weight:700}.settings-account-row{display:flex;align-items:center;gap:9px;min-width:0}.settings-account-row .settings-email{min-width:0}.settings-popover .usage-counter{width:100%;min-width:0;box-shadow:none}.project-delete-btn{padding:6px 10px;border:none;border-radius:6px;background:#fee2e2;color:#dc2626;cursor:pointer;flex-shrink:0;font-size:13px;font-weight:800;opacity:0;transition:opacity .12s ease,background .12s ease}.project-browser-row:hover .project-delete-btn,.project-delete-btn:focus-visible{opacity:1}.project-delete-btn:hover{background:#fecaca}.sidebar{width:360px;min-width:360px;background:var(--surface);border-right:1px solid var(--border);overflow-y:auto;padding:20px 16px;display:flex;flex-direction:column;gap:20px}.section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:8px}.field{display:flex;flex-direction:column;gap:3px;margin-bottom:8px}.field label{font-size:13px;color:var(--text)}.field .unit{color:var(--muted);font-size:12px}.field input{padding:6px 8px;border:1px solid var(--border);border-radius:5px;font-size:13px;font-family:ui-monospace,monospace;color:var(--text);background:var(--bg);width:100%}.field input:focus{outline:none;border-color:var(--accent);background:#fff}.sim-workflow{display:flex;flex-direction:column;gap:18px}.sim-workflow-section{padding-top:16px;border-top:1px solid #e2e8f0}.sim-workflow-section:first-child{padding-top:0;border-top:none}.sim-section-nav{position:sticky;top:-28px;z-index:4;display:flex;flex-wrap:wrap;gap:6px;padding:8px 0;background:#f8fafc}.sim-section-nav button{height:28px;padding:0 10px;border:1px solid #dbe3ee;border-radius:999px;background:#fff;color:#64748b;cursor:pointer;font-size:12px;font-weight:750}.sim-section-nav button:hover{border-color:#bfdbfe;background:#eff6ff;color:#2563eb}.sim-workflow-details>summary{display:flex;align-items:center;color:#64748b;cursor:pointer;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;-webkit-user-select:none;user-select:none}.sim-workflow-details>summary:hover{color:#1e293b}.sim-setup-section{max-width:620px}.sim-setup-strip{display:grid;grid-template-columns:repeat(2,minmax(170px,1fr));gap:10px;align-items:end}.sim-setup-field{display:flex;flex-direction:column;gap:4px}.sim-setup-field span{color:#64748b;font-size:12px;font-weight:700}.sim-setup-field select{height:34px;padding:0 10px;border:1px solid #dbe3ee;border-radius:7px;background:#fff;color:#1e293b;font-size:13px;font-weight:700}.sim-setup-field select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.sim-setup-field select:disabled{background:#f8fafc;color:#94a3b8;cursor:not-allowed}.boundary-preset-row{max-width:300px;margin-bottom:12px}.sim-mesh-context{margin-top:12px;max-width:430px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.sim-mesh-context-label{color:#64748b;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.sim-mesh-context-value{margin-top:2px;color:#1e293b;font-size:13px;font-weight:750}.sim-mesh-context button{height:30px;padding:0 10px;border:1px solid #bfdbfe;border-radius:7px;background:#eff6ff;color:#2563eb;cursor:pointer;font-size:12px;font-weight:800;white-space:nowrap}.sim-mesh-context button:hover{background:#dbeafe}.sim-nested-details summary{display:flex;align-items:center;gap:10px;color:#475569;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:12px;font-weight:800}.sim-nested-details summary{text-transform:uppercase;letter-spacing:.06em}.sim-nested-details summary span{color:#94a3b8;text-transform:none;letter-spacing:0;font-weight:650}.sim-nested-details{margin:12px 0 14px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;padding:28px;background:#0f172a6b;display:flex;align-items:center;justify-content:center}.mesh-modal{width:min(1120px,92vw);max-height:90vh;display:flex;flex-direction:column;border:1px solid #dbe3ee;border-radius:10px;background:#fff;box-shadow:0 24px 60px #0f172a47;overflow:hidden}.mesh-modal-header{flex-shrink:0;min-height:58px;padding:12px 14px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;gap:12px}.mesh-modal-title{color:#0f172a;font-size:14px;font-weight:850}.mesh-modal-subtitle{margin-top:2px;color:#94a3b8;font-size:12px;font-weight:700}.mesh-modal-close{width:32px;height:32px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#64748b;cursor:pointer;font-size:18px;font-weight:850;line-height:1}.mesh-modal-close:hover{background:#f8fafc;color:#0f172a}.mesh-modal-body{flex:1;min-height:0;overflow:auto;padding:12px}.run-btn{padding:10px;background:var(--accent);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;width:100%;margin-top:auto}.run-btn:hover:not(:disabled){background:#1d4ed8}.run-btn:disabled{opacity:.5;cursor:not-allowed}.tab-bar{display:flex;gap:4px;background:var(--bg);border:1px solid var(--border);border-radius:7px;padding:3px}.tab-btn{flex:1;padding:6px 0;font-size:13px;font-weight:600;border:none;border-radius:5px;background:transparent;color:var(--muted);cursor:pointer;transition:background .15s,color .15s}.tab-btn:hover:not(.active){background:var(--border);color:var(--text)}.tab-btn.active{background:var(--surface);color:var(--text);box-shadow:0 1px 3px #00000014}.main{flex:1;overflow-y:auto;padding:28px 32px}.app-top-right{position:fixed;top:16px;right:18px;z-index:20}.usage-counter{min-width:154px;height:34px;padding:5px 10px;border:1px solid #dbeafe;border-radius:7px;background:#fffffff2;box-shadow:0 1px 3px #0f172a14;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#1e293b;font-size:12px;white-space:nowrap}.usage-counter-label{color:#64748b;font-weight:600}.usage-counter-value{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700;color:#2563eb}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;color:var(--muted);font-size:14px;text-align:center;gap:12px}.spinner{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}@keyframes dot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.4)}}.status-dot-pulse{animation:dot-pulse 1.4s ease-in-out infinite}.canvas-add-btn{font-size:12px;font-weight:600;padding:4px 10px;background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe;border-radius:5px;cursor:pointer}.canvas-add-btn:hover{background:#dbeafe}.canvas-cancel-btn{font-size:12px;padding:2px 8px;background:none;border:none;color:#64748b;cursor:pointer}.canvas-cancel-btn:hover{color:#dc2626}.coord-add-btn{align-self:flex-end;font-size:12px;font-weight:600;padding:5px 12px;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;border-radius:5px;cursor:pointer}.coord-add-btn:hover{background:#e2e8f0}.frac-item{display:flex;align-items:center;gap:8px;padding:5px 8px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:5px}.frac-delete-btn{background:none;border:none;cursor:pointer;color:#94a3b8;font-size:15px;line-height:1;padding:0 2px;flex-shrink:0}.frac-delete-btn:hover{color:#dc2626}.geo-btn-primary{padding:6px 16px;font-size:13px;font-weight:600;border:none;border-radius:6px;background:#2563eb;color:#fff;cursor:pointer}.geo-btn-primary:hover{background:#1d4ed8}.geo-btn-outline{padding:6px 16px;font-size:13px;font-weight:600;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#475569;cursor:pointer}.geo-btn-outline:hover{background:#f1f5f9}@media (max-width: 920px){.workspace-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;min-height:0;padding:8px 10px}.workspace-title-group{width:auto;flex-basis:auto;grid-column:1;grid-row:1}.workspace-header-spacer{display:none}.workspace-settings-slot{grid-column:2;grid-row:1;justify-self:end;margin-left:0}.workspace-tabs{grid-column:1;grid-row:2;min-width:0;width:100%}.workspace-new-mesh-btn{grid-column:2;grid-row:2;justify-self:end}.workspace-tab{min-width:0;padding:0 8px}.workspace-content{padding:18px}.workflow-strip{display:grid;grid-template-columns:minmax(0,1fr);padding:8px 10px}.workflow-steps{grid-template-columns:1fr}.workflow-step{min-height:44px}.workflow-primary-action{width:100%;height:36px}.workspace-tree-panel{width:300px;min-width:300px}.workspace-tree-panel.is-collapsed{width:58px;min-width:58px}}html,body,#root{width:100%;min-height:100%;margin:0}.df-boot-loading{display:grid;min-height:100vh;place-items:center;margin:0;color:#94a3b8;background:#090c10;font:500 14px/1.4 system-ui,sans-serif}
