*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#f4f6f8;color:#17202a;overflow-x:hidden}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.appShell{height:100dvh;min-height:680px;display:flex;flex-direction:column;overflow:hidden}.topbar{min-height:48px;padding:6px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;border-bottom:1px solid #dbe1e8}.topbar strong{font-size:15px}.topActions{display:flex;gap:5px;flex-wrap:nowrap;justify-content:flex-end;overflow-x:auto;min-width:0}.topbar button,.toolbar button,.importbar button,.viewControls button{border:1px solid #cfd6df;background:#fff;border-radius:6px;padding:6px 8px;font-size:11px;white-space:nowrap}.topActions .runButton{background:#17202a;color:#fff;border-color:#17202a}.importbar{min-height:38px;padding:5px 12px;display:flex;align-items:center;flex-wrap:nowrap;gap:5px;background:#f8fafc;border-bottom:1px solid #dbe1e8;overflow-x:auto;max-width:100vw}.statusText{margin-left:auto;color:#667085;font-size:10px;min-width:180px;text-align:right;white-space:nowrap}.workspace{flex:1 1;min-height:0;display:grid;grid-template-columns:190px minmax(0,1fr) 230px}.toolbar{padding:8px;border-right:1px solid #dbe1e8;background:#fff;display:flex;flex-direction:column;gap:7px;overflow:auto}.panelBlock{padding:8px;border:1px solid #e4e7ec;border-radius:8px;background:#fbfcfd;display:grid;grid-gap:5px;gap:5px}.panelBlock h3,.inspector h3{margin:0;font-size:11px;color:#344054}.panelBlock input,.panelBlock select,.sectionSelect{width:100%;border:1px solid #d0d5dd;border-radius:6px;padding:6px 7px;background:#fff;color:#17202a;font-size:11px}.toolGrid{display:grid;grid-gap:4px;gap:4px}.toolGrid.twoCol{grid-template-columns:1fr 1fr}.toolGrid button{text-align:left}.toolGrid button.active{background:#e8f0fa;border-color:#6b9bc7}.inlineFields{display:grid;grid-template-columns:1fr 1fr;grid-gap:4px;gap:4px}.fieldWithUnit{display:grid;grid-template-columns:1fr auto;align-items:center;grid-gap:4px;gap:4px}.fieldWithUnit span{color:#667085;font-size:10px}.primaryWide{width:100%;text-align:center!important;background:#17202a!important;color:#fff;border-color:#17202a!important}.viewport{position:relative;min-height:0;background:#eef3f8;overflow:hidden}.viewport canvas{display:block;touch-action:none}.viewControls{position:absolute;top:8px;right:8px;display:flex;gap:4px;z-index:20}.viewControls button{min-width:30px;font-size:15px;line-height:1;background:rgba(255,255,255,.94)}.nodeLabel{padding:1px 3px;border-radius:3px;background:rgba(255,255,255,.82);color:#1d4ed8;font-size:8px;font-weight:700;white-space:nowrap}.gridLabel{display:inline-flex;min-width:18px;height:18px;align-items:center;justify-content:center;border-radius:999px;border:1px solid #cfd6df;background:rgba(255,255,255,.94);color:#344054;font-size:9px;font-weight:700}.dimLabel{border:1px solid #d0d5dd;padding:2px 4px;border-radius:4px;background:rgba(255,255,255,.95);color:#344054;font-size:8px;font-weight:700;white-space:nowrap}.mobileDimensions{display:none}.basePrompt{position:absolute;z-index:30;left:50%;top:10px;transform:translateX(-50%);padding:7px 10px;border-radius:7px;background:#17202a;color:#fff;font-size:11px;box-shadow:0 4px 16px rgba(16,24,40,.2);white-space:nowrap}.inspector{border-left:1px solid #dbe1e8;background:#fff;padding:9px;overflow:auto}.inspector h2{margin:0 0 8px;font-size:13px}.inspector h3{margin-top:10px;margin-bottom:5px}.selectionText{margin:0;padding:6px 7px;border-radius:6px;background:#f8fafc;color:#475467;font-size:10px}details{margin-top:10px}summary{cursor:pointer;color:#475467;font-size:10px}.inspector pre{margin:6px 0 0;white-space:pre-wrap;word-break:break-word;font-size:9px;line-height:1.35;color:#344054}.contextMenu{position:fixed;z-index:1000;width:190px;padding:6px;background:#fff;border:1px solid #d0d5dd;border-radius:9px;box-shadow:0 12px 28px rgba(16,24,40,.18);display:grid;grid-gap:2px;gap:2px}.contextMenu button{border:0;background:transparent;text-align:left;padding:8px 9px;border-radius:6px;font-size:12px}.contextMenu button:hover{background:#f2f4f7}.contextMenu .contextDanger{color:#b42318}.loadManagerLauncherGroup{position:fixed;z-index:950;right:12px;top:56px;display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end;max-width:420px}.loadManagerLauncherGroup button{border:1px solid #17202a;background:#17202a;color:#fff;border-radius:8px;padding:7px 10px;font-size:10px;font-weight:700;box-shadow:0 5px 16px rgba(16,24,40,.16);white-space:nowrap}.loadManagerBackdrop{position:fixed;z-index:940;inset:0;background:rgba(16,24,40,.22);display:flex;justify-content:flex-end}.loadManagerDrawer{height:100%;width:min(380px,calc(100vw - 24px));background:#fff;box-shadow:-10px 0 30px rgba(16,24,40,.18);display:flex;flex-direction:column}.loadManagerDrawerHeader{min-height:48px;padding:8px 10px;border-bottom:1px solid #e4e7ec;display:flex;align-items:center;justify-content:space-between;gap:8px}.loadManagerDrawerHeader strong{font-size:13px}.loadManagerDrawerHeader span{font-size:10px;color:#667085}.loadManagerDrawerHeader button{width:30px;height:30px;border:1px solid #d0d5dd;background:#fff;border-radius:7px;font-size:18px;line-height:1}.loadManagerModeTabs{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:4px;gap:4px;padding:7px 9px;border-bottom:1px solid #e4e7ec;background:#f8fafc}.loadManagerModeTabs button{border:1px solid #d0d5dd;background:#fff;border-radius:6px;padding:6px 4px;font-size:10px}.loadManagerModeTabs button.active{background:#17202a;color:#fff;border-color:#17202a}.loadManagerDrawerBody{padding:10px;overflow:auto}.loadManagerEmbedded{display:block}@media print{.toolbar,.importbar,.topActions,.viewControls,.mobileDimensions,.contextMenu,.basePrompt,.loadManagerLauncherGroup,.loadManagerBackdrop{display:none!important}.workspace{display:block}.viewport{min-height:480px}.inspector{border:0}}@media(max-width:1100px){.workspace{grid-template-columns:170px minmax(0,1fr)}.inspector{display:none}.loadManagerEmbedded{display:none}}@media(max-width:760px){.appShell{height:100dvh;min-height:0;max-width:100vw}.topbar{min-height:40px;padding:4px 6px;display:grid;grid-template-columns:minmax(76px,96px) minmax(0,1fr);grid-gap:4px;gap:4px}.topbar strong{font-size:9px;line-height:1.05;max-width:96px}.topActions{width:100%;max-width:100%;gap:3px;justify-content:flex-start;overflow-x:auto;scrollbar-width:thin;padding-bottom:1px}.topActions button{padding:4px 5px;font-size:8px;min-width:28px;flex:0 0 auto}.importbar{min-height:31px;padding:3px 6px;width:100%;max-width:100vw;overflow-x:auto}.importbar button{padding:4px 5px;font-size:8px;flex:0 0 auto}.statusText{display:none}.workspace{position:relative;display:block;flex:1 1;min-height:0}.viewport{position:absolute;inset:0;width:100%;height:100%;min-height:0}.toolbar{position:absolute;z-index:12;left:5px;top:5px;width:96px;max-height:calc(100% - 52px);padding:4px;border:1px solid rgba(208,213,221,.86);border-radius:8px;background:rgba(255,255,255,.78);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);box-shadow:0 3px 12px rgba(16,24,40,.1);gap:4px}.panelBlock{padding:4px;gap:3px;background:rgba(251,252,253,.72)}.panelBlock h3{font-size:8px}.panelBlock input,.panelBlock select{padding:3px 4px;font-size:8px}.toolbar button{padding:3px 4px;font-size:8px}.toolGrid.twoCol{grid-template-columns:1fr 1fr}.inlineFields{grid-template-columns:1fr}.fieldWithUnit span{font-size:8px}.viewControls{top:6px;right:6px}.viewControls button{min-width:26px;padding:4px;font-size:13px}.nodeLabel,.gridLabel,.dimLabel{display:none}.inspector{display:none}.mobileDimensions{display:flex;position:absolute;z-index:10;left:0;right:0;bottom:0;gap:7px;padding:5px 6px;background:rgba(255,255,255,.91);border-top:1px solid rgba(208,213,221,.92);overflow-x:auto;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.mobileDimensions>div{display:flex;align-items:center;gap:3px;flex:0 0 auto}.mobileDimensions b{font-size:8px;color:#667085}.mobileDimensions button{border:1px solid #d0d5dd;background:#fff;border-radius:5px;padding:3px 5px;font-size:8px;white-space:nowrap}.basePrompt{top:48px;left:calc(50% + 42px);max-width:calc(100vw - 120px);white-space:normal;text-align:center;font-size:9px;padding:6px 8px}.contextMenu{width:168px}.contextMenu button{font-size:11px;padding:7px 8px}.loadManagerLauncherGroup{top:76px;right:6px;left:auto;max-width:none;display:flex;gap:3px}.loadManagerLauncherGroup button{padding:5px 7px;font-size:8px;border-radius:6px;box-shadow:0 3px 10px rgba(16,24,40,.13)}.loadManagerDrawer{width:min(350px,calc(100vw - 8px))}.loadManagerModeTabs button{font-size:9px;padding:6px 2px}}@media(max-width:430px){.toolbar{width:92px}.topbar{grid-template-columns:82px minmax(0,1fr)}.topbar strong{max-width:82px;font-size:8.5px}.loadManagerLauncherGroup{left:auto;right:6px;top:74px}}
.loadManagerLauncherGroup{display:block;left:auto;right:12px;top:56px;max-width:none}
.loadManagerLauncherGroup button{display:none}
.loadManagerLauncherGroup button:first-child{display:inline-flex;align-items:center;justify-content:center;font-size:0;padding:7px 12px;min-width:58px}
.loadManagerLauncherGroup button:first-child::after{content:"Loads";font-size:10px;font-weight:700}
@media(max-width:760px){.loadManagerLauncherGroup{display:block;left:auto;right:7px;top:74px;max-width:none}.loadManagerLauncherGroup button:first-child{padding:6px 10px;min-width:54px}.loadManagerLauncherGroup button:first-child::after{font-size:9px}}
@media(max-width:430px){.loadManagerLauncherGroup{left:auto;right:7px;top:72px}}

