.granolab-root{--gl-header-offset:118px;--gl-ink:#14231f;--gl-muted:#66756e;--gl-muted-2:#7d8b84;--gl-line:#d8e1dc;--gl-line-strong:#c6d2cc;--gl-paper:#f2f4f0;--gl-surface:#ffffff;--gl-surface-soft:#f8faf7;--gl-control:#fbfcfa;--gl-green-950:#0d2921;--gl-green-900:#12372c;--gl-green-800:#17493a;--gl-green-700:#21604c;--gl-lime:#dcef62;--gl-lime-soft:#eef6bc;--gl-amber:#f5b955;--gl-focus:#9cb50a;--gl-shadow:0 16px 45px rgba(18,55,44,0.08);isolation:isolate;min-width:320px;padding-top:var(--gl-header-offset);color:var(--gl-ink);background:radial-gradient(circle at 78% 0,rgba(220,239,98,.1),transparent 27rem),var(--gl-paper);font-family:inherit}body:has(.granolab-root) .header{background:color-mix(in srgb,var(--surface) 96%,transparent)!important;box-shadow:0 1px 0 color-mix(in srgb,var(--border) 75%,transparent);backdrop-filter:blur(12px)}.dark .granolab-root{--gl-ink:#edf6f2;--gl-muted:#b4c5bd;--gl-muted-2:#92a69d;--gl-line:rgba(190,218,206,0.17);--gl-line-strong:rgba(190,218,206,0.27);--gl-paper:#091813;--gl-surface:#10241d;--gl-surface-soft:#132a22;--gl-control:#0c1e18;--gl-lime-soft:#2f421f;--gl-focus:#dcef62;--gl-shadow:0 18px 48px rgba(0,0,0,0.26);color-scheme:dark}.granolab-root,.granolab-root *,.granolab-root :after,.granolab-root :before{box-sizing:border-box}.granolab-root button,.granolab-root input,.granolab-root select{font:inherit}.granolab-root button,.granolab-root input[type=checkbox],.granolab-root input[type=range],.granolab-root select{cursor:pointer}.granolab-root button:disabled{cursor:wait;opacity:.58}.granolab-root a:focus-visible,.granolab-root button:focus-visible,.granolab-root input:focus-visible,.granolab-root select:focus-visible,.granolab-root summary:focus-visible{outline:3px solid var(--gl-focus);outline-offset:2px}.granolab-root .app-shell{display:grid;grid-template-columns:258px minmax(0,1fr);min-height:calc(100svh - var(--gl-header-offset))}.granolab-root .app-shell.quick-experience{grid-template-columns:minmax(0,1fr)}.granolab-root .app-shell.designer-experience{--gl-editor-font-micro:clamp(8px,calc(7.8px + 0.0625vw),9px);--gl-editor-font-small:clamp(9px,calc(8.8px + 0.0625vw),10px);--gl-editor-font-body:clamp(10px,calc(9.8px + 0.0625vw),11px);--gl-editor-font-strong:clamp(11px,calc(10.8px + 0.0625vw),12px);grid-template-columns:minmax(0,1fr)}.granolab-root .app-shell.designer-experience .mobile-tabs,.granolab-root .app-shell.designer-experience>.sidebar,.granolab-root .app-shell.quick-experience .global-grain-bar,.granolab-root .app-shell.quick-experience .mobile-tabs,.granolab-root .app-shell.quick-experience>.sidebar{display:none}.granolab-root .app-shell.designer-experience .global-grain-bar,.granolab-root .app-shell.designer-experience .topbar{max-width:1660px}.granolab-root .designer-loading{display:grid;min-height:540px;width:min(1660px,100%);place-items:center;margin:0 auto;border:1px solid var(--gl-line);border-radius:16px;color:var(--gl-muted);background:var(--gl-surface);font-size:11px}.granolab-root .sidebar{position:sticky;top:var(--gl-header-offset);z-index:15;display:flex;height:calc(100svh - var(--gl-header-offset));flex-direction:column;padding:27px 20px 22px;overflow-y:auto;color:#ffffff;background:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px),var(--gl-green-950);background-size:32px 32px}.granolab-root .granolab-wordmark{display:inline-flex;align-items:center;gap:11px;width:-moz-fit-content;width:fit-content;color:inherit;line-height:1}.granolab-root .granolab-wordmark>span:first-child{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border-radius:10px;color:var(--gl-green-950);background:var(--gl-lime);box-shadow:inset 0 0 0 1px rgba(255,255,255,.38);font-size:21px;font-weight:900}.granolab-root .granolab-wordmark>span:last-child{display:grid;gap:4px}.granolab-root .granolab-wordmark strong{font-size:20px;font-weight:800;letter-spacing:-.035em}.granolab-root .granolab-wordmark small{color:#9db5ac;font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.granolab-root .granolab-wordmark.compact{gap:8px;color:var(--gl-ink)}.granolab-root .granolab-wordmark.compact>span:first-child{width:30px;height:30px;border-radius:8px;font-size:16px}.granolab-root .granolab-wordmark.compact strong{font-size:14px}.granolab-root .granolab-wordmark.compact small{color:var(--gl-muted-2);font-size:9px}.granolab-root .eyebrow{margin:0 0 5px;color:var(--gl-muted-2);font-family:Courier New,ui-monospace,monospace;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.granolab-root .sidebar-label{margin:31px 8px 9px;color:#8ba79d}.granolab-root .project-control{display:flex;width:100%;min-height:48px;align-items:stretch;overflow:hidden;border:1px solid #31584b;border-radius:11px;background:rgba(31,72,59,.9);box-shadow:0 8px 20px rgba(0,0,0,.08)}.granolab-root .project-control:focus-within{border-color:var(--gl-lime);box-shadow:0 0 0 3px rgba(220,239,98,.2)}.granolab-root .project-control input{min-width:0;flex:1;border:0;outline:0;padding:0 6px 0 13px;color:#ffffff;background:transparent;font-size:12px;font-weight:750}.granolab-root .project-control button{width:44px;flex:0 0 44px;border:0;color:var(--gl-lime);background:transparent;font-size:18px}.granolab-root .project-control button:hover{background:rgba(255,255,255,.07)}.granolab-root .sidebar nav{display:grid;gap:7px;margin-top:28px}.granolab-root .nav-item{display:grid;min-height:55px;grid-template-columns:27px 1fr;align-items:center;gap:6px;width:100%;padding:8px 10px;border:1px solid transparent;border-radius:10px;color:#adc1ba;background:transparent;text-align:left;transition:background .18s ease,color .18s ease,transform .18s ease}.granolab-root .nav-item:hover{color:#ffffff;background:rgba(255,255,255,.045);transform:translateX(2px)}.granolab-root .nav-item>i{color:#7f9c92;font-family:Courier New,ui-monospace,monospace;font-size:10px;font-style:normal}.granolab-root .nav-item>span{display:grid;gap:4px;font-size:12px;font-weight:750;line-height:1.25}.granolab-root .nav-item small{color:#829f95;font-size:10px;font-weight:400}.granolab-root .nav-item.active{border-color:#3a6758;color:#ffffff;background:#1b493a;box-shadow:0 8px 20px rgba(0,0,0,.14)}.granolab-root .nav-item.active>i{color:var(--gl-lime)}.granolab-root .nav-item.active small{color:#b3c8c0}.granolab-root .sidebar-foot{display:grid;gap:7px;margin-top:auto;padding:20px 9px 0;color:#b2c4bd;font-size:10px;line-height:1.5}.granolab-root .sidebar-foot span{font-weight:700}.granolab-root .sidebar-foot p{margin:0;color:#829f95}.granolab-root .status-dot{display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:var(--gl-lime);box-shadow:0 0 0 4px rgba(220,239,98,.1)}.granolab-root .workspace{min-width:0;padding:0 38px 24px}.granolab-root .topbar{display:flex;min-height:104px;max-width:1440px;align-items:center;justify-content:space-between;gap:22px;margin:0 auto}.granolab-root .title-block h1{margin:0;color:var(--gl-ink);font-size:clamp(22px,2vw,27px);font-weight:800;letter-spacing:-.045em}.granolab-root .mobile-wordmark{display:none}.granolab-root .top-actions{display:flex;align-items:center;gap:9px}.granolab-root .experience-switch{display:flex;flex:0 0 auto;gap:3px;padding:3px;border:1px solid var(--gl-line);border-radius:11px;background:color-mix(in srgb,var(--gl-surface) 82%,transparent)}.granolab-root .experience-switch button{min-height:44px;padding:0 11px;border:0;border-radius:8px;color:var(--gl-muted);background:transparent;font-size:9px;font-weight:800}.granolab-root .experience-switch button:hover{color:var(--gl-ink)}.granolab-root .experience-switch button.selected{color:#ffffff;background:var(--gl-green-800);box-shadow:0 3px 8px rgba(18,55,44,.16)}.granolab-root .identity-pill{display:flex;min-width:150px;min-height:43px;align-items:center;gap:9px;padding:6px 10px;border:1px solid var(--gl-line);border-radius:11px;background:color-mix(in srgb,var(--gl-surface) 82%,transparent)}.granolab-root .identity-pill>span{display:grid;width:30px;height:30px;flex:0 0 auto;place-items:center;border-radius:8px;color:var(--gl-green-900);background:var(--gl-lime-soft);font-weight:800}.granolab-root .identity-pill>div{display:grid;max-width:130px}.granolab-root .identity-pill small{color:var(--gl-muted-2);font-size:8px;letter-spacing:.08em;text-transform:uppercase}.granolab-root .identity-pill b{overflow:hidden;color:var(--gl-ink);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.granolab-root .ghost-action,.granolab-root .primary-action{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:7px;padding:0 15px;border:1px solid var(--gl-line-strong);border-radius:10px;color:var(--gl-ink);background:color-mix(in srgb,var(--gl-surface) 88%,transparent);font-size:11px;font-weight:800;transition:border-color .18s ease,background .18s ease,transform .18s ease}.granolab-root .ghost-action:hover{border-color:var(--gl-green-700);background:var(--gl-surface)}.granolab-root .primary-action{border-color:var(--gl-green-800);color:#ffffff;background:var(--gl-green-800);box-shadow:0 8px 18px rgba(23,73,58,.18)}.granolab-root .primary-action:hover{background:var(--gl-green-700);transform:translateY(-1px)}.granolab-root .primary-action>span{color:var(--gl-lime);font-size:16px;line-height:1}.granolab-root .primary-action.large{min-height:48px;padding:0 18px;font-size:12px}.granolab-root .mobile-tabs{display:none}.granolab-root .module-grid{display:grid;grid-template-columns:minmax(500px,1.18fr) minmax(365px,.82fr);gap:18px;max-width:1440px;margin:0 auto}.granolab-root .panel,.granolab-root .results-panel{border:1px solid var(--gl-line);border-radius:18px}.granolab-root .panel{background:color-mix(in srgb,var(--gl-surface) 94%,transparent);box-shadow:var(--gl-shadow)}.granolab-root .inputs-panel{padding:27px}.granolab-root .panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:23px;padding-bottom:22px;border-bottom:1px solid var(--gl-line)}.granolab-root .panel-heading h2{margin:0;color:var(--gl-ink);font-size:19px;font-weight:800;letter-spacing:-.025em}.granolab-root .method-badge{padding:7px 10px;border-radius:20px;color:var(--gl-muted);background:var(--gl-surface-soft);font-family:Courier New,ui-monospace,monospace;font-size:9px;font-weight:700;white-space:nowrap}.granolab-root .field{display:grid;min-width:0;align-content:start;gap:7px;margin-bottom:17px}.granolab-root .field-label,.granolab-root .range-heading span,.granolab-root .segmented-field legend{color:var(--gl-ink);font-size:11px;font-weight:800}.granolab-root .field-hint{margin-top:-1px;color:var(--gl-muted-2);font-size:10px;font-weight:400;line-height:1.45}.granolab-root .field-hint.error{color:#a63f32;font-weight:700}.dark .granolab-root .field-hint.error{color:#ffb4a7}.granolab-root select{width:100%;height:46px;border:1px solid var(--gl-line-strong);border-radius:10px;padding:0 12px;color:var(--gl-ink);background:var(--gl-control);font-size:13px;font-weight:700}.granolab-root select:focus{border-color:var(--gl-green-700)}.granolab-root .unit-input{display:flex;width:100%;height:46px;align-items:center;padding:0 11px;border:1px solid var(--gl-line-strong);border-radius:10px;background:var(--gl-control)}.granolab-root .unit-input:focus-within{border-color:var(--gl-green-700);box-shadow:0 0 0 3px rgba(33,96,76,.12)}.granolab-root .unit-input.invalid{border-color:#c65a4c}.granolab-root .unit-input.calculated{border-color:color-mix(in srgb,var(--gl-lime) 62%,var(--gl-line));background:color-mix(in srgb,var(--gl-lime-soft) 72%,var(--gl-surface))}.granolab-root .unit-input input{min-width:0;width:100%;border:0;outline:0;color:var(--gl-ink);background:transparent;font-size:16px;font-weight:800}.granolab-root .unit-input input[readonly]{cursor:default}.granolab-root .unit-input>span{color:var(--gl-muted);font-family:Courier New,ui-monospace,monospace;font-size:10px;white-space:nowrap}.granolab-root .text-input{display:flex;width:100%;height:46px;align-items:center;padding:0 11px;border:1px solid var(--gl-line-strong);border-radius:10px;background:var(--gl-control)}.granolab-root .text-input:focus-within{border-color:var(--gl-green-700);box-shadow:0 0 0 3px rgba(33,96,76,.12)}.granolab-root .text-input input{min-width:0;width:100%;border:0;outline:0;color:var(--gl-ink);background:transparent;font-size:13px;font-weight:700}.granolab-root .three-fields,.granolab-root .two-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.granolab-root .three-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.granolab-root .range-block{margin-bottom:18px;padding:14px 15px 11px;border:1px solid var(--gl-line);border-radius:12px;background:var(--gl-surface-soft)}.granolab-root .range-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.granolab-root .range-heading b{color:var(--gl-green-700);font-size:13px}.dark .granolab-root .range-heading b{color:var(--gl-lime)}.granolab-root .range-block input{width:100%;margin:14px 0 5px;accent-color:var(--gl-green-700)}.granolab-root .range-scale{display:flex;justify-content:space-between;color:var(--gl-muted-2);font-size:9px;text-transform:uppercase}.granolab-root .density-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding:14px 15px;border:1px solid color-mix(in srgb,var(--gl-lime) 55%,var(--gl-line));border-radius:12px;background:linear-gradient(105deg,var(--gl-lime-soft),var(--gl-surface-soft))}.granolab-root .density-card>div{display:grid;gap:4px}.granolab-root .density-card strong{color:var(--gl-ink);font-size:20px;letter-spacing:-.03em}.granolab-root .density-card strong small{color:var(--gl-muted);font-family:Courier New,ui-monospace,monospace;font-size:10px;letter-spacing:0}.granolab-root .density-card p{margin:0;color:var(--gl-muted);font-size:10px;line-height:1.45}.granolab-root .switch-label{position:relative;display:flex;align-items:center;gap:8px;color:var(--gl-muted);cursor:pointer;font-size:10px;font-weight:700;white-space:nowrap}.granolab-root .switch-label input{position:absolute;width:1px;height:1px;opacity:0}.granolab-root .switch-label>span{position:relative;width:32px;height:18px;flex:0 0 auto;border-radius:12px;background:var(--gl-line-strong);transition:background .18s ease}.granolab-root .switch-label>span:after{position:absolute;top:3px;left:3px;width:12px;height:12px;border-radius:50%;background:#ffffff;box-shadow:0 1px 3px rgba(0,0,0,.22);content:"";transition:transform .18s ease}.granolab-root .switch-label input:checked+span{background:var(--gl-green-700)}.granolab-root .switch-label input:checked+span:after{transform:translateX(14px)}.granolab-root .switch-label input:focus-visible+span{outline:3px solid var(--gl-focus);outline-offset:2px}.granolab-root .segmented-field{min-width:0;margin:0 0 17px;padding:0;border:0}.granolab-root .segmented-field legend{margin-bottom:7px}.granolab-root .segmented{display:grid;grid-auto-columns:1fr;grid-auto-flow:column;padding:4px;border:1px solid var(--gl-line);border-radius:11px;background:var(--gl-surface-soft)}.granolab-root .segmented button{min-height:40px;padding:7px 9px;border:0;border-radius:8px;color:var(--gl-muted);background:transparent;font-size:10px;font-weight:750}.granolab-root .segmented button:hover{color:var(--gl-ink)}.granolab-root .segmented button.selected{color:var(--gl-green-900);background:#ffffff;box-shadow:0 2px 8px rgba(19,54,43,.11)}.dark .granolab-root .segmented button.selected{color:var(--gl-ink);background:#1d3a30}.granolab-root .formula-line{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:5px;padding:15px 0 0;border-top:1px solid var(--gl-line);color:var(--gl-ink);font-family:Georgia,Times New Roman,serif;font-size:15px}.granolab-root .formula-line i{color:var(--gl-muted-2);font-style:normal}.granolab-root .section-divider{display:flex;align-items:center;gap:9px;margin:18px 0 14px;color:var(--gl-muted-2);font-family:Courier New,ui-monospace,monospace;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.granolab-root .section-divider:after{height:1px;flex:1;background:var(--gl-line);content:""}.granolab-root .inline-results{display:grid;grid-auto-columns:1fr;grid-auto-flow:column;margin:1px 0 17px;overflow:hidden;border:1px solid var(--gl-line);border-radius:11px;background:var(--gl-surface-soft)}.granolab-root .inline-results span{display:grid;gap:4px;padding:12px 13px;border-right:1px solid var(--gl-line)}.granolab-root .inline-results span:last-child{border-right:0}.granolab-root .inline-results small{color:var(--gl-muted-2);font-size:8px;text-transform:uppercase}.granolab-root .inline-results b{color:var(--gl-ink);font-size:13px}.granolab-root .material-strip,.granolab-root .sync-card{display:flex;align-items:center;gap:12px;margin-bottom:17px;padding:12px 13px;border:1px solid var(--gl-line);border-radius:11px;background:var(--gl-surface-soft)}.granolab-root .grain-code{display:grid;width:40px;height:40px;flex:0 0 auto;place-items:center;border-radius:8px;color:var(--gl-green-900);background:var(--gl-lime-soft);font-family:Courier New,ui-monospace,monospace;font-size:10px;font-weight:900}.granolab-root .material-strip>span:nth-child(2){display:grid;gap:3px}.granolab-root .material-strip small{color:var(--gl-muted-2);font-size:8px;text-transform:uppercase}.granolab-root .material-strip b{color:var(--gl-ink);font-size:11px}.granolab-root .material-strip button{min-height:40px;margin-left:auto;padding:0 8px;border:0;color:var(--gl-green-700);background:transparent;font-size:10px;font-weight:800}.dark .granolab-root .material-strip button{color:var(--gl-lime)}.granolab-root .sync-card{justify-content:space-between;border-color:color-mix(in srgb,var(--gl-lime) 55%,var(--gl-line));background:color-mix(in srgb,var(--gl-lime-soft) 70%,var(--gl-surface))}.granolab-root .sync-card b{color:var(--gl-green-800);font-size:13px}.dark .granolab-root .sync-card b{color:var(--gl-lime)}.granolab-root .input-note{margin:-8px 0 17px;padding:10px 12px;border-left:2px solid var(--gl-amber);color:var(--gl-muted);background:color-mix(in srgb,var(--gl-amber) 10%,var(--gl-surface));font-size:10px;line-height:1.5}.granolab-root .results-panel{display:flex;min-height:650px;flex-direction:column;padding:27px;overflow:hidden;border-color:#28624f;color:#ffffff;background:linear-gradient(rgba(255,255,255,.026) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 0),linear-gradient(145deg,#0d2a21,#174d3d);background-size:34px 34px,34px 34px,100% 100%;box-shadow:0 18px 45px rgba(13,41,33,.16)}.granolab-root .result-head{display:flex;justify-content:space-between;gap:16px}.granolab-root .result-head .eyebrow.light{color:#b2c9c0}.granolab-root .live-status{display:inline-flex;align-items:center;gap:6px;color:var(--gl-lime);font-family:Courier New,ui-monospace,monospace;font-size:8px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.granolab-root .live-status i{width:5px;height:5px;border-radius:50%;background:var(--gl-lime);box-shadow:0 0 0 4px rgba(220,239,98,.1)}.granolab-root .result-index{color:#95b6aa;font-family:Courier New,ui-monospace,monospace;font-size:9px}.granolab-root .result-value{margin:28px 0 6px;color:#ffffff;font-size:clamp(46px,5vw,62px);font-weight:850;letter-spacing:-.065em;line-height:.95}.granolab-root .result-value small{color:#d4e1dc;font-family:Courier New,ui-monospace,monospace;font-size:14px;letter-spacing:0}.granolab-root .result-copy{max-width:440px;margin:0;color:#bed1c9;font-size:11px;line-height:1.6}.granolab-root .engineering-svg{width:calc(100% + 20px);height:245px;margin:12px -10px 7px;overflow:visible}.granolab-root .engineering-pending-visual{display:grid;min-height:220px;margin:18px 0 12px;place-content:center;gap:10px;border:1px dashed rgba(190,218,206,.32);border-radius:16px;color:#c0d5cc;text-align:center}.granolab-root .engineering-pending-visual span{color:var(--gl-lime);font-family:Courier New,ui-monospace,monospace;font-size:34px;font-weight:800;letter-spacing:.14em}.granolab-root .engineering-pending-visual p{max-width:280px;margin:0;font-size:11px;line-height:1.5}.granolab-root .svg-shell{fill:rgba(170,201,189,.06);stroke:#91b2a6;stroke-width:1.7;vector-effect:non-scaling-stroke}.granolab-root .svg-shell-wide{fill:none;stroke:#82a599;stroke-linecap:round;stroke-width:34;opacity:.62;vector-effect:non-scaling-stroke}.granolab-root .svg-accent{fill:none;stroke:var(--gl-lime);stroke-width:1.7;vector-effect:non-scaling-stroke}.granolab-root .svg-accent-fill{fill:var(--gl-lime)}.granolab-root .svg-flow{fill:none;stroke:#c6d9d1;stroke-dasharray:5 5;stroke-width:1.4;vector-effect:non-scaling-stroke}.granolab-root .svg-dimension{fill:none;stroke:#91b2a6;stroke-width:1;vector-effect:non-scaling-stroke}.granolab-root .svg-label{fill:#c0d5cc;font-family:Courier New,ui-monospace,monospace;font-size:9px}.granolab-root .svg-pressure-profile{fill:rgba(220,239,98,.13);stroke:var(--gl-lime);stroke-width:2;vector-effect:non-scaling-stroke}.granolab-root .svg-pressure-arrow{fill:none;stroke:var(--gl-lime);stroke-width:1.5;vector-effect:non-scaling-stroke}.granolab-root .svg-pressure-arrow.reverse{stroke:#c6d9d1}.granolab-root .result-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:auto;border-top:1px solid #477666}.granolab-root .result-metrics.three{grid-template-columns:repeat(3,minmax(0,1fr))}.granolab-root .result-metrics span{display:grid;min-width:0;gap:5px;padding:13px 9px 9px 0}.granolab-root .result-metrics small,.granolab-root .torque-row small{color:#a9c2b8;font-size:8px;line-height:1.3;text-transform:uppercase}.granolab-root .result-metrics b{overflow:hidden;color:#ffffff;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.granolab-root .engineering-note{margin:12px 0 0;padding:10px 12px;border-left:2px solid var(--gl-lime);color:#b6cbc2;background:rgba(255,255,255,.045);font-size:9px;line-height:1.55}.granolab-root .engineering-note.warning{border-color:var(--gl-amber)}.granolab-root .torque-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.granolab-root .torque-row span{display:grid;gap:5px;padding:10px 11px;border:1px solid #477666;border-radius:9px;background:rgba(255,255,255,.035)}.granolab-root .torque-row b{color:#ffffff;font-size:11px}.granolab-root .workspace-footer{display:flex;max-width:1440px;justify-content:space-between;margin:13px auto 0;padding:0 3px;color:var(--gl-muted-2);font-family:Courier New,ui-monospace,monospace;font-size:8px;text-transform:uppercase}.granolab-root .memory-screen{max-width:1440px;min-height:650px;margin:0 auto;overflow:hidden}.granolab-root .memory-hero{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:32px;color:#ffffff;background:linear-gradient(120deg,var(--gl-green-950),var(--gl-green-800))}.granolab-root .memory-hero .eyebrow{color:#b6c9c1}.granolab-root .memory-hero p:not(.eyebrow){margin:8px 0 0;color:#bdd0c8;font-size:11px;line-height:1.5}.granolab-root .memory-project-name{display:grid;gap:5px}.granolab-root .memory-project-name>span{color:#a9c1b7;font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.granolab-root .memory-project-name input{width:min(100%,560px);border:0;border-bottom:1px solid rgba(255,255,255,.28);outline:0;padding:2px 0 5px;color:#ffffff;background:transparent;font-size:28px;font-weight:800;letter-spacing:-.04em}.granolab-root .memory-project-name input:focus{border-color:var(--gl-lime)}.granolab-root .memory-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--gl-line)}.granolab-root .memory-summary article{position:relative;min-height:220px;padding:24px;border-right:1px solid var(--gl-line)}.granolab-root .memory-summary article:last-child{border-right:0}.granolab-root .memory-summary article>span{color:var(--gl-muted-2);font-family:Courier New,ui-monospace,monospace;font-size:10px}.granolab-root .memory-summary small{display:block;margin:18px 0 7px;color:var(--gl-muted);font-size:9px;text-transform:uppercase}.granolab-root .memory-summary h3{margin:0 0 7px;color:var(--gl-ink);font-size:22px;letter-spacing:-.03em}.granolab-root .memory-summary p{margin:0;color:var(--gl-muted-2);font-size:10px;line-height:1.5}.granolab-root .memory-summary button{position:absolute;bottom:20px;left:24px;min-height:40px;padding:0 4px;border:0;color:var(--gl-green-700);background:transparent;font-size:10px;font-weight:800}.dark .granolab-root .memory-summary button{color:var(--gl-lime)}.granolab-root .memory-footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:28px 32px}.granolab-root .memory-footer-grid h3{margin:0 0 12px;color:var(--gl-ink);font-size:17px}.granolab-root .memory-footer-grid ul{display:grid;grid-template-columns:1fr 1fr;gap:8px 25px;margin:0;padding:0;color:var(--gl-muted);font-size:10px;list-style:none}.granolab-root .memory-footer-grid li:before{margin-right:7px;color:var(--gl-green-700);font-weight:900;content:"✓"}.dark .granolab-root .memory-footer-grid li:before{color:var(--gl-lime)}.granolab-root .validation-card{padding:20px;border:1px solid color-mix(in srgb,var(--gl-amber) 48%,var(--gl-line));border-radius:12px;background:color-mix(in srgb,var(--gl-amber) 12%,var(--gl-surface))}.granolab-root .validation-card span{color:color-mix(in srgb,var(--gl-amber) 60%,var(--gl-ink));font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.granolab-root .validation-card p{margin:8px 0 0;color:var(--gl-muted);font-size:10px;line-height:1.55}.granolab-root .drawer-backdrop{position:fixed;inset:0;z-index:10060;display:flex;justify-content:flex-end;background:rgba(7,24,18,.5);backdrop-filter:blur(3px)}.granolab-root .projects-drawer{width:min(420px,100%);height:100%;padding:28px;overflow-y:auto;color:var(--gl-ink);background:var(--gl-paper);box-shadow:-18px 0 50px rgba(0,0,0,.23);animation:granolab-drawer-in .22s ease-out}@keyframes granolab-drawer-in{0%{opacity:0;transform:translateX(40px)}}.granolab-root .drawer-head{display:flex;align-items:flex-start;justify-content:space-between;padding-bottom:22px;border-bottom:1px solid var(--gl-line)}.granolab-root .drawer-head h2{margin:0;color:var(--gl-ink);font-size:22px;letter-spacing:-.035em}.granolab-root .drawer-head>button{display:grid;width:44px;height:44px;place-items:center;border:1px solid var(--gl-line);border-radius:50%;color:var(--gl-muted);background:var(--gl-surface);font-size:22px}.granolab-root .new-project{width:100%;min-height:46px;margin:18px 0;padding:10px 13px;border:1px dashed var(--gl-muted-2);border-radius:10px;color:var(--gl-green-700);background:transparent;font-size:11px;font-weight:800}.dark .granolab-root .new-project{color:var(--gl-lime)}.granolab-root .saved-list{display:grid;gap:9px}.granolab-root .saved-list[aria-busy=true]{opacity:.75}.granolab-root .saved-list>button{display:flex;width:100%;min-height:58px;align-items:center;justify-content:space-between;padding:14px;border:1px solid var(--gl-line);border-radius:11px;color:var(--gl-ink);background:var(--gl-surface);text-align:left}.granolab-root .saved-list>button:hover{border-color:var(--gl-green-700)}.granolab-root .saved-list>button span{display:grid;gap:4px}.granolab-root .saved-list>button b{font-size:12px}.granolab-root .saved-list>button small{color:var(--gl-muted-2);font-size:9px}.granolab-root .saved-list>button i{color:var(--gl-green-700);font-style:normal}.dark .granolab-root .saved-list>button i{color:var(--gl-lime)}.granolab-root .empty-state{display:grid;place-items:center;padding:55px 20px;color:var(--gl-muted-2);text-align:center}.granolab-root .empty-state>span{display:grid;width:48px;height:48px;place-items:center;border:1px solid var(--gl-line);border-radius:14px;background:var(--gl-surface);font-size:20px}.granolab-root .empty-state h3{margin:15px 0 5px;color:var(--gl-ink);font-size:13px}.granolab-root .empty-state p{margin:0;font-size:10px}.granolab-root .toast{position:fixed;right:24px;bottom:24px;z-index:10070;display:flex;max-width:min(420px,calc(100vw - 32px));min-height:46px;align-items:center;gap:9px;padding:12px 16px;border:1px solid #3f725f;border-radius:11px;color:#ffffff;background:var(--gl-green-950);box-shadow:0 12px 32px rgba(0,0,0,.22);font-size:11px;font-weight:750;animation:granolab-toast-in .2s ease-out}.granolab-root .toast span{display:grid;width:20px;height:20px;flex:0 0 auto;place-items:center;border-radius:50%;color:var(--gl-green-950);background:var(--gl-lime);font-size:10px}.granolab-root .toast.error{border-color:#d57b6d;background:#4b211d}.granolab-root .toast.error span{color:#4b211d;background:#ffb4a7}.granolab-root .toast.info span{color:var(--gl-green-950);background:#d7e7e0}@keyframes granolab-toast-in{0%{opacity:0;transform:translateY(8px)}}.granolab-root .print-sheet,.granolab-root .print-watermark{display:none}.granolab-root .global-grain-bar{position:sticky;top:var(--gl-header-offset);z-index:12;display:grid;grid-template-columns:minmax(190px,1.2fr) minmax(125px,.7fr) repeat(3,minmax(110px,.7fr)) auto;max-width:1440px;align-items:center;gap:10px;margin:0 auto 14px;padding:11px 13px;border:1px solid var(--gl-line-strong);border-radius:13px;background:color-mix(in srgb,var(--gl-surface) 94%,transparent);box-shadow:0 9px 26px rgba(18,55,44,.1);backdrop-filter:blur(15px)}.granolab-root .global-grain-bar>div:first-child,.granolab-root .global-grain-bar>label{display:grid;min-width:0;gap:4px}.granolab-root .global-grain-bar>label>span:first-child,.granolab-root .global-grain-title{color:var(--gl-muted-2);font-family:Courier New,ui-monospace,monospace;font-size:8px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.granolab-root .global-grain-bar select{height:36px;border:0;padding:0 8px;background:var(--gl-surface-soft);font-size:12px}.granolab-root .global-number{display:flex;min-height:36px;align-items:center;padding:0 9px;border:1px solid var(--gl-line);border-radius:8px;background:var(--gl-surface-soft)}.granolab-root .global-number input{min-width:0;width:100%;border:0;outline:0;color:var(--gl-ink);background:transparent;font-size:12px;font-weight:800}.granolab-root .global-number i{color:var(--gl-muted);font-family:Courier New,ui-monospace,monospace;font-size:9px;font-style:normal}.granolab-root .property-chip{display:grid;min-width:0;gap:3px;padding:7px 9px;border-left:1px solid var(--gl-line)}.granolab-root .property-chip small{color:var(--gl-muted-2);font-size:8px;text-transform:uppercase}.granolab-root .property-chip b{overflow:hidden;color:var(--gl-ink);font-size:11px;text-overflow:ellipsis;text-transform:capitalize;white-space:nowrap}.granolab-root .grain-settings{position:relative}.granolab-root .advanced-accordion>summary,.granolab-root .grain-settings>summary{cursor:pointer;list-style:none}.granolab-root .advanced-accordion>summary::-webkit-details-marker,.granolab-root .grain-settings>summary::-webkit-details-marker{display:none}.granolab-root .grain-settings>summary{min-height:36px;padding:11px 12px;border:1px solid var(--gl-line);border-radius:8px;color:var(--gl-green-700);background:var(--gl-surface-soft);font-size:9px;font-weight:800;white-space:nowrap}.dark .granolab-root .grain-settings>summary{color:var(--gl-lime)}.granolab-root .grain-settings-popover{position:absolute;top:calc(100% + 9px);right:0;z-index:30;width:min(460px,88vw);padding:17px;border:1px solid var(--gl-line-strong);border-radius:12px;background:var(--gl-surface);box-shadow:var(--gl-shadow)}.granolab-root .grain-settings-popover .switch-label{margin-bottom:14px}.granolab-root .grain-property-help{margin:0 0 15px;padding:10px 11px;border-left:2px solid var(--gl-lime);color:var(--gl-muted);background:var(--gl-surface-soft);font-size:10px;line-height:1.55}.granolab-root .advanced-accordion{margin:18px 0 17px;border:1px solid var(--gl-line);border-radius:12px;background:var(--gl-surface-soft)}.granolab-root .advanced-accordion>summary{position:relative;padding:14px 42px 14px 15px;color:var(--gl-ink);font-size:10px;font-weight:800}.granolab-root .advanced-accordion>summary:after{position:absolute;top:50%;right:15px;color:var(--gl-green-700);content:"+";font-size:17px;transform:translateY(-50%)}.granolab-root .advanced-accordion[open]>summary:after{content:"−"}.granolab-root .advanced-body{padding:16px 15px 0;border-top:1px solid var(--gl-line)}.granolab-root .migration-banner{max-width:1440px;margin:0 auto 14px;padding:11px 14px;border:1px solid color-mix(in srgb,var(--gl-amber) 55%,var(--gl-line));border-radius:10px;color:var(--gl-muted);background:color-mix(in srgb,var(--gl-amber) 11%,var(--gl-surface));font-size:10px;line-height:1.5}.granolab-root .result-metrics b{overflow:visible;text-overflow:clip;white-space:normal}.granolab-root .results-panel .result-value{overflow-wrap:anywhere;font-size:clamp(36px,4.4vw,58px)}.granolab-root .report-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px}.granolab-root .ghost-action.inverse{border-color:rgba(255,255,255,.28);color:#ffffff;background:rgba(255,255,255,.06)}.granolab-root .equipment-summary article{min-height:190px}.granolab-root .equipment-summary h3{overflow-wrap:anywhere;font-size:17px;line-height:1.25}.granolab-root .commercial-close{align-items:stretch}.granolab-root .commercial-summary{margin:0 0 16px;padding:14px 15px;border-left:3px solid var(--gl-green-700);color:var(--gl-muted);background:var(--gl-surface-soft);font-size:11px;line-height:1.65}.granolab-root .quote-card{display:flex;align-items:flex-start;flex-direction:column;justify-content:center;padding:22px;border:1px solid color-mix(in srgb,var(--gl-lime) 55%,var(--gl-line));border-radius:13px;background:linear-gradient(125deg,var(--gl-lime-soft),var(--gl-surface-soft))}.granolab-root .quote-card>span{color:var(--gl-green-700);font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.granolab-root .quote-card h3{margin:8px 0}.granolab-root .quote-card p{margin:0 0 16px;color:var(--gl-muted);font-size:10px;line-height:1.55}.granolab-root .quote-card a{text-decoration:none}.granolab-root .report-disclaimer{padding:14px 30px 22px;color:var(--gl-muted-2);font-size:9px;line-height:1.5;text-align:center}.granolab-root .module-intro{margin:-7px 0 24px;color:var(--gl-muted);font-size:11px;line-height:1.6}.granolab-root .field-section-title{margin:24px 0 13px;padding-top:18px;border-top:1px solid var(--gl-line);color:var(--gl-green-800);font-size:12px;font-weight:850;letter-spacing:-.01em}.dark .granolab-root .field-section-title{color:var(--gl-lime)}.granolab-root .transfer-module-grid{grid-template-columns:minmax(500px,.92fr) minmax(455px,1.08fr)}.granolab-root .transfer-context-banner{display:grid;grid-template-columns:minmax(280px,1fr) minmax(430px,.9fr);max-width:1440px;gap:22px;margin:0 auto 14px;padding:17px 19px;border:1px solid color-mix(in srgb,var(--gl-lime) 52%,var(--gl-line));border-radius:13px;color:var(--gl-ink);background:color-mix(in srgb,var(--gl-lime-soft) 42%,var(--gl-surface))}.granolab-root .transfer-context-banner h2{margin:2px 0 5px;font-size:16px}.granolab-root .transfer-context-banner p{margin:0;color:var(--gl-muted);font-size:10px;line-height:1.5}.granolab-root .transfer-context-banner .transfer-system-warning{margin-top:9px;padding-left:10px;border-left:2px solid var(--gl-amber);color:var(--gl-ink);font-weight:700}.granolab-root .transfer-context-banner dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}.granolab-root .transfer-context-banner dl>div{min-width:0;padding:9px 10px;border:1px solid color-mix(in srgb,var(--gl-line) 78%,transparent);border-radius:9px;background:color-mix(in srgb,var(--gl-surface) 72%,transparent)}.granolab-root .transfer-context-banner dt{color:var(--gl-muted-2);font-size:8px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.granolab-root .transfer-context-banner dd{margin:4px 0 0;color:var(--gl-ink);font-size:11px;font-weight:800;overflow-wrap:anywhere}.granolab-root .transfer-switch{min-height:46px;align-items:center;margin-bottom:17px;padding:0 11px;border:1px solid var(--gl-line);border-radius:10px;background:var(--gl-control);white-space:normal}.granolab-root .transfer-existing-devices{display:grid;gap:8px;margin:0 0 17px;padding:0;border:0}.granolab-root .transfer-existing-devices legend{margin-bottom:8px;color:var(--gl-ink);font-size:10px;font-weight:800}.granolab-root .transfer-existing-devices>div{display:flex;flex-wrap:wrap;gap:7px}.granolab-root .transfer-existing-devices button{min-height:40px;border:1px solid var(--gl-line);border-radius:9px;padding:0 11px;color:var(--gl-muted);background:var(--gl-control);font-size:10px;font-weight:800}.granolab-root .transfer-existing-devices button.active,.granolab-root .transfer-existing-devices button:hover{border-color:var(--gl-lime);color:var(--gl-ink);background:color-mix(in srgb,var(--gl-lime) 12%,var(--gl-control))}.granolab-root .transfer-existing-devices>small{color:var(--gl-muted-2);font-size:9px;line-height:1.45}.granolab-root .transfer-results{min-height:860px}.granolab-root .transfer-result-value{display:grid;gap:8px;margin-top:24px;font-size:clamp(25px,3vw,40px);line-height:1.05}.granolab-root .transfer-result-value small{display:block;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.granolab-root .transfer-alternatives{display:grid;gap:9px;margin-top:17px}.granolab-root .transfer-alternative{display:grid;gap:7px;padding:13px 14px;border:1px solid rgba(181,211,199,.24);border-left-width:3px;border-radius:11px;background:rgba(255,255,255,.035)}.granolab-root .transfer-alternative.compatible{border-left-color:var(--gl-lime)}.granolab-root .transfer-alternative.complementary,.granolab-root .transfer-alternative.conditional{border-left-color:var(--gl-amber)}.granolab-root .transfer-alternative.insufficient-data,.granolab-root .transfer-alternative.outside-validated-range{border-left-color:#78958a;opacity:.84}.granolab-root .transfer-alternative.insufficient-data{border-style:dashed}.granolab-root .transfer-alternative.preferred{border-color:color-mix(in srgb,var(--gl-lime) 72%,transparent);background:rgba(220,239,98,.075)}.granolab-root .alternative-status{color:#abc3ba;font-family:Courier New,ui-monospace,monospace;font-size:8px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.granolab-root .transfer-alternative.preferred .alternative-status{color:var(--gl-lime)}.granolab-root .transfer-alternative h3{margin:3px 0 0;color:#ffffff;font-size:13px}.granolab-root .transfer-alternative p,.granolab-root .transfer-alternative small{margin:0;color:#c0d2cb;font-size:10px;line-height:1.5}.granolab-root .transfer-alternative .alternative-nominal-capacity{padding:7px 9px;border-radius:7px;color:#e4eee9;background:rgba(181,211,199,.08);font-family:Courier New,ui-monospace,monospace;font-size:9px;font-weight:800}.granolab-root .transfer-alternative .alternative-components{color:#e3f0eb;font-weight:750}.granolab-root .transfer-alternative small{color:#9eb7ad}.granolab-root .transfer-alternative footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:3px}.granolab-root .transfer-alternative footer>span{color:#8fac9f;font-family:Courier New,ui-monospace,monospace;font-size:8px;text-transform:uppercase}.granolab-root .transfer-alternative button{min-height:44px;flex:0 0 auto;padding:0 11px;border:1px solid rgba(220,239,98,.48);border-radius:8px;color:var(--gl-lime);background:rgba(220,239,98,.06);font-size:10px;font-weight:800}.granolab-root .transfer-alternative button:hover:not(:disabled){color:var(--gl-green-950);background:var(--gl-lime)}.granolab-root .transfer-alternative button:disabled{cursor:default;border-color:rgba(181,211,199,.16);color:#8ca79d;background:transparent;opacity:1}.granolab-root .transfer-safety-summary{margin-top:14px;border-top:1px solid rgba(190,218,206,.2)}.granolab-root .storage-model-heading{display:grid;gap:7px;margin-top:22px}.granolab-root .storage-model-heading small{color:#a9c2b8;font-family:Courier New,ui-monospace,monospace;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.granolab-root .storage-model-heading b{color:#ffffff;font-size:clamp(18px,2.2vw,28px);line-height:1.12}.granolab-root .storage-capacity-hero{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:17px}.granolab-root .storage-capacity-hero.single{grid-template-columns:minmax(0,1fr)}.granolab-root .storage-capacity-hero output{display:grid;min-width:0;gap:8px;padding:17px;border:1px solid rgba(220,239,98,.38);border-radius:10px;background:rgba(220,239,98,.06)}.granolab-root .storage-capacity-hero strong{color:var(--gl-lime);font-family:Courier New,ui-monospace,monospace;font-size:clamp(34px,4vw,58px);font-variant-numeric:tabular-nums;line-height:.95;overflow-wrap:anywhere}.granolab-root .storage-capacity-hero span{color:#d6e5df;font-size:10px;font-weight:800;letter-spacing:.04em;line-height:1.35;text-transform:uppercase}.granolab-root .storage-conversion-panel{margin-top:20px;padding-top:18px;border-top:1px solid rgba(190,218,206,.2)}.granolab-root .storage-conversion-panel h3{margin:7px 0 0;color:#ffffff;font-size:17px}.granolab-root .storage-conversion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:14px 0 0}.granolab-root .storage-conversion-grid>div{min-width:0;padding:12px;border:1px solid rgba(181,211,199,.2);border-radius:9px;background:rgba(255,255,255,.035)}.granolab-root .storage-conversion-grid>div:first-child{grid-column:1/-1}.granolab-root .storage-conversion-grid dt{color:#b9cec6;font-size:10px;font-weight:800}.granolab-root .storage-conversion-grid dd{display:grid;gap:5px;margin:7px 0 0}.granolab-root .storage-conversion-grid strong{color:#ffffff;font-family:Courier New,ui-monospace,monospace;font-size:20px;font-variant-numeric:tabular-nums}.granolab-root .storage-conversion-grid small{color:#9fb9af;font-size:8px;line-height:1.4}@media (max-width:1180px){.granolab-root{--gl-header-offset:110px}.granolab-root .app-shell{grid-template-columns:238px minmax(0,1fr)}.granolab-root .workspace{padding-inline:25px}.granolab-root .module-grid{grid-template-columns:minmax(440px,1.05fr) minmax(340px,.95fr)}.granolab-root .transfer-module-grid{grid-template-columns:minmax(440px,.95fr) minmax(400px,1.05fr)}.granolab-root .top-actions .identity-pill{display:none}.granolab-root .topbar{flex-wrap:wrap}.granolab-root .three-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.granolab-root .memory-summary{grid-template-columns:repeat(2,1fr)}.granolab-root .memory-summary article:nth-child(2){border-right:0}.granolab-root .memory-summary article:nth-child(-n+2){border-bottom:1px solid var(--gl-line)}}@media (max-width:1050px){.granolab-root .module-grid,.granolab-root .transfer-context-banner,.granolab-root .transfer-module-grid{grid-template-columns:1fr}}@media (max-width:920px){.granolab-root .app-shell{grid-template-columns:1fr}.granolab-root .sidebar{position:static;display:block;height:auto;padding:11px 18px;overflow:visible}.granolab-root .sidebar nav,.granolab-root .sidebar-foot,.granolab-root .sidebar-label,.granolab-root .sidebar>.granolab-wordmark{display:none}.granolab-root .project-control{max-width:520px;margin:0 auto}.granolab-root .workspace{padding:0 18px 20px}.granolab-root .topbar{min-height:100px}.granolab-root .mobile-wordmark{display:block;margin-bottom:7px}.granolab-root .identity-pill{display:none}.granolab-root .module-grid,.granolab-root .transfer-context-banner,.granolab-root .transfer-module-grid{grid-template-columns:1fr}.granolab-root .mobile-tabs{display:flex;max-width:100%;gap:7px;margin:0 0 12px;padding:0 0 6px;overflow-x:auto;scrollbar-width:thin}.granolab-root .mobile-tabs button{display:flex;min-height:42px;flex:0 0 auto;align-items:center;gap:7px;padding:0 12px;border:1px solid var(--gl-line);border-radius:9px;color:var(--gl-muted);background:color-mix(in srgb,var(--gl-surface) 86%,transparent);font-family:Courier New,ui-monospace,monospace;font-size:10px}.granolab-root .mobile-tabs button span{font-family:inherit;font-weight:700}.granolab-root .mobile-tabs button.active{border-color:var(--gl-green-800);color:#ffffff;background:var(--gl-green-800)}.granolab-root .results-panel{min-height:590px}.granolab-root .memory-screen{min-height:auto}}@media (max-width:620px){.granolab-root{--gl-header-offset:103px}.granolab-root .sidebar,.granolab-root .workspace{padding-inline:12px}.granolab-root .topbar{min-height:auto;flex-wrap:wrap;gap:10px;padding:16px 0}.granolab-root .title-block{min-width:0;flex:1 1 100%}.granolab-root .title-block>.eyebrow{display:none}.granolab-root .title-block h1{max-width:none;overflow:hidden;font-size:18px;text-overflow:ellipsis;white-space:nowrap}.granolab-root .top-actions{display:grid;width:100%;grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr);gap:6px}.granolab-root .experience-switch{width:100%}.granolab-root .experience-switch button{min-width:0;flex:1}.granolab-root .quick-experience .top-actions .primary-action{grid-column:1/-1}.granolab-root .ghost-action{min-height:44px;max-width:none;padding:0 9px;font-size:10px;line-height:1.2}.granolab-root .topbar .primary-action{width:auto;padding:0 10px;font-size:10px;line-height:1.2}.granolab-root .topbar .primary-action span{font-size:18px}.granolab-root .inputs-panel,.granolab-root .results-panel{padding:20px}.granolab-root .transfer-context-banner{gap:14px;padding:15px}.granolab-root .transfer-context-banner dl{grid-template-columns:1fr 1fr}.granolab-root .transfer-alternative footer{align-items:stretch;flex-direction:column}.granolab-root .transfer-alternative footer>span{font-size:9px}.granolab-root .transfer-alternative button{width:100%}.granolab-root .panel-heading{margin-bottom:19px;padding-bottom:18px}.granolab-root .panel-heading h2{font-size:17px}.granolab-root .method-badge{display:none}.granolab-root .three-fields,.granolab-root .two-fields{grid-template-columns:1fr;gap:0}.granolab-root .density-card{align-items:flex-start;flex-direction:column}.granolab-root .inline-results{grid-template-columns:1fr 1fr;grid-auto-flow:row}.granolab-root .inline-results span{border-right:1px solid var(--gl-line);border-bottom:1px solid var(--gl-line)}.granolab-root .result-value{font-size:47px}.granolab-root .result-metrics.three{grid-template-columns:1fr 1fr}.granolab-root .result-metrics.three span:last-child{grid-column:1/-1;border-top:1px solid #477666}.granolab-root .engineering-svg{height:220px}.granolab-root .workspace-footer{display:none}.granolab-root .memory-hero{align-items:flex-start;flex-direction:column;padding:24px}.granolab-root .memory-project-name input{font-size:23px}.granolab-root .memory-hero .primary-action{width:auto;padding:0 16px;font-size:11px}.granolab-root .memory-summary{grid-template-columns:1fr}.granolab-root .memory-summary article,.granolab-root .memory-summary article:nth-child(2){border-right:0;border-bottom:1px solid var(--gl-line)}.granolab-root .memory-footer-grid{grid-template-columns:1fr;padding:24px}.granolab-root .memory-footer-grid ul,.granolab-root .torque-row{grid-template-columns:1fr}.granolab-root .projects-drawer{padding:20px}.granolab-root .toast{right:16px;bottom:16px}}@media (prefers-reduced-motion:reduce){.granolab-root *,.granolab-root :after,.granolab-root :before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (forced-colors:active){.granolab-root .mobile-tabs button.active,.granolab-root .nav-item.active,.granolab-root .primary-action,.granolab-root .segmented button.selected{border:2px solid ButtonText}.granolab-root .live-status i,.granolab-root .status-dot{background:Highlight}}@media (max-width:1180px){.granolab-root .global-grain-bar{grid-template-columns:minmax(170px,1fr) minmax(115px,.65fr) repeat(2,minmax(105px,.65fr)) auto}.granolab-root .global-grain-bar .property-chip:nth-of-type(3){display:none}}@media (max-width:920px){.granolab-root .global-grain-bar{top:var(--gl-header-offset);grid-template-columns:minmax(160px,1fr) minmax(110px,.7fr) repeat(2,minmax(105px,.7fr)) auto}.granolab-root .global-grain-bar .property-chip:nth-of-type(3){display:none}}@media (max-width:720px){.granolab-root .global-grain-bar{position:relative;top:auto;grid-template-columns:1fr .8fr}.granolab-root .global-grain-bar .property-chip{display:grid}.granolab-root .grain-settings{grid-column:1/-1}.granolab-root .grain-settings>summary{text-align:center}.granolab-root .grain-settings-popover{position:static;width:auto;margin-top:9px;box-shadow:none}.granolab-root .report-actions{width:100%;justify-content:flex-start}}@media (max-width:620px){.granolab-root .storage-capacity-hero,.granolab-root .storage-conversion-grid{grid-template-columns:minmax(0,1fr)}.granolab-root .storage-conversion-grid>div:first-child{grid-column:auto}.granolab-root .global-grain-bar .property-chip{padding-left:0;border-left:0}.granolab-root .global-grain-bar .property-chip:nth-of-type(3){display:grid}.granolab-root .commercial-report .memory-hero .ghost-action,.granolab-root .commercial-report .memory-hero .primary-action{width:100%}}.granolab-root .lab-library-action{--gl-technical-font-micro:clamp(8px,calc(7.8px + 0.0625vw),9px);--gl-technical-font-body:clamp(10px,calc(9.8px + 0.0625vw),11px);--gl-technical-font-strong:clamp(11px,calc(10.8px + 0.0625vw),12px);display:flex;width:100%;max-width:1440px;min-height:56px;align-items:center;justify-content:space-between;gap:12px;margin:0 auto 14px;padding:8px 10px;border:1px solid color-mix(in srgb,var(--gl-green-700) 38%,var(--gl-line));border-left:3px solid var(--gl-lime);border-radius:10px;color:var(--gl-ink);background:color-mix(in srgb,var(--gl-green-700) 6%,var(--gl-surface))}.granolab-root .lab-library-action>div{display:grid;min-width:0;gap:2px}.granolab-root .lab-library-action small{color:var(--gl-muted-2);font-family:Courier New,ui-monospace,monospace;font-size:var(--gl-technical-font-micro);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.granolab-root .lab-library-action strong{overflow:hidden;font-size:var(--gl-technical-font-strong);text-overflow:ellipsis;white-space:nowrap}.granolab-root .lab-library-action p,.granolab-root .lab-library-action span{margin:0;color:var(--gl-muted);font-size:var(--gl-technical-font-body)}.granolab-root .lab-library-action button{min-height:44px;flex:0 0 auto;padding:0 12px;border:1px solid var(--gl-line-strong);border-radius:9px;color:var(--gl-ink);background:var(--gl-surface);font-size:var(--gl-technical-font-body);font-weight:800}.granolab-root .lab-library-action button:disabled{cursor:not-allowed;opacity:.45}@media (max-width:620px){.granolab-root .lab-library-action{align-items:stretch;flex-direction:column;margin-bottom:10px}.granolab-root .lab-library-action button{width:100%}}.granolab-root:has(.designer-experience){height:100svh;overflow:hidden}.granolab-root .app-shell.designer-experience{height:calc(100svh - var(--gl-header-offset));min-height:0;overflow:hidden}.granolab-root .designer-experience .workspace{display:grid;width:100%;height:100%;min-height:0;grid-template-rows:auto auto minmax(0,1fr);padding:0;overflow:hidden}.granolab-root .designer-experience .topbar{width:100%;min-height:68px;max-width:none;gap:14px;margin:0;padding:7px 16px;border-bottom:1px solid var(--gl-line);background:color-mix(in srgb,var(--gl-surface) 96%,transparent)}.granolab-root .designer-experience .title-block h1{font-size:var(--gl-editor-font-strong)}.granolab-root .designer-experience .experience-switch button,.granolab-root .designer-experience .top-actions button{font-size:var(--gl-editor-font-body)}.granolab-root .designer-experience .global-grain-bar>label>span:first-child,.granolab-root .designer-experience .global-grain-title,.granolab-root .designer-experience .property-chip small{font-size:var(--gl-editor-font-micro)}.granolab-root .designer-experience .global-grain-bar select,.granolab-root .designer-experience .global-number input,.granolab-root .designer-experience .property-chip b{font-size:var(--gl-editor-font-strong)}.granolab-root .designer-experience .global-number i,.granolab-root .designer-experience .grain-settings>summary{font-size:var(--gl-editor-font-small)}.granolab-root .designer-experience .identity-pill>span{font-size:var(--gl-editor-font-strong)}.granolab-root .designer-experience .global-grain-bar{position:relative;top:auto;z-index:34;width:100%;max-width:none;grid-template-columns:minmax(160px,1.25fr) minmax(92px,.58fr) minmax(138px,.82fr) repeat(3,minmax(88px,.55fr)) auto;gap:8px;margin:0;padding:7px 12px;border-width:0 0 1px;border-radius:0;box-shadow:none}.granolab-root .designer-experience .global-grain-bar select,.granolab-root .designer-experience .global-number{height:44px;min-height:44px}.granolab-root .designer-experience .workspace-footer{display:none}.granolab-root .designer-experience .designer-loading{width:100%;height:100%;min-height:0;margin:0;border:0;border-radius:0}@media (max-width:1180px){.granolab-root .designer-experience .topbar{flex-wrap:nowrap}.granolab-root .designer-experience .global-grain-bar{grid-template-columns:minmax(145px,1.2fr) minmax(88px,.58fr) minmax(130px,.85fr) minmax(90px,.55fr) auto}.granolab-root .designer-experience .property-chip:nth-of-type(n+2){display:none}}@media (max-width:920px){.granolab-root .designer-experience .topbar{min-height:64px;padding-inline:10px}.granolab-root .designer-experience .title-block{display:none}.granolab-root .designer-experience .experience-switch{margin-right:auto}.granolab-root .designer-experience .global-grain-bar{grid-template-columns:minmax(135px,1.1fr) minmax(82px,.55fr) minmax(128px,.85fr) auto}.granolab-root .designer-experience .property-chip{display:none}}@media (max-width:620px){.granolab-root .designer-experience .topbar{display:grid;min-height:100px;grid-template-columns:minmax(0,1fr) auto;gap:6px;padding:7px 8px}.granolab-root .designer-experience .experience-switch{width:100%;grid-column:1/-1;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none}.granolab-root .designer-experience .experience-switch::-webkit-scrollbar,.granolab-root .designer-experience .top-actions::-webkit-scrollbar{display:none}.granolab-root .designer-experience .experience-switch button{min-height:44px;padding-inline:6px;font-size:8px}.granolab-root .designer-experience .top-actions{display:flex;width:auto;max-width:100%;grid-column:1/-1;justify-content:flex-end;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none}.granolab-root .designer-experience .top-actions button{min-height:44px;padding-inline:9px;font-size:8px}.granolab-root .designer-experience .global-grain-bar{display:grid;grid-template-columns:minmax(105px,1fr) 78px minmax(112px,1fr);gap:5px;padding:5px 7px}.granolab-root .designer-experience .global-grain-bar>div:first-child,.granolab-root .designer-experience .global-grain-bar>label{min-width:0}.granolab-root .designer-experience .global-grain-bar select,.granolab-root .designer-experience .global-number{min-width:0;height:44px;min-height:44px;padding-inline:5px;font-size:9px}.granolab-root .designer-experience .grain-settings,.granolab-root .designer-experience .property-chip{display:none}}@media print{@page{size:A4;margin:15mm}body:has(.granolab-root){background:#ffffff!important}body:has(.granolab-root)>:not(main){display:none!important}.granolab-root{min-width:0;padding:0;color:#111111;background:#ffffff;print-color-adjust:exact;-webkit-print-color-adjust:exact}.granolab-root .app-shell,.granolab-root .drawer-backdrop,.granolab-root .toast{display:none!important}.granolab-root .print-sheet{position:relative;isolation:isolate;display:block!important;color:#111111;background:#ffffff;font-family:Arial,Helvetica,sans-serif;font-size:9pt}.granolab-root .print-watermark{position:fixed;z-index:0;top:50%;left:50%;display:block!important;width:132mm;max-width:72vw;height:auto;opacity:.065;transform:translate(-50%,-50%);filter:grayscale(1);pointer-events:none;-o-object-fit:contain;object-fit:contain}.granolab-root .print-sheet>:not(.print-watermark){position:relative;z-index:1}.granolab-root .print-sheet>header{display:flex;align-items:flex-end;justify-content:space-between;gap:10mm;padding-bottom:6mm;border-bottom:1.5pt solid #111111}.granolab-root .print-sheet header p{margin:0 0 2mm;font:7pt Courier New,ui-monospace,monospace;letter-spacing:.12em}.granolab-root .print-sheet header h2{margin:0;font-size:20pt;letter-spacing:-.04em}.granolab-root .print-sheet header>span{flex:0 0 auto;color:#555555;font-size:8pt}.granolab-root .print-intro{display:flex;align-items:center;justify-content:space-between;gap:8mm;padding:5mm 0;border-bottom:.5pt solid #bbbbbb}.granolab-root .print-intro>p{max-width:75mm;margin:0;color:#444444}.granolab-root .print-intro dl{display:flex;gap:8mm;margin:0}.granolab-root .print-intro dl div{display:grid;gap:1mm}.granolab-root .print-intro dt{color:#777777;font:6.5pt Courier New,ui-monospace,monospace;text-transform:uppercase}.granolab-root .print-intro dd{margin:0;font-weight:700}.granolab-root .print-sheet>section:not(.print-intro){padding:5mm 0;border-bottom:.5pt solid #bbbbbb;-moz-column-break-inside:avoid;break-inside:avoid}.granolab-root .print-sheet h2{margin:0 0 3mm;font-size:11pt}.granolab-root .print-grid{display:grid;grid-template-columns:1fr 1fr;gap:8mm}.granolab-root .print-grid p{margin:0;line-height:1.55}.granolab-root .print-sheet code{display:block;margin-top:3mm;padding:2.5mm;border-left:2pt solid #5d6e20;color:#111111;background:#f3f4ed;font:7.5pt Courier New,ui-monospace,monospace;white-space:normal}.granolab-root .print-sheet>footer{display:block!important;margin-top:6mm;padding:4mm;border:.5pt solid #aaaaaa;color:#444444;line-height:1.5;-moz-column-break-inside:avoid;break-inside:avoid}.granolab-guide{display:none!important}}