:root{--color-ink:#111315;--color-surface:#f0f2f4;--color-surface-mid:#e8ecf1;--color-bg:#0d1116;--color-bg-deep:#06080b;--color-danger:#ef4444;--color-warning:#f59e0b;--color-error:#c53b3b;--color-surface-dim:#d7dde3;--surface-38:#f0f2f461;--surface-40:#f0f2f466;--surface-80:#f0f2f4cc;--surface-dim-06:#d7dde30f;--surface-dim-07:#d7dde312;--surface-dim-18:#d7dde32e;--surface-dim-28:#d7dde347;--surface-dim-45:#d7dde373;--surface-dim-50:#d7dde380;--surface-dim-85:#d7dde3d9;--ink-05:#1113150d;--ink-07:#11131512;--ink-08:#11131514;--ink-09:#11131517;--ink-10:#1113151a;--ink-12:#1113151f;--ink-14:#11131524;--ink-16:#11131529;--ink-24:#1113153d;--ink-32:#11131552;--ink-34:#11131557;--ink-35:#11131559;--ink-38:#11131561;--ink-40:#11131566;--ink-42:#1113156b;--ink-46:#11131575;--ink-48:#1113157a;--ink-52:#11131585;--ink-55:#1113158c;--ink-56:#1113158f;--ink-58:#11131594;--ink-62:#1113159e;--ink-75:#111315bf;--ink-80:#111315cc;--ink-82:#111315d1;--ink-84:#111315d6;--ink-88:#111315e0;--white-03:#ffffff08;--white-04:#ffffff0a;--white-05:#ffffff0d;--white-06:#ffffff0f;--white-07:#ffffff12;--white-08:#ffffff14;--white-09:#ffffff17;--white-10:#ffffff1a;--white-12:#ffffff1f;--white-14:#ffffff24;--white-15:#ffffff26;--white-16:#ffffff29;--white-18:#ffffff2e;--white-20:#fff3;--white-22:#ffffff38;--white-24:#ffffff3d;--white-26:#ffffff42;--white-28:#ffffff47;--white-30:#ffffff4d;--white-32:#ffffff52;--white-34:#ffffff57;--white-36:#ffffff5c;--white-38:#ffffff61;--white-40:#fff6;--white-42:#ffffff6b;--white-45:#ffffff73;--white-48:#ffffff7a;--white-50:#ffffff80;--white-52:#ffffff85;--white-54:#ffffff8a;--white-55:#ffffff8c;--white-56:#ffffff8f;--white-58:#ffffff94;--white-60:#fff9;--white-62:#ffffff9e;--white-65:#ffffffa6;--white-72:#ffffffb8;--white-76:#ffffffc2;--white-78:#ffffffc7;--white-88:#ffffffe0;--white-95:#fffffff2;--black-06:#0000000f;--black-08:#00000014;--black-12:#0000001f;--black-18:#0000002e;--text-xs:10px;--text-sm:12px;--text-base:13px;--text-md:14px;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-pill:999px;--z-splash:9999;--z-toast:90;--z-popover:50;--z-onboarding:40;--z-hint:32;--z-controls:30;--z-erp:24;--z-dock:20;--z-label:15;--z-sub-popover:12;--shadow-float:0 24px 64px var(--black-12), 0 8px 24px var(--black-06);--shadow-float-heavy:0 24px 64px var(--black-18), 0 8px 24px var(--black-08);--shadow-inset-hi:inset 0 1px 0 var(--white-42);--blur-heavy:blur(22px) saturate(180%);--transition-fade:opacity .22s ease, transform .22s ease;--transition-ui:background .15s ease, border-color .15s ease, color .15s ease}*{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background-color:#f3f4f6;background-image:radial-gradient(circle at top right, var(--surface-dim-06), transparent 28%), linear-gradient(180deg, var(--color-bg) 0%, var(--color-bg-deep) 100%);color:var(--color-surface);margin:0;font-family:Inter,system-ui,sans-serif;overflow:hidden}#app{width:100vw;height:100dvh;position:relative}canvas{display:block}#app{grid-template-rows:44px 1fr 28px;grid-template-columns:1fr;width:100vw;height:100dvh;display:grid;position:relative;overflow:hidden}#layout-body{background:#f3f4f6;width:100%;min-height:0;position:relative;overflow:hidden}#status-bar{border-top:1px solid var(--ink-08);color:var(--ink-46);white-space:nowrap;background:#edf0f3;grid-row:3;align-items:center;gap:6px;padding:0 12px;font-size:11px;display:flex;overflow:hidden}.sb-item{color:var(--ink-55);font-size:11px;font-weight:var(--fw-medium);flex-shrink:0}.sb-sep{color:var(--ink-24);flex-shrink:0;font-size:11px}.sb-item--blades:after{content:" blades"}.sb-item--workflow{appearance:none;border:1px solid var(--ink-10,#0000001a);background:var(--ink-05,#0000000d);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-40);cursor:pointer;border-radius:6px;flex-shrink:0;padding:2px 8px;font-size:10px;font-weight:700;transition:background .15s,color .15s}.sb-item--workflow:hover{background:var(--ink-10,#0000001a);color:var(--ink-65)}[data-mode=dark] .sb-item--workflow{color:#e8ecf17a;background:#ffffff0f;border-color:#e8ecf11f}[data-mode=dark] .sb-item--workflow:hover{color:#e8ecf1bf;background:#ffffff1a}.sb-readiness-wrap{flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.sb-item--readiness{font-size:11px;font-weight:var(--fw-medium);color:var(--ink-46)}.sb-item--readiness[data-level=ready-with-notes]{color:#f59e0b;font-weight:var(--fw-semibold)}.sb-item--readiness[data-level=blocked]{color:#ef4444;font-weight:var(--fw-semibold)}.sb-version{font-size:10px;font-weight:var(--fw-medium);color:var(--ink-32);letter-spacing:.06em;cursor:pointer;background:0 0;border:none;margin-left:auto;padding:0;transition:color .15s}.sb-version:hover{color:var(--ink-80);text-underline-offset:2px;text-decoration:underline}[data-mode=dark] #layout-body{background:#0d1116}[data-mode=dark] #top-bar,[data-mode=dark] #status-bar{background:#0c1018;border-color:#e8ecf117}#app[data-workflow=quote] #readinessWrap{background:0 0;border:none;border-radius:6px;align-items:center;padding:2px 10px;display:inline-flex}#app[data-workflow=quote] #readinessIndicator[data-level=blocked]{letter-spacing:.04em;color:#fff;background:#ef4444;border-radius:5px;padding:2px 9px;font-size:11px;font-weight:700}#app[data-workflow=quote] #readinessIndicator[data-level=ready-with-notes]{color:#f59e0b;background:#f59e0b1a;border-radius:5px;padding:2px 9px;font-size:11px;font-weight:600}#js-hidden,#sidebarToggle{display:none}#top-controls{z-index:var(--z-controls);align-items:center;gap:8px;display:flex;position:absolute;top:20px;left:20px}.top-ctrl-btn{border:1px solid var(--white-16);background:linear-gradient(180deg, var(--white-18) 0%, var(--white-08) 100%);width:40px;height:40px;color:var(--surface-80);cursor:pointer;-webkit-backdrop-filter:blur(16px)saturate(180%);box-shadow:inset 0 1px 0 var(--white-42), inset 0 -1px 0 var(--white-08), 0 10px 28px var(--black-12);isolation:isolate;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:flex;position:relative;overflow:hidden}.top-ctrl-wrap{position:relative}.top-ctrl-btn:hover{background:linear-gradient(180deg, var(--white-24) 0%, var(--white-12) 100%);border-color:var(--white-22);color:var(--color-surface)}.top-ctrl-btn:before,#settings-popover:before,#share-popover:before,#bottom-dock:before,#colour-popover:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(180deg, var(--white-40) 0%, var(--white-18) 16%, var(--white-04) 48%, var(--white-14) 100%);opacity:.9;z-index:0;position:absolute;inset:0}.top-ctrl-btn:after,#settings-popover:after,#share-popover:after,#bottom-dock:after,#colour-popover:after{content:"";border-radius:inherit;pointer-events:none;border:1px solid var(--white-12);-webkit-mask:linear-gradient(180deg, var(--white-95), var(--white-12));mask:linear-gradient(180deg, var(--white-95), var(--white-12));-webkit-mask:linear-gradient(180deg, var(--white-95), var(--white-12));opacity:.9;z-index:0;position:absolute;inset:1px}#settings-popover{border:1px solid var(--white-14);border-radius:var(--radius-lg);min-width:230px;box-shadow:var(--shadow-float-heavy);-webkit-backdrop-filter:var(--blur-heavy);z-index:var(--z-popover);isolation:isolate;background:linear-gradient(#12161c3d 0%,#12161c24 100%);padding:18px;position:absolute;top:calc(100% + 10px);left:50%;overflow:hidden;transform:translate(-50%)}.settings-group{margin-bottom:16px}.settings-group:last-child{margin-bottom:0}.settings-group-label{font-size:var(--text-xs);font-weight:var(--fw-semibold);letter-spacing:.13em;text-transform:uppercase;color:var(--surface-38);margin-bottom:10px}.settings-group--viewport{border-top:1px solid var(--white-07);padding-top:16px}.settings-toggle-row{font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--color-surface);cursor:pointer;align-items:center;gap:9px;padding:5px 0;display:flex}.settings-toggle-row input[type=checkbox]{width:15px;height:15px;accent-color:var(--color-surface-dim);cursor:pointer;flex-shrink:0}.mode-switcher{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.mode-btn{border:1px solid var(--white-28);background:var(--white-22);width:100%;color:var(--color-ink);font-family:inherit;font-size:11px;font-weight:var(--fw-semibold);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:var(--transition-ui);box-shadow:inset 0 1px 0 var(--white-72), inset 0 -1px 0 var(--white-14);border-radius:10px;justify-content:center;align-items:center;gap:5px;padding:9px 12px;display:flex}.mode-btn.is-active{background:var(--white-48);border-color:var(--white-38);color:var(--color-ink)}.mode-btn svg{flex-shrink:0}.top-ctrl-btn:disabled{opacity:.3;cursor:not-allowed;pointer-events:none}#top-bar{border-bottom:1px solid var(--ink-10);z-index:var(--z-controls);background:#edf0f3;grid-row:1;justify-content:space-between;align-items:center;gap:8px;padding:0 10px;display:flex}.top-bar-left,.top-bar-right{flex-shrink:0;align-items:center;gap:6px;display:flex}.top-bar-brand{font-size:12px;font-weight:var(--fw-semibold);color:var(--ink-52);letter-spacing:.02em;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;justify-content:center;align-items:baseline;gap:6px;min-width:0;display:flex;position:absolute;left:50%;overflow:hidden;transform:translate(-50%)}.top-bar-version{font-size:10px;font-weight:var(--fw-medium);color:var(--ink-28);letter-spacing:.04em}.top-bar-platform{font-size:11px;font-weight:var(--fw-medium);color:var(--ink-34);letter-spacing:.04em}.top-bar-sep{color:var(--ink-24);font-size:11px}#topBarFamily{font-size:12px;font-weight:var(--fw-semibold);color:var(--ink-62);letter-spacing:.01em}#top-bar .top-ctrl-btn--workflow{display:none!important}#top-bar .top-ctrl-btn--workflow:hover{background:var(--ink-08);border-color:var(--ink-16);color:var(--ink-75)}#top-bar .top-ctrl-btn{width:40px;height:40px;color:var(--ink-52);box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border-color:#0000;border-radius:10px}#top-bar .top-ctrl-btn svg{margin:auto;display:block}#top-bar .top-ctrl-btn--new{width:auto;min-width:64px;font-size:11px;font-weight:var(--fw-semibold);letter-spacing:.06em;text-transform:uppercase;background:#0000000a;border:1px solid #00000012;border-radius:999px;padding:0 12px}#top-bar .top-ctrl-btn--new span{white-space:nowrap;display:inline-block}#top-bar .top-ctrl-btn:hover{color:var(--ink-82);background:#0000000f;border-color:#0000}#top-bar .top-ctrl-btn:before,#top-bar .top-ctrl-btn:after{display:none}#app[data-mode=light] #top-bar .top-ctrl-btn{box-shadow:none;background:0 0;border-color:#0000}#app[data-mode=light] #top-bar .top-ctrl-btn:hover{box-shadow:none;background:#0000000f;border-color:#0000}.wn-backdrop{z-index:9000;-webkit-backdrop-filter:blur(8px);background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.wn-backdrop[hidden]{display:none}.wn-modal{background:#151c2a;border:1px solid #ffffff24;border-radius:16px;flex-direction:column;width:100%;max-width:480px;max-height:80vh;display:flex;overflow:hidden;box-shadow:0 24px 64px #00000080}.wn-header{border-bottom:1px solid #ffffff1a;flex-shrink:0;justify-content:space-between;align-items:center;padding:20px 20px 16px;display:flex}.wn-header-left{align-items:center;gap:10px;display:flex}.wn-badge{background:var(--accent);color:#fff;font-size:10px;font-weight:var(--fw-bold);letter-spacing:.07em;border-radius:20px;padding:2px 8px}.wn-title{font-size:15px;font-weight:var(--fw-semibold);color:#fffffff2;margin:0}.wn-close{color:#ffffff8c;cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;transition:background .12s,color .12s;display:flex}.wn-close:hover{color:#fffffff2;background:#ffffff1a}.wn-body{flex-direction:column;flex:1;gap:18px;padding:16px 20px;display:flex;overflow-y:auto}.wn-section{flex-direction:column;gap:8px;display:flex}.wn-section-label{font-size:10px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.1em;color:#ffffff80;margin:0}.wn-item{color:#fffc;align-items:flex-start;gap:10px;font-size:12.5px;line-height:1.55;display:flex}.wn-item--highlight .wn-item-icon{color:var(--accent)}.wn-item--highlight strong{color:#fff}.wn-item-icon{color:#ffffff61;flex-shrink:0;margin-top:3px;font-size:10px}.wn-footer{border-top:1px solid #ffffff1a;flex-shrink:0;padding:12px 20px}.wn-footer-text{color:#ffffff6b;letter-spacing:.04em;font-size:10px}#share-popover{border:1px solid var(--white-14);border-radius:var(--radius-lg);min-width:160px;box-shadow:var(--shadow-float-heavy);-webkit-backdrop-filter:var(--blur-heavy);z-index:var(--z-popover);isolation:isolate;background:linear-gradient(#12161c3d 0%,#12161c24 100%);padding:8px;position:absolute;top:calc(100% + 10px);left:50%;overflow:hidden;transform:translate(-50%)}.share-action{width:100%;color:inherit;font-family:inherit;font-size:var(--text-base);font-weight:var(--fw-medium);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;padding:9px 12px;transition:background .12s;display:flex}.share-action:hover{background:var(--white-08)}.share-divider{background:var(--white-10);height:1px;margin:4px 0}#top-controls{display:none!important}#app[data-mode=light] .top-ctrl-btn{background:var(--white-42);color:var(--color-ink);box-shadow:inset 0 1px 0 var(--white-72), 0 4px 16px var(--black-08);border-color:#0000001a}#app[data-mode=light] .top-ctrl-btn:hover{background:var(--white-58);border-color:var(--black-18)}#app[data-mode=light] #settings-popover,#app[data-mode=light] #share-popover{-webkit-backdrop-filter:none;color:var(--color-ink);background:#fff;border-color:#00000017;box-shadow:0 8px 24px #0000001f,0 2px 6px #0000000f}#app[data-mode=light] .share-action:hover{background:#0000000d}#app[data-mode=light] .share-divider{background:var(--black-08)}#app[data-mode=light] .settings-group-label{color:var(--ink-42)}#app[data-mode=light] .settings-toggle-row{color:var(--color-ink)}#app[data-mode=light] .settings-toggle-row input[type=checkbox]{accent-color:var(--color-ink)}#app[data-mode=light] .settings-group--viewport{border-top-color:#00000012}#app[data-mode=light] .wn-modal{background:#f8f9fa;border-color:#0000001a;box-shadow:0 24px 64px #0000002e}#app[data-mode=light] .wn-header{border-bottom-color:#00000014}#app[data-mode=light] .wn-title{color:#000000e0}#app[data-mode=light] .wn-close{color:#00000080;border-color:#0000001f}#app[data-mode=light] .wn-close:hover{color:#000000d9;background:#0000000f}#app[data-mode=light] .wn-section-label{color:#0000006b}#app[data-mode=light] .wn-item{color:#000000b8}#app[data-mode=light] .wn-item--highlight strong{color:#000000e0}#app[data-mode=light] .wn-item-icon{color:#00000052}#app[data-mode=light] .wn-footer{border-top-color:#00000014}#app[data-mode=light] .wn-footer-text{color:#0006}#app[data-mode=light] .mode-switcher{background:var(--black-06)}#app[data-mode=light] .mode-btn{color:var(--ink-40)}#app[data-mode=light] .mode-btn.is-active{color:var(--color-ink);background:#0000001a}#top-bar-logo{opacity:.72;pointer-events:none;-webkit-user-select:none;user-select:none;flex-shrink:0;width:auto;height:20px;display:block}[data-mode=dark] #top-bar #top-bar-logo{filter:brightness(0)invert();opacity:.5}#app[data-mode=dark] #top-bar .top-ctrl-btn--new{background:#ffffff0f;border-color:#ffffff17}#app[data-mode=dark] .wn-modal{box-shadow:0 24px 64px #0000008c}[data-mode=dark] #top-bar{--color-ink:#e8ecf1;--color-surface-mid:#1c2432;--ink-88:#e8ecf1eb;--ink-82:#e8ecf1d1;--ink-80:#e8ecf1d1;--ink-75:#e8ecf1bf;--ink-62:#e8ecf19e;--ink-58:#e8ecf194;--ink-56:#e8ecf18f;--ink-55:#e8ecf18c;--ink-52:#e8ecf185;--ink-48:#e8ecf17a;--ink-46:#e8ecf175;--ink-42:#e8ecf16b;--ink-40:#e8ecf166;--ink-38:#e8ecf161;--ink-35:#e8ecf159;--ink-34:#e8ecf157;--ink-32:#e8ecf152;--ink-28:#e8ecf147;--ink-24:#e8ecf13d;--ink-16:#e8ecf129;--ink-14:#e8ecf124;--ink-12:#e8ecf11f;--ink-10:#e8ecf11a;--ink-09:#e8ecf117;--ink-08:#e8ecf114;--ink-07:#e8ecf112;--ink-05:#e8ecf10d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-mode=dark] #top-bar .top-ctrl-btn{color:#e8ecf18c;box-shadow:none;background:0 0;border-color:#0000}[data-mode=dark] #top-bar .top-ctrl-btn:hover{color:#e8ecf1eb;background:#ffffff14;border-color:#0000}.top-bar-family{font-size:10px;font-weight:var(--fw-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-46);margin-top:1px;display:block}#app[data-workflow=quote] #top-bar .top-ctrl-btn--workflow{color:#f59e0b;background:#f59e0b1f;border-color:#f59e0b52}#app[data-workflow=quote] #top-bar .top-ctrl-btn--workflow:hover{color:#fbbf24;background:#f59e0b33;border-color:#f59e0b7a}[data-mode=dark] #app[data-workflow=quote] #top-bar .top-ctrl-btn--workflow{color:#f59e0b;background:#f59e0b1a;border-color:#f59e0b47}[data-mode=dark] #app[data-workflow=quote] #top-bar .top-ctrl-btn--workflow:hover{color:#fbbf24;background:#f59e0b2e;border-color:#f59e0b70}#left-panel{border-right:1px solid var(--ink-09);background:#f8f9fa;flex-direction:column;min-height:0;display:flex;overflow:hidden}#left-panel-scroll{scrollbar-width:thin;scrollbar-color:var(--ink-14) transparent;flex:1;padding:10px 0 20px;overflow:hidden auto}#left-panel-scroll::-webkit-scrollbar{width:4px}#left-panel-scroll::-webkit-scrollbar-track{background:0 0}#left-panel-scroll::-webkit-scrollbar-thumb{background:var(--ink-14);border-radius:2px}#left-panel{z-index:10;will-change:transform;width:268px;transition:transform .28s cubic-bezier(.4,0,.2,1);position:absolute;top:0;bottom:0;left:0;overflow:visible}#left-panel.panel--collapsed{background:0 0;border-right-color:#0000;transform:translate(calc(24px - 100%))}#left-panel.panel--hidden,#left-panel.panel--collapsed #left-panel-scroll{display:none}#left-panel.panel--collapsed .panel-collapse-btn svg{transform:scaleX(-1)}.lp-section{padding:10px 14px 6px}.lp-section+.lp-section{border-top:1px solid var(--ink-07);margin-top:4px;padding-top:12px}.lp-section-head{margin-bottom:10px}.lp-section-head--sub{margin-top:12px;margin-bottom:8px}.lp-section-title{font-size:10px;font-weight:var(--fw-semibold);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-46)}.lp-field{margin-bottom:10px}#lp-gate-type-field,#lp-access-post-field,#lp-mounting-field,#lp-hinge-field,#lp-both-hinged-info,#lp-gate-frame-info,#lp-angle-field{margin-bottom:14px}.lp-field-label{font-size:11px;font-weight:var(--fw-medium);color:var(--ink-62);margin-bottom:5px}.lp-field-unit{color:var(--ink-38);font-weight:400}.lp-dim-field{align-items:center;gap:6px;display:flex}.lp-stepper{flex-shrink:0}.lp-stepper .dim-step-btn{width:30px;height:14px}.lp-input{border:1px solid var(--ink-12);min-width:0;color:var(--color-ink);font-family:inherit;font-size:13px;font-weight:var(--fw-medium);appearance:textfield;background:#fff;border-radius:6px;outline:none;flex:1;padding:6px 8px;transition:border-color .15s}.lp-input::-webkit-inner-spin-button{-webkit-appearance:none}.lp-input::-webkit-outer-spin-button{-webkit-appearance:none}.lp-input:focus{border-color:var(--ink-32);background:#fff}.lp-blade-row{justify-content:center;align-items:center;gap:6px;display:flex}.lp-blade-row .lp-input{text-align:center;flex:0 0 60px;width:60px}.lp-subnote,.lp-range-note{color:var(--ink-42);min-height:0;margin-top:4px;font-size:10px;line-height:1.4}#bladeNote{text-align:center}.lp-input-suffix-wrap{flex:1;min-width:0;position:relative}.lp-input-suffix-wrap .lp-input{width:100%;padding-right:30px}.lp-input-suffix{color:var(--ink-38);pointer-events:none;-webkit-user-select:none;user-select:none;font-size:11px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.lp-range-note:empty{display:none}#left-panel .lp-access-toggle-group--two{grid-template-columns:repeat(2,minmax(0,1fr));place-items:stretch stretch;gap:8px;width:100%;max-width:100%;margin-inline:auto}#left-panel .lp-access-toggle-group--two .end-cap-btn,#left-panel .lp-access-toggle-group--angle .end-cap-btn{white-space:nowrap;min-height:34px}#left-panel .lp-access-toggle-group--two .end-cap-btn{letter-spacing:.01em;text-align:center;justify-content:center;align-items:center;width:100%;padding:0 12px;font-size:11px;line-height:1.15;display:inline-flex;overflow:hidden}#left-panel .lp-access-toggle-group--angle{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;width:100%;max-width:100%;margin-inline:auto}#left-panel .lp-access-toggle-group--angle .end-cap-btn{justify-content:center;align-items:center;padding:0 10px;display:inline-flex}.lp-spacing-ranges{flex-direction:column;gap:3px;margin-top:8px;display:flex}.lp-spacing-range-row{justify-content:space-between;align-items:baseline;display:flex}.lp-spacing-range-row[hidden]{display:none}.lp-spacing-range-label{color:var(--ink-42);font-size:10px}.lp-spacing-range-val{color:var(--ink-55);font-variant-numeric:tabular-nums;font-size:10px}.lp-divider{background:var(--ink-07);height:1px;margin:10px 0}#left-panel .lp-field .select-wrap--custom,#left-panel .lp-field .profile-trigger{width:100%}.lp-colour-wrap{position:relative}.lp-colour-trigger{border-radius:8px;justify-content:flex-start;gap:8px;width:100%;padding:8px 10px}.lp-colour-wrap #colour-popover{width:auto;z-index:var(--z-popover);position:absolute;inset:calc(100% + 8px) 0 auto;transform:none}#app .lp-colour-wrap #colour-popover{-webkit-backdrop-filter:none;background:#f8f9fa}.lp-field--range{margin-bottom:8px}.lp-field--range .range-select-shell{width:100%}#app[data-mode=light] #lp-appearance .range-trigger{background:var(--white-36);border-color:var(--white-58);color:var(--color-ink);box-shadow:inset 0 1px 0 var(--white-62);min-width:0;transition:background .15s,border-color .15s,box-shadow .15s}#app[data-mode=light] #lp-appearance .range-trigger:hover{background:#fff;border-color:#1c1f243d;box-shadow:inset 0 1px #ffffffeb,0 0 0 2px #1c1f2414}.lp-powder-grid{margin-top:10px;margin-bottom:4px}.lp-selected-note{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--ink-62);margin:6px 0 2px}.lp-powder-hint{color:var(--ink-38);margin:0 0 8px;font-size:11px;line-height:1.4}.lp-sample-btn{margin-top:2px}.lp-qty-row{margin-bottom:8px}.lp-hydra-section{background:#00000008;border:1px solid #0000;border-radius:8px;margin:0 0 4px;padding:10px 16px 12px;transition:background .2s,border-color .2s,box-shadow .2s}.lp-hydra-section:has(#hydraToggle:checked){background:#f59e0b1f;border-color:#f59e0b73;box-shadow:0 0 0 1px #f59e0b40,0 0 18px #f59e0b59}.lp-hydra-row{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;display:flex}.lp-hydra-title{color:var(--ink-80,#000c);font-size:13px;font-weight:600;line-height:1.3}.lp-hydra-sub{color:var(--ink-45,#00000073);margin-top:2px;font-size:11px;line-height:1.4}.lp-hydra-checkbox{opacity:0;width:0;height:0;position:absolute}.lp-toggle-track{background:#00000026;border-radius:11px;flex-shrink:0;width:40px;height:22px;transition:background .2s;display:inline-block;position:relative}.lp-toggle-track:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.lp-hydra-checkbox:checked~.lp-toggle-track{background:#f59e0b}.lp-hydra-checkbox:checked~.lp-toggle-track:after{transform:translate(18px)}.rp-screening-notice{text-align:center;color:var(--ink-45,#00000073);flex-direction:column;align-items:center;gap:10px;padding:32px 20px 24px;display:none}.rp-screening-icon{opacity:.35;margin-bottom:4px}.rp-screening-title{color:var(--ink-65,#000000a6);letter-spacing:.02em;text-transform:uppercase;margin:0;font-size:13px;font-weight:600}.rp-screening-body{max-width:200px;margin:0;font-size:12px;line-height:1.55}#profile-tagline{z-index:10;color:#00000073;pointer-events:none;-webkit-user-select:none;user-select:none;text-align:right;white-space:nowrap;max-width:280px;margin-right:12px;font-size:11px;font-style:italic;line-height:1.4;position:absolute;bottom:16px;right:100%}.lp-dim-inline{border:1px solid var(--ink-12);background:#fff;border-radius:6px;flex:1;align-items:stretch;transition:border-color .15s;display:flex;overflow:hidden}.lp-dim-inline:focus-within{border-color:var(--ink-32)}.lp-dim-btn{width:28px;color:var(--ink-38);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:15px;line-height:1;transition:color .15s,background .15s;display:flex}.lp-dim-btn:hover{color:var(--color-ink);background:#0000000a}.lp-dim-inline .lp-input{text-align:center;background:0 0;border:none;border-radius:0;flex:1;padding:6px 4px}.lp-dim-inline .lp-input:focus{background:0 0;border-color:#0000}.lp-dim-inline .lp-input-suffix{border-left:1px solid var(--ink-09);align-items:center;padding:0 8px;display:flex;position:static;top:auto;right:auto;transform:none}.lp-dim-inline--sm{flex:none;max-width:148px;margin:0 auto}[data-mode=dark] #left-panel,[data-mode=dark] #left-panel{background:#111720;border-color:#e8ecf117}[data-mode=dark] .lp-input{color:#e8ecf1;background:#ffffff0f;border-color:#e8ecf121}[data-mode=dark] .lp-input:focus{background:#ffffff17;border-color:#e8ecf14d}#app[data-mode=dark] #lp-appearance .range-trigger{color:#e8ecf1cc;box-shadow:none;background:#ffffff0f;border-color:#e8ecf121}#app[data-mode=dark] #lp-appearance .range-trigger:hover{background:#ffffff1a;border-color:#e8ecf138}#app[data-mode=dark] .range-popover{-webkit-backdrop-filter:none;background:#12161ef5;border-color:#e8ecf121;border-radius:10px;padding:10px;box-shadow:0 8px 28px #0000008c}#app[data-mode=dark] .range-popover:before,#app[data-mode=dark] .range-popover:after{display:none}#app[data-mode=dark] .range-popover .range-option{color:#e8ecf199;font-size:12px;font-weight:var(--fw-medium);border-radius:var(--radius-md);background:0 0;border-color:#0000;padding:8px 12px}#app[data-mode=dark] .range-popover .range-option:hover{color:#e8ecf1eb;background:#ffffff12;border-color:#0000}#app[data-mode=dark] .range-popover .range-option.is-active{color:#e8ecf1eb;box-shadow:none;background:#ffffff1a;border-color:#0000}[data-mode=dark] .lp-hydra-section{background:#ffffff0a}[data-mode=dark] .lp-hydra-title{color:#e8ecf1d1}[data-mode=dark] .lp-hydra-sub{color:#e8ecf173}[data-mode=dark] .lp-toggle-track{background:#ffffff26}[data-mode=dark] #profile-tagline{color:#e8ecf161}[data-mode=dark] .rp-screening-notice{color:#e8ecf173}[data-mode=dark] .rp-screening-title{color:#e8ecf1a6}#app[data-mode=dark] .profile-popover{-webkit-backdrop-filter:none;background:#12161ef5;border-color:#e8ecf121;border-radius:10px;padding:10px;box-shadow:0 8px 28px #0000008c}#app[data-mode=dark] .profile-popover:before,#app[data-mode=dark] .profile-popover:after{display:none}#app[data-mode=dark] .profile-popover .profile-option{color:#e8ecf199;font-weight:var(--fw-medium);border-radius:var(--radius-md);background:0 0;border-color:#0000;padding:8px 12px}#app[data-mode=dark] .profile-popover .profile-option:hover{color:#e8ecf1eb;background:#ffffff12;border-color:#0000;transform:none}#app[data-mode=dark] .profile-popover .profile-option.is-active{color:#e8ecf1eb;box-shadow:none;background:#ffffff1a;border-color:#0000}.profile-popover .profile-option:disabled{opacity:.28;cursor:not-allowed;pointer-events:none;text-decoration:line-through}[data-mode=dark] .lp-dim-inline{background:#ffffff0f;border-color:#e8ecf121}[data-mode=dark] .lp-dim-inline:focus-within{border-color:#e8ecf14d}[data-mode=dark] .lp-dim-btn{color:#e8ecf159}[data-mode=dark] .lp-dim-btn:hover{color:#e8ecf1e6;background:#ffffff0f}[data-mode=dark] .lp-dim-inline .lp-input-suffix{border-left-color:#e8ecf117}#app[data-workflow=quote] [data-complexity=advanced]{display:none}#quote-context-banner{background:#f59e0b12;border:1px solid #f59e0b38;border-radius:8px;margin:8px 10px 6px;padding:9px 11px;display:none}#app[data-workflow=quote] #quote-context-banner{display:block}.lp-quote-banner-label{letter-spacing:.1em;text-transform:uppercase;color:#f59e0b;margin-bottom:4px;font-size:9px;font-weight:700}.lp-quote-banner-hint{color:var(--ink-62);margin:0;font-size:11px;line-height:1.45}[data-mode=dark] .lp-quote-banner-hint{color:#e8ecf194}.ps-mode-toggle{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%;display:grid}.ps-open-target-toggle{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%;display:grid}.lp-select{width:100%;color:var(--color-ink);font-family:inherit;font-size:13px;font-weight:var(--fw-medium);cursor:pointer;appearance:none;background:#0000000a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23666' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") right 8px center no-repeat;border:1px solid #00000024;border-radius:8px;outline:none;padding:7px 28px 7px 10px;transition:background .15s,border-color .15s}.lp-select:focus{border-color:var(--ink-32)}[data-mode=dark] .lp-select{color:#e8ecf1;background-color:#ffffff14;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23e8ecf1' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round' opacity='.55'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;border-color:#ffffff24}[data-mode=dark] .lp-select:hover{background-color:#ffffff1a;border-color:#ffffff38}[data-mode=dark] .lp-select:focus{background-color:#ffffff1a;border-color:#e8ecf14d}[data-mode=dark] .lp-select option{color:#e8ecf1;background:#1a1e28}.pp-protractor--privacy .pp-ray[data-open-only=true]{pointer-events:none;cursor:default;opacity:.25}.pp-protractor--privacy .pp-ray[data-open-only=true] .pp-ray__line{opacity:.12}.pp-ray[data-support-limited=true]{pointer-events:none;cursor:default;opacity:.2}.pp-ray[data-support-limited=true] .pp-ray__line{opacity:.1;stroke-dasharray:4 3}.pp-trigger-btn{background:var(--white-08,#ffffff14);border:1px solid var(--white-14,#ffffff24);width:100%;color:inherit;font-size:13px;font-weight:var(--fw-medium,500);cursor:pointer;text-align:left;border-radius:8px;align-items:center;gap:0;padding:7px 10px;transition:background .15s,border-color .15s,box-shadow .15s;display:flex}.pp-trigger-btn:hover{background:var(--white-10,#ffffff1a);border-color:#f59e0b6b}.pp-trigger-btn:focus-visible{border-color:#f59e0b94;outline:none;box-shadow:0 0 0 2px #f59e0b2e}.pp-trigger-btn[aria-expanded=true]{background:#f59e0b14;border-color:#f59e0b8c}.pp-trigger-icon{opacity:.82;flex:none;width:16px;height:16px;margin-right:4px}#pp-trigger-text{text-align:center;flex:1}.pp-trigger-arrow{opacity:.55;flex:none;margin-left:4px;font-size:10px}[data-mode=light] .pp-trigger-btn{color:var(--ink-90,#1a1a1a);background:#0000000a;border-color:#00000024}[data-mode=light] .pp-trigger-btn:hover{background:#0000000f;border-color:#f59e0b61}@keyframes pp-trigger-pulse{0%{border-color:#ffffff24;box-shadow:0 0 #f59e0b00}25%{border-color:#f59e0b8c;box-shadow:0 0 0 4px #f59e0b38}to{border-color:#ffffff24;box-shadow:0 0 #f59e0b00}}.pp-trigger-btn.is-pulsing{animation:1.2s ease-out forwards pp-trigger-pulse}@media (prefers-reduced-motion:reduce){.pp-trigger-btn.is-pulsing{animation:none}}.pp-overlay{z-index:302;pointer-events:auto;filter:drop-shadow(0 8px 32px #0000008c)drop-shadow(0 2px 8px #00000059);position:fixed;bottom:62px;left:50%;transform:translate(-50%)}.pp-card{--pp-text-title:#e8ecf185;--pp-text-primary:#e8ecf180;--pp-text-secondary:#e8ecf161;--pp-text-value:#e8ecf1e0;--pp-text-muted:#e8ecf19e;--pp-text-helper:#e8ecf159;--pp-accent:#f59e0b;-webkit-backdrop-filter:blur(18px);background:#10141cf7;border:1px solid #e8ecf121;border-radius:16px;width:min(1200px,90vw);min-width:660px;padding:0 18px 12px}[data-mode=light] .pp-card{--pp-text-title:#1e232a75;--pp-text-primary:#1e232a99;--pp-text-secondary:#1e232a6b;--pp-text-value:#1e232ae0;--pp-text-muted:#1e232aa3;--pp-text-helper:#1e232a66;--pp-accent:#b45a00e6;color:#1a1a1a;background:#f8f9fafa;border-color:#0000001f}.pp-header{background:#040810b8;border-bottom:1px solid #e8ecf114;border-radius:15px 15px 0 0;justify-content:flex-end;align-items:center;margin:0 -18px 12px;padding:9px 14px 9px 18px;display:flex;position:relative}[data-mode=light] .pp-header{background:#141e320f;border-bottom:1px solid #1e232a1a}.pp-title{letter-spacing:.12em;color:var(--pp-text-title);text-transform:uppercase;pointer-events:none;white-space:nowrap;font-size:10px;font-weight:700;position:absolute;left:50%;transform:translate(-50%)}[data-mode=light] .pp-title{color:var(--pp-text-title)}.pp-intent-switch--inline{flex-shrink:0;justify-content:center;margin-bottom:0;padding:4px 0}.pp-done-btn{letter-spacing:.04em;color:#f59e0b;cursor:pointer;background:#f59e0b1f;border:1px solid #f59e0b73;border-radius:6px;padding:4px 12px;font-size:11px;font-weight:600;transition:background .12s,border-color .12s}.pp-done-btn:hover{background:#f59e0b38;border-color:#f59e0bb3}.pp-elevation-col{flex-direction:column;flex:0 0 520px;justify-content:flex-start;justify-self:center;align-items:stretch;width:520px;display:flex}.pp-elevation-main{flex-direction:column;flex:1;justify-content:center;align-items:stretch;display:flex}.pp-elevation-header{letter-spacing:.1em;text-transform:uppercase;color:#e8ecf152;text-align:center;align-self:stretch;margin-bottom:8px;font-size:9px;font-weight:700}[data-mode=light] .pp-elevation-header{color:#1e232a61}.pp-elev-layout{width:100%;position:relative}.pp-elev-svg{width:100%;height:auto;display:block;overflow:visible}.pp-elev-note-line{fill:none;stroke:#e8ecf138;stroke-width:.75px;stroke-linecap:round;stroke-linejoin:round}[data-mode=light] .pp-elev-note-line{stroke:#1e232a2e}.pp-elev-rect{fill:#f59e0b0a;stroke:#e8ecf138;stroke-width:.75px}[data-mode=light] .pp-elev-rect{stroke:#1e232a33;fill:#f59e0b08}.pp-elev-dim{stroke:#e8ecf133;stroke-width:.6px;fill:none}[data-mode=light] .pp-elev-dim{stroke:#1e232a2e}.pp-elev-ext{stroke:#e8ecf121;stroke-width:.5px;fill:none}[data-mode=light] .pp-elev-ext{stroke:#1e232a1f}.pp-elev-arrow{fill:#e8ecf138;stroke:none}[data-mode=light] .pp-elev-arrow{fill:#1e232a33}.pp-elev-support{fill:#e8ecf11a;stroke:#e8ecf147;stroke-width:.6px}[data-mode=light] .pp-elev-support{fill:#1e232a12;stroke:#1e232a38}.pp-elev-batten{fill:#f59e0b0f;stroke:#e8ecf133;stroke-width:.5px}[data-mode=light] .pp-elev-batten{fill:#f59e0b0a;stroke:#1e232a2e}.pp-elev-batten-shadow{fill:#00000038;stroke:none}.pp-elev-side-diag{stroke:#e8ecf12e;stroke-width:.65px;fill:none}[data-mode=light] .pp-elev-side-diag{stroke:#1e232a24}[data-mode=light] .pp-elev-batten-shadow{fill:#0000001f}.pp-elev-callout{cursor:pointer}.pp-elev-ann-label{letter-spacing:.04em;fill:#e8ecf16b;text-transform:uppercase;font-family:system-ui,sans-serif;font-size:10px;font-weight:600;transition:fill .14s}.pp-elev-ann-sub{letter-spacing:.02em;fill:#e8ecf142;font-family:system-ui,sans-serif;font-size:10px;font-weight:400;transition:fill .14s}.pp-elev-ann-line{stroke:#e8ecf147;stroke-width:.75px;fill:none;stroke-dasharray:2.5 2;transition:stroke .14s}.pp-elev-ann-arrow{fill:#e8ecf14d;stroke:none;transition:fill .14s}.pp-elev-callout:hover .pp-elev-ann-label{fill:#f59e0bd1}.pp-elev-callout:hover .pp-elev-ann-sub{fill:#e8ecf1ad}.pp-elev-callout:hover .pp-elev-ann-line{stroke:#e8ecf185;stroke-dasharray:none}.pp-elev-callout:hover .pp-elev-ann-arrow{fill:#e8ecf194}[data-mode=light] .pp-elev-ann-label{fill:#1e232a66}[data-mode=light] .pp-elev-ann-sub{fill:#1e232a47}[data-mode=light] .pp-elev-ann-line{stroke:#1e232a38}[data-mode=light] .pp-elev-callout:hover .pp-elev-ann-label{fill:#a05000d9}[data-mode=light] .pp-elev-callout:hover .pp-elev-ann-sub{fill:#1e232aa6}[data-mode=light] .pp-elev-callout:hover .pp-elev-ann-line{stroke:#1e232a85}[data-mode=light] .pp-elev-ann-arrow{fill:#1e232a80}[data-mode=light] .pp-elev-callout:hover .pp-elev-ann-arrow{fill:#1e232a}.pp-elev-dim-note{letter-spacing:.03em;fill:#e8ecf185;cursor:text;font-family:system-ui,sans-serif;font-size:10px;font-weight:500;transition:fill .14s}.pp-elev-dim-note:hover{fill:#e8ecf1d1}[data-mode=light] .pp-elev-dim-note{fill:#1e232a80}[data-mode=light] .pp-elev-dim-note:hover{fill:#1e232ac7}.pp-elev-field{align-items:center;gap:3px;display:flex}.pp-elev-h-col,.pp-elev-w-col{opacity:0;pointer-events:none;flex-direction:column;align-items:flex-start;transition:opacity .1s;display:flex;position:absolute}.pp-elev-h-col.is-editing,.pp-elev-w-col.is-editing{opacity:1;pointer-events:auto;background:#040810e0;border-radius:3px;padding:2px 5px}[data-mode=light] .pp-elev-h-col.is-editing,[data-mode=light] .pp-elev-w-col.is-editing{background:#f0f3f7f5}.pp-elev-w-col{pointer-events:auto}.pp-elev-range-note{display:none}.pp-elev-lbl{letter-spacing:.04em;color:#f59e0bd1;-webkit-user-select:none;user-select:none;visibility:hidden;flex:none;font-size:10px;font-weight:600;line-height:1}.pp-elev-h-col.is-editing .pp-elev-lbl,.pp-elev-w-col.is-editing .pp-elev-lbl{visibility:visible}[data-mode=light] .pp-elev-lbl{color:#a05000e0}.pp-elev-input{color:#0000;caret-color:#f59e0be6;text-align:left;letter-spacing:.02em;cursor:text;background:0 0;border:none;outline:none;flex:none;width:7ch;padding:0;font-size:10px;font-weight:500;line-height:1}.pp-elev-input:focus{color:#f59e0be6;text-decoration:none}[data-mode=light] .pp-elev-input:focus{color:#a05000e6}#pp-elev-svg.h-hovered .pp-elev-h-note-line,#pp-elev-svg.w-hovered .pp-elev-w-note-line{stroke:#f59e0b66;transition:stroke .14s}.pp-elev-unit{color:#e8ecf147;letter-spacing:.03em;flex:none;font-size:9px}[data-mode=light] .pp-elev-unit{color:#1e232a4d}.pp-angle-readout{color:#e8ecf173;justify-content:center;align-items:center;gap:6px;margin-bottom:6px;font-size:11px;display:flex}[data-mode=light] .pp-angle-readout{color:#1e232a73}#pp-readout-text{color:#f59e0b;font-weight:var(--fw-semibold,600);letter-spacing:.02em}.pp-readout-sep{color:#e8ecf138;font-size:10px}[data-mode=light] .pp-readout-sep{color:#1e232a38}.pp-setout-status{font-size:10.5px;font-weight:var(--fw-medium,500);color:var(--pp-text-muted);letter-spacing:.02em;text-align:center;white-space:normal;min-height:20px;padding:4px 12px 8px;line-height:1.5}.pp-setout-status--warn{color:#f87171}.pp-intent-switch{justify-content:center;align-items:center;gap:6px;margin-bottom:0;display:flex}.pp-intent-btn{cursor:pointer;letter-spacing:.07em;text-transform:uppercase;color:var(--pp-text-primary);background:0 0;border:none;padding:0;font-size:11px;font-weight:700;line-height:1;transition:color .12s}.pp-intent-btn:hover{color:#e8ecf1bf}.pp-intent-btn.is-active{color:var(--pp-accent)}[data-mode=light] .pp-intent-btn{color:var(--pp-text-primary)}[data-mode=light] .pp-intent-btn:hover{color:#1e232ab8}[data-mode=light] .pp-intent-btn.is-active{color:var(--pp-accent)}.pp-d-dir-arrow{cursor:pointer;outline:none}.pp-d-dir-arrow__body{fill:none;stroke:#e8ecf138;stroke-width:1.5px;stroke-linecap:round}.pp-d-dir-arrow__head{fill:#e8ecf138;stroke:none}.pp-d-dir-arrow[data-active=true] .pp-d-dir-arrow__body{stroke:#f59e0b94}.pp-d-dir-arrow[data-active=true] .pp-d-dir-arrow__head{fill:#f59e0b94}.pp-d-dir-arrow:hover .pp-d-dir-arrow__body,.pp-d-dir-arrow:focus-visible .pp-d-dir-arrow__body{stroke:#f59e0be0}.pp-d-dir-arrow:hover .pp-d-dir-arrow__head,.pp-d-dir-arrow:focus-visible .pp-d-dir-arrow__head{fill:#f59e0be0}[data-mode=light] .pp-d-dir-arrow__body{stroke:#1e232a38}[data-mode=light] .pp-d-dir-arrow__head{fill:#1e232a38}[data-mode=light] .pp-d-dir-arrow[data-active=true] .pp-d-dir-arrow__body{stroke:#b45a0099}[data-mode=light] .pp-d-dir-arrow[data-active=true] .pp-d-dir-arrow__head{fill:#b45a0099}[data-mode=light] .pp-d-dir-arrow:hover .pp-d-dir-arrow__body,[data-mode=light] .pp-d-dir-arrow:focus-visible .pp-d-dir-arrow__body{stroke:#b45a00e6}[data-mode=light] .pp-d-dir-arrow:hover .pp-d-dir-arrow__head,[data-mode=light] .pp-d-dir-arrow:focus-visible .pp-d-dir-arrow__head{fill:#b45a00e6}.pp-body{grid-template-columns:1fr 1fr;align-items:stretch;gap:0;display:grid}.pp-sv-toprow{flex-flow:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.pp-diagram-col{flex:0 0 340px;justify-self:center;width:340px}.pp-diagram-header{letter-spacing:.1em;text-transform:uppercase;color:#e8ecf152;text-align:center;margin-bottom:6px;font-size:9px;font-weight:700}[data-mode=light] .pp-diagram-header{color:#1e232a61}.pp-section-svg{width:100%;height:auto;display:block;overflow:visible}.pp-sv-setout{margin-bottom:4px}.pp-sv-compact-row{flex-direction:column;align-items:center;gap:6px;margin-bottom:3px;display:flex}.pp-sv-group{flex-direction:row;align-items:center;gap:4px;display:flex}.pp-sv-group[hidden]{display:none}.pp-plan-label{letter-spacing:.08em;text-transform:uppercase;color:#e8ecf140;text-align:center;margin-top:2px;margin-bottom:4px;font-size:9px;font-weight:700}[data-mode=light] .pp-plan-label{color:#1e232a47}.pp-sv-modes{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:flex}.pp-sv-modes[hidden]{display:none}.pp-sv-mode-btn{cursor:pointer;font-size:11px;font-weight:var(--fw-semibold,600);letter-spacing:.07em;text-transform:uppercase;color:var(--pp-text-secondary);white-space:nowrap;background:0 0;border:none;border-radius:4px;padding:2px 4px;line-height:1;transition:color .12s,background .12s}.pp-sv-mode-btn:hover{color:#e8ecf19e}.pp-sv-mode-btn.is-active{color:#f59e0beb;background:#f59e0b1a}[data-mode=light] .pp-sv-mode-btn{color:var(--pp-text-secondary)}[data-mode=light] .pp-sv-mode-btn:hover{color:#1e232a94}[data-mode=light] .pp-sv-mode-btn.is-active{color:#a05000e6;background:#b45a0014}.pp-sv-stepper-row{align-items:center;gap:5px;display:flex}.pp-sv-stepper-row[hidden]{display:none}.pp-sv-step-btn{color:#e8ecf173;cursor:pointer;background:#ffffff0a;border:1px solid #e8ecf11a;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:14px;line-height:1;transition:background .14s,border-color .14s,color .14s;display:flex}.pp-sv-step-btn:hover{background:#ffffff1f;border-color:#e8ecf138}.pp-sv-step-input{width:48px;color:var(--pp-text-value);font-family:inherit;font-size:12px;font-weight:var(--fw-semibold,600);text-align:center;appearance:textfield;background:#ffffff0f;border:1px solid #e8ecf11f;border-radius:5px;outline:none;padding:3px 5px;transition:border-color .15s,background .15s}.pp-sv-step-input:focus{background:#ffffff1a;border-color:#e8ecf147}.pp-sv-step-input::-webkit-inner-spin-button{-webkit-appearance:none}.pp-sv-step-input::-webkit-outer-spin-button{-webkit-appearance:none}[data-mode=light] .pp-sv-step-btn{color:#1e232a6b;background:#00000008;border-color:#1e232a1a}[data-mode=light] .pp-sv-step-btn:hover{background:#00000012;border-color:#1e232a33}[data-mode=light] .pp-sv-step-input{color:var(--pp-text-value);background:#0000000a;border-color:#1e232a1f}[data-mode=light] .pp-sv-step-input:focus{background:#0000000f;border-color:#1e232a47}.pp-sv-note{font-size:9px;font-weight:var(--fw-medium,500);letter-spacing:.04em;color:var(--pp-text-helper);text-align:center;min-height:12px}[data-mode=light] .pp-sv-note{color:var(--pp-text-helper)}.pp-d-supp,.pp-d-supp-leg{stroke:#e8ecf18c;stroke-width:1.5px;stroke-linecap:round}.pp-d-bat-fill{fill:#f59e0b1a}.pp-d-bat-stroke{fill:none;stroke:#f59e0bcc;stroke-width:1.25px}.pp-d-ref{stroke:#e8ecf147;stroke-width:.9px;stroke-dasharray:3 2.5;stroke-linecap:round}.pp-d-arc{fill:none;stroke:#e8ecf1a6;stroke-width:1px}.pp-d-angle-lbl{letter-spacing:.02em;fill:#e8ecf1d9;dominant-baseline:middle;font-size:8.5px;font-weight:600}.pp-d-dir{stroke:#e8ecf180;stroke-width:1px;stroke-dasharray:4 3;stroke-linecap:round}[data-mode=light] .pp-d-supp,[data-mode=light] .pp-d-supp-leg{stroke:#1e232a80}[data-mode=light] .pp-d-bat-fill{fill:#f59e0b14}[data-mode=light] .pp-d-bat-stroke{stroke:#a06405bf}[data-mode=light] .pp-d-ref{stroke:#1e232a47}[data-mode=light] .pp-d-arc{stroke:#1e232a99}[data-mode=light] .pp-d-angle-lbl{fill:#1e232ad9}[data-mode=light] .pp-d-dir{stroke:#1e232a6b}.pp-d-setout-lbl{letter-spacing:.03em;fill:#e8ecf18c;dominant-baseline:hanging;text-anchor:middle;font-size:7.5px;font-weight:500}[data-mode=light] .pp-d-setout-lbl{fill:#1e232a80}.pp-d-count-lbl{letter-spacing:.05em;fill:#e8ecf14d;dominant-baseline:hanging;text-anchor:middle;font-size:6.5px;font-weight:400}[data-mode=light] .pp-d-count-lbl{fill:#1e232a40}.pp-d-cont{fill:#e8ecf1cc}[data-mode=light] .pp-d-cont{fill:#1e232ab3}.pp-d-meas{stroke:#e8ecf173;stroke-width:.8px;stroke-dasharray:2 2}[data-mode=light] .pp-d-meas{stroke:#1e232a66}#lp-wall-thickness-field .lp-spacing-ranges{margin-top:6px}#lp-hinge-field .lp-field-label{align-items:baseline;gap:6px;display:flex}#lp-hinge-field .lp-field-label .lp-range-note{margin:0}#front-view-btn{opacity:.55;cursor:pointer;color:inherit;text-align:left;background:0 0;border:none;padding:3px 0 0;font-size:11px;text-decoration:underline;display:block}#lp-gate-frame-info .lp-range-note{margin-top:2px}#viewport-area{z-index:0;background:#f3f4f6;position:absolute;inset:0;overflow:hidden}#viewport-area canvas{display:block;position:absolute;top:0;left:0;width:100%!important;height:100%!important}#vc-face-label{letter-spacing:.08em;color:#0009;pointer-events:none;text-shadow:0 1px 2px #fff9;z-index:12;min-height:14px;font-size:10px;font-weight:700;transition:opacity .1s;position:absolute;bottom:160px;left:282px}#vc-reset-btn{color:#00000094;letter-spacing:.05em;cursor:pointer;z-index:12;-webkit-backdrop-filter:blur(6px);background:#fff9;border:1px solid #0000001f;border-radius:6px;justify-content:center;align-items:center;gap:5px;width:100px;height:26px;font-family:inherit;font-size:10px;font-weight:600;transition:background .15s,color .15s,border-color .15s;display:flex;position:absolute;bottom:128px;left:282px}#vc-reset-btn:hover{color:#000000d9;background:#ffffffe6;border-color:#00000038}#vc-reset-btn:active{background:#fff}#viewport-actions{z-index:var(--z-controls);border:1px solid var(--ink-12);-webkit-backdrop-filter:none;box-shadow:none;white-space:nowrap;pointer-events:all;background:#fff;border-radius:8px;align-items:center;gap:6px;padding:4px 8px;display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%)}.vpa-divider{background:var(--ink-15,#0000001f);width:1px;height:14px;margin:0 2px}#viewport-actions .top-ctrl-btn--ee{color:var(--ink-fg,#111);background:0 0;border:none;gap:7px;padding:4px 10px;font-size:12px}[data-mode=light] #viewport-actions .top-ctrl-btn--ee{color:#111;background:0 0}#viewport-actions .top-ctrl-btn--ee:hover{background:var(--ink-06,#0000000f);opacity:1}#viewport-actions .top-ctrl-btn:not(.top-ctrl-btn--ee){width:26px;height:26px;box-shadow:none;background:0 0;border-color:#0000;border-radius:8px}#viewport-actions .top-ctrl-btn:not(.top-ctrl-btn--ee):before,#viewport-actions .top-ctrl-btn:not(.top-ctrl-btn--ee):after{display:none}#viewport-actions .top-ctrl-btn:not(.top-ctrl-btn--ee):hover{background:#0000000f;border-color:#0000}#app[data-mode=light] #viewport-actions .top-ctrl-btn:not(.top-ctrl-btn--ee){box-shadow:none;background:0 0;border-color:#0000}[data-mode=dark] #viewport-actions .top-ctrl-btn:not(.top-ctrl-btn--ee):hover{background:#ffffff14}#heads-up-toolbar{z-index:var(--z-controls);border:1px solid var(--ink-09);-webkit-backdrop-filter:blur(10px);box-shadow:0 1px 4px var(--black-06);white-space:nowrap;pointer-events:all;background:#ffffffd1;border-radius:8px;align-items:center;gap:10px;margin-left:8px;padding:5px 10px;display:flex;position:absolute;top:12px;left:100%}.hut-item{cursor:pointer;align-items:center;gap:5px;display:flex}.hut-label{color:var(--ink-62);font-size:11px;font-weight:var(--fw-medium);-webkit-user-select:none;user-select:none}.vpa-workbench-btn{font-size:11px;font-weight:var(--fw-semibold);color:var(--color-accent,#f59e0b);cursor:pointer;letter-spacing:.04em;background:#f59e0b1a;border:1px solid #f59e0b47;border-radius:5px;padding:2px 8px;transition:background .15s,border-color .15s}.vpa-workbench-btn:hover{background:#f59e0b2e;border-color:#f59e0b80}[data-mode=dark] .vpa-workbench-btn{color:#f59e0b;background:#f59e0b1f;border-color:#f59e0b4d}.hut-checkbox{width:13px;height:13px;accent-color:var(--color-ink);cursor:pointer;flex-shrink:0}.vpa-theme-btn{cursor:pointer;width:24px;height:24px;color:var(--ink-62);background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:3px;transition:color .15s,background .15s;display:flex}.vpa-theme-btn:hover{background:var(--ink-08);color:var(--color-ink)}.vpa-theme-btn .sun-icon{display:none}.vpa-theme-btn .moon-icon,[data-mode=dark] .vpa-theme-btn .sun-icon{display:block}[data-mode=dark] .vpa-theme-btn .moon-icon{display:none}#canvas-watermark{z-index:var(--z-sub-popover);opacity:.2;pointer-events:none;-webkit-user-select:none;user-select:none;width:100px;margin-right:14px;position:absolute;top:14px;right:100%}#viewport-area #validation-toast{z-index:var(--z-toast);position:absolute;top:100px;left:50%;transform:translate(-50%)}#viewport-area #configurator-onboarding{z-index:var(--z-onboarding);width:min(520px,100% - 24px);position:absolute;top:14px;left:50%;transform:translate(-50%)}.dimension-label{z-index:var(--z-label);pointer-events:none;color:var(--surface-dim-85);border:1px solid var(--white-10);font-size:11px;font-weight:var(--fw-semibold);white-space:nowrap;-webkit-backdrop-filter:blur(8px);background:#0b0d10e6;border-radius:4px;padding:5px 10px;display:none;position:absolute;transform:translate(-50%,-50%)}#heightLabel{transform-origin:50%;transform:translate(-50%,-50%)rotate(-90deg)}.dimension-label{position:fixed}#configurator-onboarding{z-index:var(--z-onboarding);border:1px solid var(--white-28);-webkit-backdrop-filter:blur(18px)saturate(160%);width:min(720px,100vw - 32px);color:var(--color-ink);background:linear-gradient(#f8f9fa80 0%,#f8f9fa47 100%);border-radius:14px;justify-content:space-between;align-items:center;gap:14px;padding:12px 16px;transition:opacity .34s cubic-bezier(.2,.72,.1,1),transform .34s cubic-bezier(.2,.72,.1,1);display:flex;position:absolute;top:24px;left:50%;transform:translate(-50%);box-shadow:0 18px 42px #00000029}#dock-workflow-hint{z-index:var(--z-hint);border:1px solid var(--white-28);width:min(860px,100vw - 120px);box-shadow:0 18px 42px var(--black-12);-webkit-backdrop-filter:blur(18px)saturate(160%);color:var(--color-ink);pointer-events:none;background:linear-gradient(#f8f9fa80 0%,#f8f9fa47 100%);border-radius:14px;justify-content:center;align-items:center;gap:16px;padding:10px 14px;transition:opacity .34s cubic-bezier(.2,.72,.1,1),transform .34s cubic-bezier(.2,.72,.1,1);display:flex;position:absolute;bottom:190px;left:50%;transform:translate(-50%)}.dock-workflow-title{font-size:var(--text-xs);font-weight:var(--fw-bold);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-46);flex-shrink:0}.dock-workflow-steps{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;min-width:0;display:flex}.dock-workflow-step{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--ink-80);white-space:nowrap}.dock-workflow-divider{background:var(--ink-14);flex-shrink:0;width:18px;height:1px}#configurator-onboarding[hidden],#dock-workflow-hint[hidden]{display:none}#configurator-onboarding.is-leaving{opacity:0;pointer-events:none;transform:translate(-50%)translateY(-8px)}#configurator-onboarding.is-entering{opacity:0;transform:translate(-50%)translateY(-10px)scale(.985)}#dock-workflow-hint.is-leaving{opacity:0;transform:translate(-50%)translateY(8px)}#dock-workflow-hint.is-entering{opacity:0;transform:translate(-50%)translateY(10px)scale(.985)}.onboarding-copy{flex-direction:column;gap:4px;min-width:0;display:flex}.onboarding-title{font-size:11px;font-weight:var(--fw-bold);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-52);line-height:1.2}.onboarding-text{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--ink-84);white-space:nowrap;text-overflow:ellipsis;line-height:1.45;overflow:hidden}.onboarding-dismiss{border:1px solid var(--ink-16);background:var(--white-45);border-radius:var(--radius-pill);color:var(--color-ink);font-family:inherit;font-size:11px;font-weight:var(--fw-bold);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;flex-shrink:0;padding:7px 10px;transition:background .15s,border-color .15s}.onboarding-dismiss:hover{background:var(--white-62);border-color:var(--ink-24)}[data-mode=dark] #vc-face-label{color:#ffffffbf;text-shadow:0 1px 3px #0000008c}[data-mode=dark] #vc-reset-btn{color:#ffffffad;background:#00000059;border-color:#ffffff29}[data-mode=dark] #vc-reset-btn:hover{color:#fffffff2;background:#ffffff24;border-color:#ffffff52}[data-mode=dark] #viewport-actions{background:#ffffff0f;border-color:#e8ecf121}[data-mode=dark] #viewport-actions .hut-label{color:#f0f2f48c}[data-mode=dark] #viewport-actions .hut-checkbox{accent-color:var(--color-surface-dim)}[data-mode=dark] .vpa-divider{background:#ffffff1f}[data-mode=dark] #viewport-actions .top-ctrl-btn--ee{color:#f0f2f4d9}[data-mode=dark] .vpa-theme-btn{color:#f0f2f48c}[data-mode=dark] .vpa-theme-btn:hover{color:#f0f2f4e6;background:#ffffff14}[data-mode=dark] #viewport-area{background:#0d1116}#app[data-mode=light] .dimension-label{background:var(--white-58);color:var(--ink-75);border-color:var(--white-62);box-shadow:inset 0 1px 0 var(--white-72)}@media (width<=767px){#vc-face-label{display:none}#vc-reset-btn{bottom:20px;left:14px!important}}.vpa-ctx-toggle{background:var(--ink-06,#0000000d);border-radius:6px;align-items:center;gap:0;padding:2px;display:flex}.vpa-ctx-slot{display:flex;position:relative}.vpa-ctx-btn{font-size:11px;font-weight:var(--fw-medium,500);color:var(--ink-62,#0000008c);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:4px;padding:3px 7px;line-height:1;transition:background .12s,color .12s}.vpa-ctx-btn:hover{background:var(--ink-09,#00000014);color:var(--ink-90,#000000d9)}.vpa-ctx-btn.is-active{color:var(--ink-90,#000000d9);background:#fff;box-shadow:0 1px 3px #0000001f}.vpa-ctx-popover{min-width:152px;z-index:var(--z-sub-popover);background:#fffffff5;border:1px solid #0000001a;border-radius:10px;gap:6px;padding:8px;display:grid;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 14px 30px #00000029}#screenInstallMenu[hidden]{display:none!important}#screenInstallMenu.is-open{display:grid}.vpa-ctx-popover-btn{width:100%;color:var(--ink-90,#000000d9);font:inherit;font-size:11px;font-weight:var(--fw-medium,500);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:7px;padding:7px 9px;transition:background .12s,color .12s}.vpa-ctx-popover-btn:hover,.vpa-ctx-popover-btn.is-active{background:var(--ink-09,#00000014)}.vpa-ctx-btn:disabled,.vpa-ctx-btn[aria-disabled=true]{opacity:.35;cursor:not-allowed;pointer-events:none}[data-mode=dark] .vpa-ctx-toggle{background:#ffffff14}[data-mode=dark] .vpa-ctx-btn{color:#ffffff8c}[data-mode=dark] .vpa-ctx-btn:hover{color:#ffffffe6;background:#ffffff1a}[data-mode=dark] .vpa-ctx-btn.is-active{color:#fff;background:#ffffff26;box-shadow:0 1px 3px #0000004d}[data-mode=dark] .vpa-ctx-popover{background:#12161ef5;border-color:#e8ecf121;box-shadow:0 16px 32px #0000006b}[data-mode=dark] .vpa-ctx-popover-btn{color:#ffffffd6}[data-mode=dark] .vpa-ctx-popover-btn:hover,[data-mode=dark] .vpa-ctx-popover-btn.is-active{background:#ffffff1a}#right-panel{border-left:1px solid var(--ink-09);background:#f8f9fa;flex-direction:column;min-height:0;display:flex;overflow:hidden}#right-panel-scroll{scrollbar-width:thin;scrollbar-color:var(--ink-14) transparent;flex:1;padding:0 0 20px;overflow:hidden auto}#right-panel-scroll::-webkit-scrollbar{width:4px}#right-panel-scroll::-webkit-scrollbar-thumb{background:var(--ink-14);border-radius:2px}#right-panel{z-index:10;will-change:transform;width:292px;transition:transform .28s cubic-bezier(.4,0,.2,1);position:absolute;top:0;bottom:0;right:0;overflow:visible}#right-panel.panel--collapsed{background:0 0;border-left-color:#0000;transform:translate(calc(100% - 24px))}#right-panel.panel--collapsed #right-panel-scroll,#right-panel.panel--collapsed .rp-header{display:none}#right-panel.panel--collapsed .panel-collapse-btn svg{transform:scaleX(-1)}.panel-collapse-label{display:none}.panel-collapse-btn{z-index:10;border:1px solid var(--ink-09);width:24px;height:24px;color:var(--ink-40);cursor:pointer;background:#f8f9fa;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s,box-shadow .15s;display:flex;position:absolute;top:50%;right:-12px;transform:translateY(-50%);box-shadow:0 1px 4px #0000001a}.panel-collapse-btn:hover{background:var(--color-surface-mid);color:var(--ink-70);box-shadow:0 2px 6px #00000024}.panel-collapse-btn--right{left:-12px;right:auto}.rp-header{border-bottom:1px solid var(--ink-08);z-index:2;background:#f8f9fa;align-items:center;gap:10px;padding:14px 14px 12px;display:flex;position:sticky;top:0}.rp-header-icon{background:var(--ink-05);border:1px solid var(--ink-09);width:28px;height:28px;color:var(--ink-52);border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.rp-header-title{font-size:12px;font-weight:var(--fw-semibold);color:var(--ink-88);letter-spacing:.01em}.rp-header-subtitle{color:var(--ink-42);margin-top:1px;font-size:10px}.rp-model-card{background:var(--ink-05);border:1px solid var(--ink-08);border-radius:10px;margin:10px 12px 4px;padding:10px 12px}.rp-model-row{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.rp-model-name{font-size:13px;font-weight:var(--fw-bold);color:var(--ink-88);letter-spacing:.04em}.rp-foa-badge{font-size:10px;font-weight:var(--fw-semibold);color:var(--ink-62);background:var(--ink-07);border:1px solid var(--ink-10);white-space:nowrap;border-radius:4px;padding:2px 6px}.rp-model-class{color:var(--ink-48);font-size:10px;line-height:1.4}.rp-section{border-top:1px solid var(--ink-07);margin-top:2px;padding:10px 12px 6px}.rp-section-label{font-size:10px;font-weight:var(--fw-semibold);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-42);margin-bottom:8px}.rp-stat-row{justify-content:space-between;align-items:center;padding:3px 0;display:flex}.rp-stat-row--em .rp-stat-val{color:var(--ink-88);font-weight:var(--fw-semibold)}.rp-stat-label{color:var(--ink-55);font-size:11px}.rp-stat-val{color:var(--ink-75);font-size:12px;font-weight:var(--fw-medium);align-items:baseline;gap:3px;display:flex}.rp-stat-unit{color:var(--ink-42);font-size:10px}.rp-spacing-desc{color:var(--ink-42);margin-top:6px;font-size:10px;line-height:1.45}.end-cap-toggle-group{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.end-cap-btn{border:1px solid var(--ink-10);background:var(--ink-05);min-height:28px;color:var(--ink-62);font:inherit;font-size:10px;font-weight:var(--fw-semibold);letter-spacing:.03em;cursor:pointer;border-radius:8px;transition:background .15s,border-color .15s,color .15s}.end-cap-btn:hover{background:var(--ink-07);color:var(--ink-82)}.end-cap-btn.is-active{background:var(--ink-12);border-color:var(--ink-16);color:var(--ink-88)}.rp-input-group{flex-direction:column;gap:4px;display:flex}.rp-input-label{color:var(--ink-55);font-size:11px;font-weight:var(--fw-medium)}.rp-input-row{align-items:center;gap:6px;display:flex}.rp-vel-input{border:1px solid var(--ink-12);min-width:0;color:var(--color-ink);font-family:inherit;font-size:13px;font-weight:var(--fw-medium);-moz-appearance:textfield;background:#fff;border-radius:6px;outline:none;flex:1;padding:6px 8px;transition:border-color .15s}.rp-vel-input::-webkit-inner-spin-button{-webkit-appearance:none}.rp-vel-input::-webkit-outer-spin-button{-webkit-appearance:none}.rp-vel-input:focus{border-color:var(--ink-32);background:#fff}.rp-input-unit{color:var(--ink-46);flex-shrink:0;min-width:28px;font-size:11px}.rp-error{color:var(--color-danger);min-height:14px;font-size:10px}.rp-error--hint{color:var(--ink-40,#0006)}.rp-feature-row{align-items:baseline;gap:5px;margin-bottom:2px;display:flex}.rp-feature-value{font-size:22px;font-weight:var(--fw-bold);color:var(--ink-88);letter-spacing:-.01em;line-height:1}.rp-feature-unit{color:var(--ink-52);font-size:12px;font-weight:var(--fw-medium)}.rp-feature-hint{color:var(--ink-42);font-size:10px;line-height:1.5}.rp-notes-list{flex-direction:column;gap:6px;margin:0;padding-left:0;list-style:none;display:flex}.rp-note-item{color:var(--ink-62);padding-left:14px;font-size:11px;line-height:1.45;position:relative}.rp-note-item:before{content:"-";position:absolute;top:0;left:0}.rp-footnote{border-top:1px solid var(--ink-8,#00000014);margin-top:16px;padding:12px 12px 48px}.rp-footnote-text{color:var(--ink-30,#0000004d);margin-bottom:2px;font-size:9px;line-height:1.6}.rp-panel-disclaimer{color:var(--ink-42);border-bottom:1px solid var(--ink-06,#0000000f);margin-bottom:4px;padding:8px 12px 10px;font-size:10px;line-height:1.55}.rp-stat-val--warn{color:#f59e0b}#right-panel.right-panel--screening .rp-model-card,#right-panel.right-panel--screening .rp-section{display:none}#right-panel.right-panel--screening .rp-screening-notice{display:flex}.select-wrap--custom{position:relative}#profilePopover,#framePopover{z-index:var(--z-popover);border:1px solid var(--ink-10);box-shadow:0 4px 16px var(--black-08), 0 1px 4px var(--black-06);background:#fff;border-radius:10px;width:240px;min-width:240px;max-width:280px;position:absolute;inset:calc(100% + 6px) auto auto 0;overflow:hidden;transform:none}.profile-trigger{border:1px solid var(--ink-12);width:100%;color:var(--ink-82);font-family:inherit;font-size:13px;font-weight:var(--fw-medium);cursor:pointer;background:#fff;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 10px;transition:background .15s,border-color .15s,box-shadow .15s;display:flex}#app[data-mode=light] .profile-trigger:hover{background:#fff;border-color:#1c1f243d;box-shadow:inset 0 1px #ffffffeb,0 0 0 2px #1c1f2414}.profile-trigger-chevron{opacity:.55;border-bottom:1.5px solid;border-right:1.5px solid;flex-shrink:0;width:9px;height:9px;transform:rotate(45deg)translate(-1px,-1px)}.profile-option{width:100%;color:var(--ink-62);font-family:inherit;font-size:12px;font-weight:var(--fw-medium);text-align:left;cursor:pointer;background:0 0;border:none;padding:8px 12px;transition:background .12s,color .12s;display:block}.profile-option:hover{background:var(--ink-05);color:var(--ink-88)}.profile-option.is-active{color:var(--ink-88);font-weight:var(--fw-semibold);background:var(--ink-07)}.profile-option:disabled,.profile-option[aria-disabled=true]{color:var(--ink-34);cursor:not-allowed;opacity:.55;background:0 0}.profile-option:disabled:hover,.profile-option[aria-disabled=true]:hover{color:var(--ink-34);background:0 0}.blade-count-btn{border:1px solid var(--ink-12);width:28px;height:28px;color:var(--ink-62);cursor:pointer;background:#fff;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-family:inherit;font-size:16px;transition:background .12s;display:flex}.blade-count-btn:hover{background:var(--color-surface);color:var(--ink-84)}.blade-count-value{text-align:center;flex:0 0 48px;width:48px}[data-mode=dark] #right-panel{background:#111720;border-color:#e8ecf117}[data-mode=dark] .rp-header{background:#111720}[data-mode=dark] .panel-collapse-btn{background:#1c2432;border-color:#e8ecf11f}[data-mode=dark] .panel-collapse-btn:hover{background:#252e42}[data-mode=dark] .rp-vel-input{color:#e8ecf1;background:#ffffff0f;border-color:#e8ecf121}[data-mode=dark] .rp-vel-input:focus{background:#ffffff17;border-color:#e8ecf14d}[data-mode=dark] .blade-count-btn{background:#ffffff0f;border-color:#e8ecf121}[data-mode=dark] .blade-count-btn:hover{background:#ffffff1a}[data-mode=dark] .profile-trigger{background:#ffffff0f;border-color:#e8ecf121}[data-mode=dark] .profile-trigger:hover{background:#ffffff1a;border-color:#e8ecf138}[data-mode=dark] #profilePopover,[data-mode=dark] #framePopover{background:linear-gradient(#23272e 0%,#1c1f24 100%);border-color:#e8ecf121;box-shadow:0 8px 28px #0000008c}[data-mode=dark] .profile-option{color:#e8ecf199}[data-mode=dark] .profile-option:hover{color:#e8ecf1eb;background:#ffffff12}[data-mode=dark] .profile-option.is-active{color:#e8ecf1eb;background:#ffffff1a}[data-mode=dark] .rp-footnote{border-top-color:#ffffff14}[data-mode=dark] .rp-note-item{color:#e8ecf1b8}[data-mode=dark] .rp-footnote-text{color:#ffffff47}#app[data-workflow=quote] #airflowResultsPanel,#app[data-workflow=quote] #screenResultsPanel,#app[data-workflow=quote] #accessResultsPanel,#app[data-workflow=quote] #rp-screening-notice{display:none!important}#quote-summary-panel{padding:0 12px 24px;display:none}#app[data-workflow=quote] #quote-summary-panel{display:block}.qs-identity{border-bottom:1px solid var(--ink-09);margin-bottom:14px;padding:12px 0}.qs-product-label{color:var(--ink-90);margin-bottom:3px;font-size:16px;font-weight:700;line-height:1.2}.qs-product-sub{color:var(--ink-46);font-size:11.5px;line-height:1.4}.qs-spec-section{margin-bottom:14px}.qs-section-title{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-32);margin-bottom:5px;font-size:10px;font-weight:700}.qs-row{border-bottom:1px solid var(--ink-05);justify-content:space-between;align-items:baseline;gap:8px;padding:4px 0;display:flex}.qs-label{color:var(--ink-46);flex-shrink:0;font-size:12px}.qs-val{color:var(--ink-80);text-align:right;font-size:12px;font-weight:600}.qs-readiness-block{border:1px solid var(--ink-05);background:#0000000a;border-radius:8px;margin:14px 0;padding:10px 12px}.qs-readiness-state{color:var(--ink-80);font-size:12px;font-weight:600}.qs-readiness-state[data-level=ready]{color:#16a34a}.qs-readiness-state[data-level=ready-with-notes]{color:#d97706}.qs-readiness-state[data-level=blocked]{color:#dc2626}.qs-readiness-state[data-level=incomplete]{color:var(--ink-46)}.qs-readiness-note{color:var(--ink-55);margin-top:5px;font-size:11px;line-height:1.45}.qs-cta-wrap{margin-top:16px}.qs-cta-btn{color:#000;letter-spacing:.01em;cursor:pointer;background:#f59e0b;border:none;border-radius:8px;width:100%;padding:10px 16px;font-size:13px;font-weight:700;transition:background .15s;display:block}.qs-cta-btn:hover{background:#d97706}.qs-cta-btn:disabled{background:var(--ink-10);color:var(--ink-32);cursor:not-allowed}.qs-cta-note{color:var(--ink-32);text-align:center;margin:5px 0 0;font-size:10px}[data-mode=dark] .qs-identity{border-bottom-color:#e8ecf117}[data-mode=dark] .qs-product-label{color:#e8ecf1e6}[data-mode=dark] .qs-product-sub{color:#e8ecf175}[data-mode=dark] .qs-section-title{color:#e8ecf152}[data-mode=dark] .qs-row{border-bottom-color:#e8ecf10f}[data-mode=dark] .qs-label{color:#e8ecf175}[data-mode=dark] .qs-val{color:#e8ecf1cc}[data-mode=dark] .qs-readiness-block{background:#ffffff0a;border-color:#e8ecf114}[data-mode=dark] .qs-readiness-state{color:#e8ecf1cc}[data-mode=dark] .qs-readiness-state[data-level=ready]{color:#4ade80}[data-mode=dark] .qs-readiness-state[data-level=ready-with-notes]{color:#fbbf24}[data-mode=dark] .qs-readiness-state[data-level=blocked]{color:#f87171}[data-mode=dark] .qs-readiness-note{color:#e8ecf18c}[data-mode=dark] .qs-cta-note{color:#e8ecf152}#dock-container{z-index:var(--z-dock);align-items:stretch;gap:10px;transition:transform .22s;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}#bottom-dock{border:1px solid var(--white-28);box-shadow:var(--shadow-float);isolation:isolate;-webkit-backdrop-filter:var(--blur-heavy);background:linear-gradient(#f8f9fa80 0%,#f8f9fa42 100%);border-radius:24px;flex-wrap:nowrap;align-items:flex-start;gap:10px;padding:12px 14px;display:flex;position:relative;overflow:visible}#bottom-dock>*{z-index:1;position:relative}.bottom-dock-title{writing-mode:vertical-rl;font-size:var(--text-sm);font-weight:var(--fw-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-52);pointer-events:none;white-space:nowrap;-webkit-user-select:none;user-select:none;flex-shrink:0;align-self:center;transform:rotate(180deg)}#dock-summary-pill{border:1px solid var(--white-28);box-shadow:var(--shadow-float);-webkit-backdrop-filter:var(--blur-heavy);isolation:isolate;background:linear-gradient(#f8f9fa80 0%,#f8f9fa42 100%);border-radius:24px;flex-direction:column;flex-shrink:0;align-items:stretch;min-width:170px;padding:16px 18px;display:flex;position:relative;overflow:visible}.dsb-header{text-align:center;flex:1;justify-content:center;align-items:center;padding:0;display:flex}.dsb-profile-name{font-size:var(--text-md);font-weight:var(--fw-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink)}.dsb-divider{background:var(--ink-09);flex:0 0 1px;margin:0 -18px}.dsb-rows{flex-direction:column;flex:3;justify-content:space-between;display:flex}.dsb-row{flex:1;align-items:center;gap:10px;padding:7px 0;display:flex}.dsb-row:not(:last-child){border-bottom:1px solid var(--ink-07)}.dsb-row-icon{color:var(--ink-35);flex-shrink:0}.dsb-row-data{flex-direction:column;gap:1px;display:flex}.dsb-row-value{font-size:var(--text-base);font-weight:var(--fw-semibold);color:var(--color-ink);white-space:nowrap;line-height:1.2}.dsb-row-label{font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--ink-42)}.dsb-back-btn{border:1px solid var(--white-50);width:28px;height:28px;color:var(--ink-55);cursor:pointer;box-shadow:0 2px 8px var(--black-12);-webkit-backdrop-filter:blur(12px);background:linear-gradient(#f8f9faeb 0%,#ebeef1db 100%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .14s,color .14s;display:flex;position:absolute;top:50%;right:-20px;transform:translateY(-50%)}.dsb-back-btn:hover{background:var(--ink-10);color:var(--color-ink)}.dsb-back-btn{display:none}.dock-subnote{font-size:var(--text-xs);opacity:.6;text-align:center;white-space:nowrap;margin-top:4px;line-height:1.1}#app.dock-combined-mode #dock-container{flex-direction:row;align-items:stretch;gap:10px}#app.dock-combined-mode #dock-summary-pill,#app.dock-combined-mode .bottom-dock-title,#app.dock-combined-mode .results-dock-title,#app.dock-combined-mode #dock-colour-pill{display:none!important}#app.dock-combined-mode #bottom-dock{flex-direction:row;align-items:center;gap:10px;width:auto;min-height:0;padding:10px 14px;opacity:1!important;display:flex!important;transform:none!important}#app.dock-combined-mode #erp{width:360px;min-height:236px;transition:width .28s,opacity .22s,transform .22s;top:50%;right:20px;opacity:1!important;pointer-events:auto!important;display:flex!important;transform:translateY(-50%)!important}#app.dock-combined-mode #erp.erp--has-velocity{width:580px}.dock-inputs-header{display:none}#app.dock-combined-mode .dock-inputs-header{text-align:left;white-space:nowrap;border-bottom:none;flex-shrink:0;justify-content:center;align-items:center;gap:7px;min-height:0;padding:0 10px 0 2px;display:flex}#app.dock-combined-mode .dock-group--airflow{display:none!important}#app.dock-combined-mode .dock-side{flex-direction:row;flex:none;justify-content:flex-start;align-items:center;gap:10px;width:auto;padding:0}#app.dock-combined-mode .dock-group{flex:none;justify-content:flex-start;align-items:center;width:auto;height:90px;padding:10px 12px;min-width:0!important;min-height:90px!important}#app.dock-combined-mode .dock-label{font-size:var(--text-xs);font-weight:var(--fw-bold);letter-spacing:.06em;text-transform:uppercase;min-height:12px;color:var(--ink-42);line-height:1.1}#app.dock-combined-mode .dock-velocity-hint{font-size:var(--text-xs);white-space:nowrap;max-width:260px;color:var(--ink-38);margin-top:-10px;line-height:1.05;display:block}#app.dock-combined-mode .dock-velocity-hint.is-hidden{display:none!important}#app.dock-combined-mode .dock-dim-row{flex-wrap:nowrap;align-items:center;gap:10px}#app.dock-combined-mode .dock-dim-main{flex:none;justify-content:center}#app.dock-combined-mode .dock-dim-divider{display:none!important}#app.dock-combined-mode .dock-meta-block--inline{flex-shrink:0;justify-content:center;align-items:center;width:auto;min-width:110px}#app.dock-combined-mode .dock-group--dimensions{min-width:430px}#app.dock-combined-mode .dock-group--profile{min-width:170px}#app.dock-combined-mode .dock-group--velocity{min-width:180px}#app.dock-combined-mode .dock-group--airflow{min-width:90px}#app.dock-combined-mode .dock-dim-head{justify-content:flex-start}#app.dock-combined-mode .erp-cols{flex:1;align-items:stretch}#app.dock-combined-mode .erp-model-card{border-radius:var(--radius-lg);background:var(--white-14);border:1px solid var(--white-26);box-shadow:inset 0 1px 0 var(--white-42);flex:none;padding:3px 10px}#app.dock-combined-mode .erp-top{min-height:56px;padding:8px 18px 9px}#app.dock-combined-mode .erp-col{gap:1px;padding:3px 14px}#app.dock-combined-mode .erp-col--airflow-rate,#app.dock-combined-mode .erp-col--pressure-drop,#app.dock-combined-mode .erp-col--velocity{flex:0 0 118px}#app.dock-combined-mode .erp-card--row{border-radius:var(--radius-lg);background:var(--white-14);border:1px solid var(--white-26);min-height:25px;box-shadow:inset 0 1px 0 var(--white-42);padding:1px 8px}#app.dock-combined-mode .erp-card-val{font-size:15px;line-height:1}#app.dock-combined-mode .erp-col-label{font-size:var(--text-xs);font-weight:var(--fw-bold);letter-spacing:.06em;min-height:16px;color:var(--ink-42);white-space:nowrap;align-items:center;display:flex}#app.dock-combined-mode .erp-footer{padding:0 16px 1px}#app.dock-combined-mode .erp-card-lbl{font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--ink-42);line-height:1}#app.dock-combined-mode .erp-card-unit{font-size:var(--text-xs);color:var(--ink-42);line-height:1}#app.dock-combined-mode .erp-card--em{background:var(--white-14);border-color:var(--white-26);box-shadow:inset 0 1px 0 var(--white-42)}#app.dock-combined-mode .erp-col-label-row{justify-content:flex-start;align-items:center;min-height:16px}#app.dock-combined-mode .erp-model-class{color:var(--ink-42);font-size:9px;line-height:1.05}#app.dock-combined-mode .erp-model-name{font-size:var(--text-base);text-transform:uppercase;line-height:1.2}#app.dock-combined-mode .erp-foa-badge{font-size:var(--text-xs)}#app.dock-combined-mode #erp.erp--has-velocity .erp-model-card{background:var(--white-06);border:1px solid var(--white-10);border-radius:var(--radius-lg);width:100%;max-width:252px;min-height:52px;box-shadow:inset 0 1px 0 var(--white-48);flex-direction:column;justify-content:center;align-items:center;gap:3px;margin-left:auto;margin-right:auto;padding:8px 12px 7px}#app.dock-combined-mode #erp.erp--has-velocity .erp-model-class{text-align:left;width:100%;font-size:var(--text-xs);color:var(--ink-48);line-height:1.2;display:block}#app.dock-combined-mode #erp.erp--has-velocity .erp-model-row{justify-content:space-between;align-items:center;gap:10px;width:100%}#app.dock-combined-mode #erp.erp--has-velocity .erp-foa-badge{background:var(--ink-08);border:1px solid var(--ink-10);border-radius:var(--radius-pill);color:var(--ink-62);padding:2px 8px}#app.dock-combined-mode .dock-group--profile{flex-direction:column;justify-content:flex-start;align-items:center;display:flex}#app.dock-combined-mode .dock-group--profile .select-wrap{width:100%}#app.dock-combined-mode #frameDepthNote{text-align:center;white-space:nowrap;width:100%;margin-top:6px;display:block}#app.dock-combined-mode .dock-group--profile .profile-trigger{width:100%}#erp{transition:width .28s,min-height .28s,padding .28s,opacity .24s,transform .24s}#erp .erp-col{transition:opacity .24s,max-width .28s,padding .28s,margin .28s}#erp .erp-col--vel-dep{opacity:1;max-width:260px;overflow:hidden}#erp:not(.erp--has-velocity) .erp-col--vel-dep{opacity:0;pointer-events:none;max-width:0;margin:0;padding-left:0;padding-right:0}#erp.erp--has-velocity .erp-col--vel-dep{display:flex}#erp:not(.erp--has-velocity){border-radius:22px;width:420px;height:auto;min-height:auto;padding:20px 20px 16px}#erp:not(.erp--has-velocity) .erp-top{border:0;justify-content:flex-start;margin-bottom:12px;padding:0}#erp:not(.erp--has-velocity) .erp-top-title{text-align:left;justify-content:flex-start;gap:10px}#erp:not(.erp--has-velocity) .erp-title{font-size:15px;line-height:1.2}#erp:not(.erp--has-velocity) .erp-subtitle{font-size:var(--text-sm);opacity:.72;margin-top:4px;line-height:1.25}#erp:not(.erp--has-velocity) .erp-cols{margin-top:0;display:block}#erp:not(.erp--has-velocity) .erp-col--model{border-right:none;grid-template-areas:"model""label""stack""footer";justify-content:flex-start;align-items:stretch;gap:12px;width:100%;height:auto;min-height:auto;display:grid}#erp:not(.erp--has-velocity) .erp-model-card{box-sizing:border-box;border-radius:14px;flex-direction:column;grid-area:model;gap:10px;width:100%;min-height:auto;padding:16px;display:flex}#erp:not(.erp--has-velocity) .erp-model-row{justify-content:space-between;align-items:center;gap:12px;display:flex}#erp:not(.erp--has-velocity) .erp-model-name{font-size:var(--text-md);font-weight:var(--fw-bold);line-height:1.2}#erp:not(.erp--has-velocity) .erp-foa-badge{flex-shrink:0}#erp:not(.erp--has-velocity) .erp-model-class{font-size:var(--text-sm);opacity:.82;line-height:1.3}#erp:not(.erp--has-velocity) .erp-col-label{font-size:var(--text-sm);font-weight:var(--fw-bold);letter-spacing:.06em;text-transform:uppercase;opacity:.82;grid-area:label;margin:2px 0 0}#erp:not(.erp--has-velocity) .erp-empty-stack{grid-area:stack;grid-template-columns:1fr 1fr;gap:14px;width:100%;display:grid}#erp:not(.erp--has-velocity) .erp-empty-stack .erp-card{border-radius:var(--radius-md);text-align:center;flex-direction:column;justify-content:center;align-items:center;height:auto;min-height:88px;padding:14px 16px;display:flex}#erp:not(.erp--has-velocity) .erp-empty-stack .erp-card-lbl{text-align:center;width:100%;font-size:var(--text-sm);opacity:.8;margin:0;line-height:1.2;display:block}#erp:not(.erp--has-velocity) .erp-empty-stack .erp-card-val{text-align:center;justify-content:center;align-items:baseline;gap:4px;width:100%;margin-top:10px;display:flex}#erp:not(.erp--has-velocity) .erp-empty-stack .erp-card-val>span:first-child{font-size:17px;font-weight:var(--fw-bold);line-height:1}#erp:not(.erp--has-velocity) .erp-empty-stack .erp-card-unit{font-size:var(--text-sm);opacity:.8}#erp:not(.erp--has-velocity) .erp-card--em{color:inherit}#erp:not(.erp--has-velocity) .erp-footer{border-top:1px solid var(--ink-12);flex-direction:column;grid-area:footer;gap:4px;margin-top:2px;padding-top:14px;display:flex}#erp:not(.erp--has-velocity) #erp-kfactor{display:none}#erp:not(.erp--has-velocity) #erp-opening-dims{font-size:var(--text-sm);opacity:.82;text-align:left;line-height:1.35}#erp.erp--has-velocity .erp-cols,#erp.erp--has-velocity .erp-footer{display:flex}.dsb-corner-btn{clip-path:polygon(0% 0%,100% 0%,100% 100%);background:var(--ink-07);cursor:pointer;z-index:2;border:none;width:36px;height:36px;padding:0;transition:background .15s;position:absolute;top:0;right:0}.dsb-corner-btn:hover{background:var(--ink-14)}.dsb-header,.dsb-divider,.dsb-rows{transition:opacity .2s}#dock-summary-pill.dsb--expanded .dsb-header,#dock-summary-pill.dsb--expanded .dsb-divider,#dock-summary-pill.dsb--expanded .dsb-rows{opacity:0;pointer-events:none}.dsb-expanded-panel{opacity:0;pointer-events:none;clip-path:inset(0 round 24px);flex-direction:column;padding:16px 18px;transition:opacity .2s;display:flex;position:absolute;inset:0}#dock-summary-pill.dsb--expanded .dsb-expanded-panel{opacity:1;pointer-events:auto}.dsb-ep-header{flex:1;justify-content:center;align-items:center;display:flex}.dsb-ep-divider{background:var(--ink-09);flex:0 0 1px;margin:0 -18px}.dsb-ep-rows{flex-direction:column;flex:3;justify-content:space-between;display:flex}.dsb-ep-row{border-bottom:1px solid var(--ink-07);flex:1;justify-content:space-between;align-items:center;gap:8px;display:flex}.dsb-ep-row:last-child{border-bottom:none}.dsb-ep-label{font-size:var(--text-xs);font-weight:var(--fw-semibold);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-42);flex-shrink:0}.dsb-ep-field{align-items:baseline;gap:3px;display:flex}.dsb-ep-input{width:68px;font-size:var(--text-md);font-weight:var(--fw-semibold);color:var(--color-ink);text-align:right;font-variant-numeric:tabular-nums;appearance:textfield;background:0 0;border:none;outline:none}.dsb-ep-input::-webkit-outer-spin-button{appearance:none;margin:0}.dsb-ep-input::-webkit-inner-spin-button{appearance:none;margin:0}.dsb-ep-unit{font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--ink-42);white-space:nowrap}#dock-results-card{background:var(--white-88);border-radius:var(--radius-xl);box-shadow:0 8px 32px var(--black-08), 0 2px 8px #0000000a;-webkit-backdrop-filter:blur(18px)saturate(140%);border:1px solid #00000012;align-items:stretch;min-height:70px;display:flex;overflow:hidden}.drc-cell{border-right:1px solid var(--black-06);flex-direction:column;justify-content:center;gap:1px;padding:10px 16px;display:flex}.drc-cell:last-child{border-right:none}.drc-cell--model{background:#00000006;gap:4px;min-width:150px}.drc-model-header{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.drc-model-name{font-size:var(--text-base);font-weight:var(--fw-bold);color:var(--color-ink)}.drc-foa-badge{font-size:var(--text-xs);font-weight:var(--fw-bold);background:var(--color-warning);color:#fff;letter-spacing:.02em;border-radius:4px;padding:1px 5px}.drc-model-class{font-size:var(--text-xs);color:var(--ink-48);font-weight:var(--fw-medium)}.drc-cell-label{font-size:var(--text-xs);font-weight:var(--fw-semibold);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-42);margin-bottom:2px}.drc-row{align-items:baseline;gap:3px;display:flex}.drc-value{font-size:18px;font-weight:var(--fw-bold);color:var(--color-ink);font-variant-numeric:tabular-nums;line-height:1}.drc-value--sm{font-size:var(--text-base)}.drc-unit{color:var(--ink-48);font-size:11px;font-weight:var(--fw-medium)}.drc-subrow{opacity:.8;align-items:baseline;gap:3px;margin-top:3px;display:flex}.drc-no-velocity{color:var(--ink-42);font-size:11px;font-style:italic}.drc-expand-btn{border:none;border-left:1px solid var(--black-06);width:32px;color:var(--ink-38);cursor:pointer;background:0 0;border-radius:0 20px 20px 0;flex-shrink:0;justify-content:center;align-self:stretch;align-items:center;transition:color .14s,background .14s;display:flex}.drc-expand-btn:hover{color:var(--color-ink);background:#00000008}.drc-expand-btn.is-active{color:var(--color-ink);background:#0000000d}#erp{border:1px solid var(--white-28);box-shadow:var(--shadow-float);-webkit-backdrop-filter:var(--blur-heavy);isolation:isolate;z-index:var(--z-erp);background:linear-gradient(#f8f9fa80 0%,#f8f9fa42 100%);border-radius:24px;flex-direction:column;flex-shrink:0;align-items:stretch;display:flex;position:absolute;top:50%;right:20px;overflow:hidden;transform:translateY(-50%)}.erp-body{display:contents}.erp-footer{border-top:1px solid var(--ink-07);justify-content:space-between;align-items:center;gap:16px;padding:6px 20px 9px;display:flex}#dock-colour-pill{border:1px solid var(--white-28);box-shadow:var(--shadow-float);-webkit-backdrop-filter:var(--blur-heavy);isolation:isolate;opacity:0;transition:var(--transition-fade);pointer-events:none;background:linear-gradient(#f8f9fa80 0%,#f8f9fa42 100%);border-radius:24px;flex-shrink:0;align-items:center;gap:10px;padding:12px 14px;display:flex;transform:translateY(6px)}#dock-container.results-mode{gap:34px}#dock-container.results-mode #dock-colour-pill{opacity:1;pointer-events:auto;transform:translateY(0)}.dcp-swatch{border:2px solid var(--white-60);background:#ccc;border-radius:50%;flex-shrink:0;width:28px;height:28px;box-shadow:0 1px 4px #00000024}.dcp-label{font-size:var(--text-xs);font-weight:var(--fw-semibold);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-42)}.dcp-name{font-size:var(--text-base);font-weight:var(--fw-semibold);color:var(--ink-62);white-space:nowrap}.erp-top{text-align:center;border-bottom:1px solid var(--white-28);flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;padding:11px 16px 10px;display:flex}.erp-top-title{justify-content:center;align-items:center;gap:7px;display:flex}.erp-header-icon{color:var(--ink-35);flex-shrink:0;margin-top:1px}.erp-title{font-size:16px;font-weight:var(--fw-bold);color:var(--ink-88);line-height:1.2}.erp-subtitle{font-size:var(--text-xs);color:var(--ink-40);font-weight:var(--fw-medium);line-height:1.3}.erp-cols{flex-direction:row;flex:1;align-items:stretch;min-height:0;display:flex}.erp-col{border-right:1px solid var(--white-28);flex-direction:column;justify-content:flex-start;align-items:center;gap:7px;min-width:0;padding:10px 14px;display:flex}.erp-col>*{width:100%}.erp-col:last-child{border-right:none}.erp-col--model{background:var(--white-08);align-items:flex-start;min-width:180px}.erp-model-card{background:var(--white-22);border:1px solid var(--white-32);border-radius:var(--radius-md);flex-direction:column;flex:1;justify-content:center;gap:4px;padding:8px 11px;display:flex}.erp-model-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.erp-model-name{font-size:var(--text-base);font-weight:var(--fw-bold);color:var(--ink-82);letter-spacing:.01em;text-transform:uppercase}.erp-foa-badge{font-size:var(--text-xs);font-weight:var(--fw-bold);background:var(--ink-08);border:1px solid var(--ink-10);color:var(--ink-62);border-radius:var(--radius-pill);letter-spacing:.02em;white-space:nowrap;padding:2px 8px}.erp-model-class{font-size:var(--text-xs);color:var(--ink-48);font-weight:var(--fw-medium)}.erp-col-label-row{align-items:center;gap:5px;display:flex}.erp-col-label{font-size:var(--text-xs);font-weight:var(--fw-bold);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-42)}.erp-cards{gap:5px;display:flex}.erp-card{background:var(--white-18);border:1px solid var(--white-30);box-shadow:inset 0 1px 0 var(--white-48);border-radius:var(--radius-md);flex-direction:column;flex:1;align-items:center;gap:4px;min-width:0;padding:8px 10px;display:flex}.erp-card--em{background:var(--ink-05);border-color:var(--ink-08);box-shadow:inset 0 1px 0 var(--white-60)}.erp-card--muted{background:var(--white-12);border-color:var(--white-22);box-shadow:inset 0 1px 0 var(--white-38)}.erp-card--muted .erp-card-val{color:var(--ink-62)}.erp-card--row{background:var(--white-18);border:1px solid var(--white-30);box-shadow:inset 0 1px 0 var(--white-48);border-radius:var(--radius-md);flex-direction:row;justify-content:space-between;align-self:stretch;align-items:center;gap:16px;padding:6px 10px}.erp-card--row:last-child{border-bottom:none}.erp-card-lbl{font-size:var(--text-xs);font-weight:var(--fw-semibold);letter-spacing:.04em;color:var(--ink-42)}.erp-card-val{white-space:nowrap;font-size:16px;font-weight:var(--fw-bold);color:var(--ink-82);font-variant-numeric:tabular-nums;flex-wrap:nowrap;align-items:baseline;gap:2px;line-height:1;display:flex}.erp-card-unit{font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--ink-42)}.erp-foot-note{font-size:var(--text-xs);color:var(--ink-35);font-weight:var(--fw-medium);line-height:1.4}#airflow-estimate-panel{display:none!important}#dock-summary-pill,#erp{opacity:0;transition:var(--transition-fade);pointer-events:none;transform:translateY(6px)}#dock-container.results-mode #dock-summary-pill,#app.results-mode #erp{opacity:1;pointer-events:auto;transform:translateY(0)}.results-dock-title{opacity:0;transition:var(--transition-fade);pointer-events:none;transform:rotate(180deg)translateY(-6px)}#app.results-mode .results-dock-title{opacity:1;pointer-events:none;transform:rotate(180deg)translateY(0)}#bottom-dock{transition:opacity .18s,transform .18s}#dock-container.results-mode #bottom-dock{opacity:0;pointer-events:none;transform:translateY(4px)}.dock-side{flex-wrap:nowrap;align-items:stretch;gap:12px;min-width:0;display:flex}.dock-side:first-child{order:1}.dock-side--right{order:2;align-items:flex-start;gap:12px}.dock-side--right .dock-group{min-width:0}.dock-side--right .dock-qty-row,.dock-side--right .dock-colour-trigger{width:100%}.dock-group{border-radius:var(--radius-lg);background:var(--white-18);border:1px solid var(--white-30);min-height:90px;box-shadow:inset 0 1px 0 var(--white-48);box-sizing:border-box;flex-direction:column;justify-content:flex-start;align-items:center;gap:0;padding:9px 12px;display:flex}.dock-group-subtext{font-size:var(--text-xs);font-weight:var(--fw-semibold);letter-spacing:.04em;color:var(--ink-56);min-height:12px;line-height:1}.blade-count-value{text-align:center;width:52px}.blade-count-btn{border:1px solid var(--white-10);background:var(--white-05);width:20px;height:20px;color:var(--color-ink);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:background .14s,border-color .14s,transform .14s;display:flex}.blade-count-btn:hover{background:var(--white-14);border-color:var(--white-20)}.blade-count-btn:active{transform:translateY(1px)}.dock-range-note{font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--ink-34);text-align:center;letter-spacing:0;white-space:nowrap;font-variant-numeric:tabular-nums;justify-content:center;align-items:center;min-height:14px;margin-top:0;display:flex}.dock-label{font-size:11px;font-weight:var(--fw-semibold);letter-spacing:0;text-transform:none;color:var(--ink-58);min-height:18px;line-height:1}.dock-group>.dock-label{text-align:center;justify-content:center;align-self:center;align-items:center;min-height:18px;margin-bottom:8px;display:flex}.dock-group--profile{order:1;min-width:200px;min-height:72px;padding-top:7px;padding-bottom:7px}.dock-group--dimensions{order:2;min-width:352px}.dock-group--colour{z-index:6;order:2;min-width:190px;position:relative}.dock-group--airflow{order:4;min-width:138px}.dock-group--velocity{order:3;min-width:208px}.dock-group--quantity{order:3;min-width:124px}.dock-velocity-row{justify-content:center;align-items:center;width:100%;min-height:34px;margin-top:2px;display:flex}.dock-group--velocity .dock-input{width:100%}.dock-group--velocity .dock-input::placeholder{color:var(--ink-38)}.dock-velocity-error{min-height:14px;font-size:11px;font-weight:var(--fw-semibold);color:var(--color-error);text-align:center;opacity:0;width:100%;margin-top:2px;transition:opacity .15s}.dock-velocity-error.is-visible{opacity:1}.dock-velocity-hint{font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--ink-38);text-align:center;width:100%;margin-top:2px;line-height:1.4}.dock-velocity-hint.is-hidden{display:none}.dock-dim-head{justify-content:center;align-items:center;gap:8px;width:100%;min-height:18px;margin-bottom:8px;display:flex}.dock-dim-title-main{text-align:center;flex:1}.dock-dim-title-blade{text-align:center;flex-shrink:0;width:116px}.dock-dim-main{flex:1;justify-content:center;align-items:center;gap:8px;min-height:34px;display:flex}.dock-dim-row{flex-wrap:nowrap;justify-content:center;align-items:center;gap:8px;width:100%;min-height:34px;display:flex}.dock-meta-row{justify-content:center;align-items:center;gap:8px;min-height:34px;margin-top:0;display:flex}.dock-meta-block{flex-direction:column;align-items:center;gap:6px;display:flex}.dock-meta-block--inline{flex-shrink:0;gap:6px;width:116px;margin-left:0}.dock-meta-block>.dock-label{margin-bottom:0}.dock-dim-field{justify-content:center;align-items:center;gap:6px;min-height:34px;display:flex}.dock-dim-divider{background:var(--ink-12);align-self:stretch;width:1px;margin:0}.dock-dim-field--leading-stepper{flex-direction:row-reverse}.dock-input{background:var(--white-06);border:1px solid var(--white-10);width:60px;color:var(--color-surface);font-family:inherit;font-size:var(--text-base);font-weight:var(--fw-semibold);text-align:center;box-sizing:border-box;border-radius:6px;outline:none;min-height:30px;padding:4px 6px;transition:border-color .15s,background .15s}#profileTriggerLabel,#colourNamePreview,#qtyValue,.blade-count-value,.dock-input{font-family:inherit;font-size:var(--text-base);font-weight:var(--fw-semibold);letter-spacing:0}.dock-input:focus{border-color:var(--white-28);background:var(--white-10)}.dock-input::-webkit-inner-spin-button{appearance:none}.dock-input::-webkit-outer-spin-button{appearance:none}.dock-dim-stepper{flex-direction:column;justify-content:center;gap:2px;min-height:30px;display:flex}.dim-step-btn{border:1px solid var(--white-10);background:var(--white-05);width:18px;height:11px;color:var(--color-ink);cursor:pointer;border-radius:5px;justify-content:center;align-items:center;padding:0;transition:background .14s,border-color .14s,transform .14s;display:flex}.dim-step-btn:hover{background:var(--white-14);border-color:var(--white-20)}.dim-step-btn:active{transform:translateY(1px)}.dim-step-btn svg{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;opacity:.8;width:8px;height:8px}.dock-sep{color:var(--ink-24);font-size:var(--text-sm);font-weight:var(--fw-semibold);align-self:flex-start;margin-top:11px}.dock-qty-row{justify-content:center;align-items:center;gap:10px;min-height:34px;display:flex}.dock-group--dimensions,.dock-group--profile,.dock-group--velocity,.dock-group--airflow,.dock-group--colour,.dock-group--quantity{text-align:center}.dock-group--profile .select-wrap,.dock-group--velocity .dock-velocity-row,.dock-group--airflow .airflow-toggle-btn,.dock-group--colour .dock-colour-trigger,.dock-group--quantity .dock-qty-row{margin-inline:auto}.dock-group--profile .select-wrap,.dock-group--airflow .airflow-toggle-btn,.dock-group--colour .dock-colour-trigger{justify-content:center;align-items:center;min-height:34px;display:flex}.dock-group--profile .select-wrap{min-height:30px;margin-top:3px}.qty-btn{border:1px solid var(--white-10);background:var(--white-04);width:24px;height:24px;color:var(--color-surface);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:15px;line-height:1;transition:background .14s,border-color .14s;display:flex}.qty-btn:hover{background:var(--white-10);border-color:var(--white-20)}.qty-value{text-align:center;min-width:24px;font-size:var(--text-base);font-weight:var(--fw-semibold);color:var(--color-ink);justify-content:center;align-items:center;min-height:30px;display:flex}.select-wrap{position:relative}.select-wrap:after{content:"";border-right:1.4px solid var(--surface-dim-50);border-bottom:1.4px solid var(--surface-dim-50);pointer-events:none;width:6px;height:6px;position:absolute;top:50%;right:10px;transform:translateY(-65%)rotate(45deg)}.select-wrap--custom:after{display:none}.dock-select{appearance:none;background:var(--white-06);border:1px solid var(--white-10);color:var(--color-surface);font-family:inherit;font-size:var(--text-base);font-weight:var(--fw-semibold);cursor:pointer;border-radius:6px;outline:none;padding:5px 26px 5px 10px;transition:border-color .15s,background .15s}.dock-select:focus{border-color:var(--white-28);background:var(--white-10)}.dock-select option{color:#f3f5f7;background:#0f1419}.dock-select--native-hidden{opacity:0;pointer-events:none;position:absolute;inset:0}.profile-trigger{background:var(--white-06);border:1px solid var(--white-10);min-width:112px;min-height:30px;color:var(--color-ink);font-family:inherit;font-size:var(--text-base);font-weight:var(--fw-semibold);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:10px;padding:3px 10px;transition:border-color .15s,background .15s;display:flex;position:relative}.profile-trigger:hover{background:var(--white-10);border-color:var(--white-20)}#profileTriggerLabel{text-align:center;text-transform:uppercase;flex:1}.profile-trigger-chevron{border-right:1.4px solid var(--ink-55);border-bottom:1.4px solid var(--ink-55);flex-shrink:0;width:7px;height:7px;position:absolute;right:10px;transform:translateY(-1px)rotate(45deg)}.profile-popover{border-radius:var(--radius-xl);background:linear-gradient(145deg, var(--white-32) 0%, var(--white-12) 46%, var(--white-22) 100%);min-width:240px;box-shadow:inset 0 1.5px 0 var(--white-58), 0 24px 64px #0000001a, 0 8px 24px var(--black-06);-webkit-backdrop-filter:blur(18px)saturate(145%);isolation:isolate;z-index:var(--z-popover);border:1px solid #00000017;padding:10px;position:fixed;overflow:hidden}.profile-popover:before,.profile-popover:after{content:"";border-radius:inherit;pointer-events:none;z-index:0;position:absolute;inset:0}.profile-popover:before{opacity:0;background:0 0}.profile-popover:after{display:none}.profile-popover>*{z-index:1;position:relative}.airflow-toggle-btn{border-radius:var(--radius-sm);border:1px solid var(--white-30);background:var(--white-08);width:36px;height:32px;color:var(--color-ink);font:inherit;font-size:var(--text-sm);font-weight:var(--fw-bold);cursor:pointer;box-shadow:inset 0 1px 0 var(--white-55);justify-content:center;align-items:center;padding:0;transition:background .15s,border-color .15s,transform .15s,box-shadow .15s;display:inline-flex}.airflow-toggle-btn:hover{background:var(--white-14);border-color:var(--white-42);transform:translateY(-1px)}.airflow-toggle-btn:active{transform:translateY(0)}.airflow-toggle-btn.is-active{background:var(--white-14)}.airflow-toggle-chevron{opacity:.72;border-bottom:1.4px solid;border-right:1.4px solid;width:8px;height:8px;transition:transform .18s;transform:rotate(-45deg)}.airflow-toggle-btn:not(.is-active) .airflow-toggle-chevron{transform:rotate(-45deg)}.profile-option{border:1px solid var(--white-10);border-radius:var(--radius-md);background:var(--white-05);width:100%;color:var(--color-ink);font-family:inherit;font-size:var(--text-base);font-weight:var(--fw-semibold);text-align:left;text-transform:uppercase;cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;transition:background .15s,border-color .15s,transform .15s;display:flex}.profile-option:hover{background:var(--white-14);border-color:var(--white-20)}.profile-option.is-active{background:var(--white-20);border-color:var(--white-30);box-shadow:inset 0 1px 0 var(--white-48)}.range-select-shell{min-width:0;position:relative}.range-trigger{background:var(--white-06);border:1px solid var(--white-10);width:100%;min-width:204px;color:var(--color-ink);font-family:inherit;font-size:var(--text-base);font-weight:var(--fw-semibold);cursor:pointer;text-align:left;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;transition:border-color .15s,background .15s;display:flex}.range-trigger:hover{background:var(--white-12);border-color:var(--white-20)}.range-trigger-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.range-trigger-chevron{border-right:1.4px solid var(--ink-55);border-bottom:1.4px solid var(--ink-55);flex-shrink:0;width:7px;height:7px;transform:translateY(-1px)rotate(45deg)}.range-popover{background:linear-gradient(145deg, var(--white-32) 0%, var(--white-12) 46%, var(--white-22) 100%);min-width:240px;box-shadow:inset 0 1.5px 0 var(--white-58), 0 24px 64px #0000001a, 0 8px 24px var(--black-06);-webkit-backdrop-filter:blur(18px)saturate(145%);isolation:isolate;z-index:var(--z-popover);border:1px solid #00000017;border-radius:18px;padding:8px;position:fixed;overflow:hidden}.range-popover:before,.range-popover:after{content:"";border-radius:inherit;pointer-events:none;z-index:0;position:absolute;inset:0}.range-popover:before{opacity:0;background:0 0}.range-popover:after{display:none}.range-popover>*{z-index:1;position:relative}.range-option{border:1px solid var(--white-10);border-radius:var(--radius-md);background:var(--white-05);width:100%;color:var(--color-ink);font-family:inherit;font-size:var(--text-base);font-weight:var(--fw-semibold);text-align:left;cursor:pointer;align-items:center;gap:12px;padding:10px 12px;transition:background .15s,border-color .15s,transform .15s;display:flex}.range-option:hover{background:var(--white-14);border-color:var(--white-20)}.range-option.is-active{background:var(--white-20);border-color:var(--white-30);box-shadow:inset 0 1px 0 var(--white-48)}.dock-colour-trigger{background:var(--white-06);border:1px solid var(--white-10);color:var(--color-surface);font-family:inherit;font-size:var(--text-base);font-weight:var(--fw-semibold);cursor:pointer;border-radius:6px;align-items:center;gap:7px;max-width:170px;padding:4px 10px;transition:border-color .15s,background .15s;display:flex}.dock-colour-trigger:hover{background:var(--white-10);border-color:var(--white-20)}.colour-swatch-preview{border:1px solid var(--white-20);background:var(--white-15);border-radius:50%;flex-shrink:0;width:14px;height:14px}#colourNamePreview{text-overflow:ellipsis;white-space:nowrap;max-width:74px;overflow:hidden}#app[data-mode=light] #bottom-dock,#app[data-mode=light] #erp{background:linear-gradient(145deg, var(--white-32) 0%, var(--white-12) 46%, var(--white-22) 100%);box-shadow:inset 0 1.5px 0 var(--white-58), 0 24px 64px #0000001a, 0 8px 24px var(--black-06);-webkit-backdrop-filter:blur(18px)saturate(145%);color:var(--color-ink);border-color:#00000017}#app[data-mode=light] #dock-summary-pill{background:var(--white-72);border-color:var(--black-08)}#app[data-mode=light] #dock-results-card{background:var(--white-95);border-color:var(--black-08)}#app[data-mode=light] .bottom-dock-title{color:var(--ink-42)}#app[data-mode=light] .dock-label{color:var(--ink-40)}#app[data-mode=light] .dock-range-note{color:var(--ink-35)}#app[data-mode=light] .dock-group{background:var(--white-28);border-color:var(--white-42);box-shadow:inset 0 1px 0 var(--white-62)}#app[data-mode=light] .dock-input,#app[data-mode=light] .dock-select,#app[data-mode=light] .dock-colour-trigger,#app[data-mode=light] .airflow-toggle-btn,#app[data-mode=light] .profile-trigger{background:var(--white-36);border-color:var(--white-58);color:var(--color-ink);box-shadow:inset 0 1px 0 var(--white-62)}#app[data-mode=light] .dock-input:focus,#app[data-mode=light] .dock-select:focus{border-color:var(--white-78);background:var(--white-52)}#app[data-mode=light] .dock-sep{color:var(--ink-32)}#app[data-mode=light] .qty-btn{background:var(--white-34);border-color:var(--white-56);color:var(--color-ink);box-shadow:inset 0 1px 0 var(--white-62)}#app[data-mode=light] .qty-btn:hover{background:var(--white-52)}#app[data-mode=light] .qty-value{color:var(--color-ink)}#app[data-mode=light] .select-wrap:after{border-right-color:var(--ink-40);border-bottom-color:var(--ink-40)}#app[data-mode=light] .dock-colour-trigger:hover{background:var(--white-54)}#app[data-mode=light] .airflow-toggle-btn:hover{background:var(--white-54);border-color:var(--white-76)}#app[data-mode=light] .colour-swatch-preview{border-color:#00000026}#app[data-mode=light] .profile-popover,#app[data-mode=light] .range-popover{-webkit-backdrop-filter:blur(12px);background:#fffffff5;border-color:#00000017;box-shadow:0 8px 32px #0000001f}#app[data-mode=light] .profile-option,#app[data-mode=light] .range-option{color:var(--color-ink)}#app[data-mode=light] .profile-option:hover,#app[data-mode=light] .range-option:hover{background:var(--ink-07)}#app[data-mode=light] .profile-option.is-active,#app[data-mode=light] .range-option.is-active{background:var(--ink-10);box-shadow:none}.top-ctrl-btn--ee{letter-spacing:.01em;cursor:pointer;border-radius:6px;align-items:center;gap:6px;width:auto;height:auto;padding:5px 10px 5px 8px;font-size:12px;font-weight:500;display:flex}#app #exportEnquireBtn{color:#fff;box-shadow:none;-webkit-backdrop-filter:none;background:#111316;border:1px solid #ffffff1a}#app #exportEnquireBtn:before,#app #exportEnquireBtn:after{display:none}#app #exportEnquireBtn:hover{background:#1c1f24;border-color:#ffffff2e}#app[data-mode=dark] #exportEnquireBtn{color:#111;-webkit-backdrop-filter:none;background:#e5e7eb;border-color:#0000}#app[data-mode=dark] #exportEnquireBtn:hover{opacity:.85}.ee-btn-icons{opacity:.75;align-items:center;gap:2px;display:flex}.ee-btn-label{white-space:nowrap}.ee-backdrop{z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}.ee-backdrop.is-open{display:flex}.ee-modal{background:var(--panel-bg,#fff);border-radius:12px;flex-direction:column;width:100%;max-width:520px;max-height:88vh;display:flex;overflow:hidden;box-shadow:0 24px 64px #00000038}[data-mode=dark] .ee-modal{background:#1e1e2a}.ee-header{border-bottom:1px solid var(--ink-09,#00000017);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 16px;display:flex}.ee-header-left{flex-direction:column;gap:4px;min-width:0;display:flex}.ee-title{letter-spacing:-.01em;color:var(--ink-fg,#111);margin:0;font-size:15px;font-weight:700}.ee-spec-pill{color:var(--ink-fg,#222);white-space:nowrap;text-overflow:ellipsis;letter-spacing:.01em;font-size:12px;font-weight:500;overflow:hidden}.ee-qty-row{align-items:center;gap:6px;margin-top:6px;display:flex}.ee-qty-label{color:var(--ink-50,#888);margin-right:2px;font-size:11px;font-weight:500}.ee-qty-btn{border:1px solid var(--ink-15,#ddd);background:var(--ink-05,#f5f5f5);width:22px;height:22px;color:var(--ink-fg,#111);cursor:pointer;border-radius:5px;justify-content:center;align-items:center;font-family:inherit;font-size:15px;line-height:1;transition:background .12s;display:flex}.ee-qty-btn:hover{background:var(--ink-09,#eaeaea)}.ee-qty-value{color:var(--ink-fg,#111);text-align:center;min-width:18px;font-size:13px;font-weight:600}.ee-close{width:28px;height:28px;color:var(--ink-40,#888);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:flex}.ee-close:hover{background:var(--ink-09,#00000012);color:var(--ink-fg,#111)}.ee-body{flex:1;padding:0 20px 24px;overflow-y:auto}.ee-section{border-top:1px solid var(--ink-09,#00000014);margin-top:18px;padding:18px 0 0}.ee-section:first-child{border-top:none;margin-top:0;padding-top:20px}.ee-section-label{letter-spacing:.07em;text-transform:uppercase;color:var(--ink-40,#999);align-items:center;gap:6px;margin-bottom:12px;font-size:10px;font-weight:600;display:flex}.ee-check-row{color:var(--ink-fg,#333);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;margin-bottom:8px;font-size:12.5px;display:flex}.ee-check-row input[type=checkbox]{accent-color:var(--accent,#3b82f6);flex-shrink:0;width:14px;height:14px}.ee-check-row--sample{color:var(--ink-60,#555);margin-top:12px}.ee-action-btn{color:var(--ink-fg,#111);background:var(--ink-09,#0000000d);border:1px solid var(--ink-09,#0000001a);cursor:pointer;border-radius:7px;align-items:center;gap:7px;margin-top:10px;padding:8px 12px;font-size:12.5px;font-weight:500;transition:background .15s;display:flex}.ee-action-btn:hover{background:var(--ink-12,#00000017)}.ee-action-btn--arrow{justify-content:space-between;width:100%}.ee-readiness-badge{letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;border:1px solid #0000;border-radius:100px;align-items:center;margin-left:6px;padding:2px 6px;font-size:8px;font-weight:600;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.ee-readiness-badge:empty{display:none}.ee-readiness-badge[data-level=ready]{color:#22c55e;background:#22c55e14;border-color:#22c55e2e}.ee-readiness-badge[data-level=ready-with-notes]{color:#d97706;background:#f59e0b14;border-color:#f59e0b33}.ee-readiness-badge[data-level=incomplete]{color:#9ca3af;background:#0000000a;border-color:#00000014}.ee-readiness-badge[data-level=blocked]{color:#ef4444;background:#ef444412;border-color:#ef44442e}[data-mode=dark] .ee-readiness-badge[data-level=ready]{color:#86efac;background:#22c55e14;border-color:#22c55e2e}[data-mode=dark] .ee-readiness-badge[data-level=ready-with-notes]{color:#fcd34d;background:#f59e0b14;border-color:#f59e0b2e}[data-mode=dark] .ee-readiness-badge[data-level=incomplete]{color:#ffffff59;background:#ffffff0a;border-color:#ffffff14}[data-mode=dark] .ee-readiness-badge[data-level=blocked]{color:#fca5a5;background:#ef444414;border-color:#ef44442e}.ee-readiness-block{border:1px solid #0000;border-radius:6px;margin-bottom:14px;padding:10px 12px;font-size:11.5px;line-height:1.55}.ee-readiness-block[data-level=ready]{color:#166534;background:#22c55e14;border-color:#22c55e33}.ee-readiness-block[data-level=ready-with-notes]{color:#92400e;background:#fffbeb;border-color:#fde68a #fde68a #fde68a #f59e0b;border-left-style:solid;border-left-width:3px}.ee-readiness-block[data-level=incomplete]{color:#374151;background:#00000008;border-color:#0000001a}.ee-readiness-block[data-level=blocked]{color:#991b1b;background:#ef44440f;border-color:#ef444433 #ef444433 #ef444433 #ef4444;border-left-style:solid;border-left-width:3px}[data-mode=dark] .ee-readiness-block[data-level=ready]{color:#86efac;background:#22c55e14;border-color:#22c55e33}[data-mode=dark] .ee-readiness-block[data-level=ready-with-notes]{color:#fde68a;background:#f59e0b14;border-color:#f59e0b33 #f59e0b33 #f59e0b33 #f59e0b}[data-mode=dark] .ee-readiness-block[data-level=incomplete]{color:#fff9;background:#ffffff0a;border-color:#ffffff1a}[data-mode=dark] .ee-readiness-block[data-level=blocked]{color:#fca5a5;background:#ef444414;border-color:#ef444433 #ef444433 #ef444433 #ef4444}.ee-form-section-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-40,#999);border-bottom:1px solid var(--ink-09,#00000012);margin-top:16px;margin-bottom:2px;padding-bottom:8px;font-size:9px;font-weight:700}.ee-form-section-label:first-of-type{margin-top:4px}.ee-form{flex-direction:column;gap:10px;display:flex}.ee-field-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.ee-field{flex-direction:column;gap:4px;display:flex}.ee-label{color:var(--ink-60,#666);letter-spacing:.02em;font-size:11px;font-weight:500}.ee-optional{opacity:.5;margin-left:3px;font-size:10px;font-weight:400}.ee-input{border:1px solid var(--ink-15,#00000024);background:var(--panel-bg,#fff);color:var(--ink-fg,#111);border-radius:6px;outline:none;padding:7px 10px;font-family:inherit;font-size:12.5px;transition:border-color .15s}.ee-input:focus{border-color:var(--accent,#3b82f6)}[data-mode=dark] .ee-input{color:#eee;background:#ffffff0f;border-color:#ffffff1f}.ee-textarea{resize:vertical;min-height:80px;line-height:1.5}select.ee-input{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23666' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:28px}[data-mode=dark] select.ee-input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23aaa' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.ee-spec-preview-note{color:var(--ink-40,#999);background:var(--ink-04,#00000008);border-left:3px solid var(--ink-12,#0000001a);border-radius:6px;margin:14px 0 10px;padding:10px 12px;font-size:11px;line-height:1.5}[data-mode=dark] .ee-spec-preview-note{color:#ffffff73;background:#ffffff0a;border-left-color:#ffffff1f}.ee-preview-btn{color:#1a1a2e;cursor:pointer;background:0 0;border:1.5px solid #1a1a2e;border-radius:7px;justify-content:center;align-items:center;gap:7px;width:100%;margin-top:12px;padding:9px 16px;font-size:13px;font-weight:600;transition:background .15s,color .15s;display:flex}.ee-preview-btn[hidden]{display:none}.ee-preview-btn:hover{color:#fff;background:#1a1a2e}[data-mode=dark] .ee-preview-btn{color:#e5e7eb;border-color:#e5e7eb}[data-mode=dark] .ee-preview-btn:hover{color:#111;background:#e5e7eb}.ee-send-btn{color:#fff;cursor:pointer;background:#1a1a2e;border:none;border-radius:7px;justify-content:center;align-items:center;gap:7px;margin-top:8px;padding:9px 16px;font-size:13px;font-weight:600;transition:opacity .15s;display:flex}.ee-send-btn:hover{opacity:.85}[data-mode=dark] .ee-send-btn{color:#111;background:#e5e7eb}.ee-disclaimer{color:var(--ink-30,#0000004d);border-top:1px solid var(--ink-09,#00000014);margin:16px 0 0;padding-top:14px;font-size:9px;line-height:1.6}[data-mode=dark] .ee-disclaimer{color:#ffffff47;border-top-color:#ffffff14}@media (width<=640px){.ee-btn-label{display:none}.top-ctrl-btn--ee{padding:6px 8px}.ee-field-row{grid-template-columns:1fr}.ee-modal{border-radius:10px;max-height:92vh}}#print-drawing-sheet{display:none}@page{size:A4 portrait;margin:0}@media print{body>*{display:none!important}#print-drawing-sheet{-webkit-print-color-adjust:exact;print-color-adjust:exact}body{margin:0!important;padding:0!important}body.print-job-brief #print-drawing-sheet{break-before:auto!important;page-break-before:auto!important;display:block!important}body.print-job-brief #print-drawing-sheet:before{display:none!important}body.print-job-brief .pdd-job-info{display:block}body.print-job-brief .pdd-top-section{grid-template-columns:38% 1fr;align-items:start;gap:20px;margin-bottom:16px;display:grid}body.print-job-brief .pdd-view--front .pdd-view-img-wrap{height:88mm}body.print-job-brief .pdd-job-info .pjb-section-label{margin-bottom:6px;padding-bottom:4px;font-size:7px}body.print-job-brief .pdd-job-info .pjb-row{padding:5px 0;font-size:10px}body.print-job-brief .pdd-job-info .pjb-key{width:76px;font-size:7.5px}body.print-job-brief .pdd-job-info .pjb-val{font-size:10px}body.print-job-brief .pdd-view-label{margin-bottom:4px;font-size:7px}body.print-job-brief .pdd-view-sub{margin-top:3px;font-size:8px}body.print-job-brief .pdd-views-row .pdd-view-img-wrap{height:56mm}body.print-job-brief .pdd-tb-label{font-size:7px}body.print-job-brief .pdd-tb-cell{padding:5px 8px;font-size:9px}.pjb-section-label{letter-spacing:.12em;text-transform:uppercase;opacity:.35;border-bottom:1px solid #00000014;margin-bottom:12px;padding-bottom:6px;font-size:9px;font-weight:700}.pjb-row{border-bottom:1px solid #0000000d;align-items:baseline;padding:9px 0;font-size:13px;display:flex}.pjb-key{opacity:.5;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;width:140px;font-size:11px;font-weight:600}.pjb-val{font-size:14px;font-weight:500}.pdd-job-info{display:none}#print-drawing-sheet{color:#111;box-sizing:border-box;break-before:page;page-break-before:always;background:#fff;width:210mm;min-height:297mm;padding:32px 40px;font-family:Inter,Arial,sans-serif;position:relative;overflow:hidden;display:none!important}#print-drawing-sheet:before{content:"INVICTA INDUSTRIES Â· CONCEPT ONLY";letter-spacing:.06em;color:#0000000e;white-space:nowrap;pointer-events:none;z-index:10;font-size:36px;font-weight:900;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-45deg)}.pdd-header{border-bottom:2px solid #111;justify-content:space-between;align-items:flex-start;margin-bottom:20px;padding-bottom:14px;display:flex}.pdd-brand-text{letter-spacing:-.03em;font-size:18px;font-weight:800}.pdd-brand-text>span{opacity:.38;letter-spacing:0;margin-top:2px;font-size:11px;font-weight:500;display:block}.pdd-ref{opacity:.45;text-align:right;font-size:11px;font-weight:600}.pdd-view{margin-bottom:16px}.pdd-view-label{letter-spacing:.12em;text-transform:uppercase;opacity:.4;margin-bottom:6px;font-size:8px;font-weight:700}.pdd-view-img-wrap{background:#fff;border:1px solid #e5e7eb;justify-content:center;align-items:center;display:flex;overflow:hidden}.pdd-view--front .pdd-view-img-wrap{height:120mm}.pdd-view-img-wrap img{object-fit:contain;width:100%;height:100%;display:block}.pdd-view-sub{opacity:.45;text-align:center;margin-top:4px;font-size:9px}.pdd-views-row{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.pdd-views-row .pdd-view-img-wrap{height:64mm}.pdd-titleblock{border:1px solid #ccc;margin-top:8px}.pdd-tb-row{border-bottom:1px solid #e5e7eb;grid-template-columns:repeat(4,1fr);display:grid}.pdd-tb-row:last-child{border-bottom:none}.pdd-tb-cell{border-right:1px solid #e5e7eb;padding:6px 10px;font-size:10px}.pdd-tb-cell:last-child{border-right:none}.pdd-tb-label{letter-spacing:.08em;text-transform:uppercase;opacity:.4;margin-bottom:2px;font-size:8px;font-weight:700;display:block}.pdd-footer{opacity:.3;border-top:1px solid #0000001a;margin-top:10px;padding-top:8px;font-size:8px}.pjb-logo,.pdd-logo{object-fit:contain;opacity:.9;width:auto;height:32px;margin-bottom:6px;display:block}.pjb-brand,.pdd-brand{flex-direction:column;align-items:flex-start;display:flex}.pjb-brand-text,.pdd-brand-text{letter-spacing:-.03em;font-size:18px;font-weight:800}.pjb-brand-text span,.pdd-brand-text span{opacity:.38;letter-spacing:0;margin-top:3px;font-size:11px;font-weight:500;display:block}.print-watermark{opacity:.07;filter:grayscale();pointer-events:none;z-index:0;width:55%;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-30deg)}}#colour-popover{z-index:var(--z-controls);border:1px solid var(--white-28);width:292px;box-shadow:var(--shadow-float);isolation:isolate;-webkit-backdrop-filter:var(--blur-heavy);background:linear-gradient(#f8f9fa75 0%,#f8f9fa3d 100%);border-radius:24px;padding:18px;position:absolute;inset:auto auto calc(100% + 18px) 50%;overflow:hidden;transform:translate(-50%)}.colour-popover-head{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:10px;margin-bottom:14px;display:flex}.colour-popover-title{font-size:var(--text-xs);font-weight:var(--fw-semibold);letter-spacing:.12em;text-transform:uppercase;color:var(--surface-38);white-space:nowrap}.select-wrap--colour .dock-select{font-size:var(--text-sm);width:100%;padding:6px 28px 6px 10px}.powder-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:4px;display:grid}.powder-chip{aspect-ratio:1;cursor:pointer;border:1px solid var(--white-10);border-radius:var(--radius-sm);transition:transform .14s,border-color .14s;position:relative;overflow:hidden}.powder-chip:hover{border-color:var(--surface-dim-28);transform:translateY(-2px)}.powder-chip.active{border-color:var(--surface-dim-50);outline:1px solid var(--surface-dim-18);outline-offset:2px}.powder-note{color:var(--surface-40);white-space:normal;overflow-wrap:anywhere;max-width:100%;margin-top:8px;font-size:11px;line-height:1.5}.powder-note--selected{border:1px solid var(--white-08);background:var(--white-03);color:var(--color-surface);font-size:var(--text-sm);font-weight:var(--fw-semibold);overflow-wrap:anywhere;border-radius:6px;margin-top:10px;padding:8px 10px}#app[data-mode=light] #colour-popover{background:linear-gradient(145deg, var(--white-34) 0%, var(--white-14) 100%);color:var(--color-ink);box-shadow:inset 0 1.5px 0 var(--white-58), 0 24px 64px #0000001a;border-color:#00000017}#app[data-mode=light] .colour-popover-title{color:var(--ink-42)}#app[data-mode=light] .powder-chip{border-color:#0000001a}#app[data-mode=light] .powder-chip:hover{border-color:#00000047}#app[data-mode=light] .powder-chip.active{outline-color:var(--black-12);border-color:#00000080}#app[data-mode=light] .powder-note{color:var(--ink-42)}#app[data-mode=light] .powder-note--selected{border-color:var(--black-08);color:var(--color-ink);background:#0000000a}@media (width<=768px){#colour-popover{width:min(292px,100vw - 24px);inset:auto auto calc(100% + 12px) 50%;transform:translate(-50%)}}#pp-colour-panel{z-index:901;-webkit-backdrop-filter:blur(18px);color:#e8ecf1eb;background:#12161ef7;border:1px solid #e8ecf121;border-radius:12px;width:248px;padding:14px 14px 12px;position:fixed;box-shadow:0 16px 48px #0000008c,0 4px 12px #0000004d}.pp-colour-hdr{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.pp-colour-title{font-size:11px;font-weight:var(--fw-semibold);letter-spacing:.07em;text-transform:uppercase;color:#e8ecf18c}.pp-colour-done{font-size:11px;font-weight:var(--fw-semibold);color:#e8ecf1b3;cursor:pointer;background:#ffffff0f;border:1px solid #e8ecf121;border-radius:5px;padding:3px 10px}.pp-colour-done:hover{background:#ffffff1a}.pp-colour-range-sel{color:#e8ecf1eb;width:100%;font-size:12px;font-weight:var(--fw-medium);cursor:pointer;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#ffffff12;border:1px solid #e8ecf121;border-radius:7px;margin-bottom:10px;padding:6px 8px}.pp-colour-grid{grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:8px;display:grid}#pp-colour-panel a{color:#e8ecf1bf;text-decoration:underline}#pp-colour-panel a:hover{color:#e8ecf1}#qs-overlay{z-index:300;pointer-events:none;background:0 0;position:fixed;inset:0}#qs-overlay:not([hidden]){pointer-events:auto;background:#0000002e}.qs-dot{z-index:302;pointer-events:none;background:#fff;border-radius:50%;width:10px;height:10px;position:fixed;transform:translate(-50%,-50%)}.qs-dot:after{content:"";opacity:.7;border:2px solid #ffffffb3;border-radius:50%;animation:1.8s ease-out infinite qs-pulse;position:absolute;inset:-5px}.qs-dot.qs-dot--inactive{opacity:.22}.qs-dot.qs-dot--inactive:after{display:none}@keyframes qs-pulse{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(2.8)}}#qs-card{z-index:303;-webkit-backdrop-filter:blur(14px);color:#fff;pointer-events:auto;background:#0d0d0df5;border:1px solid #ffffff1f;border-radius:12px;width:272px;padding:18px 20px 16px;position:fixed;box-shadow:0 12px 40px #0000008c}.qs-card-top{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.qs-counter{letter-spacing:.09em;text-transform:uppercase;color:#fff;opacity:.55;font-size:10px;font-weight:700}.qs-pips{gap:4px;display:flex}.qs-pip{background:#ffffff2e;border-radius:50%;width:5px;height:5px;transition:background .2s}.qs-pip.is-active{background:#fff}.qs-card-title{color:#fff;margin:0 0 5px;font-size:13px;font-weight:700}.qs-card-text{color:#ffffff94;margin:0 0 14px;font-size:12px;line-height:1.55}.qs-card-footer{justify-content:space-between;align-items:center;display:flex}.qs-nav{gap:6px;display:flex}.qs-btn{cursor:pointer;border:none;border-radius:6px;padding:6px 13px;font-size:11px;font-weight:600;line-height:1;transition:background .15s,color .15s,opacity .15s}.qs-btn--ghost{color:#ffffff61;background:0 0}.qs-btn--ghost:hover{color:#ffffffbf}.qs-btn--ghost:disabled{opacity:.15;cursor:default;pointer-events:none}.qs-btn--primary{color:#111;background:#fff}.qs-btn--primary:hover{background:#ffffffe0}#qs-replay-btn{color:#111315cc;cursor:pointer;letter-spacing:.04em;background:#00000014;border:1px solid #0006;border-radius:4px;margin-left:6px;padding:2px 7px;font-size:10px;font-weight:700;transition:background .15s,color .15s,border-color .15s}#qs-replay-btn:hover{color:#111315f2;background:#00000024;border-color:#000000a6}[data-mode=dark] #qs-replay-btn{color:#e8ecf1b3;background:#ffffff14;border-color:#e8ecf159}[data-mode=dark] #qs-replay-btn:hover{color:#e8ecf1f2;background:#ffffff24;border-color:#e8ecf199}#configurator-splash{z-index:var(--z-splash);background:radial-gradient(circle at 60% 30%, var(--surface-dim-07), transparent 30%), linear-gradient(180deg, var(--color-bg) 0%, var(--color-bg-deep) 100%);opacity:1;place-items:center;transition:opacity .7s,visibility .7s;display:grid;position:fixed;inset:0}#configurator-splash.splash-complete{opacity:0;visibility:hidden;pointer-events:none}#configurator-splash__inner{opacity:0;transform-origin:50%;flex-direction:column;align-items:center;gap:28px;transition:opacity .65s cubic-bezier(.2,.72,.1,1),transform .65s cubic-bezier(.2,.72,.1,1);display:flex;transform:scale(.94)translateY(10px)}#configurator-splash.splash-visible #configurator-splash__inner{opacity:1;transform:scale(1)translateY(0)}#configurator-splash.splash-complete #configurator-splash__inner{opacity:1;transition:transform 1.05s cubic-bezier(.2,.72,.1,1);transform:scale(1.78)}#configurator-splash__logo{filter:invert();width:min(220px,52vw)}#configurator-splash__label{font-size:var(--text-sm);font-weight:var(--fw-semibold);letter-spacing:.2em;text-transform:uppercase;color:var(--surface-dim-45)}.mode-chooser{z-index:40;pointer-events:none;padding:20px 18px 24px;display:grid;position:absolute;inset:0;overflow:auto}.mode-chooser__backdrop{-webkit-backdrop-filter:blur(18px)saturate(145%);opacity:0;background:radial-gradient(circle at 18% 22%,#ffffff26,#0000 34%),radial-gradient(circle at 82% 18%,#ffffff1f,#0000 30%),linear-gradient(#000000a6,#000000c7);grid-area:1/1;transition:opacity .24s;position:absolute;inset:0}.mode-chooser__panel{opacity:0;grid-area:1/1;align-content:start;gap:22px;width:min(1320px,97vw);margin:3vh auto auto;transition:opacity .28s,transform .28s;display:grid;position:relative;transform:translateY(18px)scale(.985)}.mode-chooser.is-visible .mode-chooser__backdrop,.mode-chooser.is-visible .mode-chooser__panel{opacity:1}.mode-chooser.is-visible{pointer-events:auto}.mode-chooser.is-visible .mode-chooser__panel{transform:translateY(0)scale(1)}.mode-chooser__intro{color:#f4efe5;max-width:760px;padding:2px 0 4px}.mode-chooser__brand{align-items:center;gap:10px;margin-bottom:14px;display:flex}.mode-chooser__brand-mark{opacity:.92;width:auto;height:20px;display:block}.mode-chooser__brand-label{letter-spacing:.16em;text-transform:uppercase;color:var(--color-warning,#f59e0b);font-size:11px;font-weight:700}.mode-chooser__title{letter-spacing:-.03em;margin:0;font-size:clamp(30px,3.6vw,46px);font-weight:800;line-height:1.04}.mode-chooser__copy{color:#f4efe5a8;max-width:56ch;margin:10px 0 0;font-size:15px;line-height:1.5}.mode-chooser__grid{grid-template-columns:repeat(3,1fr);align-items:start;gap:20px;display:grid}.mode-card{background:#12161ef5;border:1px solid #e8ecf121;border-radius:22px;flex-direction:column;transition:border-color .18s,transform .18s,box-shadow .18s;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 28px #0000008c}.mode-card:before{content:"";background:var(--mode-card-accent,#f4efe533);opacity:.7;height:2px;position:absolute;inset:0 0 auto}.mode-card[data-family=louvre]{--mode-card-accent:#f59e0bbf}.mode-card[data-family=screen]{--mode-card-accent:#7aa8d2b3}.mode-card[data-family=access]{--mode-card-accent:#a094d6b3}.mode-card:hover{box-shadow:0 16px 40px #0009, 0 0 0 1px var(--mode-card-accent,#e8ecf124);border-color:#e8ecf13d;transform:translateY(-3px)}.mode-card__preview{cursor:pointer;background:radial-gradient(circle at 50% 0,#ffffff12,#0000 48%),linear-gradient(#0f141af7,#060a0efc);border-bottom:1px solid #ffffff0f;flex-shrink:0;height:260px;transition:background .18s;position:relative;overflow:hidden}.mode-card:hover .mode-card__preview{background:radial-gradient(circle at 50% 0,#ffffff1a,#0000 48%),linear-gradient(#11171ef7,#070b10fc)}.mode-card__preview-mount,.mode-card__preview-canvas{width:100%;height:100%;display:block}.mode-card__body{flex:1;gap:12px;padding:22px 24px 24px;display:grid}.mode-card__index{letter-spacing:.14em;color:var(--mode-card-accent,#f4efe580);font-family:SFMono-Regular,Consolas,monospace;font-size:11px;font-weight:700}.mode-card__name{letter-spacing:-.01em;text-transform:none;color:#f4efe5f5;margin:0;font-size:19px;font-weight:800}.mode-card__desc{color:#f4efe58f;margin:0 0 4px;font-size:13px;line-height:1.5}.product-options{flex-direction:column;gap:7px;margin:0;padding:0;list-style:none;display:flex}.product-option{appearance:none;color:#f4efe5d9;text-align:left;letter-spacing:.01em;cursor:pointer;background:#ffffff0b;border:1px solid #e8ecf11f;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:13px 16px;font-size:14px;font-weight:600;transition:border-color .14s,background .14s,color .14s,transform .14s,box-shadow .14s;display:flex}.product-option__chev{opacity:0;width:15px;height:15px;color:var(--mode-card-accent,#f4efe5b3);flex-shrink:0;transition:opacity .14s,transform .14s;transform:translate(-3px)}.product-option:hover,.product-option:focus-visible,.product-option.is-focused{border-color:var(--mode-card-accent,#e8ecf147);color:#fff;background:#ffffff17;outline:none;transform:translateY(-1px);box-shadow:0 6px 18px #00000059}.product-option:hover .product-option__chev,.product-option:focus-visible .product-option__chev,.product-option.is-focused .product-option__chev{opacity:1;transform:translate(0)}.product-option:active{background:#ffffff1f;transform:translateY(0)scale(.986);box-shadow:0 2px 8px #0006}#app.app--mode-chooser-open #top-bar,#app.app--mode-chooser-open #layout-body,#app.app--mode-chooser-open #status-bar,#app.app--mode-chooser-open .dimension-label{visibility:hidden}body.mode-chooser-open .dimension-label{visibility:hidden!important}@media (width<=900px){.mode-chooser__panel{margin:1.5vh auto auto}.mode-chooser__grid{grid-template-columns:1fr 1fr}.mode-card:last-child{grid-column:1/-1}.mode-card__preview{height:200px}}@media (width<=600px){.mode-chooser{padding:14px 12px 20px}.mode-chooser__panel{gap:14px;margin:0 auto auto}.mode-chooser__title{font-size:clamp(24px,7vw,32px)}.mode-chooser__copy{font-size:13px}.mode-chooser__grid{grid-template-columns:1fr}.mode-card:last-child{grid-column:auto}.mode-card__preview{height:150px}.mode-card__body{padding:16px 18px 18px}.mode-card:hover{transform:none}}#validation-toast{z-index:var(--z-toast);pointer-events:none;opacity:0;flex-direction:column;align-items:center;gap:6px;transition:opacity .3s;display:flex;position:absolute;top:100px;left:50%;transform:translate(-50%)}#validation-toast.toast--visible{opacity:1;pointer-events:auto}#validation-toast.toast--fading{opacity:0}.val-msg{font-size:var(--text-sm);font-weight:var(--fw-medium);box-shadow:0 4px 16px var(--black-12);white-space:nowrap;border-radius:10px;align-items:center;gap:6px;padding:7px 14px;display:flex}.val-msg--warn{color:#92400e;background:#fff4dcf5;border:1px solid #fbbf244d}#app[data-mode=dark] .val-msg--warn{color:#fbbf24;background:#2d1e05eb;border-color:#fbbf2433}.sample-request-btn{background:var(--white-06);border:1px solid var(--white-12);width:100%;color:inherit;font-family:inherit;font-size:var(--text-sm);font-weight:var(--fw-semibold);cursor:pointer;border-radius:9px;margin-top:10px;padding:9px;transition:background .14s}.sample-request-btn:hover{background:var(--white-12)}#copy-toast{color:#fff;opacity:0;pointer-events:none;white-space:nowrap;z-index:300;background:#111827;border-radius:8px;align-items:center;gap:8px;padding:10px 18px;font-size:13px;font-weight:500;transition:opacity .2s,transform .2s;display:flex;position:absolute;bottom:20px;left:50%;transform:translate(-50%)translateY(12px);box-shadow:0 4px 16px #0000002e}#copy-toast[hidden]{display:none}#copy-toast svg{color:#4ade80;flex-shrink:0;width:16px;height:16px}#copy-toast.copy-toast--visible{opacity:1;transform:translate(-50%)translateY(0)}#copy-toast.copy-toast--hiding{opacity:0;transition:opacity .4s,transform .4s;transform:translate(-50%)translateY(8px)}#viewport-loading{z-index:190;pointer-events:none;background:#f3f4f6;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}#viewport-loading[hidden]{display:none}.vp-spinner{border:3px solid var(--ink-10,#e5e7eb);border-top-color:var(--ink-50,#6b7280);border-radius:50%;width:36px;height:36px;animation:.7s linear infinite vp-spin}@keyframes vp-spin{to{transform:rotate(360deg)}}#viewport-error{z-index:200;text-align:center;background:#f8f9fa;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:32px;display:flex;position:absolute;inset:0}#viewport-error[hidden]{display:none}.vp-error-icon{color:#c0392b;flex-shrink:0;width:48px;height:48px}.vp-error-title{color:var(--ink-90,#1a1a1a);margin:0;font-size:16px;font-weight:600}.vp-error-detail{color:var(--ink-50,#666);max-width:340px;margin:0;font-size:13px;line-height:1.5}.vp-error-reload{color:#fff;background:var(--ink-90,#1a1a1a);cursor:pointer;border:none;border-radius:6px;margin-top:4px;padding:8px 20px;font-size:13px;font-weight:500}.vp-error-reload:hover{background:#333}[data-mode=dark] #viewport-loading{background:#0d1116}[data-mode=dark] .vp-spinner{border-color:#e8ecf173 #e8ecf11a #e8ecf11a}[data-mode=dark] #top-bar,[data-mode=dark] #status-bar,[data-mode=dark] #left-panel,[data-mode=dark] #right-panel{--color-ink:#e8ecf1;--color-surface-mid:#1c2432;--ink-88:#e8ecf1eb;--ink-82:#e8ecf1d1;--ink-80:#e8ecf1d1;--ink-75:#e8ecf1bf;--ink-62:#e8ecf19e;--ink-58:#e8ecf194;--ink-56:#e8ecf18f;--ink-55:#e8ecf18c;--ink-52:#e8ecf185;--ink-48:#e8ecf17a;--ink-46:#e8ecf175;--ink-42:#e8ecf16b;--ink-40:#e8ecf166;--ink-38:#e8ecf161;--ink-35:#e8ecf159;--ink-34:#e8ecf157;--ink-32:#e8ecf152;--ink-28:#e8ecf147;--ink-24:#e8ecf13d;--ink-16:#e8ecf129;--ink-14:#e8ecf124;--ink-12:#e8ecf11f;--ink-10:#e8ecf11a;--ink-09:#e8ecf117;--ink-08:#e8ecf114;--ink-07:#e8ecf112;--ink-05:#e8ecf10d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (width<=768px){#configurator-onboarding{border-radius:var(--radius-md);align-items:flex-start;width:calc(100vw - 24px);padding:10px 12px;top:66px}.onboarding-text{white-space:normal}#dock-container{flex-direction:column;align-items:stretch;gap:8px;bottom:12px;left:12px;right:12px;transform:none}.bottom-dock-title,.dock-arrow-btn{display:none}#bottom-dock{border-radius:var(--radius-xl);flex-wrap:wrap;gap:12px;padding:12px 16px}#dock-workflow-hint{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:8px;width:calc(100vw - 24px);bottom:calc(100% + 18px);left:12px;right:12px;transform:none}.dock-workflow-steps{justify-content:flex-start}.dock-workflow-divider{display:none}.dock-side{flex-wrap:wrap;justify-content:stretch;width:100%}.dock-side--right{flex-wrap:wrap;width:100%}.dock-side--right .dock-group,.dock-side--right .dock-addlist-btn{flex:1;min-width:120px}.dock-group{width:100%;min-height:0;padding:10px 12px}.dock-group--dimensions,.dock-group--profile,.dock-group--velocity,.dock-group--colour,.dock-group--airflow,.dock-group--quantity{width:100%;min-width:0}.dimension-label{display:none}#top-controls{top:16px;left:16px}#canvas-watermark{width:92px;top:18px;right:18px}#colour-popover{width:min(292px,100vw - 24px);inset:auto auto calc(100% + 12px) 50%;transform:translate(-50%)}#airflow-estimate-panel{width:auto;padding:12px;top:118px;left:12px;right:12px}#app.airflow-panel-hidden #airflow-estimate-panel{transform:translateY(-8px)scale(.985)}.airflow-grid,.airflow-secondary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dock-input{font-size:16px}}@media (width<=900px) and (orientation:landscape){#bottom-dock{-webkit-overflow-scrolling:touch;flex-flow:row;gap:6px;max-height:45vh;padding:8px;overflow-x:auto}.dock-side{flex-flow:row;gap:6px;width:auto}.dock-side--right{flex-wrap:nowrap;width:auto}.dock-side--right .dock-group,.dock-side--right .dock-addlist-btn{flex:none;min-width:110px}.dock-group{flex-shrink:0;width:auto;min-width:110px;padding:8px 10px}.dock-group--dimensions,.dock-group--profile,.dock-group--velocity,.dock-group--colour,.dock-group--airflow,.dock-group--quantity{width:auto;min-width:110px}}@media (width<=960px) and (orientation:landscape) and (height<=600px){#app{grid-template-rows:44px 1fr}#status-bar{display:none}#layout-body{flex-direction:row;height:100%;display:flex}#viewport-area{border-right:1px solid var(--ink-09);border-left:none;flex:0 0 55%;min-width:0;position:relative;inset:auto}#left-panel{border-top:none;border-left:none;border-right:1px solid var(--ink-09);flex:1;width:auto;min-width:0;transition:none;position:relative;top:auto;bottom:auto;transform:none}#right-panel{border-top:none;border-left:none;flex:1;width:auto;min-width:0;transition:none;position:relative;top:auto;bottom:auto;transform:none}#profile-tagline{display:none}#canvas-watermark{width:56px}}@media (width<=900px){.lp-input,.rp-vel-input{font-size:16px}}@media (width<=640px){#app{grid-template-rows:44px 1fr}#status-bar{display:none}#layout-body{grid-template-rows:1fr auto;grid-template-columns:1fr 1fr;display:grid}#viewport-area{grid-area:1/1/auto/-1;position:relative;inset:auto}#left-panel{border-right:1px solid var(--ink-09);border-top:1px solid var(--ink-09);flex-direction:column;grid-area:2/1;width:auto;height:210px;min-height:0;transition:height .25s;display:flex;position:relative;top:auto;bottom:auto;overflow:hidden;transform:none}#right-panel{border-left:none;border-top:1px solid var(--ink-09);flex-direction:column;grid-area:2/2;width:auto;height:210px;min-height:0;transition:height .25s;display:flex;position:relative;top:auto;bottom:auto;overflow:hidden;transform:none}#left-panel-scroll,#right-panel-scroll{flex:1;min-height:0;overflow-y:auto}#left-panel.panel--collapsed,#right-panel.panel--collapsed{height:36px;transform:none}.panel-collapse-btn{border:none;border-bottom:1px solid var(--ink-09);width:100%;height:36px;box-shadow:none;background:var(--color-surface-mid,#eff0f2);letter-spacing:.04em;color:var(--ink-55);border-radius:0;flex-shrink:0;justify-content:center;gap:6px;font-size:11px;font-weight:500;position:static;top:auto;left:auto;right:auto;transform:none}.panel-collapse-label{display:inline}#left-panel .panel-collapse-btn svg{transform:rotate(90deg)}#left-panel.panel--collapsed .panel-collapse-btn svg,#right-panel .panel-collapse-btn svg{transform:rotate(-90deg)}#right-panel.panel--collapsed .panel-collapse-btn svg{transform:rotate(90deg)}#profile-tagline{display:none}#canvas-watermark{width:56px}.hut-item:has(#showWorkersToggle){display:none}#viewport-actions .hut-label,.ee-btn-label{display:none}}@media (width<=767px){#vc-face-label{display:none}#vc-reset-btn{bottom:20px;left:14px!important}}.sp-backdrop{z-index:1050;opacity:0;pointer-events:none;background:#000000b8;justify-content:center;align-items:center;transition:opacity .22s;display:flex;position:fixed;inset:0}.sp-backdrop.is-open{opacity:1;pointer-events:all}.sp-modal{color:#111827;background:#fff;border-radius:12px;flex-direction:column;width:min(880px,96vw);max-height:92vh;font-family:Inter,system-ui,sans-serif;display:flex;overflow:hidden;box-shadow:0 24px 80px #0000006b,0 8px 24px #0003}.sp-controls{background:#f3f4f6;border-bottom:1px solid #e5e7eb;flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.sp-controls-label{letter-spacing:.1em;text-transform:uppercase;color:#9ca3af;font-size:10px;font-weight:700}.sp-close-btn{cursor:pointer;color:#6b7280;background:0 0;border:1px solid #d1d5db;border-radius:6px;justify-content:center;align-items:center;width:26px;height:26px;transition:background .12s,color .12s;display:flex}.sp-close-btn:hover{color:#111827;background:#e5e7eb}.sp-sheet{background:#fff;flex:1;min-height:0;padding:28px 36px 24px;overflow-y:auto}.sp-doc-header{border-bottom:2px solid #111827;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:22px;padding-bottom:16px;display:flex}.sp-doc-left{flex-direction:column;gap:3px;display:flex}.sp-logo{object-fit:contain;align-self:flex-start;width:auto;height:28px;margin-bottom:5px;display:block}.sp-company-name{color:#111827;letter-spacing:.03em;font-size:11px;font-weight:700}.sp-company-url{color:#9ca3af;font-size:10px}.sp-doc-right{text-align:right;flex-shrink:0}.sp-doc-title-label{letter-spacing:.08em;text-transform:uppercase;color:#111827;font-size:13px;font-weight:700}.sp-doc-date{color:#9ca3af;margin-top:3px;font-size:10px}.sp-spec-pill{color:#374151;letter-spacing:.02em;white-space:nowrap;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:100px;margin-top:7px;padding:3px 10px;font-size:10px;font-weight:600;display:inline-block}.sp-captures{grid-template-rows:auto auto;grid-template-columns:1fr 2fr 1fr;gap:8px;margin-bottom:26px;display:grid}.sp-capture-plan{grid-area:1/2}.sp-capture-section{grid-area:2/1}.sp-capture-front{grid-area:2/2}.sp-capture-side{grid-area:2/3}.sp-capture-box{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;min-height:160px;display:flex;overflow:hidden}.sp-capture-img{object-fit:contain;box-sizing:border-box;flex:1;width:100%;min-height:0;padding:6px}.sp-capture-label{letter-spacing:.1em;text-transform:uppercase;color:#9ca3af;text-align:center;background:#f3f4f6;border-top:1px solid #e5e7eb;flex-shrink:0;padding:4px 6px;font-size:9px;font-weight:700}.sp-capture-box--ph{background:#f9fafb;justify-content:center;align-items:center}.sp-capture-ph-label{letter-spacing:.1em;text-transform:uppercase;color:#d1d5db;text-align:center;padding:8px;font-size:9px;font-weight:700}.sp-captures--no-side{grid-template-columns:1fr 2fr}.sp-captures--no-side .sp-capture-plan,.sp-captures--no-side .sp-capture-front{grid-column:2}.sp-capture-box.sp-priority-hero .sp-capture-img{flex:1}.sp-capture-box.sp-priority-support,.sp-capture-box.sp-priority-detail{align-self:start}.sp-capture-box.sp-priority-support .sp-capture-img,.sp-capture-box.sp-priority-detail .sp-capture-img{flex:none;height:auto}.sp-context-toggle{align-items:center;gap:4px;display:flex}.sp-ctx-btn{color:#6b7280;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #d1d5db;border-radius:5px;padding:4px 10px;font-family:inherit;font-size:11px;font-weight:600;transition:background .12s,border-color .12s,color .12s}.sp-ctx-btn:hover{color:#374151;background:#f3f4f6}.sp-ctx-btn.is-active{color:#fff;background:#111827;border-color:#111827}.sp-status-row{margin-bottom:18px}.sp-sections{flex-direction:column;gap:20px;display:flex}.sp-section-title{letter-spacing:.12em;text-transform:uppercase;color:#9ca3af;border-bottom:1px solid #e5e7eb;margin-bottom:8px;padding-bottom:6px;font-size:9px;font-weight:700}.sp-rows{flex-direction:column;display:flex}.sp-row{border-bottom:1px solid #f3f4f6;grid-template-columns:188px 1fr;gap:12px;padding:5px 0;font-size:12px;display:grid}.sp-row:last-child{border-bottom:none}.sp-row-label{color:#6b7280;font-weight:500}.sp-row-value{color:#111827;font-weight:600}.sp-advisory{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-left:3px solid #f59e0b;border-radius:6px;margin-top:6px;padding:8px 12px;font-size:11px;line-height:1.55}.sp-footer-bar{background:#f3f4f6;border-top:1px solid #e5e7eb;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:11px 20px;display:flex}.sp-disclaimer{color:#9ca3af;max-width:420px;margin:0;font-size:9px;line-height:1.5}.sp-pdf-disclaimer{color:#9ca3af;text-align:center;border-top:1px solid #e5e7eb;margin:16px 0 4px;padding-top:10px;font-size:8px;line-height:1.5}.sp-footer-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.sp-download-btn{color:#374151;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #d1d5db;border-radius:7px;flex-shrink:0;align-items:center;gap:7px;padding:9px 18px;font-family:inherit;font-size:13px;font-weight:600;transition:background .15s,border-color .15s;display:flex}.sp-download-btn:hover{background:#f3f4f6;border-color:#9ca3af}.sp-download-btn:disabled{opacity:.6;cursor:not-allowed}.sp-enquire-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#111827;border:none;border-radius:7px;flex-shrink:0;align-items:center;gap:7px;padding:9px 18px;font-family:inherit;font-size:13px;font-weight:600;transition:background .15s;display:flex}.sp-enquire-btn:hover{background:#1f2937}.sp-enquire-btn:disabled{opacity:.6;cursor:not-allowed}@media (width<=640px){.sp-sheet{padding:20px 18px}.sp-captures{grid-template-rows:auto auto auto;grid-template-columns:1fr 1fr}.sp-capture-plan{grid-area:1/1/auto/-1}.sp-capture-front{grid-area:2/1/auto/-1}.sp-capture-section{grid-area:3/1}.sp-capture-side{grid-area:3/2}.sp-row{grid-template-columns:130px 1fr;font-size:11px}.sp-footer-bar{flex-direction:column;align-items:stretch;gap:10px}.sp-footer-actions{width:100%}.sp-download-btn,.sp-enquire-btn{flex:1;justify-content:center}}