.loadManagerLauncher{position:fixed;z-index:1100;right:12px;top:174px;border:1px solid #17202a;background:#17202a;color:#fff;border-radius:8px;padding:7px 12px;font-size:11px;font-weight:700;box-shadow:0 5px 16px rgba(16,24,40,.18);max-width:calc(100vw - 16px)}
.loadManagerLauncher:has(+ .loadManagerBackdrop){display:none}
.loadManagerBackdrop{z-index:1300!important}
.loadPickPrompt{position:absolute;z-index:31;left:50%;top:10px;transform:translateX(-50%);padding:7px 10px;border-radius:7px;background:#17202a;color:#fff;font-size:10px;box-shadow:0 4px 16px rgba(16,24,40,.2);white-space:nowrap}
.propertiesButton{width:100%;margin-top:7px;border:1px solid #cfd6df;background:#fff;border-radius:6px;padding:6px 8px;font-size:11px}
.propertiesBackdrop{position:fixed;z-index:980;inset:0;background:rgba(16,24,40,.22);display:flex;justify-content:flex-end}
.propertiesDrawer{height:100%;width:min(360px,calc(100vw - 24px));background:#fff;box-shadow:-10px 0 30px rgba(16,24,40,.18);display:flex;flex-direction:column}
.propertiesHeader{min-height:48px;padding:8px 10px;border-bottom:1px solid #e4e7ec;display:flex;align-items:center;justify-content:space-between;gap:8px}.propertiesHeader strong{font-size:13px}.propertiesHeader span{font-size:10px;color:#667085}.propertiesHeader button{width:30px;height:30px;border:1px solid #d0d5dd;background:#fff;border-radius:7px;font-size:18px;line-height:1}
.propertiesBody{padding:10px;overflow:auto;display:grid;grid-gap:8px;gap:8px}
@media(max-width:900px){.loadManagerLauncher{top:170px;right:7px;padding:6px 10px;font-size:9px}}
@media(max-width:760px){.loadManagerLauncher{position:fixed;top:auto;right:8px;bottom:52px;left:auto;z-index:1100;padding:8px 12px;font-size:10px}.loadManagerBackdrop{inset:0!important;align-items:flex-start!important;justify-content:flex-end!important;padding:10px 6px!important;background:rgba(16,24,40,.24)!important}.loadManagerDrawer{height:min(82dvh,680px)!important;max-height:calc(100dvh - 20px)!important;width:min(350px,calc(100vw - 12px))!important;border-radius:12px!important;overflow:hidden!important;box-shadow:0 14px 36px rgba(16,24,40,.24)!important}.loadManagerDrawerHeader{flex:0 0 auto}.loadManagerModeTabs{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;flex:0 0 auto;position:relative;z-index:2}.loadManagerDrawerBody{min-height:0!important;overflow-y:auto!important;overscroll-behavior:contain;padding-bottom:14px!important}.loadPickPrompt{top:110px;left:calc(50% + 40px);max-width:calc(100vw - 120px);white-space:normal;text-align:center;font-size:8px;padding:5px 7px}.propertiesDrawer{width:min(350px,calc(100vw - 8px))}}
@media(max-width:560px){.loadManagerLauncher{top:auto;right:8px;bottom:50px}.loadManagerDrawer{height:min(80dvh,620px)!important}}

:root{--ink:#071525;--ink-soft:#17324a;--paper:#f5f8fb;--white:#fff;--line:rgba(7,21,37,.12);--mint:#6ee7d8;--blue:#2563eb;--muted:#66788a}.modelSiteShell{min-height:100dvh;background:var(--paper);color:var(--ink)}.modelEditorArea{height:calc(100dvh - 118px);min-height:620px}.modelEditorArea .appShell{height:100%;min-height:0}.globalHeader{position:-webkit-sticky;position:sticky;top:0;z-index:1200;background:rgba(255,255,255,.97);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);box-shadow:0 8px 24px rgba(7,21,37,.04)}.utilityBar{min-height:72px;display:flex;align-items:center;gap:12px;padding:0 3vw}.utilityBrand{display:inline-flex;align-items:center;margin-right:auto}.utilityBrand img{width:210px;height:auto;display:block}.utilityNav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(10px,1.05vw,18px);font-size:14px;color:var(--ink-soft);white-space:nowrap;margin-left:auto}.utilityNav>a,.utilityNav .navMenuButton{font-weight:650}.utilityNav>a:hover,.utilityNav .navMenuButton:hover{color:var(--blue)}.primaryBar{min-height:46px;display:flex;align-items:center;justify-content:center;gap:clamp(20px,3vw,42px);padding:0 3vw;border-top:1px solid rgba(7,21,37,.07);font-size:14px;color:var(--ink-soft);background:rgba(248,251,253,.96)}.primaryBar a{font-weight:650}.primaryBar a:hover{color:var(--blue)}.globalHeader a{color:inherit;text-decoration:none}.globalHeader .navMenu{position:relative}.globalHeader .navMenuButton{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;color:inherit;cursor:pointer;padding:10px 0}.globalHeader .navDropdown{position:absolute;top:calc(100% - 2px);left:50%;min-width:220px;padding:10px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 24px 60px rgba(7,21,37,.14);opacity:0;visibility:hidden;transform:translate(-50%,8px);transition:.18s ease}.globalHeader .navMenu:hover .navDropdown,.globalHeader .navMenu:focus-within .navDropdown{opacity:1;visibility:visible;transform:translate(-50%,0)}.globalHeader .navDropdown a{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:10px}.globalHeader .navDropdown a:hover,.globalHeader .navDropdown .activeToolLink{background:#eff6ff;color:#1d4ed8}.globalHeader .signInMenu{flex:0 0 auto;margin-left:0}.globalHeader .navCta{padding:10px 16px!important;border:1px solid var(--ink)!important;border-radius:999px!important;background:var(--ink)!important;color:#fff!important;font-size:14px!important;font-weight:750!important}.globalHeader .signInDropdown{right:0;left:auto;transform:translateY(8px)}.globalHeader .signInMenu:hover .signInDropdown,.globalHeader .signInMenu:focus-within .signInDropdown{transform:translateY(0)}@media(max-width:900px){.utilityBar{min-height:58px;padding:6px 10px;gap:5px}.utilityBrand{margin-right:auto;flex:0 1 auto;min-width:82px}.utilityBrand img{width:128px;max-width:100%}.utilityNav{margin-left:0;gap:5px;font-size:9.5px;flex:0 1 auto;min-width:0}.utilityNav>a,.utilityNav .navMenuButton{font-weight:650;letter-spacing:-.025em}.utilityNav .navMenuButton{gap:1px;padding:6px 0}.globalHeader .signInMenu{margin-left:0;flex:0 0 auto}.globalHeader .navCta{padding:6px 8px!important;font-size:9.5px!important;gap:2px!important;min-height:30px}.primaryBar{overflow-x:auto;justify-content:center;gap:clamp(14px,4vw,24px);padding:0 10px;font-size:11px;min-height:40px;white-space:nowrap}.globalHeader .navDropdown{position:fixed;top:58px;left:50%}.modelEditorArea{height:calc(100dvh - 98px);min-height:520px}}@media(max-width:560px){.utilityBar{padding:5px 6px;gap:3px}.utilityBrand{min-width:74px}.utilityBrand img{width:104px}.utilityNav{gap:3.5px;font-size:8px}.utilityNav .navMenuButton{gap:0;padding:5px 0}.globalHeader .navCta{padding:5px 6px!important;font-size:8.5px!important;min-height:27px}.primaryBar{font-size:10px;gap:16px;min-height:38px;justify-content:center}.modelEditorArea{height:calc(100dvh - 96px);min-height:460px}}@media(max-width:390px){.utilityBrand{min-width:64px}.utilityBrand img{width:88px}.utilityNav{gap:2.5px;font-size:7.2px}.globalHeader .navCta{padding:5px!important;font-size:7.8px!important}}
:root {
  --sap-bg: #ececec;
  --sap-panel: #f6f6f6;
  --sap-panel-strong: #ffffff;
  --sap-line: #aeb4ba;
  --sap-line-soft: #d4d7da;
  --sap-text: #20272e;
  --sap-muted: #59636d;
  --sap-select: #d9ebfb;
}

html, body {
  margin: 0;
  min-height: 100%;
  overflow: hidden;
  background: var(--sap-bg);
}

.modelEditorArea,
.sapDesktopShell {
  height: 100dvh;
  min-height: 0;
  overflow: hidden;
  background: var(--sap-bg);
}

.appShell {
  height: 100%;
  min-height: 0;
  overflow: hidden;
  display: grid;
  grid-template-rows: 31px 24px minmax(0, 1fr);
  background: var(--sap-bg);
  color: var(--sap-text);
  font-family: "Segoe UI", Tahoma, Arial, sans-serif;
}

.appShell .topbar {
  min-height: 31px;
  height: 31px;
  padding: 2px 6px;
  gap: 6px;
  display: flex;
  align-items: center;
  background: linear-gradient(#fbfbfb, #e7e7e7);
  border-bottom: 1px solid var(--sap-line);
  box-shadow: none;
}

.appShell .topbar strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  font-weight: 600;
}

.appShell .topActions {
  display: flex;
  gap: 2px;
  flex: 0 0 auto;
}

.appShell .topbar button,
.appShell .toolbar button,
.appShell .viewControls button {
  min-height: 22px;
  border: 1px solid var(--sap-line);
  border-radius: 1px;
  padding: 2px 7px;
  background: linear-gradient(#ffffff, #e7e7e7);
  color: var(--sap-text);
  box-shadow: none;
  font-size: 10px;
  line-height: 1.1;
}

.appShell button:hover:not(:disabled) {
  background: var(--sap-select);
  border-color: #7aa4c8;
}

.appShell button:disabled {
  opacity: 0.48;
}

.appShell .importbar {
  min-height: 24px;
  height: 24px;
  padding: 2px 7px;
  gap: 12px;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: #f4f4f4;
  border-bottom: 1px solid var(--sap-line);
  color: #3c4650;
}

.appShell .importbar span {
  font-size: 9px;
  line-height: 1;
  white-space: nowrap;
}

.appShell .statusText {
  margin-left: auto;
  min-width: 0;
  max-width: 52%;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: right;
  color: var(--sap-muted);
}

.appShell .workspace {
  min-height: 0;
  display: grid;
  grid-template-columns: 188px minmax(0, 1fr);
  background: var(--sap-bg);
  overflow: hidden;
}

.appShell .toolbar {
  min-width: 0;
  min-height: 0;
  padding: 3px;
  gap: 3px;
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: thin;
  background: #ededed;
  border-right: 1px solid var(--sap-line);
}

.appShell .toolbar > * {
  flex: 0 0 auto;
  min-width: 0;
}

.appShell .panelBlock,
.appShell .toolbar section {
  margin: 0;
  padding: 4px;
  gap: 3px;
  border: 1px solid var(--sap-line-soft);
  border-radius: 1px;
  background: var(--sap-panel);
  box-shadow: none;
}

.appShell .panelBlock h3,
.appShell .toolbar section h3 {
  margin: -4px -4px 3px;
  padding: 3px 4px;
  border-bottom: 1px solid var(--sap-line-soft);
  background: #e5e5e5;
  color: #39434c;
  font-size: 9px;
  font-weight: 600;
  line-height: 1.1;
}

.appShell .panelBlock label,
.appShell .toolbar label,
.appShell .selectionText,
.appShell .panelBlock p {
  font-size: 9px;
  line-height: 1.15;
}

.appShell .panelBlock input,
.appShell .panelBlock select,
.appShell .toolbar input,
.appShell .toolbar select {
  min-height: 21px;
  width: 100%;
  border: 1px solid var(--sap-line);
  border-radius: 1px;
  padding: 2px 4px;
  background: var(--sap-panel-strong);
  color: var(--sap-text);
  font-size: 9px;
  box-shadow: none;
}

.appShell .selectionText {
  padding: 3px 4px;
  border-radius: 1px;
  background: #f0f0f0;
  color: #4c5660;
}

.appShell .viewport {
  position: relative;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  background: #ffffff;
  border: 0;
}

.appShell .viewport canvas {
  display: block;
  width: 100% !important;
  height: 100% !important;
  background: #ffffff;
}

.appShell .viewControls {
  position: absolute;
  z-index: 8;
  top: 4px;
  right: 4px;
  padding: 2px 5px;
  border: 1px solid var(--sap-line);
  border-radius: 1px;
  background: rgba(246, 246, 246, 0.94);
  color: var(--sap-muted);
  box-shadow: none;
  font-size: 9px;
  pointer-events: none;
}

.appShell .inspector {
  display: none !important;
}

.appShell .loadManagerLauncherGroup {
  top: 58px;
  right: 6px;
  gap: 2px;
  max-width: 360px;
}

.appShell .loadManagerLauncherGroup button,
.appShell .loadManagerLauncher {
  min-height: 24px;
  border : 1px solid #7e8791;
  border-radius: 1px;
  padding: 3px 7px;
  background: linear-gradient(#ffffff, #e7e7e7);
  color: #26323d;
  box-shadow: none;
  font-size: 9px;
  font-weight: 600;
}

.appShell .loadManagerDrawer,
.appShell .propertiesDrawer {
  border-radius: 0;
}

.appShell .loadManagerDrawerHeader,
.appShell .propertiesHeader {
  min-height: 34px;
  padding: 4px 6px;
  background: #ededed;
  border-bottom: 1px solid var(--sap-line);
}

.appShell .loadManagerModeTabs {
  gap: 1px;
  padding: 3px 5px;
  background: #efefef;
}

.appShell .loadManagerModeTabs button {
  border-radius: 1px;
  padding: 4px 3px;
  font-size: 9px;
}

@media (max-width: 760px) {
  .appShell {
    grid-template-rows: 30px 22px minmax(0, 1fr);
  }

  .appShell .topbar {
    min-height: 30px;
    height: 30px;
  }

  .appShell .topbar strong {
    max-width: 36vw;
    font-size: 9px;
  }

  .appShell .topbar button {
    min-height: 21px;
    padding: 2px 6px;
    font-size: 9px;
  }

  .appShell .importbar {
    min-height: 22px;
    height: 22px;
    gap: 8px;
  }

  .appShell .statusText {
    display: none;
  }

  .appShell .workspace {
    position: relative;
    display: block;
  }

  .appShell .viewport {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }

  .appShell .toolbar {
    position: absolute;
    Z-index: 12;
    top: 4px;
    left: 4px;
    right: 4px;
    width: auto !important;
    height: 126px;
    max-height: 126px;
    padding: 3px;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: 3px;
    overflow-x: auto;
    overflow-y: hidden;
    border: 1px solid rgba(139, 146, 153, 0.92);
    background: rgba(238, 238, 238, 0.95);
    box-shadow: 2px 3px 10px rgba(0, 0, 0, 0.13);
    -webkit-backdrop-filter: blur(4px);
            backdrop-filter: blur(4px);
    scrollbar-width: thin;
  }

  .appShell .toolbar > * {
    flex: 0 0 154px;
    width: 154px !important;
    min-width: 154px !important;
    max-width: 154px !important;
    max-height: 118px;
    overflow: auto;
  }

  .appShell .toolbar .panelBlock,
  .appShell .toolbar section {
    height: 118px;
    max-height: 118px;
    overflow: auto;
  }

  .appShell .panelBlock h3,
  .appShell .toolbar section h3 {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1;
  }

  .appShell .viewControls {
    top: 134px;
    right: 4px;
  }

  .appShell .loadManagerLauncherGroup {
    top: auto;
    right: 5px;
    bottom: 6px;
  }
}

.engineeringRibbonHost {
  height: 100dvh;
  min-height: 0;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  overflow: hidden;
  background: #ececec;
  color: #20272e;
  font-family: "Segoe UI", Tahoma, Arial, sans-serif;
}

.engineeringRibbon {
  display: grid;
  grid-template-rows: 28px 40px 102px;
  min-width: 0;
  border-bottom: 1px solid #aeb4ba;
  background: #f4f4f4;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
  z-index: 30;
}

.ribbonTitleRow {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 10px;
  background: linear-gradient(#737373, #5e5e5e);
  color: #ffffff;
  border-bottom: 1px solid #4c4c4c;
}

.ribbonTitleRow strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  font-weight: 600;
}

.ribbonTitleRow span {
  margin-left: auto;
  color: #e8e8e8;
  font-size: 10px;
  white-space: nowrap;
}

.ribbonTabs {
  display: flex;
  align-items: stretch;
  gap: 0;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
  background: #626262;
  border-bottom: 1px solid #b8b8b8;
}

.ribbonTab {
  flex: 0 0 auto;
  min-height: 40px;
  padding: 0 18px;
  border: 0;
  border-right: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 0;
  background: transparent;
  color: #ffffff;
  font: inherit;
  font-size: 13px;
  cursor: pointer;
  white-space: nowrap;
}

.ribbonTab:hover {
  background: rgba(255, 255, 255, 0.09);
}

.ribbonTab.active {
  background: #f7f7f7;
  color: #20272e;
}

.ribbonPanel {
  display: flex;
  min-width: 0;
  min-height: 0;
  overflow-x: auto;
  overflow-y: hidden;
  background: linear-gradient(#fafafa, #f0f0f0);
  scrollbar-width: thin;
}

.ribbonGroup {
  flex: 0 0 auto;
  min-width: 170px;
  display: grid;
  grid-template-rows: minmax(0, 1fr) 20px;
  padding: 6px 8px 0;
  border-right: 1px solid #d1d1d1;
}

.ribbonGroupCommands {
  display: flex;
  align-items: flex-start;
  gap: 4px;
}

.ribbonCommand {
  width: 66px;
  min-height: 70px;
  display: grid;
  grid-template-rows: 30px auto;
  justify-items: center;
  align-items: start;
  grid-gap: 2px;
  gap: 2px;
  padding: 4px 3px;
  border: 1px solid transparent;
  border-radius: 1px;
  background: transparent;
  color: #2a3138;
  font: inherit;
  font-size: 10px;
  line-height: 1.08;
  text-align: center;
  cursor: pointer;
}

.ribbonCommand:hover:not(:disabled) {
  border-color: #8eb9df;
  background: #dceeff;
}

.ribbonCommand:disabled {
  opacity: 0.42;
  cursor: default;
}

.ribbonCommandIcon {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border: 1px solid #83a7c7;
  background: linear-gradient(#fafdff, #cde5f7);
  color: #2673b8;
  font-size: 13px;
  font-weight: 700;
  box-shadow: inset 0 0 0 1px #ffffff;
}

.ribbonGroupTitle {
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: 1px solid #dddddd;
  color: #777777;
  font-size: 10px;
  white-space: nowrap;
}

.engineeringEditorStage {
  min-height: 0;
  overflow: hidden;
}

.engineeringEditorStage > .appShell {
  height: 100% !important;
  min-height: 0 !important;
  grid-template-rows: minmax(0, 1fr) !important;
}

.engineeringEditorStage > .appShell > .topbar,
.engineeringEditorStage > .appShell > .importbar {
  display: none !important;
}

.engineeringEditorStage .workspace {
  min-height: 0;
  height: 100%;
}

.ribbonTab-file .engineeringEditorStage .toolbar,
.ribbonTab-view .engineeringEditorStage .toolbar,
.ribbonTab-select .engineeringEditorStage .toolbar,
.ribbonTab-specification .engineeringEditorStage .toolbar,
.ribbonTab-loading .engineeringEditorStage .toolbar,
.ribbonTab-analysis .engineeringEditorStage .toolbar,
.ribbonTab-utilities .engineeringEditorStage .toolbar {
  display: none;
}

.ribbonTab-file .engineeringEditorStage .workspace,
.ribbonTab-view .engineeringEditorStage .workspace,
.ribonTab-select .engineeringEditorStage .workspace,
.ribbonTab-specification .engineeringEditorStage .workspace,
.ribonTab-loading .engineeringEditorStage .workspace,
.ribonTab-analysis .engineeringEditorStage .workspace,
.ribbonTab-utilities .engineeringEditorStage .workspace {
  grid-template-columns: minmax(0, 1fr) !important;
}

@media (max-width: 760px) {
  .engineeringRibbon {
    grid-template-rows: 24px 36px 92px;
  }

  .ribbonTitleRow {
    padding: 0 8px;
  }

  .ribbonTitleRow strong {
    font-size: 10px;
  }

  .ribbonTitleRow span {
    font-size: 9px;
  }

  .ribonTab {
    min-height: 36px;
    padding: 0 12px;
    font-size: 11px;
  }

  .ribbonGroup {
    min-width: 148px;
    padding: 4px 6px 0;
  }

  .ribbonCommand {
    width: 58px;
    min-height: 62px;
    grid-template-rows: 26px auto;
    font-size: 9px;
  }

  .ribbonCommandIcon {
    width: 24px;
    height: 24px;
    font-size: 11px;
  }

  .ribbonGroupTitle {
    font-size: 9px;
  }

  .ribbonTab-geometry .engineeringEditorStage .workspace {
    position: relative;
    display: block !important;
  }

  .ribbonTab-geometry .engineeringEditorStage .viewport {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }

  .ribbonTab-geometry .engineeringEditorStage .toolbar {
    position: absolute !important;
    z-index: 12 !important;
    top: 4px !important;
    left: 4px !important;
    right: 4px !important;
    width: auto !important;
    max-width: none !important;
    height: 118px !important;
    max-height: 118px !important;
    display: flex !important;
    flex-direction: row !important;
    gap: 3px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 3px !important;
    border: 1px solid rgba(139, 146, 153, 0.92) !important;
    background: rgba(238, 238, 238, 0.96) !important;
    box-shadow: 2px 3px 10px rgba(0, 0, 0, 0.13) !important;
  }
}

.architectEditorShell{--ae-bg:#f3f6fa;--ae-border:#dce3ec;--ae-text:#1f2b38;--ae-muted:#6c7785;--ae-accent:#356efc;--ae-accent-soft:#e9f0ff;height:100dvh;min-height:100dvh;display:flex;flex-direction:column;overflow:hidden;background:var(--ae-bg);color:var(--ae-text)}
.architectTopbar{min-height:64px;display:grid;grid-template-columns:minmax(240px,1fr) auto minmax(220px,1fr);align-items:center;grid-gap:16px;gap:16px;padding:10px 18px;border-bottom:1px solid var(--ae-border);background:#fff;z-index:80}
.architectBrand{display:flex;align-items:center;gap:10px;min-width:0}.architectBrandMark{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--ae-accent);color:#fff;font-weight:800}.architectBrand>div{display:grid;grid-gap:1px;gap:1px;min-width:0}.architectBrand strong{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.architectBrand span{font-size:10px;color:var(--ae-muted)}
.architectModeSwitch{display:flex;gap:4px;padding:3px;border:1px solid var(--ae-border);border-radius:12px;background:#f7f9fc}.architectModeSwitch button,.architectTopActions button{min-height:34px;border:0;border-radius:9px;padding:0 12px;background:transparent;color:var(--ae-text);font-size:11px;font-weight:700}.architectModeSwitch button.active{background:#fff;color:#275bd7;box-shadow:0 1px 6px rgba(31,43,56,.1)}
.architectTopActions{display:flex;justify-content:flex-end;gap:6px}.architectTopActions button{border:1px solid var(--ae-border);background:#fff}.architectTopActions button:last-child{background:#17202a;color:#fff;border-color:#17202a}
.architectToolstrip{min-height:58px;display:flex;gap:7px;align-items:center;padding:7px 18px;overflow-x:auto;border-bottom:1px solid var(--ae-border);background:#fbfcfe;scrollbar-width:thin;z-index:70}.architectToolstrip button{min-width:74px;height:42px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid transparent;border-radius:11px;background:transparent;color:#344254;font-size:11px;font-weight:700;white-space:nowrap}.architectToolstrip button.active{background:var(--ae-accent-soft);border-color:#b9ccff;color:#214fae}.architectToolIcon{width:24px;height:24px;display:grid;place-items:center;border-radius:7px;background:#eef2f7;border:1px solid #dce3ec;font-size:9px;font-weight:800}
.architectContextbar{min-height:38px;display:flex;align-items:center;gap:10px;padding:5px 18px;border-bottom:1px solid var(--ae-border);background:#fff;z-index:65}.architectContextTitle{font-weight:800;font-size:12px}.architectContextHint{font-size:10px;color:var(--ae-muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.architectViewPills{margin-left:auto;display:flex;gap:6px}.architectViewPills span{padding:5px 8px;border:1px solid var(--ae-border);border-radius:999px;background:#f8fafc;color:#5f6c7b;font-size:9px;white-space:nowrap}
.engineeringEditorStage{flex:1 1;min-height:0;position:relative;padding:10px 12px 12px;background:var(--ae-bg)}.engineeringEditorStage>.appShell{height:100%;min-height:0;border:1px solid var(--ae-border);border-radius:16px;background:#fff;box-shadow:0 6px 22px rgba(31,43,56,.07);overflow:hidden}.engineeringEditorStage .appShell>.topbar,.engineeringEditorStage .appShell>.importbar{display:none!important}
.engineeringEditorStage .workspace{height:100%;display:grid!important;grid-template-columns:248px minmax(0,1fr) 300px!important;background:#fff}.engineeringEditorStage .toolbar{position:relative!important;inset:auto!important;width:auto!important;max-height:none!important;padding:10px!important;border:0!important;border-right:1px solid var(--ae-border)!important;border-radius:0!important;background:#fbfcfe!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:none!important;overflow:auto!important;gap:8px!important}.engineeringEditorStage .toolbar:before{content:"Quick Tools";display:block;padding:3px 2px 6px;font-size:13px;font-weight:800;color:#253244}
.engineeringEditorStage .panelBlock{border:1px solid #e4e9f0!important;border-radius:12px!important;background:#fff!important;padding:9px!important;gap:6px!important;box-shadow:0 1px 3px rgba(31,43,56,.03)}.engineeringEditorStage .panelBlock h3{font-size:10px!important;text-transform:uppercase;letter-spacing:.04em;color:#657184!important}.engineeringEditorStage .panelBlock input,.engineeringEditorStage .panelBlock select{min-height:32px!important;border-radius:8px!important;border-color:#d9e1ea!important;background:#fff!important;font-size:10px!important}.engineeringEditorStage .toolbar button{min-height:31px!important;border-radius:8px!important;border-color:#d9e1ea!important;background:#f8fafc!important;font-size:10px!important}
.engineeringEditorStage .viewport{background:#fbfdff!important}.engineeringEditorStage .inspector{display:block!important;border-left:1px solid var(--ae-border)!important;background:#fbfcfe!important;padding:12px!important}.engineeringEditorStage .inspector:before{content:"Properties";display:block;margin-bottom:10px;font-size:14px;font-weight:800;color:#253244}.engineeringEditorStage .inspector h2{display:none}.engineeringEditorStage .inspector .selectionText{background:#fff!important;border:1px solid #e2e8f0!important;border-radius:10px!important;padding:10px!important;font-size:11px!important}.engineeringEditorStage .viewControls{top:10px!important;right:10px!important}.loadManagerLauncherGroup{top:170px!important;right:22px!important}
@media(max-width:1100px){.architectTopbar{grid-template-columns:1fr auto}.architectModeSwitch{order:3;grid-column:1/-1;justify-self:start}.architectTopActions{grid-column:2;grid-row:1}.engineeringEditorStage .workspace{grid-template-columns:220px minmax(0,1fr)!important}.engineeringEditorStage .inspector{display:none!important}}
@media(max-width:760px){.architectTopbar{min-height:50px;display:flex;padding:6px 8px;gap:7px}.architectBrandMark{width:30px;height:30px;border-radius:8px;font-size:13px}.architectBrand strong{font-size:11px}.architectBrand span{font-size:8px}.architectModeSwitch{margin-left:auto;padding:2px}.architectModeSwitch button{min-height:28px;padding:0 7px;font-size:8px}.architectTopActions{display:none}.architectToolstrip{min-height:52px;padding:5px 7px;gap:4px}.architectToolstrip button{min-width:60px;height:38px;gap:4px;font-size:9px;border-radius:9px}.architectToolIcon{width:21px;height:21px;font-size:7px}.architectContextbar{min-height:30px;padding:4px 8px}.architectContextTitle{font-size:10px}.architectContextHint{font-size:8px}.architectViewPills span{font-size:7px;padding:4px 6px}.architectViewPills span:first-child{display:none}.engineeringEditorStage{padding:5px}.engineeringEditorStage>.appShell{border-radius:10px}.engineeringEditorStage .workspace{display:block!important;position:relative!important;height:100%!important}.engineeringEditorStage .viewport{position:absolute!important;inset:0!important;width:100%!important;height:100%!important}.engineeringEditorStage .toolbar{position:absolute!important;z-index:20!important;left:6px!important;top:6px!important;bottom:6px!important;width:116px!important;max-height:calc(100% - 12px)!important;padding:5px!important;border:1px solid rgba(210,218,228,.9)!important;border-radius:10px!important;background:rgba(255,255,255,.9)!important;-webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important;box-shadow:0 5px 18px rgba(31,43,56,.1)!important}.engineeringEditorStage .toolbar:before{font-size:9px;padding:2px}.engineeringEditorStage .panelBlock{padding:5px!important;border-radius:8px!important;gap:3px!important}.engineeringEditorStage .panelBlock h3{font-size:7px!important}.engineeringEditorStage .panelBlock input,.engineeringEditorStage .panelBlock select,.engineeringEditorStage .toolbar button{min-height:25px!important;font-size:7px!important;padding:3px 4px!important}.engineeringEditorStage .inspector{display:none!important}.loadManagerLauncherGroup{top:145px!important;right:8px!important}}


.architectWorkspaceFrame{flex:1 1;min-height:0;display:grid;grid-template-columns:220px minmax(0,1fr);grid-gap:10px;gap:10px;padding:10px 12px 12px;background:var(--ae-bg)}
.mode-advanced .architectWorkspaceFrame{grid-template-columns:minmax(0,1fr)}
.architectQuickPanel{min-width:0;min-height:0;display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--ae-border);border-radius:16px;background:#fff;box-shadow:0 6px 22px rgba(31,43,56,.06);overflow:auto}
.architectPanelHeading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.architectPanelHeading h2{margin:2px 0 0;font-size:15px;line-height:1.1}.architectEyebrow{font-size:8px;font-weight:800;letter-spacing:.12em;color:#8993a0}.architectPanelBadge{padding:4px 7px;border-radius:999px;background:#eef4ff;color:#315db9;font-size:8px;font-weight:800}
.architectQuickActions{display:grid;grid-gap:6px;gap:6px}.architectQuickActions button{width:100%;display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;grid-gap:9px;gap:9px;padding:8px;text-align:left;border:1px solid #e4e9f0;border-radius:11px;background:#f9fbfd;color:#263445}.architectQuickActions button.active{border-color:#b9ccff;background:#edf3ff;color:#214fae}
.architectQuickIcon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:#fff;border:1px solid #dfe6ee;font-size:9px;font-weight:900}.architectQuickActions strong{display:block;font-size:11px}.architectQuickActions small{display:block;margin-top:2px;font-size:8px;color:#798493}
.architectWorkflowCard{margin-top:2px;padding:10px;border:1px solid #e6ebf1;border-radius:12px;background:#fbfcfe}.architectWorkflowCard ol{display:grid;grid-gap:8px;gap:8px;margin:8px 0 0;padding:0;list-style:none}.architectWorkflowCard li{display:flex;align-items:center;gap:8px;font-size:9px;color:#5f6c7a}.architectWorkflowCard li span{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#edf1f6;color:#425064;font-size:8px;font-weight:800}
.architectQuickFooter{margin-top:auto;display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px}.architectQuickFooter button{min-height:34px;border:1px solid #dfe6ee;border-radius:9px;background:#fff;font-size:9px;font-weight:800;color:#3a4655}
.mode-simple .engineeringEditorStage{padding:0}.mode-simple .engineeringEditorStage>.appShell{border-radius:16px}.mode-simple .engineeringEditorStage .workspace{grid-template-columns:minmax(0,1fr) 300px!important}.mode-simple .engineeringEditorStage .toolbar{display:none!important}.mode-simple .engineeringEditorStage .viewport{grid-column:1!important}.mode-simple .engineeringEditorStage .inspector{grid-column:2!important}.mode-simple .engineeringEditorStage .inspector details{display:none}.mode-simple .engineeringEditorStage .inspector .selectionText{margin-bottom:8px}.mode-simple .engineeringEditorStage .inspector::after{content:"Select an element in the model to view its properties.";display:block;padding:12px;border:1px dashed #d7dfe8;border-radius:10px;background:#fff;color:#788493;font-size:10px;line-height:1.5}
@media(max-width:1100px){.architectWorkspaceFrame{grid-template-columns:190px minmax(0,1fr)}.mode-simple .engineeringEditorStage .workspace{grid-template-columns:minmax(0,1fr)!important}.mode-simple .engineeringEditorStage .inspector{display:none!important}}
@media(max-width:760px){.architectWorkspaceFrame{position:relative;display:block;padding:5px}.architectQuickPanel{position:absolute;z-index:32;left:10px;top:10px;width:148px;max-height:calc(100% - 20px);padding:8px;gap:7px;border-radius:12px;background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.architectPanelHeading h2{font-size:11px}.architectQuickActions{grid-template-columns:1fr 1fr;gap:4px}.architectQuickActions button{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 4px;text-align:center}.architectQuickIcon{width:26px;height:26px;border-radius:7px;font-size:7px}.architectQuickActions strong{font-size:8px}.architectQuickActions small{display:none}.architectWorkflowCard{display:none}.architectQuickFooter{gap:4px}.architectQuickFooter button{min-height:28px;font-size:7px}.mode-simple .engineeringEditorStage{height:100%}.mode-simple .engineeringEditorStage .toolbar{display:none!important}}

.architectIconAction{
  width:36px;
  min-width:36px;
  height:36px;
  padding:0!important;
  display:grid;
  place-items:center;
  font-size:16px!important;
  line-height:1;
}
.architectSaveAction{
  background:#17202a!important;
  color:#fff!important;
  border-color:#17202a!important;
}
.viewportViewTools{
  position:absolute;
  top:10px;
  right:10px;
  z-index:45;
  display:flex;
  gap:4px;
  padding:4px;
  border:1px solid rgba(203,213,225,.9);
  border-radius:10px;
  background:rgba(255,255,255,.94);
  -webkit-backdrop-filter:blur(8px);
          backdrop-filter:blur(8px);
  box-shadow:0 4px 14px rgba(15,23,42,.1);
}
.viewportViewTools button,
.viewportReferenceNavigator button{
  width:32px;
  height:30px;
  border:1px solid transparent;
  border-radius:7px;
  background:transparent;
  color:#334155;
  font-size:10px;
  font-weight:800;
  touch-action:manipulation;
}
.viewportViewTools button.active{
  border-color:#93c5fd;
  background:#dbeafe;
  color:#1d4ed8;
}
.viewportReferenceNavigator{
  position:absolute;
  top:54px;
  right:10px;
  z-index:45;
  display:grid;
  grid-template-columns:32px 40px 32px;
  align-items:center;
  grid-gap:3px;
  gap:3px;
  padding:4px;
  border:1px solid rgba(203,213,225,.9);
  border-radius:10px;
  background:rgba(255,255,255,.94);
  box-shadow:0 4px 14px rgba(15,23,42,.08);
}
.viewportReferenceNavigator span{
  text-align:center;
  color:#64748b;
  font-size:8px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.viewportSelectionWindow{
  position:fixed;
  z-index:38;
  pointer-events:none;
  border:1px solid #2563eb;
  background:rgba(37,99,235,.10);
}
.viewportSelectionWindow.crossing{
  border-style:dashed;
  border-color:#16a34a;
  background:rgba(34,197,94,.10);
}
.viewportInteractionStatus{
  position:absolute;
  left:12px;
  bottom:10px;
  z-index:40;
  pointer-events:none;
  max-width:min(80%,520px);
  padding:6px 9px;
  border:1px solid rgba(226,232,240,.9);
  border-radius:7px;
  background:rgba(255,255,255,.92);
  color:#475569;
  font-size:10px;
  box-shadow:0 1px 4px rgba(15,23,42,.1);
}
.referenceEditPanel{
  display:grid;
  grid-gap:8px;
  gap:8px;
}
.referenceAdjustToggle{
  display:flex;
  align-items:flex-start;
  gap:8px;
  padding:8px;
  border:1px solid #dbe4ee;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  cursor:pointer;
}
.referenceAdjustToggle input{
  margin-top:2px;
  flex:0 0 auto;
}
.referenceAdjustToggle span{
  display:grid;
  grid-gap:2px;
  gap:2px;
}
.referenceAdjustToggle strong{
  font-size:10px;
}
.referenceAdjustToggle small{
  color:#64748b;
  font-size:8px;
  line-height:1.35;
}
.mode-advanced .architectWorkspaceFrame{
  grid-template-columns:minmax(0,1fr);
  padding:8px;
}
.mode-advanced .engineeringEditorStage{
  padding:0;
}
.mode-advanced .engineeringEditorStage>.appShell{
  border-radius:12px;
}
.mode-advanced .engineeringEditorStage .workspace{
  grid-template-columns:minmax(220px,260px) minmax(0,1fr) minmax(250px,310px)!important;
}
.mode-advanced .engineeringEditorStage .toolbar{
  background:#f8fafc!important;
}
@media(max-width:1100px){
  .mode-advanced .engineeringEditorStage .workspace{
    grid-template-columns:minmax(210px,240px) minmax(0,1fr)!important;
  }
  .mode-advanced .engineeringEditorStage .inspector{
    display:none!important;
  }
}
@media(max-width:760px){
  .architectTopActions{
    display:flex!important;
    gap:3px;
    margin-left:auto;
  }
  .architectIconAction{
    width:30px;
    min-width:30px;
    height:30px;
    min-height:30px!important;
    padding:0!important;
    border-radius:8px!important;
    font-size:13px!important;
  }
  .architectTopbar{
    flex-wrap:nowrap;
  }
  .architectBrand>div{
    display:none;
  }
  .viewportViewTools{
    top:6px;
    right:6px;
    gap:2px;
    padding:3px;
  }
  .viewportViewTools button,
  .viewportReferenceNavigator button{
    width:29px;
    height:29px;
  }
  .viewportReferenceNavigator{
    top:44px;
    right:6px;
    grid-template-columns:29px 34px 29px;
    gap:2px;
    padding:3px;
  }
  .viewportInteractionStatus{
    left:7px;
    bottom:7px;
    max-width:calc(100% - 14px);
    font-size:8px;
  }
  .mode-advanced .architectWorkspaceFrame{
    padding:4px;
  }
  .mode-advanced .engineeringEditorStage .workspace{
    display:block!important;
    position:relative!important;
    height:100%!important;
  }
  .mode-advanced .engineeringEditorStage .viewport{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
  }
  .mode-advanced .engineeringEditorStage .toolbar{
    position:absolute!important;
    z-index:34!important;
    left:6px!important;
    top:6px!important;
    bottom:44px!important;
    width:min(76vw,286px)!important;
    max-height:calc(100% - 50px)!important;
    padding:7px!important;
    border:1px solid rgba(203,213,225,.92)!important;
    border-radius:11px!important;
    background:rgba(248,250,252,.95)!important;
    -webkit-backdrop-filter:blur(10px)!important;
            backdrop-filter:blur(10px)!important;
    box-shadow:0 8px 24px rgba(15,23,42,.14)!important;
    overflow:auto!important;
  }
  .mode-advanced .engineeringEditorStage .inspector{
    display:noe!important;
  }
  .referenceAdjustToggle{
    padding:6px;
  }
}

.structuralEditorViewportHost {
  position: relative;
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
}

.engineeringEditorStage > .structuralEditorViewportHost > .appShell {
  height: 100%;
  min-height: 0;
}

.mode-simple .engineeringEditorStage > .structuralEditorViewportHost > .appShell {
  grid-template-columns: 1fr;
  grid-template-rows: minmax(0, 1fr);
}

.mode-simple .structuralEditorViewportHost .toolbar {
  display: none;
}

.viewportViewTools {
  gap: 1px;
  padding: 2px;
  border-radius: 6px;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
}

.viewportViewTools button {
  width: 28px;
  height: 22px;
  min-height: 22px;
  border-radius: 4px;
  font-size: 9px;
  padding: 0;
}

.viewportViewTools button:nth-child(1) { order: 1; }
.viewportViewTools button:nth-child(2) { order: 2; }
.viewportViewTools button:nth-child(4) { order: 3; }
.viewportViewTools button:nth-child(3) {
  order: 4;
  font-size: 0;
}
.viewportViewTools button:nth-child(3)::after {
  content: "T";
  font-size: 9px;
}
.viewportViewTools button:nth-child(5) { order: 5; }

.viewportReferenceNavigator {
  top: 40px;
  gap: 1px;
  padding: 2px;
  border-radius: 6px;
  grid-template-columns: 26px 36px 26px;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
}

.viewportReferenceNavigator button {
  width: 26px;
  height: 22px;
  min-heigight: 22px;
  border-radius: 4px;
  padding: 0;
  font-size: 12px;
}

.viewportReferenceNavigator span {
  font-size: 7px;
}

.referenceStatusOverlay {
  position: absolute;
  left: 50%;
  bottom: 8px;
  transform: translateX(-50%);
  z-index: 46;
  display: flex;
  align-items: center;
  gap: 6px;
  max-width: 60%;
  min-height: 24px;
  padding: 3px 8px;
  border: 1px solid #d6dee9;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.10);
  color: #334155;
  font-size: 9px;
  pointer-events: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.referenceStatusOverlay > span {
  color: #64748b;
  font-size: 7px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.referenceStatusOverlay > strong {
  font-size: 9px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.referenceEditPanel {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
}

.referenceAdjustToggle {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  min-height: 32px;
  padding: 8px;
  border: 1px solid #dbe4ee;
  border-radius: 10px;
  background: #f8fafc;
  color: #334155;
  cursor: pointer;
}

.referenceAdjustToggle input[type="checkbox"] {
  width: 16px;
  height: 16px;
  margin-top: 2px;
  flex: 0 0 auto;
  accent-color: #2563eb;
}

.referenceAdjustToggle span {
  display: grid;
  grid-gap: 2px;
  gap: 2px;
}

.referenceAdjustToggle strong {
  font-size: 10px;
}

.referenceAdjustToggle small {
  color: #64748b;
  font-size: 8px;
  line-height: 1.35;
}

@media (max-width: 760px) {
  .viewportViewTools {
    top: 4px;
    right: 4px;
  }

  .viewportViewTools button {
    width: 25px;
    height: 21px;
    min-height: 21px;
  }

  .viewportReferenceNavigator {
    top: 32px;
    right: 4px;
    grid-template-columns: 24px 32px 24px;
  }

  .viewportReferenceNavigator button {
    width: 24px;
    height: 21px;
    min-height: 21px;
  }

  .referenceStatusOverlay {
    bottom: 6px;
    max-width: 70%;
    min-height: 22px;
    padding: 2px 6px;
    font-size: 8px;
  }

  .referenceAdjustToggle {
    padding: 6px;
  }
}

.thatOpenViewportToolHost {
  position: absolute;
  inset: 0;
  min-width: 0;
  min-height: 0;
}

.thatOpenViewportToolHost:not(.view-tool-active)
  .viewportReferenceNavigator {
  display: none !important;
}

.architectWorkspaceFrame{
  flex:1 1;
  min-height:0;
  display:grid;
  grid-template-columns:220px minmax(0,1fr);
  grid-gap:10px;
  gap:10px;
  padding:10px 12px 12px;
  background:var(--ae-bg);
}
.mode-advanced .architectWorkspaceFrame{grid-template-columns:minmax(0,1fr)}
.architectQuickPanel{
  min-width:0;
  min-height:0;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:16px;
  border:1px solid var(--ae-border);
  border-radius:16px;
  background:#fff;
  box-shadow:0 6px 22px rgba(31,43,56,.06);
  overflow:auto;
}
.architectPanelHeading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.architectPanelHeading h2{margin:2px 0 0;font-size:15px;line-height:1.1}
.architectEyebrow{font-size:8px;font-weight:800;letter-spacing:.12em;color:#8993a0}
.architectPanelBadge{padding:4px 7px;border-radius:999px;background:#eef4fb;color:#315db9;font-size:8px;font-weight:800}
.architectQuickActions{display:grid;grid-gap:7px;gap:7px}
.architectQuickActions button{
  width:100%;
  display:grid;
  grid-template-columns:32px minmax(0,1fr);
  align-items:center;
  grid-gap:9px;
  gap:9px;
  padding:8px;
  text-align:left;
  border:1px solid #e4e9f0;
  border-radius:11px;
  background:#f9fbfd;
  color:#263445;
}
.architectQuickActions button.active{border-color:#b9ccff;background:#edf3ff;color:#214fae}
.architectQuickActions button:disabled{opacity:.46;cursor:not-allowed}
.architectQuickIcon{
  width:32px;
  height:32px;
  border-radius:9px;
  display:grid;
  place-items:center;
  background:#fff;
  border:1px solid #dfe6ee;
  font-size:9px;
  font-weight:900;
}
.architectQuickActions strong{display:block;font-size:11px}
.architectQuickActions small{display:block;margin-top:2px;font-size:8px;color:#798493}
.architectViewportColumn{min-width:0;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) 38px}
.architectViewportStage{position:relative;min-width:0;min-height:0}
.architectViewportStage .engineeringEditorStage{height:100%;padding:0}
.mode-simple .engineeringEditorStage>.appShell{height:100%;border-radius:16px 16px 0 0}
.mode-simple .engineeringEditorStage .workspace{grid-template-columns:minmax(0,1fr) 300px!important}
.mode-simple .engineeringEditorStage .toolbar{display:none!important}
.mode-simple .engineeringEditorStage .viewport{grid-column:1!important}
.mode-simple .engineeringEditorStage .inspector{
  display:block!important;
  grid-column:2!important;
  overflow:auto!important;
  padding:14px!important;
  background:#fbfcfe!important;
  border-left:1px solid var(--ae-border)!important;
}
.mode-simple .engineeringEditorStage .inspector:before{
  content:"Properties";
  display:block;
  margin-bottom:12px;
  font-size:16px;
  font-weight:800;
  color:#253244;
}
.mode-simple .engineeringEditorStage .inspector .selectionText{
  padding:12px!important;
  border:1px solid #e2e8f0!important;
  border-radius:12px!important;
  background:#fff!important;
  font-size:11px!important;
}
.mode-simple .engineeringEditorStage .inspector details{display:none}
.architectFloatingTools{
  position:absolute;
  z-index:35;
  left:18px;
  top:18px;
  width:116px;
  display:grid;
  grid-gap:6px;
  gap:6px;
  padding:9px;
  border:1px solid rgba(218,225,234,.95);
  border-radius:14px;
  background:rgba(255,255,255,.94);
  -webkit-backdrop-filter:blur(10px);
          backdrop-filter:blur(10px);
  box-shadow:0 8px 24px rgba(31,43,56,.10);
}
.architectFloatingTools button{
  min-height:36px;
  display:grid;
  grid-template-columns:26px minmax(0,1fr);
  align-items:center;
  grid-gap:7px;
  gap:7px;
  padding:5px 7px;
  border:1px solid #e3e8ef;
  border-radius:10px;
  background:#f9fbfd;
  color:#344254;
  font-size:10px;
  font-weight:700;
  text-align:left;
}
.architectFloatingTools button.active{border-color:#b9ccff;background:#edf3ff;color:#214fae}
.architectFloatingTools button:disabled{opacity:.42;cursor:not-allowed}
.architectFloatingIcon{
  width:26px;height:26px;display:grid;place-items:center;border:1px solid #dde5ee;
  border-radius:7px;background:#fff;font-size:8px;font-weight:900
}
.architectStatusbar{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
  padding:0 14px;
  border:1px solid var(--ae-border);
  border-top:0;
  border-radius:0 0 14px 14px;
  background:#f8fafc;
  color:#687585;
  font-size:10px;
  white-space:nowrap;
  overflow:hidden;
}
.architectStatusbar span{overflow:hidden;text-overflow:ellipsis}
.architectStatusbar strong{color:#344254}
.architectStatusDivider{color:#c2cad4}
.architectTopActions button:disabled{opacity:.55;cursor:not-allowed}

@media(max-width:1100px){
  .architectWorkspaceFrame{grid-template-columns:190px minmax(0,1fr)}
  .mode-simple .engineeringEditorStage .workspace{grid-template-columns:minmax(0,1fr) 250px!important}
}
@media(max-width:760px){
  .architectWorkspaceFrame{position:relative;display:block;padding:5px}
  .architectQuickPanel{
    position:absolute;
    z-index:44;
    left:10px;
    top:10px;
    width:132px;
    max-height:calc(100% - 20px);
    padding:8px;
    gap:7px;
    border-radius:12px;
    background:rgba(255,255,255,.95);
    -webkit-backdrop-filter:blur(10px);
            backdrop-filter:blur(10px);
  }
  .architectPanelHeading h2{font-size:11px}
  .architectPanelBadge{display:none}
  .architectQuickActions{grid-template-columns:1fr 1fr;gap:4px}
  .architectQuickActions button{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 4px;text-align:center}
  .architectQuickIcon{width:26px;height:26px;border-radius:7px;font-size:7px}
  .architectQuickActions strong{font-size:8px}
  .architectQuickActions small{display:none}
  .architectViewportColumn{height:100%;grid-template-rows:minmax(0,1fr) 32px}
  .mode-simple .engineeringEditorStage .workspace{display:block!important;position:relative!important;height:100%!important}
  .mode-simple .engineeringEditorStage .viewport{position:absolute!important;inset:0!important;width:100%!important;height:100%!important}
  .mode-simple .engineeringEditorStage .inspector{display:none!important}
  .architectFloatingTools{left:auto;right:8px;top:8px;width:88px;padding:6px;gap:4px;border-radius:11px}
  .architectFloatingTools button{min-height:30px;grid-template-columns:22px minmax(0,1fr);gap:5px;padding:4px 5px;font-size:8px}
  .architectFloatingIcon{width:22px;height:22px;font-size:6px}
  .architectStatusbar{gap:6px;padding:0 8px;font-size:8px}
  .architectStatusbar span:nth-of-type(n+3){display:none}
}

.mode-simple .engineeringEditorStage .toolbar:has(> .architect-revealed-panel){
  display:block!important;
  position:absolute!important;
  z-index:40!important;
  left:auto!important;
  right:18px!important;
  top:18px!important;
  bottom:auto!important;
 width:260px!important;
 max-height:calc(100% - 36px)!important;
 padding:0!important;
 border:0!important;
 background:transparent!important;
 -webkit-backdrop-filter:none!important;
         backdrop-filter:none!important;
 box-shadow:none!important;
 overflow:auto!important;
}

.mode-simple .engineeringEditorStage .toolbar:has(> .architect-revealed-panel)::before{display:none!important}
.mode-simple .engineeringEditorStage .toolbar:has(> .architect-revealed-panel) > *{display:none!important}
.mode-simple .engineeringEditorStage .toolbar:has(> .architect-revealed-panel) > .architect-revealed-panel{
  display:flex!important;
 flex-direction:column;
 gap:8px!important;
 padding:12px!important;
 border:1px solid #dce3ec!important;
 border-radius:14px!important;
 background:rgba(255,255,255,.96)!important;
 -webkit-backdrop-filter:blur(10px)!important;
         backdrop-filter:blur(10px)!important;
 box-shadow:0 8px 24px rgba(31,43,56,.12)!important;
 overflow:auto!important;
}

body:has(.mode-simpl .engineeringEditorStage .architect-revealed-panel) .architectFloatingTools{display:none!important}
@media(max-width:760px){
 .mode-simple .engineeringEditorStage .toolbar:has(> .architect-revealed-panel){
   left:150px!important;
  right:8px!important;
   top:8px!important;
  width:calc(100% - 158px)!important;
   max-width:260px!important;
   max-height:calc(100% - 16px)!important;
 }
}

.lgPanel{
  --lg-border:#dfe6ef;
  --lg-text:#243244;
  --lg-muted:#788596;
  --lg-accent:#356efc;
  gap:0!important;
  padding:0!important;
  overflow:hidden!important;
  color:var(--lg-text);
}
.lgHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:15px;border-bottom:1px solid var(--lg-border)}
.lgHeader>div{min-width:0}.lgHeader>div>span,.lgTitle>span,.lgTitle>div>span{display:block;font-size:8px;font-weight:800;letter-spacing:.11em;color:#8995a4}
.lgHeader h3{margin:3px 0 0!important;font-size:16px!important;line-height:1.2!important;text-transform:none!important;letter-spacing:0!important;color:var(--lg-text)!important}
.lgHeader p{margin:5px 0 0;font-size:9px;line-height:1.45;color:var(--lg-muted)}
.lgHeader>button{width:28px!important;min-height:28px!important;padding:0!important;border:1px solid var(--lg-border)!important;border-radius:8px!important;background:#fff!important;color:#657184!important;font-size:17px!important}
.lgSummary{display:grid;grid-template-columns:1fr 1fr auto;grid-gap:7px;gap:7px;padding:10px 12px;border-bottom:1px solid var(--lg-border);background:#fbfcfe}
.lgSummary>div{padding:8px 9px;border:1px solid #e5eaf1;border-radius:10px;background:#fff}.lgSummary strong{display:block;font-size:14px}.lgSummary span{display:block;margin-top:2px;font-size:8px;color:var(--lg-muted)}.lgSummary>div:last-child{text-align:center}.lgSummary>div:last-child strong{font-size:12px;color:#315db9}
.lgTabs{display:grid;grid-template-columns:1fr 1fr;grid-gap:4px;gap:4px;padding:8px 12px;border-bottom:1px solid var(--lg-border);background:#fff}
.lgTabs button{min-height:32px!important;border:1px solid transparent!important;border-radius:9px!important;background:transparent!important;color:#667487!important;font-size:10px!important;font-weight:800!important}
.lgTabs button.active{border-color:#bfd0ff!important;background:#edf3ff!important;color:#2857bf!important}
.lgBody{display:grid;grid-gap:10px;gap:10px;padding:12px}.lgCard{display:grid;grid-gap:9px;gap:9px;padding:11px;border:1px solid var(--lg-border);border-radius:12px;background:#fff}.lgCard:first-child{background:#fbfdff}
.lgTitle{display:grid;grid-gap:2px;gap:2px}.lgTitle strong{font-size:11px}.lgTitle.row{display:flex;align-items:center;justify-content:space-between}.lgTitle.row>div{display:grid;grid-gap:2px;gap:2px}.lgTitle.row>b{display:grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:#eef3fa;color:#5c6a7c;font-size:9px}
.lgPanel label{display:grid!important;grid-gap:4px!important;gap:4px!important;font-size:8px!important;font-weight:700!important;color:#657184!important}.lgPanel label>span{line-height:1}
.lgPanel input{width:100%!important;min-width:0!important;min-height:32px!important;padding:6px 8px!important;border:1px solid #dce4ed!important;border-radius:8px!important;background:#fff!important;color:#243244!important;font-size:10px!important;outline:none!important}
.lgPanel input:focus{border-color:#9db8ff!important;box-shadow:0 0 0 3px rgba(53,110,252,.08)!important}
.lgTwo{display:grid;grid-template-columns:1fr 1fr;grid-gap:7px;gap:7px}
.lgCoords{display:grid;grid-gap:5px;gap:5px;padding:8px;border:1px solid #e8edf3;border-radius:10px;background:#f8fafc}.lgCoords>span{font-size:8px;font-weight:800;color:#687587}.lgCoords>div{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:5px;gap:5px}
.lgPrimary{min-height:36px!important;border:1px solid var(--lg-accent)!important;border-radius:9px!important;background:var(--lg-accent)!important;color:#fff!important;font-size:10px!important;font-weight:800!important}.lgPrimary:hover{background:#2d61e3!important}
.lgList{display:grid;grid-gap:7px;gap:7px}.lgItem{display:grid;grid-gap:8px;gap:8px;padding:9px;border:1px solid #e5eaf1;border-radius:10px;background:#fbfcfe}.lgItemHead{display:flex;align-items:center;justify-content:space-between;gap:8px}.lgItemHead>div{display:grid;grid-gap:1px;gap:1px}.lgItemHead strong{font-size:10px}.lgItemHead small{font-size:7px;color:#8a95a3}.lgItemHead>span{font-size:8px;color:#647184}
.lgActions{display:grid;grid-template-columns:1fr auto;grid-gap:6px;gap:6px}.lgActions button{min-height:30px!important;border:1px solid #dce4ed!important;border-radius:8px!important;background:#fff!important;color:#334155!important;font-size:9px!important;font-weight:800!important}.lgActions button.danger{padding-inline:10px!important;color:#b54747!important;border-color:#f1d7d7!important;background:#fffafa!important}
.lgEmpty{padding:12px;border:1px dashed #d8e0ea;border-radius:10px;background:#fafcff;color:#7a8797;font-size:9px}
.lgFooter{padding:9px 12px;border-top:1px solid var(--lg-border);background:#f8fafc;color:#8792a0;font-size:8px;text-align:center}
.mode-simple .engineeringEditorStage .toolbar:has(> .architect-revealed-panel){width:300px!important}
.mode-simple .engineeringEditorStage .toolbar:has(> .architect-revealed-panel)>*:not(.architect-revealed-panel){display:none!important}
.mode-simple .engineeringEditorStage .toolbar:has(> .architect-revealed-panel)>.architect-revealed-panel{display:block!important}
@media(max-width:760px){
  .mode-simple .engineeringEditorStage .toolbar:has(> .architect-revealed-panel){left:142px!important;right:8px!important;width:auto!important;max-width:300px!important}
  .lgSummary{grid-template-columns:1fr 1fr}.lgSummary>div:last-child{grid-column:1/-1}.lgTwo{grid-template-columns:1fr}
}


/* Close the primary modeling viewport visually at the bottom edge. */
.mode-simple .architectViewportColumn{
  border:1px solid var(--ae-border);
  border-radius:16px;
  background:#fff;
  overflow:hidden;
  box-shadow:0 6px 22px rgba(31,43,56,.06);
}
.mode-simple .architectViewportStage{
  min-height:0;
  overflow:hidden;
}
.mode-simple .engineeringEditorStage>.appShell{
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.mode-simple .architectStatusbar{
  border-left:0;
  border-right:0;
  border-bottom:0;
  border-radius:0;
}

/* Temporary contextual panels must remain visibly dismissible. */
.mode-simple .architect-revealed-panel .lgHeader>button{
  position:-webkit-sticky;
  position:sticky;
  top:0;
  z-index:2;
  cursor:nointer;
}


.lgModalBackdrop{
  position:fixed;
  inset:0;
  z-index:1200;
  display:grid;
  place-items:center;
  padding:20px;
  background:rgba(15,23,42,.28);
  -webkit-backdrop-filter:blur(3px);
          backdrop-filter:blur(3px);
}
.lgPortalPanel{
  width:min(420px,calc(100vw - 24px));
  max-height:min(760px,calc(100vh - 40px));
  overflow:auto!important;
  border:1px solid #dfe6ef!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 24px 70px rgba(15,23,42,.22)!important;
}
@media(max-width:760px){
  .lgModalBackdrop{
    place-items:end center;
    padding:8px;
  }
  .lgPortalPanel{
    width:100%;
    max-height:82vh;
    border-radius:16px!important;
  }
}

.gridOffsetEditor{display:grid;grid-gap:16px;gap:16px}
.gridOffsetIntro{display:grid;grid-gap:4px;gap:4px;padding:12px 14px;border:1px solid #dbe3ee;border-radius:12px;background:#f8fafc}
.gridOffsetIntro strong{font-size:14px;color:#1e293b}
.gridOffsetIntro span{font-size:12px;color:#64748b}
.gridOffsetSection{display:grid;grid-gap:10px;gap:10px;padding:14px;border:1px solid #dbe3ee;border-radius:14px;background:#fff}
.gridOffsetSectionHead{display:flex;align-items:center;justify-content:space-between;gap:12px}
.gridOffsetSectionHead div{display:grid;grid-gap:2px;gap:2px}
.gridOffsetSectionHead span{font-size:11px;font-weight:700;letter-spacing:.08em;color:#64748b;text-transform:uppercase}
.gridOffsetSectionHead strong{font-size:14px;color:#1e293b}
.gridOffsetSectionHead button{border:1px solid #cbd5e1;border-radius:9px;background:#fff;padding:8px 10px;font-weight:600;color:#334155}
.gridOffsetTable{display:grid;grid-gap:8px;gap:8px}
.gridOffsetTableHead,.gridOffsetRow{display:grid;grid-template-columns:minmax(80px,.7fr) minmax(130px,1.3fr) 40px;grid-gap:8px;gap:8px;align-items:center}
.gridOffsetTableHead{padding:0 2px;font-size:11px;font-weight:700;color:#64748b}
.gridOffsetRow input{width:100%;min-width:0;border:1px solid #cbd5e1;border-radius:9px;padding:9px 10px;background:#fff;color:#0f172a}
.gridOffsetDelete{height:38px;border:1px solid #fecaca;border-radius:9px;background:#fff;color:#b91c1c;font-size:18px}
.gridOffsetDelete:disabled{opacity:.35}
.gridOffsetSave{width:100%}
.gridBubble{display:grid;place-items:center;min-width:26px;height:26px;padding:0 6px;border:1.5px solid #64748b;border-radius:999px;background:rgba(255,255,255,.96);color:#1e293b;font:700 12px/1 system-ui,sans-serif;box-shadow:0 1px 3px rgba(15,23,42,.12);white-space:nowrap}
@media(max-width:760px){
  .gridOffsetTableHead,.gridOffsetRow{grid-template-columns:72px minmax(120px,1fr) 38px}
  .gridOffsetSection{padding:12px}
}

.propertiesSidePanel {
  position: fixed;
  top: 84px;
  right: 16px;
  width: min(360px, calc(100vw - 32px));
  max-height: calc(100vh - 104px);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.98);
  border: 1px solid #d0d5dd;
  border-radius: 12px;
  box-shadow: 0 18px 48px rgba(16, 24, 40, 0.18);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  z-index: 90;
}

.propertiesHeader {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 13px 14px;
  border-bottom: 1px solid #eaecf0;
  background: #ffffff;
}

.propertiesHeader > div {
  display: grid;
  grid-gap: 2px;
  gap: 2px;
}

.propertiesHeader strong {
  color: #101828;
  font-size: 14px;
  line-height: 1.2;
}

.propertiesHeader span {
  color: #667085;
  font-size: 11px;
}

.propertiesHeader button {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #475467;
  cursor: pointer;
  font-size: 19px;
  line-height: 1;
}

.propertiesHeader button:hover {
  background: #f2f4f7;
  color: #101828;
}

.propertiesBody {
  min-height: 0;
  overflow: auto;
  display: grid;
  grid-gap: 10px;
  gap: 10px;
  padding: 12px;
}

.propertiesSelectionSummary {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-gap: 1px 9px;
  gap: 1px 9px;
  align-items: center;
  padding: 10px;
  border: 1px solid #d0d5dd;
  border-radius: 9px;
  background: #f8fafc;
}

.propertiesSelectionSummary strong {
  grid-row: 1 / span 2;
  min-width: 34px;
  font-size: 22px;
  line-height: 1;
  color: #101828;
}

.propertiesSelectionSummary span {
  font-size: 11px;
  font-weight: 700;
  color: #344054;
}

.propertiesSelectionSummary small {
  font-size: 9px;
  color: #667085;
}

.propertiesSectionHeading {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: baseline;
}

.propertiesSectionHeading strong {
  font-size: 11px;
  color: #344054;
}

.propertiesSectionHeading span {
  font-size: 9px;
  color: #98a2b3;
}

.propertiesField {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  grid-gap: 8px;
  gap: 8px;
  align-items: center;
  font-size: 10px;
}

.propertiesField > span {
  color: #667085;
}

.propertiesField select {
  min-width: 0;
  height: 30px;
  border: 1px solid #d0d5dd;
  border-radius: 7px;
  padding: 0 8px;
  background: #ffffff;
  color: #101828;
  font: inherit;
}

.propertiesField select:focus-visible {
  outline: 2px solid #84adff;
  outline-offset: 1px;
}

.propertiesSelectionList {
  max-height: 138px;
  overflow: auto;
  display: grid;
  grid-gap: 4px;
  gap: 4px;
}

.propertiesSelectionList > span {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  grid-gap: 6px;
  gap: 6px;
  padding: 5px 7px;
  border-radius: 6px;
  background: #f8fafc;
  color: #475467;
  font-size: 9px;
  overflow-wrap: anywhere;
}

.propertiesSelectionList b {
  color: #344054;
  text-transform: capitalize;
}

.viewportContextMenu {
  position: fixed;
  z-index: 140;
  width: 224px;
  max-height: min(420px, calc(100vh - 16px));
  overflow: auto;
  padding: 6px;
  border: 1px solid #d0d5dd;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 16px 36px rgba(16, 24, 40, 0.2);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

.viewportContextMenuHeader {
  padding: 6px 8px 7px;
  color: #667085;
  font-size: 10px;
 font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.viewportContextMenu button {
  width: 100%;
  min-height: 30px;
  display: flex;
  align-items: center;
  border: 0;
  border-radius: 6px;
  padding: 6px 8px;
  background: transparent;
  color: #344054;
  cursor: pointer;
  font: inherit;
  font-size: 11px;
  text-align: left;
}

.viewportContextMenu button:hover,
.viewportContextMenu button:focus-visible {
  background: #f2f4f7;
  color: #101828;
  outline: none;
}

.viewportContextDivider {
  height: 1px;
  margin: 5px 4px;
  background: #eaecf0;
}

.viewportContextMenu .viewportContextDanger {
  color: #b42318;
}

.viewportContextMenu .viewportContextDanger:hover,
.viewportContextMenu .viewportContextDanger:focus-visible {
  background: #fef3f2;
  color: #912018;
}

@media (max-width: 720px) {
  .propertiesSidePanel {
    top: auto;
    right: 8px;
    bottom: 8px;
    left: 8px;
    width: auto;
    max-height: 62vh;
    border-radius: 14px;
  }

  .viewportContextMenu {
    width: min(224px, calc(100vw- 16px));
  }
}

.propertyActionCard {
  display: grid;
  grid-gap: 8px;
  gap: 8px;
  padding: 10px;
  border: 1px solid #e4e7ec;
  border-radius: 9px;
  background: #fbfcfd;
}

.propertyActionGrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 6px;
  gap: 6px;
}

.propertyActionCard > button,
.propertyActionGrid button,
.propertyCoreSummary button {
  min-height: 32px;
  border: 1px solid #d0d5dd;
  border-radius: 7px;
  padding: 6px 8px;
  background: #fff;
  color: #344054;
  font: inherit;
  font-size: 10px;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}

.propertyActionCard > button:hover,
.propertyActionGrid button:hover,
.propertyCoreSummary button:hover {
  background: #f2f4f7;
}

.propertyCoreSummary {
  display: grid;
  grid-gap: 6px;
  gap: 6px;
  padding: 8px;
  border-radius: 7px;
  background: #f8fafc;
  color: #475467;
  font-size: 10px;
}

.propertyCoreSummary input,
.propertyCoreSummary select {
  min-width: 0;
  min-height: 30px;
  border: 1px solid #d0d5dd;
  border-radius: 7px;
  padding: 5px 7px;
  background: #fff;
  color: #101828;
  font: inherit;
}

.propertyRecordRow {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-gap: 8px;
  gap: 8px;
  align-items: center;
}

@media (max-width: 720px) {
  .propertyActionGrid {
    grid-template-columns: 1fr;
  }
}

