@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:700;src:url(./sora-latin-700-normal-9waGdLWo.woff2)format("woff2"),url(./sora-latin-700-normal-BKPfQAnC.woff)format("woff")}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:700;src:url(./sora-latin-ext-700-normal-DM0oy5s8.woff2)format("woff2"),url(./sora-latin-ext-700-normal-Oc7uZIYt.woff)format("woff")}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:800;src:url(./sora-latin-800-normal-2tKLL3qT.woff2)format("woff2"),url(./sora-latin-800-normal-c3Huklug.woff)format("woff")}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:800;src:url(./sora-latin-ext-800-normal-YDFYE6t9.woff2)format("woff2"),url(./sora-latin-ext-800-normal-BvAfeed7.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(./inter-latin-400-normal-CyCys3Eg.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-latin-ext-400-normal-C1nco2VV.woff2)format("woff2"),url(./inter-latin-ext-400-normal-77YHD8bZ.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-cyrillic-400-normal-obahsSVq.woff2)format("woff2"),url(./inter-cyrillic-400-normal-HOLc17fK.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(./inter-latin-500-normal-BL9OpVg8.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-latin-ext-500-normal-CV4jyFjo.woff2)format("woff2"),url(./inter-latin-ext-500-normal-BxGbmqWO.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-cyrillic-500-normal-BasfLYem.woff2)format("woff2"),url(./inter-cyrillic-500-normal-CxZf_p3X.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(./inter-latin-600-normal-CiBQ2DWP.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-latin-ext-600-normal-D2bJ5OIk.woff2)format("woff2"),url(./inter-latin-ext-600-normal-CIVaiw4L.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-cyrillic-600-normal-CWCymEST.woff2)format("woff2"),url(./inter-cyrillic-600-normal-4D_pXhcN.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(./jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2)format("woff2"),url(./jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2)format("woff2"),url(./jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(./jetbrains-mono-latin-700-normal-BYuf6tUa.woff2)format("woff2"),url(./jetbrains-mono-latin-700-normal-D3wTyLJW.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(./jetbrains-mono-latin-ext-700-normal-CZipNAKV.woff2)format("woff2"),url(./jetbrains-mono-latin-ext-700-normal-CxPITLHs.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(./jetbrains-mono-cyrillic-700-normal-BWTpRfYl.woff2)format("woff2"),url(./jetbrains-mono-cyrillic-700-normal-CEoEElIJ.woff)format("woff")}@font-face{font-family:Arimo;font-style:normal;font-display:swap;font-weight:400;src:url(./arimo-latin-400-normal-Bqnq6eT5.woff2)format("woff2"),url(./arimo-latin-400-normal-Cd1L7MI3.woff)format("woff")}@font-face{font-family:Arimo;font-style:normal;font-display:swap;font-weight:400;src:url(./arimo-latin-ext-400-normal-B-XWcJFt.woff2)format("woff2"),url(./arimo-latin-ext-400-normal-CuyoxgRm.woff)format("woff")}@font-face{font-family:Arimo;font-style:normal;font-display:swap;font-weight:700;src:url(./arimo-latin-700-normal-DhEW593l.woff2)format("woff2"),url(./arimo-latin-700-normal-x_huS3KV.woff)format("woff")}@font-face{font-family:Arimo;font-style:normal;font-display:swap;font-weight:700;src:url(./arimo-latin-ext-700-normal-DDeQOfiM.woff2)format("woff2"),url(./arimo-latin-ext-700-normal-7mWUsHUR.woff)format("woff")}:root{--bg:#090d14;--bg-2:#111827;--surface:#1a2332;--surface-2:#131c2b;--surface-rgb:26,35,50;--border:1px solid rgba(var(--white-rgb),.4);--border-color:rgba(var(--white-rgb),.4);--border-strong:#2a3444;--border-accent-color:rgba(var(--primary-rgb),.65);--border-accent:1px solid var(--border-accent-color);--edge-card:0 10px 34px #0000008c,inset 0 1px 0 rgba(var(--white-rgb),.16);--primary:#00a3ff;--accent:#2ec5ff;--metal:#aeb7c2;--text:#f8fafc;--text-2:#f8fafcb3;--text-disabled:#f8fafc61;--text-on-primary:var(--text);--error:#ef4444;--success:#22c55e;--warning:#f59e0b;--error-rgb:239,68,68;--success-rgb:34,197,94;--warning-rgb:245,158,11;--primary-rgb:0,163,255;--white-rgb:255,255,255;--error-text:#fca5a5;--success-text:#86efac;--warning-text:#fcd34d;--text-on-success:#052e16;--grad-primary:#4a5df9;--grad-bg:linear-gradient(180deg,#090d14,#0d1320);--grad-surface:linear-gradient(180deg,var(--surface),var(--surface-2));--r-card:20px;--r-btn:16px;--r-dialog:24px;--r-input:14px;--r-chip:999px;--r-sm:4px;--shadow:0 8px 32px #00000073;--glow:0 0 25px #00d4ff73;--inset-top:inset 0 1px 0 rgba(var(--white-rgb),.1);--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--tap:48px;--shell-pad:8px;--shell-max:980px;--banner-max-h:25dvh;--pad-left:max(var(--shell-pad),env(safe-area-inset-left));--pad-right:max(var(--shell-pad),env(safe-area-inset-right));--z-menu:100;--z-overlay:900;--z-fullscreen:1000;--z-modal:1100;--z-dialog:1200;--font-display:"Sora","Inter",system-ui,sans-serif;--font-ui:"Inter",system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,monospace;--fs-h2:21px;--fs-h3:17px;--fs-body:16px;--fs-sm:14px;--fs-xs:12px;--fs-2xs:11px;--fs-input:20px;--fs-num-xl:40px;--fs-num-lg:30px;--fs-num-md:24px;--fs-num-sm:22px;--dur:.18s;--dur-slow:.25s;--ease:cubic-bezier(.4,0,.2,1)}@media (width>=701px){:root{--shell-pad:20px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}*{box-sizing:border-box}html,body,input,textarea{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.selectable{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}.app{block-size:100dvh;max-inline-size:var(--shell-max);padding:calc(var(--sp-3) + env(safe-area-inset-top)) var(--pad-right) 0 var(--pad-left);gap:var(--sp-2);grid-template:"main"minmax(0,1fr)/minmax(0,1fr);margin-inline:auto;display:grid}.appMain{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-block-size:0;scroll-padding-block:calc(var(--status-h,0px) + var(--sp-2)) var(--tap);grid-area:main;padding-block-end:calc(var(--sp-3) + max(env(safe-area-inset-bottom), 48px));position:relative;overflow-y:auto}.appStatus{z-index:5;gap:var(--sp-1);background:var(--bg);transition:transform var(--dur) var(--ease), opacity var(--dur) var(--ease);flex-direction:column;padding-block-end:var(--sp-2);display:flex;position:sticky;inset-block-start:0}.appStatus.isHidden{opacity:0;pointer-events:none;transform:translateY(-100%)}@media (prefers-reduced-motion:reduce){.appStatus{transition:none}}button:disabled{opacity:.42;cursor:not-allowed;box-shadow:none}html,body{overscroll-behavior:none;block-size:100%;overflow:hidden}body{color:var(--text);font-family:var(--font-ui);background:var(--grad-bg);background-attachment:fixed;margin:0}body:before{content:"";pointer-events:none;opacity:.1;z-index:-1;background:repeating-linear-gradient(90deg,rgba(var(--white-rgb),.04) 0 1px,transparent 1px 4px);mix-blend-mode:screen;position:fixed;inset:0}.splash{background:var(--grad-bg);z-index:var(--z-fullscreen);animation:fadeIn var(--dur-slow) var(--ease) both;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.top{aspect-ratio:1794/690;width:100%;max-inline-size:calc(var(--banner-max-h) * 1794 / 690);border-radius:var(--r-card);box-shadow:var(--edge-card);background:#000309 url(./header-banner-D-KSGlrD.webp) 50%/contain no-repeat;margin-block-end:var(--sp-2);margin-inline:auto;position:relative;overflow:hidden;container-type:inline-size}.bannerTagline{white-space:nowrap;font-family:var(--font-ui);color:#fff;pointer-events:none;margin:0;font-size:2.23cqw;font-weight:400;position:absolute;top:54.64%;left:37.51%;transform:translate(-50%)}.bannerTagAccent{color:#0ac0ff}.bannerFeatures{pointer-events:none;grid-template-columns:repeat(4,1fr);align-items:start;width:53%;margin:0;padding:0;list-style:none;display:grid;position:absolute;top:67.5%;left:3%}.bannerFeatures li{border-inline-start:1px solid rgba(var(--white-rgb),.22);flex-direction:column;align-items:center;gap:.7cqw;padding-inline:.4cqw;display:flex}.bannerFeatures li:first-child{border-inline-start:0}.bannerFeatures li svg{color:#fff;width:4.57cqw;height:4.57cqw}.bannerFeatures li span{font-family:var(--font-ui);letter-spacing:.02em;color:#fff;text-align:center;font-size:1.46cqw;font-weight:400;line-height:1.3}.srOnly{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btnSpinner{opacity:.85;border:2px solid;border-block-start-color:#0000;border-radius:50%;flex:none;block-size:16px;inline-size:16px;animation:.8s linear infinite btnSpin}@keyframes btnSpin{to{transform:rotate(360deg)}}button.busy:disabled{opacity:1;cursor:progress}.actions button,.actions a{font-family:var(--font-ui);border-radius:var(--r-btn);padding:var(--sp-3) var(--sp-5);min-height:var(--tap);font-weight:600;font-size:var(--fs-h3);transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease);background:var(--grad-primary);border:1px solid rgba(var(--white-rgb),.14);color:var(--text-on-primary);box-shadow:var(--inset-top),var(--shadow)}.actions a,.actions button.iconLabel{justify-content:center;align-items:center;gap:var(--sp-2);cursor:pointer;text-decoration:none;display:inline-flex}.actions button:disabled{opacity:.58}.actions button:active,.actions a:active{transform:scale(.97)}.panel{border-radius:var(--r-card);padding:var(--sp-4);margin:var(--sp-4) 0;background:var(--grad-surface);box-shadow:var(--edge-card)}.appMain>.panel:first-child{margin-top:0}.panel h2{font-family:var(--font-display);color:var(--text);font-size:var(--fs-h2);letter-spacing:.6px;margin-top:0}.grid{gap:var(--sp-3);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}label{color:var(--text-2);font-weight:600}input,select{width:100%;font-family:var(--font-mono);background:var(--bg);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--r-input);padding:var(--sp-3);font-size:var(--fs-input);margin-top:var(--sp-1);min-height:var(--tap);transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}input:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 2px rgba(var(--primary-rgb),.28);outline:none}.pickerLabel{color:var(--text-2);font-weight:600;display:block}.pickerField,.pickerWrap,.pickerBtn,.pickerValue{min-width:0}.pickerWrap{position:relative}.pickerBtn{justify-content:space-between;align-items:center;gap:var(--sp-2);width:100%;font-family:var(--font-mono);background:var(--bg);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--r-input);padding:var(--sp-3);font-size:var(--fs-input);margin-top:var(--sp-1);min-height:var(--tap);text-align:start;transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);display:flex}.pickerBtn:focus-visible,.pickerBtn[aria-expanded=true]{border-color:var(--primary);box-shadow:0 0 0 2px rgba(var(--primary-rgb),.28);outline:none}.pickerValue{white-space:normal;overflow-wrap:anywhere;text-align:start;align-items:center;gap:var(--sp-2);display:flex}.pickerBtn svg{flex:none}.pickerMenu{top:calc(100% + 4px);background:var(--grad-surface);border:var(--border);border-radius:var(--r-card);min-width:100%;box-shadow:var(--shadow);overscroll-behavior:contain;max-height:320px;z-index:var(--z-menu);flex-direction:column;display:flex;position:absolute;inset-inline:0;overflow-y:auto}.pickerMenu.openUp{top:auto;bottom:calc(100% + 4px)}.pickerMenu button{align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-3) var(--sp-4);min-height:var(--tap);border:none;border-bottom:var(--border);color:var(--text);font-family:var(--font-ui);font-size:var(--fs-sm);text-align:start;background:0 0;border-radius:0;font-weight:500;display:flex}.pickerMenu button:last-child{border-bottom:none}.pickerMenu button.active{background:rgba(var(--primary-rgb),.16);color:var(--accent)}.pickerMenu button:hover{background:rgba(var(--white-rgb),.06)}.pickerMenu button:focus-visible{background:rgba(var(--primary-rgb),.24);box-shadow:inset 0 0 0 2px var(--primary);outline:none}.pickerBtn .flag,.pickerMenu button .flag{font-size:18px}.pickerList{flex-direction:column;display:flex}.pickerFilters{z-index:1;padding:var(--sp-2);background:var(--surface);border-bottom:var(--border);flex-wrap:wrap;gap:6px;display:flex;position:sticky;top:0}.pickerChipBar{z-index:1;background:var(--surface);position:sticky;top:0}.pickerChipBar .pickerFilters{overscroll-behavior-x:contain;scrollbar-width:none;flex-wrap:nowrap;position:static;overflow-x:auto}.pickerChipBar .pickerFilters::-webkit-scrollbar{display:none}.pickerChipBar .pickerGroups{border-bottom:none;padding-bottom:0}.pickerMenu .pickerGroups button.pickerChip{font-family:inherit}.pickerMenu button.pickerChip{width:auto;min-height:var(--tap);min-width:var(--tap);border:1px solid var(--border-strong);font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-2);background:var(--bg);border-radius:999px;flex:none;justify-content:center;padding:0 8px;font-weight:600}.pickerMenu button.pickerChip.active{background:var(--primary);border-color:var(--primary);color:#06223a}.numberFieldWrap{display:block;position:relative}.numberFieldStep{display:block}.numberStepper{gap:var(--sp-1);grid-template-columns:repeat(6,minmax(0,1fr));margin-block-start:var(--sp-1);display:grid}.numberStepper button{min-block-size:var(--tap);min-inline-size:0;font-size:var(--fs-sm);font-variant-numeric:tabular-nums;padding:0}.numberFieldWrap input{padding-inline-end:46px}.numberFieldUnit{inset-inline-end:12px;pointer-events:none;color:var(--text-2);font-size:var(--fs-sm);font-weight:500;position:absolute;top:50%;transform:translateY(-50%)}.drawingBox{border-radius:var(--r-input);padding:var(--sp-1);box-shadow:var(--shadow);background:#fff;position:relative;overflow:hidden}.drawingBox[role=button]{cursor:pointer}.drawingBox svg,.cadSheet{width:100%;height:auto;display:block}.cadSheet+.cadSheet{border-top:1px solid #e4e8ee;margin-top:6px;padding-top:6px}.fsViewer{z-index:var(--z-fullscreen);background:var(--bg);flex-direction:column;display:flex;position:fixed;inset:0}.fsTopBar{justify-content:space-between;align-items:center;gap:var(--sp-2);padding:calc(var(--sp-3) + env(safe-area-inset-top)) max(var(--sp-4),env(safe-area-inset-right)) var(--sp-3) max(var(--sp-4),env(safe-area-inset-left));background:var(--bg-2);border-bottom:var(--border);display:flex}.fsTabs{gap:var(--sp-2);scrollbar-width:none;-ms-overflow-style:none;flex:auto;min-width:0;display:flex;overflow-x:auto}.fsTabs::-webkit-scrollbar{display:none}.fsRightBtns{gap:var(--sp-2);flex:none;display:flex}.fsTabs button{font-family:var(--font-ui);padding:var(--sp-2) var(--sp-5);min-height:var(--tap);border-radius:var(--r-btn);border:var(--border);background:var(--surface);color:var(--text-2);font-weight:600;font-size:var(--fs-sm);transition:color var(--dur) var(--ease),opacity var(--dur) var(--ease)}.fsTabs button.active{background:var(--grad-primary);color:var(--text-on-primary);border-color:#0000}.fsClose{width:var(--tap);height:var(--tap);border:var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.fsClose.fsDimsOn{background:rgba(var(--primary-rgb),.18);border-color:var(--primary);color:var(--accent)}@media (width<=430px){.fsTabs{gap:6px}.fsTabs button{padding-left:var(--sp-3);padding-right:var(--sp-3)}.fsRightBtns{gap:6px}}.fsCanvas2d{background:var(--bg-2);touch-action:none;flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.fsZoomWrap{will-change:transform;border-radius:var(--r-sm);background:#fff;flex:none;width:92%;transition:transform 50ms linear}.fsZoomWrap svg{width:100%;height:auto;display:block}.fsCanvas3d{flex:1;position:relative;overflow:hidden}.threeMount{position:absolute;inset:0}.threeMount canvas{touch-action:none;display:block}.fsHint{bottom:calc(var(--sp-3) + max(env(safe-area-inset-bottom), 24px));text-align:center;width:max-content;max-width:92%;color:var(--text-2);font-size:var(--fs-xs);pointer-events:none;padding:var(--sp-1) var(--sp-3);background:#090d14d1;border-radius:999px;position:absolute;left:50%;transform:translate(-50%)}.fsThick{top:var(--sp-3);left:var(--sp-3);pointer-events:none;color:var(--accent);font-size:var(--fs-sm);padding:var(--sp-1) var(--sp-3);background:#090d14d1;border-radius:999px;font-weight:600;position:absolute}.actions{gap:var(--sp-3);margin:var(--sp-4) 0;grid-template-columns:1fr 1fr;display:grid}.actionsSingle{grid-template-columns:1fr}.segmentEditor{gap:var(--sp-3);flex-direction:column;display:flex}.segmentRow{align-items:flex-end;gap:var(--sp-2);background:rgba(var(--white-rgb),.03);border:var(--border);border-radius:var(--r-btn);padding:var(--sp-2);flex-wrap:wrap;display:flex}.segmentIndex{color:var(--accent);font-weight:600;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.5px;flex:0 0 100%}.segmentRow label{flex:90px;min-width:80px}.dirBtn{font-family:var(--font-ui);padding:var(--sp-2) var(--sp-3);min-height:var(--tap);border-radius:var(--r-btn);border:var(--border);background:var(--surface);color:var(--text);white-space:nowrap;font-weight:600}.dirBtn.dirDown{background:rgba(var(--primary-rgb),.18);border-color:var(--primary);color:var(--accent)}.dirBtn.dirUp{background:rgba(var(--primary-rgb),.06);border-color:var(--border-accent-color)}.segmentLength{margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:var(--border);max-width:220px}.segmentButtons{gap:var(--sp-2);display:flex}.segmentButtons button{font-family:var(--font-ui);padding:var(--sp-3);min-height:var(--tap);border-radius:var(--r-btn);border:var(--border);background:var(--surface);color:var(--text);flex:1;font-weight:600}.segmentLimitNote{margin:var(--sp-2) 0 0;font-size:var(--fs-xs);color:var(--text-2);font-weight:500;line-height:1.4}.actions .secondary{background:var(--surface);color:var(--accent);border:var(--border-accent);box-shadow:var(--inset-top),var(--shadow)}.actions .secondary:disabled{opacity:1;color:var(--text-disabled);background:var(--bg-2);border-color:var(--border-color)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (width<=700px){.grid{grid-template-columns:minmax(0,1fr)}.panel{padding:var(--sp-3)}.grid.dimsGrid{grid-template-columns:1fr 1fr}.grid.dimsGrid>:last-child:nth-child(odd){grid-column:1/-1}}.langRow{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4);padding-bottom:var(--sp-4);border-bottom:var(--border);display:flex}.langRowLabel{font-size:var(--fs-sm);color:var(--text-2);font-weight:600}.langPicker{min-width:0}.langPicker .pickerBtn{font-family:var(--font-ui);margin-top:0;font-weight:600}.bdCard{margin-top:var(--sp-4);padding:var(--sp-4);border:var(--border-accent);border-radius:var(--r-card);background:linear-gradient(135deg,rgba(var(--primary-rgb),.1),var(--surface) 60%);box-shadow:var(--glow);justify-content:space-between;gap:var(--sp-4);flex-wrap:wrap;align-items:center;display:flex}.bdCard span{color:var(--text-2);font-weight:600;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.6px;display:block}.bdCard b{font-family:var(--font-mono);color:var(--accent);font-size:var(--fs-num-md);margin:var(--sp-1) 0;font-weight:700;display:block}.bdCard small{color:var(--metal);font-weight:500}.hardoxWarning{margin-top:var(--sp-3);padding:var(--sp-3);border-radius:var(--r-btn);background:rgba(var(--warning-rgb),.12);border:1px solid rgba(var(--warning-rgb),.45);color:var(--warning-text);font-weight:500;font-size:var(--fs-xs);line-height:1.4}.dieWarning{margin-top:var(--sp-3);padding:var(--sp-3);border-radius:var(--r-btn);background:rgba(var(--error-rgb),.12);border:1px solid rgba(var(--error-rgb),.45);color:var(--error-text);font-weight:500;font-size:var(--fs-xs);line-height:1.4}.calcError{margin-top:var(--sp-3);padding:var(--sp-3);border-radius:var(--r-btn);background:rgba(var(--error-rgb),.18);border:1px solid var(--error);color:var(--error-text);font-weight:600;font-size:var(--fs-sm);line-height:1.45}.dieCaution{margin-top:var(--sp-3);padding:var(--sp-3);border-radius:var(--r-btn);background:rgba(var(--warning-rgb),.1);border:1px solid rgba(var(--warning-rgb),.4);color:var(--warning-text);font-weight:500;font-size:var(--fs-xs);line-height:1.4}.dieSuggestion{margin-top:var(--sp-3);padding:var(--sp-3);border-radius:var(--r-btn);background:rgba(var(--success-rgb),.1);border:1px solid rgba(var(--success-rgb),.4);color:var(--success-text);font-weight:500;font-size:var(--fs-xs);justify-content:space-between;align-items:center;gap:var(--sp-3);flex-wrap:wrap;line-height:1.4;display:flex}.dieSuggestion button{font-family:var(--font-ui);background:var(--success);color:var(--text-on-success);border-radius:var(--r-btn);padding:var(--sp-2) var(--sp-3);min-height:var(--tap);font-weight:600;font-size:var(--fs-xs);cursor:pointer;white-space:nowrap;border:none}.switchLine{gap:var(--sp-2);min-height:var(--tap);white-space:nowrap;color:var(--text);align-items:center;margin:0;display:flex}.switchLine input{width:22px;height:22px;min-height:0;accent-color:var(--primary);margin:0}.oneLine{margin-top:var(--sp-3);grid-template-columns:1fr}.toolNote{color:var(--text-2);margin:0;font-size:13px;line-height:1.4}.toolNote.frameWarn{color:var(--warning-text)}.toolGrid{grid-template-columns:minmax(0,1fr)}.toolGrid .pickerValue{white-space:normal;overflow-wrap:anywhere}.pickerMenu button.compatOk{box-shadow:inset 3px 0 0 var(--success)}.pickerMenu button.compatOk .compatDot{color:var(--success-text)}.pickerMenu button.compatBad{box-shadow:inset 3px 0 0 var(--error);background:rgba(var(--error-rgb),.08);color:var(--error-text);cursor:not-allowed}.pickerMenu button.compatBad:hover{background:rgba(var(--error-rgb),.12)}.pickerMenu button.compatBad.active{background:rgba(var(--error-rgb),.16);color:var(--error-text)}.compatDot{text-align:center;flex:none;inline-size:1.1em;font-weight:700}.pickerMenu button.compatBad .compatDot{color:var(--error)}.pickerMenu button.compatBad.pickable{cursor:pointer}.pickerMenu button.compatUnknown{box-shadow:inset 3px 0 0 var(--warning);background:rgba(var(--warning-rgb),.06)}.pickerMenu button.compatUnknown .compatDot,.pickerMenu button.compatUnknown .compatNote{color:var(--warning-text)}.pickerValue.compatUnknown{color:var(--warning-text);flex-direction:column;align-items:flex-start;gap:2px}.pickerValue.compatUnknown .compatNote{color:var(--warning-text)}.compatText{flex-direction:column;gap:2px;min-inline-size:0;display:flex}.compatNote{font-family:var(--font-mono);font-size:var(--fs-xs,12px);color:var(--error-text);font-weight:600}.pickerMenu button.pickerChip.compatOk{border-color:var(--success);color:var(--success-text);box-shadow:none;gap:3px}.pickerMenu button.pickerChip.compatOk.active{border-color:var(--primary);color:#06223a}.pickerMenu button.pickerChip .compatDot{inline-size:auto}.pickerValue.compatBad{color:var(--error-text);flex-direction:column;align-items:flex-start;gap:2px}.templateBtn{justify-content:space-between;align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-3);border-radius:var(--r-btn);background:var(--surface);border:var(--border-accent);box-shadow:var(--inset-top);min-height:var(--tap);margin-top:var(--sp-3);display:flex}.templateBtnLabel{font-size:var(--fs-xs);letter-spacing:.3px;color:var(--text-2);text-transform:uppercase;font-weight:600}.templateBtnValue{font-size:var(--fs-sm);color:var(--accent);text-align:end;font-weight:600}.pickerOverlay{z-index:var(--z-modal);padding:max(var(--sp-4),env(safe-area-inset-top)) max(var(--sp-4),env(safe-area-inset-right)) max(var(--sp-4),env(safe-area-inset-bottom)) max(var(--sp-4),env(safe-area-inset-left));-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:fadeIn var(--dur) var(--ease) both;background:#05080ed1;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.pickerBox{background:var(--grad-surface);border:var(--border);border-radius:var(--r-dialog);width:100%;max-width:560px;max-height:100%;padding:var(--sp-3);box-shadow:var(--shadow);overflow-y:auto}.pickerHead{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3);display:flex}.pickerHead h2{font-family:var(--font-display);font-size:var(--fs-sm);letter-spacing:.4px;margin:0}.pickerClose{padding:var(--sp-2) var(--sp-3);min-height:var(--tap);border-radius:var(--r-btn);background:var(--bg-2);color:var(--text);border:var(--border)}.pickerGrid{gap:var(--sp-2);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.pickerItem{align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-2);border-radius:var(--r-btn);background:var(--bg-2);border:var(--border);color:var(--text-2);font-size:var(--fs-xs);text-align:center;transition:border-color var(--dur) var(--ease),color var(--dur) var(--ease);flex-direction:column;font-weight:500;line-height:1.25;display:flex}.pickerItem svg{width:100%;height:auto;max-height:64px}.pickerItem svg path{stroke:var(--metal);stroke-width:2px}.pickerItem.active{background:var(--grad-primary);color:var(--text-on-primary);box-shadow:var(--inset-top),var(--glow);border-color:#0000}.pickerItem.active svg path{stroke:var(--text-on-primary)}.splashClean{display:block}.splashHit{appearance:none;cursor:pointer;z-index:1;background:0 0;border:0;width:100%;padding:0;display:block;position:absolute;inset:0}.splashLogoClean{object-fit:contain;width:100%;height:100%;display:block;position:relative}.splashBgBlur{filter:blur(36px)brightness(.65)saturate(1.15);z-index:0;background-position:50%;background-size:cover;position:absolute;inset:-40px;transform:scale(1.1)}.dimsHeaderRow{justify-content:space-between;align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.dimsHeaderRow h2{flex:auto;min-width:0}.favWrap{gap:var(--sp-2);flex:100%;grid-template-columns:repeat(3,1fr);min-width:0;display:grid}.favBtn{font-family:var(--font-ui);background:var(--surface);color:var(--text);border:var(--border);border-radius:var(--r-btn);padding:var(--sp-1) var(--sp-2);min-height:var(--tap);min-width:0;font-size:var(--fs-xs);white-space:normal;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere;cursor:pointer;transition:transform var(--dur) var(--ease);text-align:center;justify-content:center;align-items:center;gap:var(--sp-1);flex-direction:column;font-weight:600;line-height:1.2;display:inline-flex}.favBtn svg,.toolBtn svg,.view3dBtn svg,.settingsCloseBtn svg,.settingsCloseWide svg,.fsTabs button svg{flex:none}@media (width<=360px){.favBtn svg,.toolBtn svg{display:none}}.favBtn:active{transform:scale(.97)}.favPanel{margin:var(--sp-2) 0;border:var(--border);border-radius:var(--r-card);padding:var(--sp-2);background:var(--bg-2)}.favEmpty{color:var(--text-2);font-size:var(--fs-sm);margin:var(--sp-1) 0;text-align:start;line-height:1.45}.favEmpty.favEmptySpaced{margin-top:var(--sp-3)}.noteActions{gap:var(--sp-2);flex-wrap:wrap;display:flex}.noteBtnGhost{border:var(--border);color:var(--text-2);background:0 0}.favRow{padding:var(--sp-2) var(--sp-1);border-bottom:var(--border);justify-content:space-between;align-items:center;display:flex}.favRow:last-child{border-bottom:none}.favRow span{font-size:var(--fs-sm);color:var(--text)}.favRow div{gap:var(--sp-3);display:flex}.favRow button{font-family:var(--font-ui);background:var(--surface);color:var(--text);border:var(--border);border-radius:var(--r-btn);padding:var(--sp-1) var(--sp-2);min-height:var(--tap);min-width:64px;font-size:var(--fs-sm);cursor:pointer;font-weight:600}.favRow button.favRowDelete{background:rgba(var(--error-rgb),.14);border-color:rgba(var(--error-rgb),.45);color:var(--error-text)}.favRowText{gap:var(--sp-1);overflow-wrap:anywhere;flex-direction:column;flex:auto;min-inline-size:0;display:flex}.favRow .favRowSub{font-size:var(--fs-xs);color:var(--text-2);font-variant-numeric:tabular-nums}.favRow>div{flex:none}.favPanelTitle{margin:0 0 var(--sp-2);font-size:var(--fs-xs);letter-spacing:.5px;color:var(--text-2);text-transform:uppercase;font-weight:600}.historyClearBtn{width:100%;font-family:var(--font-ui);margin-top:var(--sp-3);min-height:var(--tap);border-radius:var(--r-btn);background:rgba(var(--error-rgb),.12);border:1px solid rgba(var(--error-rgb),.4);color:var(--error-text);font-size:var(--fs-sm);cursor:pointer;font-weight:600}[dir=rtl]{text-align:right;direction:rtl}[dir=rtl] .grid,[dir=rtl] .actions,[dir=rtl] .actionsSingle,[dir=rtl] .segmentRow,[dir=rtl] .segmentButtons,[dir=rtl] .favRow,[dir=rtl] .favWrap,[dir=rtl] .pickerGrid,[dir=rtl] .templateBtn,[dir=rtl] .pickerWrap,[dir=rtl] .dimsHeaderRow{direction:rtl}[dir=rtl] input,[dir=rtl] select,[dir=rtl] label{text-align:right}@media (height<=460px){.app .setupStrip{display:none}}@media (height<=460px) and (aspect-ratio>=16/10){.app .setupStrip{display:flex}}.pickerSection{font-size:var(--fs-xs);letter-spacing:.02em;color:var(--text-2);border-top:var(--border);-webkit-user-select:none;user-select:none;padding:10px 12px 4px;font-weight:700}.pickerList .pickerSection:first-child{border-top:none}.bdMeasuredBadge{font-family:var(--font-ui);padding:2px var(--sp-2);border-radius:var(--r-chip);background:rgba(var(--success-rgb),.14);border:1px solid rgba(var(--success-rgb),.45);color:var(--success-text);font-style:normal;font-weight:600;font-size:var(--fs-2xs);letter-spacing:.4px;text-transform:uppercase;margin-top:2px;display:inline-block}.bdDeviationWarn{margin-top:var(--sp-2);color:var(--warning-text);font-weight:600;font-size:var(--fs-xs);text-transform:none;letter-spacing:0;line-height:1.45;display:block}.learnedWrap{margin-top:var(--sp-3);gap:var(--sp-2);flex-wrap:wrap;display:flex}.learnedWrap.learnedWrapTight{margin-top:0;margin-bottom:var(--sp-2)}[dir=rtl] .learnedWrap{direction:rtl}.testBendGrid{gap:var(--sp-2);margin:var(--sp-2) 0;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.testBendGrid label{gap:var(--sp-1);font-size:var(--fs-xs);color:var(--text-2);flex-direction:column;font-weight:500;display:flex}.importRisk{color:var(--warning-text);font-weight:600;font-size:var(--fs-xs);flex:100%;line-height:1.45}.resultBar{padding:var(--sp-3) var(--sp-4);border-radius:var(--r-card);background:var(--grad-surface);box-shadow:var(--edge-card);justify-content:space-between;align-items:flex-end;gap:var(--sp-4);flex-wrap:wrap;margin:0;display:flex}.resultBar .resultBarLabel{color:var(--text-2);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.6px;font-weight:600;display:block}.resultBar .resultBarValue{font-family:var(--font-mono);color:var(--text);font-size:var(--fs-num-xl);font-weight:700;line-height:1.1;display:block}.resultBar .resultBarUnit{font-size:var(--fs-h3);color:var(--text-2);margin-inline-start:var(--sp-1);font-weight:500}.resultBarSide{gap:var(--sp-4);text-align:end;display:flex}.resultBarSide .resultBarValue{font-size:var(--fs-num-md)}.resultBar.pristine{padding:var(--sp-2) var(--sp-3);align-items:center}.resultBar.pristine .resultBarValue{color:var(--text-2);font-size:var(--fs-num-sm)}.resultBarHint{color:var(--text-2);font-size:var(--fs-xs);flex:100%;margin:0;font-weight:500;line-height:1.4}.resultBar.pristine .resultBarHint{flex:auto}.resultBarHintBtn{text-align:start;color:var(--text-2);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;margin:0;padding:0;font-family:inherit;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.resultBar.incomplete{border-color:var(--border-color);background:var(--bg-2);box-shadow:none}.resultBar.incomplete .resultBarValue{color:var(--text-2)}.resultBar.incomplete .resultBarLabel{color:var(--text-disabled)}.resultBarValue.provisional{color:var(--text-2);opacity:.78}.resultBarReasons.calm .resultBarReason{color:var(--text-2);font-weight:500}.resultBarReasons.calm::-webkit-scrollbar-thumb{background:var(--border-strong)}.resultBar.blocked{border-color:var(--error);background:linear-gradient(135deg, rgba(var(--error-rgb),.22), var(--surface) 65%)}.resultBar.blocked .resultBarValue,.resultBar.blocked .resultBarLabel{color:var(--error-text)}.resultBarReasons{overscroll-behavior:contain;flex:100%;max-height:34dvh;overflow-y:auto}.resultBarReasons::-webkit-scrollbar{width:4px}.resultBarReasons::-webkit-scrollbar-thumb{background:rgba(var(--error-rgb),.55);border-radius:var(--r-chip)}.resultBarReason{color:var(--error-text);font-size:var(--fs-xs);margin:0 0 var(--sp-2);font-weight:500;line-height:1.45}.resultBarReason:last-child{margin-bottom:0}.resultBarNotes{overscroll-behavior:contain;flex:100%;max-height:34dvh;overflow-y:auto}.resultBarNotes::-webkit-scrollbar{width:4px}.resultBarNotes::-webkit-scrollbar-thumb{background:rgba(var(--warning-rgb,245, 158, 11), .55);border-radius:var(--r-chip)}.resultBarNote{color:var(--warning-text);font-size:var(--fs-xs);margin-top:var(--sp-1);flex:100%;font-weight:500;line-height:1.45}.setupStrip{width:100%;min-height:var(--tap);overscroll-behavior-x:contain;scrollbar-width:none;align-items:center;gap:var(--sp-2);padding-block:var(--sp-2);padding-inline:var(--sp-3) 0;border:var(--border);border-radius:var(--r-card);background:var(--surface);color:var(--text);font:inherit;text-align:start;cursor:pointer;flex-wrap:nowrap;margin:0;display:flex;overflow-x:auto}.setupStrip:active{background:var(--surface-2)}.setupChip{font-family:var(--font-mono);padding:var(--sp-1) var(--sp-2);border:1px solid var(--border-strong);border-radius:var(--r-btn);background:var(--bg-2);font-size:var(--fs-xs);white-space:nowrap;font-weight:500}.setupChip.measured{border-color:rgba(var(--success-rgb),.5);background:rgba(var(--success-rgb),.12);color:var(--success-text)}.setupChip.warn{border-color:rgba(var(--warning-rgb),.5);background:rgba(var(--warning-rgb),.14);color:var(--warning-text)}.setupChip.missing{border-color:rgba(var(--error-rgb),.5);background:rgba(var(--error-rgb),.14);color:var(--error-text)}.setupStrip::-webkit-scrollbar{display:none}.setupStripEdit{padding-inline:var(--sp-2) var(--sp-3);background:var(--surface);color:var(--accent);font-size:var(--fs-xs);white-space:nowrap;align-self:stretch;align-items:center;margin-inline-start:auto;font-weight:600;display:flex;position:sticky;inset-inline-end:0}.setupStripEdit:before{content:"";background:linear-gradient(90deg, rgba(var(--surface-rgb),0), var(--surface));pointer-events:none;inline-size:24px;position:absolute;inset-block:0;inset-inline-end:100%}@media (width<=700px){.resultBar{padding:var(--sp-3);gap:var(--sp-2)}.resultBar .resultBarValue{font-size:var(--fs-num-lg)}.resultBar .resultBarLabel{font-size:var(--fs-2xs);letter-spacing:.3px}.resultBarSide{gap:var(--sp-3)}.resultBarSide .resultBarValue{font-size:var(--fs-h3)}.resultBarSide .resultBarUnit{font-size:var(--fs-xs)}.resultBarReasons,.resultBarNotes{max-height:27dvh}.resultBarReason{font-size:var(--fs-xs)}}@media (height<=460px){.resultBarReasons,.resultBarNotes{max-height:96px}.resultBar .resultBarValue{font-size:var(--fs-num-md)}}[dir=rtl] .setupStrip,[dir=rtl] .resultBar{direction:rtl}[dir=rtl] .setupStripEdit:before{background:linear-gradient(270deg, rgba(var(--surface-rgb),0), var(--surface))}.resultBarAction{margin-top:var(--sp-2);width:100%}.toolRow{gap:var(--sp-2);margin-top:var(--sp-3);grid-template-columns:repeat(3,1fr);display:grid}.toolBtn{font-family:var(--font-ui);padding:var(--sp-3) var(--sp-2);border-radius:var(--r-btn);border:var(--border);background:var(--surface);color:var(--text);font-weight:600;font-size:var(--fs-xs);min-height:var(--tap);cursor:pointer;transition:transform var(--dur) var(--ease);justify-content:center;align-items:center;gap:var(--sp-1);white-space:normal;word-break:break-word;line-height:1.25;display:inline-flex}.toolBtn:active{transform:scale(.97)}.view3dBtn{font-family:var(--font-ui);padding:var(--sp-2) var(--sp-4);min-height:var(--tap);border-radius:var(--r-btn);border:var(--border-accent);background:var(--surface);color:var(--accent);font-weight:600;font-size:var(--fs-sm);cursor:pointer;justify-content:center;align-items:center;gap:var(--sp-2);display:inline-flex}.view3dRow{gap:var(--sp-2);margin-top:var(--sp-4);margin-bottom:var(--sp-4);display:flex}.view3dBtnHalf{flex:1 1 0;min-inline-size:0}.view3dBtnWide{width:100%;margin-top:var(--sp-4);margin-bottom:var(--sp-4);display:flex}.actionBar{gap:var(--sp-2);padding:var(--sp-3) 0;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);margin:0;display:grid}.actionBar button{justify-content:center;align-items:center;gap:var(--sp-1);font-size:var(--fs-sm);padding:var(--sp-2) var(--sp-2);overflow-wrap:anywhere;min-width:0;display:inline-flex}.actionBar button svg{flex:none}@media (width<=700px){.toolRow{gap:var(--sp-1)}.toolBtn{font-size:var(--fs-2xs);padding:var(--sp-2) var(--sp-1);min-height:var(--tap)}.actionBar{grid-template-columns:minmax(0,1.3fr) minmax(max-content,1fr)}}[dir=rtl] .toolRow,[dir=rtl] .actionBar{direction:rtl}.proBanner{margin-top:var(--sp-3);padding:var(--sp-3);border:var(--border);border-radius:var(--r-card);background:var(--grad-surface);align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.proBannerTitle{width:100%;font-size:var(--fs-sm);color:var(--text);font-weight:700}.proBannerList{width:100%;font-size:var(--fs-xs);color:var(--text-2);line-height:1.4}.proBannerTrial{width:100%;font-size:var(--fs-xs);color:var(--text-2);font-weight:500}.proBannerBuy{width:100%;font-family:var(--font-ui);background:var(--grad-primary);color:var(--text-on-primary);border:1px solid rgba(var(--white-rgb),.14);border-radius:var(--r-btn);padding:var(--sp-2) var(--sp-4);min-height:var(--tap);cursor:pointer;place-items:center;gap:2px;display:grid}.proBannerBuyMain{font-size:var(--fs-sm);font-weight:700}.proBannerBuyPrice{font-size:var(--fs-2xs);opacity:.85;font-weight:500}.proBannerRestore{width:100%;font-family:var(--font-ui);color:var(--accent);border:var(--border-accent);border-radius:var(--r-btn);padding:var(--sp-2) var(--sp-3);min-height:var(--tap);font-size:var(--fs-xs);cursor:pointer;background:0 0;font-weight:600}.proBannerBuy[disabled],.proBannerRestore[disabled]{cursor:wait;opacity:.7}.proBannerMsg{width:100%;font-size:var(--fs-xs);font-weight:600}.proBannerMsg.ok{color:var(--success-text)}.proBannerMsg.err{color:var(--error-text)}.lockedOverlay{z-index:var(--z-modal);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);justify-content:center;align-items:center;gap:var(--sp-3);padding:max(var(--sp-5), env(safe-area-inset-top)) max(var(--sp-5), env(safe-area-inset-right)) max(var(--sp-5), env(safe-area-inset-bottom)) max(var(--sp-5), env(safe-area-inset-left));text-align:center;animation:fadeIn var(--dur) var(--ease) both;background:#05080ee6;flex-direction:column;display:flex;position:fixed;inset:0}.lockedOverlay .lockedIcon{color:var(--accent);line-height:0}.lockedOverlay .lockedText{color:var(--text-2);font-size:var(--fs-sm);max-width:420px;line-height:1.5}.lockedOverlay .lockedClose{font-family:var(--font-ui);margin-top:var(--sp-2);padding:var(--sp-3) var(--sp-5);min-height:var(--tap);border-radius:var(--r-btn);border:1px solid rgba(var(--white-rgb),.14);background:var(--grad-primary);color:var(--text-on-primary);cursor:pointer;font-weight:600}.lockedOverlay .lockedCloseSecondary{color:var(--text-2);background:0 0;margin-top:0}.settingsHead{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3);display:flex}.settingsHead h2{margin:0}.settingsCloseBtn{justify-content:center;align-items:center;gap:var(--sp-2);font-family:var(--font-ui);min-height:var(--tap);padding:var(--sp-2) var(--sp-4);border-radius:var(--r-btn);border:var(--border);background:var(--surface);color:var(--text);font-size:var(--fs-sm);cursor:pointer;flex:none;font-weight:600;display:inline-flex}.settingsCloseWide{justify-content:center;align-items:center;gap:var(--sp-2);width:100%;font-family:var(--font-ui);margin-top:var(--sp-4);min-height:var(--tap);border-radius:var(--r-btn);border:var(--border);background:var(--surface);color:var(--text);font-size:var(--fs-sm);cursor:pointer;font-weight:600;display:inline-flex}.appDialogBackdrop{z-index:var(--z-dialog);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:max(var(--sp-5), env(safe-area-inset-top)) max(var(--sp-5), env(safe-area-inset-right)) max(var(--sp-5), env(safe-area-inset-bottom)) max(var(--sp-5), env(safe-area-inset-left));animation:fadeIn var(--dur) var(--ease) both;background:#05080eb8;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.appDialog{width:100%;max-width:400px;max-height:100%;padding:var(--sp-5);border-radius:var(--r-dialog);border:var(--border);background:var(--grad-surface);box-shadow:var(--shadow);overflow-y:auto}.appDialogTitle{font-family:var(--font-display);margin:0 0 var(--sp-2);font-size:var(--fs-h3);color:var(--text);font-weight:700}.appDialogMsg{font-size:var(--fs-sm);color:var(--text-2);white-space:pre-line;margin:0;line-height:1.5}.appDialogInput{margin-top:var(--sp-3);font-family:var(--font-ui);font-size:var(--fs-h3);padding:var(--sp-3)}.appDialogBtns{gap:var(--sp-2);margin-top:var(--sp-4);bottom:calc(var(--sp-5) * -1);padding:var(--sp-3) 0;margin-bottom:calc(var(--sp-3) * -1);background:var(--surface-2);display:flex;position:sticky}.appDialogBtns button{font-family:var(--font-ui);min-height:var(--tap);border-radius:var(--r-btn);font-size:var(--fs-sm);cursor:pointer;flex:1;font-weight:600}.appDialogCancel{border:var(--border);color:var(--text-2);background:0 0}.appDialogOk{background:var(--grad-primary);border:1px solid rgba(var(--white-rgb),.14);color:var(--text-on-primary)}.appDialogDanger{background:var(--error);border-color:rgba(var(--white-rgb),.18);color:#fff}.settingsBlock{margin-top:var(--sp-5)}.settingsLogoRow{align-items:center;gap:var(--sp-2);margin-top:var(--sp-1);display:flex}.settingsLogoRow img{border-radius:var(--r-sm);background:#fff;height:40px;padding:2px}.settingsWide{grid-column:1/-1}.settingsLegal{font-size:var(--fs-xs);color:var(--text-2);margin-top:var(--sp-1);line-height:1.6}.settingsLegal a,.settingsLegal .ossLink{padding-block:var(--sp-2);margin-block:calc(var(--sp-2) * -1);vertical-align:baseline;color:var(--accent);display:inline-block}.settingsLegal .ossLink{font:inherit;cursor:pointer;background:0 0;border:0;padding-inline:0;text-decoration:underline}[dir=rtl] .proBanner{direction:rtl}.offerOverlay{z-index:var(--z-modal);padding:var(--shell-pad);background:#000000b8;justify-content:center;align-items:center;padding-block-end:max(var(--shell-pad), env(safe-area-inset-bottom));display:flex;position:fixed;inset:0}.offerSheet{overscroll-behavior:contain;background:var(--grad-surface);border-radius:var(--r-dialog);width:100%;max-width:560px;max-height:100%;box-shadow:var(--edge-card);padding:var(--sp-4);overflow-y:auto}.offerHead{align-items:center;gap:var(--sp-3);display:flex}.offerHead h2{font-family:var(--font-display);font-size:var(--fs-h3);color:var(--text);margin:0}.offerClose{border:var(--border);border-radius:var(--r-btn);color:var(--text-2);min-width:var(--tap);min-height:var(--tap);cursor:pointer;background:0 0;place-items:center;margin-left:auto;display:grid}.offerPaper{margin-top:var(--sp-3);border-radius:var(--r-input);padding:var(--sp-3);box-shadow:var(--shadow);background:#fff}.offerLetterhead{align-items:center;gap:var(--sp-3);border-block-end:1px solid #d4dae2;padding-block-end:var(--sp-2);display:flex}.offerLogo{object-fit:contain;flex:none;width:64px;height:40px}.offerLogoSlot{text-align:start;width:128px;min-height:48px;padding:var(--sp-1) var(--sp-2);border-radius:var(--r-sm);cursor:pointer;font-family:var(--font-ui);background:#f1f5f9;border:1px dashed #94a3b8;flex:none;align-content:center;gap:2px;display:grid}.offerLogoSlot.locked{border-style:solid;border-color:var(--primary);background:#eff6ff}.offerLogoSlotTitle{font-size:var(--fs-2xs);color:#0f172a;font-weight:700;line-height:1.2}.offerLogoSlotHint{font-size:var(--fs-2xs);color:#475569;line-height:1.2}.offerCompany{text-align:center;min-width:0;font-family:var(--font-ui);font-size:var(--fs-sm);color:#0f172a;border-radius:var(--r-sm);padding:var(--sp-1);background:0 0;border:0;flex:auto;font-weight:700}.offerCompany::placeholder{color:#94a3b8;font-weight:500}.offerCompany:focus{outline:2px solid var(--primary);outline-offset:1px}.offerDrawing{margin-top:var(--sp-2)}.offerDrawing svg{width:100%;height:auto;display:block}.offerActions{margin-top:var(--sp-4);gap:var(--sp-3);grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);display:grid}.offerActions button{font-family:var(--font-ui);min-height:var(--tap);border-radius:var(--r-btn);border:1px solid rgba(var(--white-rgb),.14);background:var(--grad-primary);color:var(--text-on-primary);font-weight:600;font-size:var(--fs-sm);justify-content:center;align-items:center;gap:var(--sp-2);cursor:pointer;display:inline-flex}.offerActions button.secondary{background:var(--surface);color:var(--text);border:var(--border-accent)}[dir=rtl] .offerSheet{direction:rtl}.gateOverlay{z-index:var(--z-fullscreen);background:var(--grad-bg);padding:var(--shell-pad);justify-content:center;align-items:center;padding-block-end:max(var(--shell-pad), env(safe-area-inset-bottom));display:flex;position:fixed;inset:0;overflow-y:auto}.gateSheet{gap:var(--sp-3);text-align:center;background:var(--grad-surface);border-radius:var(--r-dialog);width:100%;max-width:420px;box-shadow:var(--edge-card);padding:var(--sp-5) var(--sp-4);justify-items:center;display:grid}.gateIcon{color:var(--accent);line-height:0}.gateTitle{font-family:var(--font-display);font-size:var(--fs-h2);color:var(--text);margin:0;line-height:1.25}.gateBody{font-size:var(--fs-sm);color:var(--text-2);margin:0;line-height:1.5}.gateValue{gap:var(--sp-1);width:100%;padding:var(--sp-3);border-radius:var(--r-btn);background:var(--bg-2);display:grid}.gateValueTitle{font-size:var(--fs-sm);color:var(--text);font-weight:700}.gateValueList{font-size:var(--fs-xs);color:var(--text-2);line-height:1.4}.gateHint{font-size:var(--fs-2xs);color:var(--text-2);margin:0;line-height:1.4}.rateBackdrop{z-index:var(--z-dialog);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:max(var(--sp-5), env(safe-area-inset-top)) max(var(--sp-5), env(safe-area-inset-right)) max(var(--sp-5), env(safe-area-inset-bottom)) max(var(--sp-5), env(safe-area-inset-left));animation:fadeIn var(--dur) var(--ease) both;background:#05080eb8;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.rateSheet{gap:var(--sp-2);text-align:center;width:100%;max-width:400px;max-height:100%;padding:var(--sp-5);border-radius:var(--r-dialog);border:var(--border);background:var(--grad-surface);box-shadow:var(--shadow);justify-items:center;display:grid;overflow-y:auto}.rateIcon{color:var(--accent);line-height:0}.rateTitle{font-family:var(--font-display);font-size:var(--fs-h3);color:var(--text);margin:0;font-weight:700;line-height:1.25}.rateBody{font-size:var(--fs-sm);color:var(--text-2);margin:0;line-height:1.5}.rateNote{font-size:var(--fs-2xs);color:var(--text-2);margin:0;line-height:1.4}.rateGo{width:100%;margin-top:var(--sp-2);font-family:var(--font-ui);min-height:var(--tap);border-radius:var(--r-btn);border:1px solid rgba(var(--white-rgb),.14);background:var(--grad-primary);color:var(--text-on-primary);font-size:var(--fs-sm);justify-content:center;align-items:center;gap:var(--sp-2);cursor:pointer;font-weight:700;text-decoration:none;display:inline-flex}.rateSecondRow{gap:var(--sp-2);width:100%;margin-top:var(--sp-1);display:flex}.rateSecondRow button{font-family:var(--font-ui);min-height:var(--tap);border-radius:var(--r-btn);font-size:var(--fs-sm);cursor:pointer;flex:1;font-weight:600}.rateSecondary{border:var(--border-accent);color:var(--accent);background:0 0}.rateLater{border:var(--border);color:var(--text-2);background:0 0}[dir=rtl] .rateSheet{direction:rtl}.subGate{position:relative}.scrapCost{gap:var(--sp-1);text-align:start;width:100%;display:grid}.scrapCost input{width:100%;min-height:var(--tap)}.scrapCostResult,.trialEndingBar strong{color:var(--text)}.trialEndingActions{gap:var(--sp-3);margin-inline-start:auto;display:flex}.subGateClose{min-width:var(--tap);min-height:var(--tap);color:var(--text-2);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;inset-block-start:var(--sp-2);inset-inline-end:var(--sp-2)}.subGatePlan{place-items:center;gap:2px;display:grid}.subGateAccount{overflow-wrap:anywhere}.subGateLink{font:inherit;color:var(--accent);padding:var(--sp-1) 0;min-height:var(--tap);cursor:pointer;background:0 0;border:0;font-weight:600;text-decoration:underline}.subGateLink[disabled]{opacity:.6;cursor:wait}.subNewProLock{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border:var(--border-accent);border-radius:var(--r-btn);font-size:var(--fs-xs);color:var(--text-2);flex-wrap:wrap;display:flex}.subDeleteLink{color:var(--text-2);font-weight:500;font-size:var(--fs-2xs)}.subDeleteBox{gap:var(--sp-2);width:100%;padding:var(--sp-3);border-radius:var(--r-btn);background:var(--bg-2);display:grid}.subDeleteRow{gap:var(--sp-2);grid-template-columns:1fr 1fr;display:grid}.subOffline{gap:var(--sp-2);width:100%;padding:var(--sp-3);border-radius:var(--r-btn);background:var(--bg-2);text-align:start;display:grid}.subOffline .gateHint{margin:0}.subOfflineOverlay:focus{outline:none}.subOfflineBox{text-align:start;max-width:480px}.subOfflineBox .subOffline{background:0 0;padding:0}.subOfflineClose{align-items:center;gap:var(--sp-1);display:inline-flex}.subOfflineWarn{color:var(--error-text)}.subOfflineRow{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.subOfflineId{min-height:var(--tap);padding:0 var(--sp-2);letter-spacing:.02em;color:var(--text);border:var(--border-accent);border-radius:var(--r-btn);overflow-wrap:anywhere;flex:14ch;align-items:center;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.95rem;display:flex}.subOfflineCopy{flex:none;width:auto;min-width:96px}.subOfflineMail{box-sizing:border-box;justify-content:center;align-items:center;text-decoration:none;display:flex}.subOfflineSteps{color:var(--text);line-height:1.5}.subOfflineKey{gap:var(--sp-1);display:grid}.subOfflineKey textarea{width:100%;min-height:calc(var(--tap) * 1.6);resize:vertical;box-sizing:border-box;padding:var(--sp-2);color:var(--text);background:var(--bg);border:var(--border-accent);border-radius:var(--r-btn);overflow-wrap:anywhere;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.85rem}.subOfflineName{width:100%;min-height:var(--tap);box-sizing:border-box;padding:0 var(--sp-2);color:var(--text);background:var(--bg);border:var(--border-accent);border-radius:var(--r-btn);font:inherit;font-size:1rem}.subDeviceList{gap:var(--sp-2);width:100%;margin:0;padding:0;list-style:none;display:grid}.subDeviceRow{align-items:center;gap:2px var(--sp-2);padding:var(--sp-2) var(--sp-3);border:var(--border-accent);border-radius:var(--r-btn);background:var(--bg-2);text-align:left;grid-template-columns:1fr auto;grid-template-areas:"name btn""seen btn";display:grid}.subDeviceRow .subDeviceName{overflow-wrap:anywhere;grid-area:name;font-weight:600}.subDeviceRow .gateHint{grid-area:seen;margin:0}.subDeviceRow .proBannerRestore{grid-area:btn;width:auto;min-width:88px}.subDanger{color:var(--error-text);border-color:currentColor}.limitedBar{justify-content:space-between;align-items:center;gap:var(--sp-2);margin:var(--sp-2) var(--sp-3) 0;padding:var(--sp-1) var(--sp-3);border:var(--border-accent);border-radius:var(--r-btn);font-size:var(--fs-xs);color:var(--text-2);flex-wrap:wrap;display:flex}.coverageScroll{-webkit-overflow-scrolling:touch;margin:var(--sp-1) 0;overflow-x:auto}.coverageTable{font-family:var(--font-mono);border-collapse:collapse;width:100%;min-width:340px;font-size:var(--fs-xs)}.coverageTable th,.coverageTable td{border:var(--border);padding:var(--sp-1) var(--sp-2);text-align:center;white-space:nowrap}.coverageTable thead th,.coverageTable tbody th{color:var(--accent);background:rgba(var(--primary-rgb),.08);font-weight:600}.covMeasured{background:rgba(var(--success-rgb),.16);color:var(--success-text);font-weight:600}.covEstimated{color:var(--text-2)}.holeActions{align-items:center;gap:var(--sp-2);margin-top:var(--sp-3);flex-wrap:wrap;display:flex}.holeActions>.toolActionBtn{flex:auto}.holeCount{color:var(--text-2);font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.holeList{gap:var(--sp-3);margin-top:var(--sp-4);flex-direction:column;display:flex}.holeCard{border:var(--border);border-radius:var(--r-card);background:var(--surface);padding:var(--sp-3)}.holeCard.holeCardOrphan{border-color:var(--warning)}.holeCardHead{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.holeCardHead>.pickerField{flex:1 1 0;min-inline-size:0}.holeTag{block-size:32px;min-inline-size:44px;padding:0 var(--sp-2);border-radius:var(--r-btn);background:var(--bg);border:var(--border);color:var(--error-text);font-weight:700;font-size:var(--fs-sm);font-variant-numeric:tabular-nums;flex:none;justify-content:center;align-items:center;display:flex}.holeDelBtn{inline-size:var(--tap);block-size:var(--tap);border-radius:var(--r-btn);border:var(--border);background:var(--bg);color:var(--text-2);flex:none;justify-content:center;align-items:center;padding:0;display:flex}.holeDelBtn:active{transform:scale(.97)}.holeGrid{gap:var(--sp-2);margin-top:var(--sp-3);grid-template-columns:1fr auto;align-items:end;display:grid}.holeField{min-inline-size:0}.holeField input{margin-top:0}.holeTypeRow{margin-top:var(--sp-2);align-items:end;gap:var(--sp-2);display:flex}.holeTypeRow .pickerField{flex:auto;min-inline-size:0}.holeSizeRow{align-items:end;gap:var(--sp-2);margin-top:var(--sp-2);display:flex}.holeFieldGrow{flex:1 1 0;min-inline-size:0}.holeSizeX{color:var(--text-2);font-size:var(--fs-sm);flex:none;padding-block-end:var(--sp-3)}.holeRefBtn{block-size:var(--tap);padding:0 var(--sp-2);border-radius:var(--r-btn);border:var(--border);background:var(--bg);color:var(--text-2);font-size:var(--fs-sm);white-space:nowrap}.holeRefBtn:active{transform:scale(.97)}.holeWarn{margin-top:var(--sp-2);color:var(--warning-text);font-size:var(--fs-sm);line-height:1.35}.holeCard>.holeCalmNote{margin-top:var(--sp-2)}.holePreview{margin-top:var(--sp-5)}.holePreview .cadSheet{border-radius:var(--r-input);border:var(--border);background:#fff;block-size:auto;inline-size:100%}.holeSaveRow{margin-top:var(--sp-4)}.holeSaveRow>.toolActionBtn{width:100%}.holeSaveRow>.toolNote{margin-top:var(--sp-2)}.holeTabs{gap:var(--sp-2);padding:var(--sp-2) var(--sp-3) 0;display:flex}.holeTabs>button{block-size:var(--tap);border-radius:var(--r-btn);border:var(--border);background:var(--bg);color:var(--text-2);flex:1 1 0;font-weight:600}.holeTabs>button.active{background:var(--primary);border-color:var(--primary);color:#fff}.holeTabs>button:disabled{opacity:.42}.holeBody{min-block-size:0;padding:var(--sp-3);flex:auto;overflow-y:auto}.holeBodyWide{gap:var(--sp-4);grid-template-columns:minmax(320px,400px) 1fr;align-items:start;display:grid}.holeBodyWide .holeColList{max-block-size:calc(100dvh - 120px);padding-inline-end:var(--sp-2);overflow-y:auto}.holeCol2d{min-inline-size:0}.holeCol3d{min-inline-size:0;margin-top:var(--sp-4)}.holeBodyWide .holeCol2d{grid-area:1/2}.holeBodyWide .holeCol3d{grid-area:2/2;margin-top:0}.holeBodyWide .holeColList{grid-area:1/1/span 2}.holeBody .holePreview{margin-top:var(--sp-2)}.holeCountBar{margin-inline-start:auto;padding-inline-end:var(--sp-2)}.holePatternForm{margin-top:var(--sp-3);border:var(--border);border-radius:var(--r-card);background:var(--surface);padding:var(--sp-3)}.holePatternRow{gap:var(--sp-2);margin-top:var(--sp-2);grid-template-columns:1fr 1fr;align-items:end;display:grid}.holePatternRow:first-child{grid-template-columns:1fr;margin-top:0}.holePatternForm>.toolActionBtn{width:100%;margin-top:var(--sp-3)}.holePatternForm>.toolNote{margin-top:var(--sp-2)}.holeEmbed3d{border-radius:var(--r-card);border:var(--border);block-size:min(52dvh,460px);position:relative;overflow:hidden}.holeEmbed3d .threeMount{block-size:100%;inline-size:100%}.holeReset3d{inline-size:var(--tap);block-size:var(--tap);border-radius:var(--r-btn);border:var(--border);color:var(--text-2);background:#00000059;justify-content:center;align-items:center;display:flex;position:absolute;inset-block-start:var(--sp-2);inset-inline-end:var(--sp-2)}.holeRefBtnOn{background:var(--accent-soft,#5a78ff2e);border-color:var(--accent,#5a78ff);color:var(--text);font-weight:600}.holeCutNote{padding-inline:var(--sp-2);color:var(--text-2);font-size:var(--fs-sm);white-space:nowrap;align-self:center}.holeQuickBar{align-items:center;gap:var(--sp-2);margin-top:var(--sp-3);flex-wrap:wrap;display:flex}.holeQuickBtns{gap:var(--sp-2);display:flex}.holeQuickCount{color:var(--text-2);font-size:var(--fs-sm);white-space:nowrap}.holeSaveTplBtn{block-size:var(--tap);padding:0 var(--sp-3);border-radius:var(--r-btn);border:1px solid var(--accent,#5a78ff);color:var(--accent,#5a78ff);font-size:var(--fs-sm);white-space:nowrap;background:0 0}.holeSaveTplBtn:disabled{opacity:.4;border-color:var(--border-color,#33405a);color:var(--text-2)}.holeSaveTplBtn:active:not(:disabled){transform:scale(.97)}.prodPanel{gap:var(--sp-3);flex-direction:column;display:flex}.prodExportRow{gap:var(--sp-2);display:flex}.prodBtn{min-inline-size:0;font-family:var(--font-ui);justify-content:center;align-items:center;gap:var(--sp-1);padding:var(--sp-3) var(--sp-2);min-height:var(--tap);border-radius:var(--r-btn);border:var(--border-accent);background:var(--surface);color:var(--accent);cursor:pointer;transition:transform var(--dur) var(--ease);flex-direction:column;flex:1 1 0;display:flex}.prodBtn:active{transform:scale(.97)}.prodBtnMain{align-items:center;gap:var(--sp-2);font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:.5px;font-weight:600;display:inline-flex}.prodBtnHint{color:var(--text-2);font-size:var(--fs-2xs);text-align:center;white-space:normal;word-break:break-word;line-height:1.25}.prodMsg{color:var(--text-2);font-size:var(--fs-xs);margin:0;line-height:1.4}.plateHint{margin:0 0 var(--sp-3);color:var(--text-2);font-size:var(--fs-xs);line-height:1.4}.plateList{gap:var(--sp-2);grid-template-columns:repeat(auto-fit,minmax(132px,1fr));display:grid}.plateItem{align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-2);border-radius:var(--r-btn);border:var(--border);background:var(--bg-2);color:var(--text-2);font-family:var(--font-mono);font-size:var(--fs-xs);min-height:var(--tap);cursor:pointer;transition:border-color var(--dur) var(--ease), color var(--dur) var(--ease);flex-direction:column;line-height:1.3;display:flex}.plateItemLabel{display:block}.plateItemOwn{padding:0;position:relative}.plateItemPick{align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-3) var(--sp-2);border-radius:inherit;color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;flex-direction:column;display:flex}.plateItemDelete{top:0;width:var(--tap);height:var(--tap);color:var(--text-2);font-size:var(--fs-md);cursor:pointer;opacity:.65;background:0 0;border:none;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;inset-inline-end:0}.plateItemDelete:active{opacity:1}.plateItemOwn.active .plateItemDelete{color:var(--text-on-primary)}.plateAddBtn{width:100%;margin-bottom:var(--sp-2);padding:var(--sp-2) var(--sp-3);min-height:var(--tap);border-radius:var(--r-btn);border:var(--border);background:var(--bg-2);color:var(--text);font-family:var(--font-ui);font-size:var(--fs-sm);cursor:pointer}.plateAddBtn:disabled{color:var(--text-disabled);cursor:default}.plateThumb{flex:none;width:46px;height:46px;overflow:visible}.plateThumbBody{fill:none;stroke:currentColor;stroke-width:2px;opacity:.4}.plateThumbHole{fill:currentColor}.plateThumbCsk{fill:none;stroke:currentColor;stroke-width:1.4px;opacity:.55}.plateItem.active{background:var(--grad-primary);color:var(--text-on-primary);box-shadow:var(--inset-top), var(--glow);border-color:#0000}.plateFoot{bottom:calc(var(--sp-3) * -1);margin-top:var(--sp-4);padding:var(--sp-3) 0;background:var(--surface-2);border-top:var(--border);position:sticky}.plateApplyRow{gap:var(--sp-3);grid-template-columns:minmax(0,1fr) auto;align-items:end;display:grid}.plateApplyRowWide{grid-template-columns:1fr}.plateApplyBtn{font-family:var(--font-ui);padding:var(--sp-2) var(--sp-4);min-height:var(--tap);border-radius:var(--r-btn);background:var(--grad-primary);color:var(--text-on-primary);font-size:var(--fs-sm);cursor:pointer;border:none;font-weight:600}.plateApplyBtn:disabled{background:var(--bg-2);color:var(--text-disabled)}@media (width<=700px){.prodBtnMain{font-size:var(--fs-xs)}.plateList{grid-template-columns:repeat(auto-fit,minmax(118px,1fr))}}.plateDelBtn{inline-size:100%;block-size:var(--tap);border-radius:var(--r-btn);border:1px solid var(--danger,#b91c1c);color:var(--danger,#b91c1c);font-size:var(--fs-sm);background:0 0;margin-block-end:var(--sp-2)}.plateDelBtn:disabled{opacity:.35;border-color:var(--border-color,#33405a);color:var(--text-2)}.plateDelBtn:active:not(:disabled){transform:scale(.99)}.b4dWrap{background:var(--bg-2);flex-direction:column;display:flex;position:absolute;inset:0}.b4dCanvas{flex:1;min-height:0;position:relative;overflow:hidden}.b4dBadge{top:calc(var(--sp-3) + env(safe-area-inset-top));align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border:var(--border);pointer-events:none;max-inline-size:calc(100% - var(--sp-6));background:#090d14d1;border-radius:999px;display:flex;position:absolute;inset-inline-start:max(var(--sp-3), env(safe-area-inset-left))}.b4dStep.b4dDone{font-size:1.5em;line-height:1}.b4dStep.b4dDone.ok{color:#1fbf5a}.b4dStep.b4dDone.bad{color:#ff5a5f}.b4dStep{font-family:var(--font-ui);font-size:var(--fs-sm);color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.b4dAngle:empty{display:none}.b4dAngle{font-family:var(--font-mono);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;color:var(--accent);white-space:nowrap;border-inline-start:1px solid #f8fafc2e;padding-inline-start:var(--sp-2);font-weight:600}.b4dHint{inset-block-start:calc(var(--sp-3) + env(safe-area-inset-top) + 46px);inset-block-end:auto}.b4dBar{gap:var(--sp-2);padding:var(--sp-3) max(var(--sp-4),env(safe-area-inset-right)) calc(var(--sp-3) + max(env(safe-area-inset-bottom), 8px)) max(var(--sp-4),env(safe-area-inset-left));background:var(--bg);border-top:var(--border);flex-direction:column;flex:none;display:flex}.b4dScrub{appearance:none;inline-size:100%;block-size:calc(var(--tap) / 2);cursor:pointer;background:0 0;margin:0}.b4dScrub::-webkit-slider-runnable-track{background:linear-gradient(90deg,var(--primary),var(--accent));opacity:.75;border-radius:999px;block-size:6px}.b4dScrub::-moz-range-track{background:linear-gradient(90deg,var(--primary),var(--accent));opacity:.75;border-radius:999px;block-size:6px}.b4dScrub::-webkit-slider-thumb{appearance:none;background:var(--text);border:2px solid var(--primary);border-radius:50%;block-size:22px;inline-size:22px;margin-top:-8px;box-shadow:0 2px 6px #00000080}.b4dScrub::-moz-range-thumb{background:var(--text);border:2px solid var(--primary);border-radius:50%;block-size:22px;inline-size:22px;box-shadow:0 2px 6px #00000080}.b4dBtns{justify-content:center;align-items:center;gap:var(--sp-3);display:flex}.b4dBtn{inline-size:var(--tap);block-size:var(--tap);border:var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.b4dSpeed{font-family:var(--font-mono);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;color:var(--text-2);font-weight:700}.b4dPlay{inline-size:calc(var(--tap) + 10px);block-size:calc(var(--tap) + 10px);background:var(--grad-primary);color:var(--text-on-primary);border-color:#0000}@media (height<=520px){.b4dBar{overscroll-behavior:contain;max-block-size:50%;overflow-y:auto}}@media (width<=399px){.b4dBtns{gap:var(--sp-2)}}@media (width<=371px){.b4dBtns{gap:var(--sp-1)}}.b4dPivotWrap{flex:none;display:inline-flex;position:relative}.b4dPivot.on{color:var(--accent);border-color:rgba(var(--primary-rgb),.8)}.b4dPivotMenu{min-width:0;inline-size:max-content;max-inline-size:calc(100vw - 2 * var(--sp-4));inset-inline:auto 0}.b4dPivotTitle{padding:var(--sp-2) var(--sp-4) var(--sp-1);font-family:var(--font-ui);font-size:var(--fs-xs);color:var(--text-2);font-weight:600}.b4dPivotDot{border:2px solid var(--text-2);border-radius:50%;flex:none;block-size:12px;inline-size:12px}.pickerMenu button.active .b4dPivotDot{border-color:var(--primary);background:var(--primary)}.pickerMenu button.b4dSimpleItem{border-block-start:var(--border);white-space:normal;max-inline-size:min(320px, calc(100vw - 2 * var(--sp-4)));align-items:flex-start}.b4dSimpleBox{border:2px solid var(--text-2);border-radius:4px;flex:none;justify-content:center;align-items:center;block-size:16px;inline-size:16px;margin-block-start:2px;font-size:12px;line-height:1;display:inline-flex}.pickerMenu button.b4dSimpleItem.active .b4dSimpleBox{border-color:var(--primary);background:var(--primary);color:#fff}.b4dSimpleText{text-align:start;flex-direction:column;gap:2px;display:flex}.b4dSimpleText small{font-size:var(--fs-xs);color:var(--text-2);font-weight:400}.b4dPickHint{inset-block-start:calc(var(--sp-3) + env(safe-area-inset-top) + 46px);inset-inline:var(--sp-3);inline-size:fit-content;max-inline-size:calc(100% - 2 * var(--sp-3));align-items:center;gap:var(--sp-1);padding:var(--sp-1) var(--sp-1) var(--sp-1) var(--sp-3);border:1px solid rgba(var(--primary-rgb),.75);color:var(--text);font-family:var(--font-ui);font-size:var(--fs-sm);background:#090d14e0;border-radius:999px;margin-inline:auto;font-weight:600;display:flex;position:absolute}.b4dPickText{min-inline-size:0}.b4dPickCancel{inline-size:var(--tap);block-size:var(--tap);color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.b4dCheckWrap{gap:var(--sp-2);flex-direction:column;display:flex}.b4dQuickActions{gap:var(--sp-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.b4dQuickActions.n3,.b4dQuickActions.n5{grid-template-columns:repeat(3,minmax(0,1fr))}.b4dTurn{justify-content:center;align-items:center;gap:var(--sp-2);min-height:var(--tap);border:1px solid var(--border-strong);border-radius:var(--r-input);background:var(--bg);inline-size:100%;color:var(--text);font-weight:600;display:flex}.b4dTurn.active{border-color:var(--warning);color:var(--warning-text);background:rgba(var(--warning-rgb),.12)}.b4dFinish{justify-content:center;align-items:center;gap:var(--sp-2);min-height:var(--tap);border:1px solid var(--primary);border-radius:var(--r-input);background:rgba(var(--primary-rgb),.12);inline-size:100%;color:var(--primary);font-weight:700;display:flex}.b4dFinish:disabled{opacity:.5;cursor:default}.b4dCheck{align-items:center;gap:var(--sp-2);inline-size:100%;min-block-size:var(--tap);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-input);border:var(--border);background:var(--surface);color:var(--text);font-family:var(--font-ui);font-size:var(--fs-sm);text-align:start;cursor:pointer;font-weight:600;display:flex}.b4dCheck.pending{color:var(--text-2);cursor:default}.b4dCheckText{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;min-inline-size:0;display:-webkit-box;overflow:hidden}.b4dCheckDot{background:var(--text-2);border-radius:50%;flex:none;block-size:10px;inline-size:10px}.b4dCheck.ok{border-color:rgba(var(--success-rgb),.55)}.b4dCheck.ok .b4dCheckDot{background:var(--success)}.b4dCheck.bad{border-color:rgba(var(--error-rgb),.7);background:rgba(var(--error-rgb),.12)}.b4dCheck.bad .b4dCheckDot{background:var(--error)}.b4dCheck.warn{border-color:rgba(var(--warning-rgb),.6)}.b4dCheck.warn .b4dCheckDot{background:var(--warning)}.b4dCheckPanel{border-radius:var(--r-input);border:var(--border);background:var(--bg-2);flex-direction:column;display:flex}.b4dCheckHead{justify-content:space-between;align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-1) var(--sp-1) var(--sp-3);border-block-end:var(--border);display:flex}.b4dCheckTitle{font-family:var(--font-ui);font-size:var(--fs-sm);color:var(--text);font-weight:700}.b4dCheckClose{align-items:center;gap:var(--sp-1);min-block-size:var(--tap);padding:0 var(--sp-3);border:1px solid var(--border-strong);border-radius:var(--r-input);background:var(--surface);color:var(--text);font-weight:600;font-size:var(--fs-sm);display:inline-flex}.b4dCheckList{padding:var(--sp-2) var(--sp-3);max-block-size:30vh;font-size:var(--fs-sm);color:var(--text-2);margin:0;line-height:1.45;list-style:none;overflow-y:auto}.b4dCheckList li+li{margin-block-start:var(--sp-1)}.b4dCheckList li.bad{color:var(--error-text)}.b4dCheckList li.warn{color:var(--warning-text)}.b4dEmpty{padding:var(--sp-6);text-align:center;color:var(--text-2);font-size:var(--fs-sm);background:var(--bg-2);flex:1;justify-content:center;align-items:center;display:flex}.b4dEmptyCol{gap:var(--sp-4);flex-direction:column}.b4dEmptyCol p{max-inline-size:36rem;margin:0}.b4dPickTools{inline-size:auto;padding-inline:var(--sp-6)}@media (width>=760px){.b4dBar{align-items:center}.b4dScrub{max-inline-size:640px}}.mmView{z-index:var(--z-fullscreen);background:var(--bg);flex-direction:column;display:flex;position:fixed;inset:0}.mmTitle{font-size:var(--fs-md);color:var(--text);flex:auto;min-width:0}.mmTopVerify{inline-size:auto;min-height:var(--tap);padding:0 var(--sp-3);font-size:var(--fs-sm);white-space:nowrap;flex:none}.mmStage{background:#0a0d12;flex:auto;min-height:160px;position:relative;overflow:hidden}.mmCanvas{position:absolute;inset:0}.mmCanvas canvas{touch-action:none;display:block}.mmMsg{inset:auto var(--sp-4);text-align:center;color:var(--text-2);font-size:var(--fs-sm);margin:0;position:absolute;top:40%}.mmPanel{gap:var(--sp-2);padding:var(--sp-3) max(var(--sp-4),env(safe-area-inset-right)) calc(var(--sp-2) + env(safe-area-inset-bottom)) max(var(--sp-4),env(safe-area-inset-left));background:var(--bg-2);border-top:var(--border);flex-direction:column;flex:none;display:flex}.mmChips{scrollbar-width:none;-ms-overflow-style:none;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.mmChips::-webkit-scrollbar{display:none}.mmChip{min-height:var(--tap);padding:0 var(--sp-3);border-radius:var(--r-btn);border:var(--border);background:var(--surface);color:var(--text-2);font-family:var(--font-ui);font-size:var(--fs-sm);white-space:nowrap;flex:none;align-items:center;gap:6px;font-weight:600;display:inline-flex}.mmChipVal{font-variant-numeric:tabular-nums;opacity:.9}.mmChip.empty{border-color:rgba(var(--warning-rgb),.65);background:rgba(var(--warning-rgb),.12);color:var(--warning-text)}.mmChip.filled{color:var(--accent);background:#2ec5ff1a;border-color:#2ec5ff99}.mmChip.active.filled{background:var(--grad-primary);color:var(--text-on-primary);border-color:#0000}.mmChip.active.empty{background:var(--warning);color:#1a1200;border-color:#0000}.mmStepCard{gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-card,14px);background:var(--surface);border:1px solid #2ec5ff73;flex-direction:column;display:flex}.mmStepHead{align-items:baseline;gap:var(--sp-2);min-width:0;display:flex}.mmStepNo{font-variant-numeric:tabular-nums;font-size:var(--fs-sm);color:var(--accent);flex:none;font-weight:700}.mmStepName{font-size:var(--fs-md);color:var(--text);min-width:0}.mmHow{font-size:var(--fs-sm);color:var(--text);margin:0;line-height:1.4}.mmEditRow{align-items:flex-end;gap:var(--sp-2);display:flex}.mmField{flex:auto;min-width:0}.mmField label{margin:0}.mmStep{width:var(--tap);min-height:var(--tap);flex:none;padding:0;font-size:24px;line-height:1}.mmNote{margin:0}.mmKind{gap:6px;display:flex}.mmKindBtn{min-height:var(--tap);border-radius:var(--r-btn);border:var(--border);background:var(--surface);color:var(--text-2);font-family:var(--font-ui);font-size:var(--fs-sm);flex:1 1 0;font-weight:600}.mmKindBtn.active{background:var(--grad-primary);color:var(--text-on-primary);border-color:#0000}.mmVerify{gap:var(--sp-2);flex-direction:column;max-height:58vh;display:flex;overflow-y:auto}.mmVerifyRows{font-size:var(--fs-sm);color:var(--text);font-variant-numeric:tabular-nums;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.mmVerifyRows li{border-radius:var(--r-btn);background:var(--surface);border:var(--border);padding:6px 10px}.mmVerifyRows li.touch{border-color:rgba(var(--error-rgb),.6)}.mmVerifyRows li.unmeasured{color:var(--warning-text)}.mmVerifyAsk{color:var(--text);font-weight:600;font-size:var(--fs-sm);margin:0}.mmVerifyActions{gap:var(--sp-2);display:flex}.mmVerifyActions>button{min-height:var(--tap);flex:1 1 0}.mmVerifyVerdict{font-weight:700;font-size:var(--fs-md);margin:0}.mmVerifyVerdict.ok{color:var(--success-text)}.mmVerifyVerdict.bad{color:var(--error-text)}.toolNote.mmVerifyOk{color:var(--success-text)}.mmVerifyBtn{min-height:var(--tap)}.mmChips.wrap{flex-wrap:wrap;overflow-x:visible}.b4dGaugePanel{z-index:5;background:var(--bg-2);flex-direction:column;display:flex;position:absolute;inset:0}.b4dGaugeBody{min-height:0;padding:var(--sp-3);gap:var(--sp-2);flex-direction:column;flex:1;display:flex;overflow-y:auto}.b4dGaugeHelp,.b4dGaugeLegend{font-size:var(--fs-sm);color:var(--text-2,var(--text));margin:0}.b4dGaugeLegend{opacity:.8}.b4dGaugeTable{border-collapse:collapse;inline-size:100%;font-size:var(--fs-md)}.b4dGaugeTable th,.b4dGaugeTable td{padding:var(--sp-1);text-align:start;border-block-end:var(--border)}.b4dGaugeTable thead th{font-size:var(--fs-sm);opacity:.8;font-weight:600}.b4dGaugeTable tbody th{white-space:nowrap;font-weight:700}.b4dGaugeTable input{inline-size:100%;min-block-size:var(--tap);box-sizing:border-box}.b4dGaugeTable tr.bad td,.b4dGaugeTable tr.bad th{color:var(--warning-text)}.b4dGaugeDot{color:var(--primary)}.b4dGaugeDiff{font-variant-numeric:tabular-nums;white-space:nowrap}.b4dGaugeTol{align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);display:flex}.b4dGaugeTol span{flex:auto}.b4dGaugeTol input{inline-size:7rem;min-block-size:var(--tap)}.b4dGaugeResult{padding:var(--sp-2) var(--sp-3);border-radius:var(--r-input);border:var(--border);font-size:var(--fs-sm);line-height:1.4}.b4dGaugeResult.warn{border-color:var(--warning);background:rgba(var(--warning-rgb),.12)}.b4dGaugeResult.ok{border-color:var(--success);background:rgba(var(--success-rgb),.12)}.b4dGaugeResult.offer{border-color:var(--primary);background:rgba(var(--primary-rgb),.12)}.b4dGaugeSave{flex:none}.b4dGaugeSaved{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-input);border:1px solid var(--warning);background:rgba(var(--warning-rgb),.12);font-size:var(--fs-sm);flex-wrap:wrap;font-weight:600;display:flex}.b4dGaugeSaved span{flex:12rem}.b4dGaugeSavedBtns{gap:var(--sp-2);display:flex}.b4dOrderList{gap:var(--sp-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.b4dOrderRow{align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-2);border:var(--border);border-radius:var(--r-input);background:var(--surface);font-size:var(--fs-md);display:flex}.b4dOrderNo{font-variant-numeric:tabular-nums;opacity:.8;min-inline-size:2ch}.b4dOrderName{flex:auto;font-weight:700}.b4dOrderAngle{font-variant-numeric:tabular-nums;white-space:nowrap}.b4dOrderMove{inline-size:var(--tap);block-size:var(--tap);border:1px solid var(--border-strong);border-radius:var(--r-input);background:var(--bg);color:var(--text);font-size:1.2rem;font-weight:700}.b4dOrderMove:disabled{opacity:.35}.b4dGaugeSavedBtns button{min-block-size:var(--tap);padding:0 var(--sp-3);border:1px solid var(--border-strong);border-radius:var(--r-input);background:var(--surface);color:var(--text);font-weight:600}@media (width>=760px){.b4dGaugeBody{align-self:center;inline-size:100%;max-inline-size:560px}}.b4dFold{gap:var(--sp-2);padding:var(--sp-2) var(--sp-3) calc(var(--sp-2) + env(safe-area-inset-bottom,0px));background:var(--bg-2);border-block-start:var(--border);flex-direction:column;display:flex}.b4dFoldHead{align-items:center;gap:var(--sp-2);display:flex}.b4dFoldTitle{min-width:0;color:var(--text);flex:auto;font-size:1.35rem;font-weight:800}.b4dFoldView{min-block-size:var(--tap);padding:0 var(--sp-3);border:1px solid var(--border-strong);border-radius:var(--r-input);background:var(--surface);color:var(--text);font-weight:600;font-size:var(--fs-sm)}.b4dFoldMove{padding:var(--sp-2) var(--sp-3);border-radius:var(--r-input);border:2px solid var(--warning);background:rgba(var(--warning-rgb),.16);color:var(--warning-text);font-size:1.15rem;font-weight:800;line-height:1.3}.b4dFoldGrid{gap:var(--sp-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.b4dFoldCell{padding:var(--sp-2) var(--sp-3);border-radius:var(--r-input);border:var(--border);background:var(--surface);flex-direction:column;gap:2px;display:flex}.b4dFoldCell.wide{grid-column:1/-1}.b4dFoldLabel{font-size:var(--fs-sm);color:var(--text-2,var(--text));opacity:.85}.b4dFoldValue{color:var(--text);font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:800}.b4dFoldValue.text{overflow-wrap:anywhere;font-size:1.25rem;line-height:1.2}.b4dFoldValue.big{font-size:2.4rem;line-height:1.1}.b4dFoldValue small{font-size:1rem;font-weight:600}.b4dFoldRef{font-size:var(--fs-sm);opacity:.85}.b4dFoldOffset{font-size:var(--fs-sm);color:var(--warning-text);font-weight:700}.b4dFoldContact{font-size:var(--fs-sm);opacity:.85}.b4dFoldNav,.b4dFoldDoneBtns{gap:var(--sp-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.b4dFoldNav button{min-block-size:56px;font-size:1.1rem}.b4dFoldNav button:disabled{opacity:.4}@media (width>=760px){.b4dFold{align-items:stretch}.b4dFold>*{align-self:center;inline-size:100%;max-inline-size:720px}.b4dFoldGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.b4dFoldCell.wide{grid-column:auto}}.toolLoading{z-index:var(--z-overlay);background:var(--bg);padding:var(--sp-5);text-align:center;color:var(--accent);font-family:var(--font-ui);font-weight:600;font-size:var(--fs-sm);letter-spacing:1px;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.toolScreen{z-index:var(--z-overlay);background:var(--bg);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;position:fixed;inset:0;overflow-y:auto}.toolScreenBar{z-index:2;justify-content:space-between;align-items:center;gap:var(--sp-3);padding:calc(var(--sp-4) + env(safe-area-inset-top)) max(var(--sp-4), env(safe-area-inset-right)) var(--sp-4) max(var(--sp-4), env(safe-area-inset-left));background:var(--bg-2);border-bottom:var(--border);display:flex;position:sticky;top:0}.toolScreenTitle{min-width:0;font-family:var(--font-display);font-size:var(--fs-h3);color:var(--text);overflow-wrap:anywhere;margin:0;font-weight:700}.toolScreenClose{inline-size:var(--tap);block-size:var(--tap);border-radius:var(--r-btn);border:var(--border);background:var(--surface);color:var(--text);cursor:pointer;transition:transform var(--dur) var(--ease);flex:none;justify-content:center;align-items:center;display:inline-flex}.toolScreenClose:active{transform:scale(.97)}.toolScreenBody{max-width:560px;padding:var(--sp-5) max(var(--sp-5), env(safe-area-inset-right)) calc(var(--sp-6) + env(safe-area-inset-bottom)) max(var(--sp-5), env(safe-area-inset-left));margin:0 auto}.toolScreenBody.toolScreenBodyWide{max-width:920px}.toolLabel{margin-top:var(--sp-4);font-size:var(--fs-sm);color:var(--text-2);font-weight:600;display:block}.toolResultCard{margin-top:var(--sp-5);padding:var(--sp-4);border:var(--border);border-radius:var(--r-card);background:var(--grad-surface);box-shadow:var(--inset-top)}.toolResultLabel{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.6px;color:var(--text-2);font-weight:600}.toolResultValue{font-family:var(--font-mono);font-weight:700;font-size:var(--fs-num-sm);color:var(--text);margin-bottom:var(--sp-3)}.toolResultValue.toolResultTotal{font-size:var(--fs-num-lg);color:var(--accent);margin-bottom:0}.toolNote{margin-top:var(--sp-4);color:var(--text-2);font-size:var(--fs-xs);line-height:1.5}.toolHint{margin-top:var(--sp-2);color:var(--text-2);font-size:var(--fs-xs);line-height:1.45}.toolWarn{margin-top:var(--sp-2);color:var(--warning-text);font-size:var(--fs-xs);font-weight:500;line-height:1.45}.toolError{margin-top:var(--sp-3);color:var(--error-text);font-size:var(--fs-xs);font-weight:500;line-height:1.45}.toolBtnRow{gap:var(--sp-2);flex-wrap:wrap;display:flex}.toolBtnRow>.toolActionBtn{flex:140px}.toolActionBtn{justify-content:center;align-items:center;gap:var(--sp-2);min-height:var(--tap);padding:var(--sp-2) var(--sp-4);border-radius:var(--r-btn);border:var(--border);background:var(--surface);color:var(--text);font-family:var(--font-ui);font-weight:600;font-size:var(--fs-sm);overflow-wrap:anywhere;cursor:pointer;min-width:0;transition:transform var(--dur) var(--ease);line-height:1.25;display:inline-flex}.toolActionBtn:active{transform:scale(.97)}.toolActionBtnWide{width:100%;margin-top:var(--sp-3)}.toolActionBtn.toolActionBtnSecondary{border:var(--border-accent);color:var(--accent)}.toolActionBtn.toolActionBtnPrimary{background:var(--grad-primary);border:1px solid rgba(var(--white-rgb),.14);color:var(--text-on-primary);box-shadow:var(--inset-top)}.toolActionBtn.toolActionBtnRecording{background:var(--error);border-color:rgba(var(--white-rgb),.18);color:#fff}.toolActionBtn.toolActionBtnRecording:disabled{opacity:1;cursor:progress}.toolSegList{margin-top:var(--sp-4)}.toolSegRow{align-items:center;gap:var(--sp-2);margin-top:var(--sp-2);padding:var(--sp-1);border-radius:var(--r-btn);transition:background var(--dur-slow) var(--ease);background:0 0;display:flex}.toolSegRow.toolSegRowFlash{background:rgba(var(--primary-rgb),.18)}.toolSegLetter{background:var(--surface);border:var(--border);block-size:32px;inline-size:32px;color:var(--text);font-weight:600;font-size:var(--fs-sm);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.toolSegRow input{margin-top:0}.toolCanvasWrap{margin-top:var(--sp-4);-webkit-overflow-scrolling:touch;overflow-x:auto}.toolCanvasWrap canvas{border-radius:var(--r-input);border:var(--border);max-width:100%;display:block}.drawScreen{z-index:var(--z-overlay);background:var(--bg);position:fixed;inset:0}.drawBadge{top:calc(var(--sp-3) + env(safe-area-inset-top));z-index:3;padding:var(--sp-1) var(--sp-3);border-radius:var(--r-chip);border:1px solid rgba(var(--white-rgb),.15);color:var(--text);font-weight:600;font-size:var(--fs-xs);pointer-events:none;background:#090d14bf;position:absolute;inset-inline-start:max(var(--sp-3), env(safe-area-inset-left))}.drawClose{top:calc(var(--sp-2) + env(safe-area-inset-top));z-index:3;inline-size:var(--tap);block-size:var(--tap);border:1px solid rgba(var(--white-rgb),.15);color:var(--text);cursor:pointer;background:#090d14bf;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute;inset-inline-end:max(var(--sp-2), env(safe-area-inset-right))}.drawHint{top:calc(var(--sp-3) + env(safe-area-inset-top) + var(--tap) + var(--sp-2));inset-inline:max(var(--sp-5), env(safe-area-inset-left)) max(var(--sp-5), env(safe-area-inset-right));z-index:2;text-align:center;color:var(--text-2);font-size:var(--fs-sm);pointer-events:none;line-height:1.45;position:absolute}.drawToolbar{inset-inline:0;z-index:3;gap:var(--sp-2);overscroll-behavior:contain;max-block-size:40dvh;padding:var(--sp-3) max(var(--sp-3), env(safe-area-inset-right)) calc(var(--sp-3) + env(safe-area-inset-bottom)) max(var(--sp-3), env(safe-area-inset-left));background:linear-gradient(180deg, #090d1400 0%, var(--bg) 45%);flex-wrap:wrap;display:flex;position:absolute;bottom:0;overflow-y:auto}.drawToolbar .toolActionBtn{padding:var(--sp-2) var(--sp-3);white-space:nowrap;overflow-wrap:normal;flex:0 auto}.drawToolbar .toolActionBtn.toolActionBtnOn{background:rgba(var(--primary-rgb),.18);border-color:var(--primary);color:var(--accent)}[dir=rtl] .toolScreenBar,[dir=rtl] .toolBtnRow,[dir=rtl] .toolSegRow,[dir=rtl] .drawToolbar{direction:rtl}.desktopShell{--tap:40px}@media (width>=900px){.desktopShell{--shell-max:none}.desktopShell .app{padding-inline:var(--sp-4)}.desktopShell .top{display:none}.desktopShell .workPanel{gap:var(--sp-5);grid-template-columns:minmax(340px,420px) minmax(0,1fr);align-items:start;display:grid}.desktopShell .dimsCol,.desktopShell .drawingCol{min-inline-size:0}.desktopShell .drawingCol{gap:var(--sp-3);flex-direction:column;display:flex;position:sticky;inset-block-start:var(--status-h,0px)}.desktopShell .drawingCol .drawingBox{flex-direction:column;block-size:max(320px,100dvh - 360px);display:flex}.desktopShell .drawingCol .drawingBox>svg,.desktopShell .drawingCol .drawingBox .cadSheet{flex:1 1 0;block-size:100%;min-block-size:0;inline-size:100%}.desktopShell .drawingCol .view3dRow{margin:0}.desktopShell .drawingCol .prodPanel{box-shadow:none;background:0 0;margin:0;padding:0}.desktopShell .drawingCol .actionBar{padding:0}.desktopShell .settingsPanel{inset-block:106px var(--sp-4);inset-inline:var(--sp-4);inline-size:auto;padding:var(--sp-5);z-index:80;column-gap:var(--sp-6);grid-template-columns:minmax(0,1fr) minmax(340px,420px);grid-template-areas:"head head""main side""close close";align-items:start;margin:0;display:grid;position:fixed;overflow:auto;box-shadow:0 24px 100px #000000b3}.desktopShell .settingsPanel>.settingsHead{grid-area:head}.desktopShell .settingsMain{grid-area:main;min-inline-size:0}.desktopShell .settingsSide{grid-area:side;min-inline-size:0;position:sticky;inset-block-start:0}.desktopShell .settingsPanel>.settingsCloseWide{grid-area:close}.desktopShell .settingsMain .grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.desktopShell .settingsMain .toolGrid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}.desktopShell .b4dWrap{grid-template-columns:minmax(0,1fr) 320px;display:grid}.desktopShell .b4dCanvas{min-block-size:0}.desktopShell .b4dBar{align-items:stretch;gap:var(--sp-3);padding:var(--sp-4);border-top:0;border-inline-start:var(--border);background:var(--bg-2);min-block-size:0;overflow-y:auto}.desktopShell .b4dScrub{max-inline-size:none;margin-block-start:auto}.desktopShell .b4dEmpty{place-items:center;display:grid;position:absolute;inset:0}.desktopShell .b4dBtns{flex-wrap:wrap;justify-content:space-between}.desktopShell .offerOverlay{padding:var(--sp-4)}.desktopShell .offerSheet{max-width:none;flex-direction:column;block-size:100%;inline-size:100%;display:flex;overflow:hidden}.desktopShell .offerPaper{flex-direction:column;flex:1 1 0;min-block-size:0;display:flex}.desktopShell .offerDrawing{gap:var(--sp-2);flex-direction:column;flex:1 1 0;min-block-size:0;display:flex}.desktopShell .offerDrawing svg{flex:1 1 0;block-size:100%;min-block-size:0;inline-size:100%}.desktopShell .offerActions{flex:none;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.desktopShell .pickerOverlay{padding:var(--sp-4)}.desktopShell .pickerBox{max-width:none;block-size:100%;inline-size:100%;padding:var(--sp-5)}.desktopShell .pickerHead h2{font-size:var(--fs-h3)}.desktopShell .pickerGrid{gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.desktopShell .pickerItem{padding:var(--sp-5) var(--sp-3);font-size:var(--fs-sm)}.desktopShell .pickerItem svg{max-height:120px}.desktopShell .plateList{gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.desktopShell .plateThumb{block-size:72px;inline-size:72px}.desktopShell .toolScreenBody,.desktopShell .toolScreenBody.toolScreenBodyWide{max-width:none}.desktopShell .weightBody{column-gap:var(--sp-6);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}.desktopShell .weightBody>*{grid-column:1}.desktopShell .weightBody>.toolResultCard{grid-area:1/2/span 5;margin:0;position:sticky;inset-block-start:var(--sp-5)}.desktopShell .weightBody>.toolNote{grid-column:2}.desktopShell .coneScreen .toolScreenBody{column-gap:var(--sp-6);grid-template:"main side""actions side"1fr/minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}.desktopShell .coneMain{grid-area:main;min-inline-size:0}.desktopShell .coneSide{grid-area:side;min-inline-size:0}.desktopShell .coneActions{grid-area:actions;min-inline-size:0}.desktopShell .holeScreen{flex-direction:column;display:flex;overflow:hidden}.desktopShell .holeScreen>.toolScreenBar{flex:none}.desktopShell .holeBodyWide{flex:1 1 0;grid-template-rows:minmax(0,1fr) minmax(0,1fr);align-items:stretch;min-block-size:0;overflow:hidden}.desktopShell .holeBodyWide .holeColList{min-block-size:0;max-block-size:none}.desktopShell .holeBodyWide .holeCol2d,.desktopShell .holeBodyWide .holeCol3d{flex-direction:column;min-block-size:0;display:flex}.desktopShell .holeBodyWide .holeCol2d .toolLabel,.desktopShell .holeBodyWide .holeCol3d .toolLabel{margin-block:0 var(--sp-1);flex:none}.desktopShell .holeBodyWide .holePreview{gap:var(--sp-2);flex-direction:column;flex:1 1 0;min-block-size:0;margin:0;display:flex}.desktopShell .holeBodyWide .holePreview .cadSheet{flex:1 1 0;block-size:100%;min-block-size:0}.desktopShell .holeBodyWide .holeEmbed3d{flex:1 1 0;block-size:auto;min-block-size:0}.desktopShell .mmView{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) clamp(340px,26vw,420px);display:grid}.desktopShell .mmView>.fsTopBar{grid-column:1/-1}.desktopShell .mmStage{min-block-size:0}.desktopShell .mmPanel{border-top:0;border-inline-start:var(--border);min-block-size:0;padding:var(--sp-4);overflow-y:auto}.desktopShell .mmPanel .mmChips{grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow-x:visible}.desktopShell .mmPanel .mmChip{white-space:normal;text-align:start;min-height:32px;line-height:1.2;font-size:var(--fs-xs,12px);justify-content:space-between;padding:4px 10px}.desktopShell .mmPanel .mmVerify{max-block-size:none;overflow:visible}}
