button,input,select{font:inherit;color:var(--text);background:var(--surface3);border:1px solid var(--border2);border-radius:4px;padding:5px 7px}button{cursor:pointer}button:hover{border-color:var(--accent);color:var(--accent)}input:focus,select:focus{outline:none;border-color:var(--accent)}.panel{background:var(--surface);min-width:0;min-height:0}.input-panel{border-right:1px solid var(--border);display:flex;flex-direction:column}.results-panel{border-left:1px solid var(--border);display:flex;flex-direction:column;min-height:0}.panel-heading{height:48px;padding:9px 14px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;text-transform:uppercase;flex:none}.panel-heading-text{display:flex;flex-direction:column;gap:2px}.panel-heading strong{font-size:12px;letter-spacing:1px}.panel-heading span{font:9px var(--mono);color:var(--text3)}.panel-heading .sect-pill{font:9px var(--mono);color:var(--text2);background:var(--surface3);border:1px solid var(--border2);border-radius:4px;padding:3px 7px;text-transform:none;letter-spacing:0}.panel-scroll{flex:1;overflow:auto;padding:12px 14px;min-height:0}.input-section,.result-section{border:1px solid var(--border);border-radius:5px;margin-bottom:10px;overflow:hidden}.input-section h3,.result-section h3{font-size:10px;text-transform:uppercase;letter-spacing:.8px;margin:0;padding:7px 9px;background:var(--surface2);color:var(--text2)}.read-field,.result-row,.edit-field{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 9px;border-top:1px solid var(--border);font-size:11px}.read-field:first-child,.result-row:first-child,.edit-field:first-child{border-top:none}.read-field span,.result-row span,.edit-field span{color:var(--text2)}.read-field b{color:var(--text);font-family:var(--mono)}.edit-field input[type=checkbox]{width:15px;height:15px;accent-color:var(--red)}.info-note{font-size:10px;color:var(--text2);padding:8px 9px;border-top:1px solid var(--border);background:var(--surface2);line-height:1.5}.summary-card{margin:12px;padding:13px;background:var(--surface2);border:1px solid var(--border2);border-radius:6px;display:grid;gap:8px}.summary-card span{font-size:10px;color:var(--text2);text-transform:uppercase;letter-spacing:.5px}.summary-card strong{font-size:22px;font-family:var(--mono)}.summary-card small{color:var(--text3)}.status-pass{color:var(--green)}.status-fail{color:var(--red-light)}.status-blocked,.status-not_checked{color:var(--text3)}.status-calculating{color:var(--accent)}.result-section{margin:12px}.muted{color:var(--text2);font-size:11px;padding:0 9px 9px}.forces-table-wrap{overflow:auto;max-height:220px}.forces-table{border-collapse:collapse;width:100%;font:10px var(--mono)}.forces-table th,.forces-table td{padding:5px 7px;text-align:right;border-bottom:1px solid var(--border);white-space:nowrap}.forces-table th:first-child,.forces-table td:first-child{text-align:left}.forces-table th{position:sticky;top:0;background:var(--surface2);color:var(--text2);font-weight:500}.zone-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:5px}.zone-dot.tension{background:var(--red-light)}.zone-dot.compression{background:var(--accent)}.zone-dot.neutral{background:var(--text3)}.mode-group-title{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:var(--text3);padding:8px 9px 4px}.mode-row{padding:6px 9px;border-top:1px solid var(--border)}.mode-row:first-child{border-top:none}.mode-row-top{display:flex;align-items:center;justify-content:space-between;font-size:10px;margin-bottom:4px}.mode-row-top span{color:var(--text2);text-transform:uppercase;letter-spacing:.3px}.mode-row-top b{font-family:var(--mono)}.meter{height:5px;border-radius:3px;background:var(--surface3);overflow:hidden}.meter-fill{height:100%;border-radius:3px;transition:width .2s}.meter-fill.ok{background:var(--green)}.meter-fill.warn{background:var(--yellow)}.meter-fill.bad{background:var(--red-light)}.not-checked-badge{font-size:9px;color:var(--text3);font-style:italic}html,body,#root{font-family:var(--ui)}body,button,input,select{transition:background-color .12s ease,color .12s ease,border-color .12s ease}.legacy-hidden-calculate{display:none!important}.field-invalid{background:#cc000014}.field-invalid input{border-color:var(--red-light)!important;box-shadow:0 0 0 1px color-mix(in srgb,var(--red-light) 35%,transparent)}.viewer-legend .legend-dot.shear{background:var(--yellow)}.axis-legend{border-top:1px solid var(--border);margin-top:2px;padding-top:5px;font-family:var(--mono)}.result-empty{margin:12px;border:1px dashed var(--border2);padding:12px;display:grid;gap:5px;color:var(--text2);font-size:10px}.result-empty strong{color:var(--text);font-size:11px}.result-section>summary.rs-title{list-style:none;cursor:pointer;padding:7px 9px;background:var(--surface2);color:var(--text2);font:700 10px var(--head);letter-spacing:.8px;text-transform:uppercase;border-left:3px solid var(--red);display:flex;align-items:center;justify-content:space-between}.result-section>summary.rs-title::-webkit-details-marker{display:none}.rs-chevron{font:9px var(--mono);color:var(--text3);transition:transform .12s}.result-section[open]>summary.rs-title .rs-chevron{transform:rotate(90deg)}.mode-detail-grid,.result-kv{display:grid;grid-template-columns:minmax(90px,.75fr) minmax(0,1.25fr);gap:5px 8px;padding:8px 9px 5px;font:9px var(--mono);color:var(--text2)}.mode-detail-grid>b,.result-kv>b{color:var(--text);font-weight:500;overflow-wrap:anywhere;text-align:right}.mode-component-row{grid-column:1/-1;display:grid;grid-template-columns:minmax(90px,.75fr) minmax(0,1.25fr);gap:8px;padding-top:2px}.mode-component-row b{color:var(--text);font-weight:500;text-align:right;overflow-wrap:anywhere}.mode-warning{grid-column:1/-1;margin:3px 0;padding:5px 6px;border-left:2px solid var(--yellow);background:color-mix(in srgb,var(--yellow) 8%,transparent);color:var(--text2);line-height:1.45}.messages-section .messages-body{display:grid;gap:5px;padding:7px 9px}.messages-section .msg-block{margin:0}.critical-anchor td{background:#cc000012!important}.legacy-anchor-table td{font-size:9px}.legacy-anchor-table .anchor-id{color:var(--accent);text-align:center}.legacy-anchor-table .tension-value{color:#ef4444}.legacy-anchor-table .shear-value{color:#f59e0b}.mode-util.ok,.util-pct.ok{color:var(--green)}.mode-util.warn,.util-pct.warn{color:var(--yellow)}.mode-util.bad,.util-pct.bad{color:var(--red)}.legacy-overall{margin:10px;padding:10px;border-radius:6px;display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.legacy-overall.pass{background:#22c55e14;border:1px solid rgba(34,197,94,.22)}.legacy-overall.fail{background:#cc00001a;border:1px solid rgba(204,0,0,.35)}.legacy-overall>div{display:grid;gap:2px}.legacy-overall span{font:9px var(--mono);color:var(--text3);text-transform:uppercase;letter-spacing:.5px}.legacy-overall strong{font:800 26px var(--head);line-height:1.1}.overall-state{font:800 15px var(--head);border:1px solid currentColor;border-radius:4px;padding:4px 8px}.failure-modes-section>div{padding:0 8px 8px}.util-group-title{font:700 9px var(--mono);letter-spacing:.9px;color:var(--text3);margin:10px 0 6px;text-transform:uppercase}.failure-mode-card{border:1px solid var(--border);border-radius:4px;margin:0 0 5px;overflow:hidden}.failure-mode-card>summary{list-style:none}.failure-mode-card>summary::-webkit-details-marker{display:none}.failure-mode-summary{display:flex;align-items:center;gap:7px;padding:6px 7px;cursor:pointer;background:var(--surface);-webkit-user-select:none;user-select:none}.failure-mode-card[data-governing=true] .failure-mode-summary{background:#cc00000f}.util-label{width:160px;min-width:0;font:9px/1.25 var(--mono);color:var(--text3);white-space:normal}.failure-mode-card[data-governing=true] .util-label{color:var(--red)}.util-bar-bg{height:4px;flex:1;min-width:28px;border-radius:2px;background:var(--surface3);overflow:hidden}.util-bar-fill{display:block;height:100%;border-radius:2px}.util-bar-fill.ok{background:var(--green)}.util-bar-fill.warn{background:var(--yellow)}.util-bar-fill.bad{background:var(--red)}.util-pct{width:42px;text-align:right;font:700 9px var(--mono)}.failure-arrow{font:9px var(--mono);color:var(--accent);transition:transform .12s}.failure-mode-card[open] .failure-arrow{transform:rotate(90deg)}.failure-detail-content{border-top:1px solid var(--border);background:var(--surface2)}.failure-detail-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px 8px;padding:8px 9px 0;font:9px var(--mono);color:var(--text3)}.failure-detail-summary-grid b{text-align:right;color:var(--text2);font-weight:500}.load-title-block{display:flex;align-items:center;gap:12px}.load-title-block small{font:9px var(--mono);color:var(--text3)}.load-heading-actions{display:flex;align-items:center;gap:7px}.load-extrema{font:9px var(--mono);color:var(--text2);white-space:nowrap}.load-actions{white-space:nowrap}.load-actions button{padding:2px 6px;margin-left:3px}.load-value.positive input{color:var(--accent)}.load-value.negative input{color:var(--red-light)}.load-value.zero input{color:var(--text2)}.empty-loads{text-align:center!important;color:var(--text3);padding:25px!important;letter-spacing:.5px}.app-toast{position:fixed;right:16px;bottom:calc(var(--footer-h) + 14px);z-index:50;background:var(--surface);border:1px solid var(--border2);box-shadow:0 7px 30px #00000029;border-radius:5px;padding:9px 12px;font-size:10px;color:var(--text);max-width:420px}.shortcut-hint{position:fixed;left:50%;bottom:calc(var(--footer-h) + 12px);transform:translate(-50%,10px);opacity:0;pointer-events:none;z-index:40;padding:7px 12px;border-radius:4px;border:1px solid var(--border2);background:var(--surface);color:var(--text2);font:9px var(--mono);transition:opacity .5s,transform .5s}.shortcut-hint.visible{opacity:1;transform:translate(-50%)}.theme-toggle{width:32px;text-align:center;font-size:15px;padding:3px!important}.profile-picker{min-width:130px;text-align:left;color:var(--accent)}.profile-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0000007a;display:flex;align-items:center;justify-content:center}.profile-modal{width:min(680px,82vw);max-height:78vh;background:var(--surface);border:1px solid var(--border2);border-radius:7px;box-shadow:0 24px 80px #00000047;display:flex;flex-direction:column;overflow:hidden}.profile-modal>header{display:flex;align-items:center;justify-content:space-between;padding:10px 13px;border-bottom:1px solid var(--border);text-transform:uppercase;font-size:11px;letter-spacing:.8px}.profile-modal>header button{font-size:18px;line-height:1;padding:1px 7px}.profile-modal-types{display:flex;flex-wrap:wrap;gap:4px;padding:8px;border-bottom:1px solid var(--border)}.profile-modal-types button{font:10px var(--mono);padding:4px 9px}.profile-modal-types button.active{background:var(--red);border-color:var(--red);color:#fff}.profile-modal-table{overflow:auto;padding:0 8px 8px}.profile-modal-table th{top:0}.profile-modal-table tr{cursor:pointer}.profile-modal-table tbody tr:hover td{background:var(--surface3)}.profile-modal-table tr.selected td{background:color-mix(in srgb,var(--red) 9%,transparent);color:var(--red-light)}.legacy-temperature-note{margin:8px 9px 9px;padding:8px 10px;background:#3d8ef012;border:1px solid rgba(61,142,240,.2);border-left:3px solid var(--accent);border-radius:4px;font-size:11px;color:var(--text2);line-height:1.5}.legacy-concrete-summary{display:grid;grid-template-columns:1fr 1fr;gap:4px 8px;padding:7px 9px 9px;font-family:var(--mono)}.legacy-concrete-summary>span{font-size:9px;color:var(--text3);font-weight:400}.legacy-concrete-summary>b{font-size:10px;color:var(--text2);font-weight:400}.legacy-concrete-summary sub,.legacy-temperature-note sub{font-size:.75em}.legacy-edge-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;text-align:center;padding:6px 8px}.legacy-edge-summary b{display:block;font:10px var(--mono);color:var(--text2)}.legacy-hmin-summary{display:flex;gap:8px;align-items:center;padding:3px 8px 8px;font:9px var(--mono);color:var(--text3)}.legacy-hmin-summary b{font-size:11px;color:var(--text2);font-weight:400}.legacy-effects{display:flex;flex-direction:column;gap:6px;padding:6px 9px}.legacy-effects>div{display:flex;justify-content:space-between;align-items:center;font:9px var(--mono);color:var(--text3)}.legacy-effects b{font-size:10px;color:var(--accent);font-weight:400}.legacy-choice-grid{display:grid;gap:4px;margin:0 8px 10px}.legacy-plate-shapes{grid-template-columns:repeat(4,1fr)}.legacy-choice-grid button,.legacy-layout-grid button,.legacy-profile-types button,.legacy-load-types button{border:1px solid var(--border2);background:var(--surface3);color:var(--text2);border-radius:5px;cursor:pointer;font:10px var(--ui);transition:all .15s}.legacy-choice-grid button{padding:6px 4px}.legacy-choice-grid button.active,.legacy-layout-grid button.active,.legacy-profile-types button.active,.legacy-load-types button.active{border-color:var(--red);background:#cc00001f;color:var(--red)}.legacy-choice-grid .choice-icon{display:block;font-size:14px}.legacy-layout-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin:0 8px 10px}.legacy-layout-grid button{min-height:40px;padding:4px}.legacy-profile-types{display:flex;gap:4px;flex-wrap:wrap;margin:0 8px 10px}.legacy-profile-types button{flex:1;min-width:36px;padding:5px 2px}.profile-picker small{float:right;color:var(--text3);font-size:10px}.legacy-load-types{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin:0 8px 8px}.legacy-load-types button{padding:6px 4px}.legacy-load-types button span{display:block}.legacy-load-types button span:first-child{font-size:12px}.legacy-radio{display:inline-flex;align-items:center;gap:4px;margin:4px 0 5px 10px;font-size:10px;color:var(--text2)}.legacy-radio input{accent-color:var(--red)}.input-panel .panel-scroll{padding:12px 14px;display:flex;flex-direction:column;gap:16px}.input-panel .input-section{background:var(--surface2);border:1px solid var(--border);border-radius:6px;padding:12px}.input-panel .input-section>h3{font:700 11px var(--head);color:var(--text3);text-transform:uppercase;letter-spacing:.8px;margin:0 0 8px}.input-panel .edit-field,.input-panel .read-field{display:flex;flex-direction:column;align-items:stretch;gap:3px;margin:0 0 6px}.input-panel .form-label{font:9px var(--mono);color:var(--text3);text-transform:uppercase;letter-spacing:.4px}.input-panel .form-input,.input-panel .form-select{box-sizing:border-box;width:100%;min-width:0;background:var(--surface3);border:1px solid var(--border2);border-radius:4px;padding:5px 8px;color:var(--text);font:11px var(--mono);outline:none}.input-panel .form-select{font:12px var(--ui);cursor:pointer;padding-right:24px}.input-panel .form-input:focus,.input-panel .form-select:focus{border-color:var(--accent)}.input-panel .readonly-value{display:block;color:var(--accent);font-weight:500;min-height:27px}.input-panel .field-control-row{display:flex;align-items:center;gap:4px;width:100%}.input-panel .field-control-row>.num-wrap,.input-panel .infinity-number{flex:1;min-width:0}.input-panel .form-check{flex-direction:row;justify-content:flex-start;align-items:center;gap:6px;padding:3px 0;cursor:pointer}.input-panel .form-check input{order:0;accent-color:var(--red)}.input-panel .form-check span{order:1;font-size:11px;color:var(--text2);text-transform:none;letter-spacing:0;font-family:var(--ui)}.input-panel .num-wrap{position:relative;display:flex;width:100%}.input-panel .num-input{padding-right:24px}.input-panel .num-btns{position:absolute;right:0;top:0;bottom:0;display:flex;flex-direction:column;width:20px}.input-panel .num-btn{flex:1;background:var(--surface3);border:none;border-left:1px solid var(--border2);color:var(--text2);cursor:pointer;font-size:11px;line-height:1;padding:0}.input-panel .num-btn:first-child{border-bottom:1px solid var(--border2);border-radius:0 4px 0 0}.input-panel .num-btn:last-child{border-radius:0 0 4px}.input-panel .num-btn:hover{background:var(--border2);color:var(--text)}.input-panel .num-btn:disabled{cursor:default;opacity:.45}.input-panel .inf-toggle{display:flex;align-items:center;gap:3px;white-space:nowrap;font:9px var(--mono);color:var(--text3)}.input-panel .inf-toggle input{accent-color:var(--red)}:root[data-theme=light] .brand-logo-box{border:1px solid #eceef1}:root[data-theme=light] .viewer-toolbar,:root[data-theme=light] .viewer-legend{box-shadow:0 2px 8px #00000014}.legacy-header{position:fixed;top:0;left:0;right:0;height:var(--header-h);z-index:100;background:#c00!important;border-bottom:1px solid #aa0000!important;color:#fff;-webkit-user-select:none;user-select:none;padding:0 16px;display:flex;align-items:center;gap:0}.legacy-header .hdr-logo{display:flex;align-items:center;gap:10px;padding-right:16px;border-right:1px solid rgba(255,255,255,.3)}.legacy-header .hdr-logo-box{background:#fff;min-width:34px;min-height:calc(.6cm + 6px);padding:3px 6px;display:flex;align-items:center;justify-content:center;border-radius:2px}.legacy-header .hdr-logo-img{height:.6cm;width:auto;display:block}.legacy-header .hdr-appname{font-family:var(--head);font-size:16px;font-weight:700;color:#fff;letter-spacing:.3px;white-space:nowrap}.legacy-header .hdr-appname em{color:#fff;font-style:normal;font-weight:400}.legacy-header .hdr-appname>span{font-weight:400}.legacy-header .hdr-divider{width:1px;background:#ffffff4d;height:28px;margin:0 14px;flex:none}.legacy-header .hdr-project{flex:1;display:flex;align-items:center;gap:8px;min-width:0}.legacy-header .hdr-project-label{font-size:11px;color:#ffffffb3;font-family:var(--mono);letter-spacing:.5px;text-transform:uppercase;flex:none}.legacy-header .hdr-project-name{box-sizing:border-box;background:#0003;border:1px solid rgba(255,255,255,.3);border-radius:4px;padding:4px 10px;font-size:12px;color:#fff;font-family:var(--ui);outline:none;width:200px;min-width:200px;max-width:200px;transition:border-color .2s}.legacy-header .hdr-project-name:focus{border-color:var(--accent)}.legacy-header .hdr-project-name::placeholder{color:#ffffff8c}.legacy-header .hdr-std-badge{background:#0003;border:1px solid rgba(255,255,255,.25);border-radius:4px;padding:4px 10px;font-family:var(--mono);font-size:10px;color:#fff;letter-spacing:.5px;white-space:nowrap}.legacy-header .region-badge{color:#ffffffbf}.legacy-header .hdr-right{display:flex;align-items:center;gap:8px;flex:none}.legacy-header .btn-icon{background:#0003;border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:4px;padding:6px 8px;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;width:auto;height:auto}.legacy-header .btn-icon:hover{border-color:#ffffff80;color:#fff;background:#00000052}.legacy-header .btn-icon svg{width:15px;height:15px}.legacy-header .btn-icon:disabled{opacity:.45;cursor:not-allowed}.status-badge{display:inline-flex;align-items:center;gap:5px;border:1px solid;border-radius:999px;padding:4px 8px;font:9px var(--mono);white-space:nowrap}.legacy-header .status-badge.sb-waiting{color:#ffffffc7;border-color:#ffffff47;background:#00000024}.legacy-header .status-badge.sb-warn{color:#fff3b0;border-color:#ffe066;background:#5b410052}.legacy-header .status-badge.sb-ok{color:#b9f6ca;border-color:#81c784;background:#00461e4d}.legacy-header .status-badge.sb-err{color:#ffd0d0;border-color:#ff8a8a;background:#64000052}:root,:root[data-theme=light]{--red:#CC0000;--red-dark:#990000;--red-light:#ff2222;--bg:#ffffff;--surface:#ffffff;--surface2:#f5f6fa;--surface3:#eaecf4;--border:#d0d4e8;--border2:#b8bdd4;--text:#1a1d2e;--text2:#3a3f58;--text3:#7a80a0;--accent:#3d8ef0;--green:#22c55e;--yellow:#f59e0b;--mono:"Aptos","Consolas",monospace;--ui:"Aptos","Segoe UI",sans-serif;--head:"Aptos","Segoe UI",sans-serif;--panel-left:320px;--panel-right:340px;--header-h:52px;--footer-h:200px;--tab-w:44px}:root[data-theme=dark]{--red:#CC0000;--red-dark:#990000;--red-light:#ff2222;--bg:#0f1117;--surface:#181b23;--surface2:#1e2130;--surface3:#252a38;--border:#2a2f42;--border2:#363d54;--text:#e8eaf0;--text2:#9aa0b8;--text3:#5a6280;--accent:#3d8ef0;--green:#22c55e;--yellow:#f59e0b;--mono:"Aptos","Consolas",monospace;--ui:"Aptos","Segoe UI",sans-serif;--head:"Aptos","Segoe UI",sans-serif;--panel-left:320px;--panel-right:340px;--header-h:52px;--footer-h:200px;--tab-w:44px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%;font-family:var(--ui)}body{background:var(--bg);color:var(--text);overflow:hidden;font-size:13px}.workspace{height:100%;width:100%;background:var(--bg);color:var(--text)}.workspace-main{position:fixed;top:var(--header-h);left:0;right:0;bottom:var(--footer-h);display:grid;grid-template-columns:var(--tab-w) var(--panel-left) 6px minmax(0,1fr) 6px var(--panel-right);overflow:hidden;min-width:0}.resize-handle-v{position:relative;width:6px;cursor:col-resize;background:transparent;z-index:5;touch-action:none}.resize-handle-v:after{content:"";position:absolute;top:0;bottom:0;left:2px;width:2px;background:var(--border2);border-radius:1px;transition:background-color .15s}.resize-handle-v:hover:after,.resize-handle-v:focus-visible:after,.resize-handle-v:active:after{background:var(--accent)}.resize-handle-v:focus-visible{outline:none}.resize-handle-h{position:absolute;top:-3px;left:0;right:0;height:6px;cursor:row-resize;z-index:95;touch-action:none}.resize-handle-h:after{content:"";position:absolute;left:0;right:0;top:2px;height:2px;background:var(--border2);border-radius:1px;transition:background-color .15s}.resize-handle-h:hover:after,.resize-handle-h:focus-visible:after,.resize-handle-h:active:after{background:var(--accent)}.resize-handle-h:focus-visible{outline:none}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:var(--surface)}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px}#startup-tip{position:fixed;bottom:calc(var(--footer-h) + 8px);left:50%;transform:translate(-50%);background:var(--surface2);border:1px solid var(--border2);border-radius:6px;padding:8px 14px;font-family:var(--mono);font-size:10px;color:var(--text3);z-index:50;pointer-events:none;display:flex;gap:12px;align-items:center;animation:fadeOut 0s 5s forwards}@keyframes fadeOut{to{opacity:0;pointer-events:none}}.tab-rail .tab-btn{position:relative;width:36px;height:36px;padding:0;border-radius:6px;border:none;background:transparent;color:var(--text3);display:flex;flex-direction:row;align-items:center;justify-content:center;transition:all .15s}.tab-rail .tab-btn:hover{background:var(--surface3);color:var(--text2);border-color:transparent}.tab-rail .tab-btn svg{width:16px;height:16px}.tab-rail .tab-btn .tab-number{display:none}.tab-rail .tab-btn.active{background:var(--red);color:#fff}.tab-rail .tab-btn.active:after{content:"";position:absolute;right:-1px;top:50%;transform:translateY(-50%);width:2px;height:20px;background:var(--red);border-radius:1px 0 0 1px}.tab-rail .tab-btn:nth-of-type(3),.tab-rail .tab-btn:nth-of-type(6){margin-bottom:11px}.tab-rail .tab-btn:nth-of-type(3):before,.tab-rail .tab-btn:nth-of-type(6):before{content:"";position:absolute;width:20px;height:1px;background:var(--border);left:8px;bottom:-7px}.legacy-edge-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.legacy-edge-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;text-align:center;padding:7px 9px 4px}.legacy-edge-summary>div{display:grid;gap:2px}.legacy-edge-summary span{font:8px var(--mono);color:var(--text3)}.legacy-edge-summary b{font:10px var(--mono);font-weight:400;color:var(--text2)}.legacy-edge-summary b.infinite{color:var(--accent)}.legacy-hmin-summary{margin:8px 9px 2px;display:flex;gap:8px;align-items:center;font-family:var(--mono)}.legacy-hmin-summary span{font-size:9px;color:var(--text3)}.legacy-hmin-summary b{font-size:11px;font-weight:400;color:var(--text2)}.legacy-effects{display:flex;flex-direction:column;gap:6px;padding:7px 9px 2px}.legacy-effects>div{display:flex;justify-content:space-between;align-items:center}.legacy-effects span{font:9px var(--mono);color:var(--text3)}.legacy-effects b{font:10px var(--mono);font-weight:400;color:var(--accent)}.legacy-choice-grid{display:grid;gap:4px;margin:0 9px 8px}.legacy-plate-shapes{grid-template-columns:repeat(4,minmax(0,1fr))}.legacy-standoff-grid{grid-template-columns:1fr 1fr}.legacy-choice-grid button{padding:6px 4px;border-radius:5px;border:1px solid var(--border2);background:var(--surface3);color:var(--text2);font-family:var(--ui);font-size:10px;transition:all .15s}.legacy-choice-grid button.active{border-color:var(--red);background:#cc00001f;color:var(--red)}.legacy-choice-grid .choice-icon{display:block;font-size:14px;line-height:1.2;margin-bottom:1px}#footer-panel{position:fixed;bottom:0;left:0;right:0;height:var(--footer-h);background:var(--surface);border-top:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;z-index:90}#footer-header{padding:8px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0;min-height:0;height:auto}.fh-left{display:flex;align-items:center;gap:12px;min-width:0}.fh-title{font-family:var(--head);font-size:12px;font-weight:700;color:var(--text3);text-transform:uppercase;letter-spacing:1px;white-space:nowrap}.lc-count{background:var(--red);color:#fff;font-family:var(--mono);font-size:9px;font-weight:700;padding:1px 6px;border-radius:10px;flex:none}.coord-note{display:flex;align-items:center;gap:16px;padding:0 4px}.cn-item{font-family:var(--mono);font-size:9px;color:var(--text3);display:flex;align-items:center;gap:3px;white-space:nowrap}.cn-val{color:var(--text2)}.footer-actions{display:flex;gap:6px;align-items:center;flex:none}.btn-add-lc{background:var(--surface3);border:1px dashed var(--border2);color:var(--text2);border-radius:4px;padding:4px 12px;font-family:var(--mono);font-size:10px;letter-spacing:.5px;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:5px;white-space:nowrap}.btn-add-lc:hover{border-color:var(--accent);color:var(--accent)}.footer-import{height:28px!important;padding:6px 8px!important;display:flex!important;align-items:center;justify-content:center}.footer-import svg{width:13px;height:13px}.load-extrema{display:flex;gap:16px;align-items:center;padding:0 8px;font-family:var(--mono);font-size:9px;color:var(--text3);white-space:nowrap;flex:none}.load-extrema b{font-weight:400;color:var(--text2)}#load-table-wrap{flex:1;overflow-x:auto;overflow-y:auto;min-height:0}.load-table{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:11px}.load-table th{position:sticky;top:0;background:var(--surface2);border-bottom:1px solid var(--border);border-right:none;padding:5px 10px;text-align:center;font-size:9px;font-weight:600;color:var(--text3);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.load-table th:first-child{text-align:left;padding-left:16px}.load-table td{padding:5px 8px;text-align:center;border-bottom:1px solid var(--border);border-right:none;color:var(--text);transition:background .1s}.load-table td:first-child{text-align:left;padding-left:16px}.load-table tbody tr:hover td{background:var(--surface2)}.load-table tr.governing-row td{background:#cc00001a}.lc-index{font-family:var(--mono);font-size:10px;color:var(--text3)}.load-table .lc-name-input{background:transparent;border:none;color:var(--accent);font-family:var(--mono);font-size:10px;width:58px;outline:none;padding:0;text-align:left}.load-table .lc-number-input{background:transparent;border:none;font-family:var(--mono);font-size:11px;width:66px;text-align:center;outline:none;padding:0}.load-table .pct-cell{font-family:var(--mono);font-size:9px;font-weight:600;text-align:center;white-space:nowrap}.load-table .pct-cell.ok{color:var(--green)}.load-table .pct-cell.warn{color:var(--yellow)}.load-table .pct-cell.bad{color:var(--red)}.load-table .pct-cell.na{color:var(--text3)}.governing-cell{font-family:var(--mono);font-size:9px;color:var(--text3);text-align:center;white-space:nowrap}.governing-row .governing-cell{color:var(--red);font-weight:700}.load-actions{padding:0 4px!important}.load-actions button{background:transparent;border:none;color:var(--text3);cursor:pointer;padding:3px;border-radius:3px}.load-actions button:hover:first-child{color:var(--accent)}.load-actions button:hover:last-child{color:var(--red)}.th-unit{font-family:var(--mono);font-size:8px;color:var(--text3);font-weight:400}.empty-loads{display:flex;align-items:center;justify-content:center;height:60px;color:var(--text3);font-family:var(--mono);font-size:11px;letter-spacing:.5px;padding:0;text-align:center}.viewer-panel#center-panel{position:relative;min-width:0;background:var(--bg);overflow:hidden;display:flex;flex-direction:column}#viewer-toolbar{position:absolute;top:10px;left:50%;transform:translate(-50%);display:flex;gap:4px;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:4px;z-index:10}#viewer-toolbar .vt-btn{background:transparent;border:1px solid transparent;color:var(--text2);border-radius:4px;padding:4px 10px;cursor:pointer;font-family:var(--mono);font-size:10px;letter-spacing:.5px;transition:all .15s}#viewer-toolbar .vt-btn:hover{background:var(--surface3);color:var(--text)}#viewer-toolbar .vt-btn.active{background:var(--surface3);border-color:var(--border2);color:var(--text)}#viewer-canvas{flex:1;display:flex;align-items:center;justify-content:center;position:relative;min-height:0}#viewer-canvas .three-host{width:100%;height:100%}#viewer-canvas .three-host canvas{display:block;width:100%;height:100%}#axes-indicator{position:absolute;bottom:16px;left:16px;display:flex;gap:12px;background:#181b23cc;border:1px solid var(--border);border-radius:6px;padding:8px 12px;font-family:var(--mono);font-size:10px;color:#fff;z-index:10}#axes-indicator .axis{display:flex;align-items:center;gap:4px}#axes-indicator .axis-line{width:20px;height:2px;border-radius:1px;display:inline-block}#axes-indicator .axis-x{background:#ef4444}#axes-indicator .axis-y{background:#22c55e}#axes-indicator .axis-z{background:#3d8ef0}#load-legend{position:absolute;bottom:16px;right:16px;background:#181b23cc;border:1px solid var(--border);border-radius:6px;padding:8px 12px;display:flex;flex-direction:column;gap:4px;z-index:10}#load-legend .ll-item{display:flex;align-items:center;gap:6px;font-family:var(--mono);font-size:10px;color:#fff}#load-legend .ll-dot{width:8px;height:8px;border-radius:50%;display:inline-block}#load-legend .ll-tension{background:#ef4444}#load-legend .ll-compression{background:#3d8ef0}#load-legend .ll-shear{background:#f59e0b}.input-panel .legacy-form-row{display:flex;gap:8px;align-items:flex-start;margin-top:4px}.input-panel .legacy-form-row>.form-group{flex:1;min-width:0}.input-panel .legacy-form-row>.form-group:only-child{max-width:calc(50% - 4px)}.input-panel .legacy-check-stack{margin-top:6px;display:flex;flex-direction:column;gap:4px}.input-panel .section-strength-class>.legacy-form-row:first-of-type{margin-top:6px}.input-panel .section-temperature-conditions>.legacy-form-row{margin-top:0}.input-panel .section-material>.legacy-form-row{margin-top:4px}.input-panel .section-anchor-family>.legacy-form-row{margin-top:6px}.input-panel .section-profile-type>.legacy-form-row{margin-top:6px}.input-panel .section-eccentricity>.legacy-form-row+.legacy-form-row{margin-top:4px}.input-panel .section-installation-conditions>.legacy-form-row{margin-top:0}
