/* Extend the recovered Formaf studio tokens; controls remain in its split workspace. */
/* Campus stories use the existing mint/ink palette and the app's native dialog. */
html:has(#modal.cx-modal[open]),body:has(#modal.cx-modal[open]) {overflow:hidden}
#modal.cx-modal[open] {display:flex;flex-direction:column;width:min(1000px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:hidden;color:#243f33;background:#f5f6ef}
#modal.cx-modal>.modal-head {flex:none;background:#f5f6ef;color:#243f33;border-bottom:1px solid #d6dfd3;padding:18px 24px}
#modal.cx-modal>.modal-head h2 {color:inherit;font-size:17px}
#modal.cx-modal>.modal-head button {color:#243f33;background:#e3eadd;min-width:44px;min-height:44px}
#modal.cx-modal>.modal-body {padding:0;min-height:0;overflow:auto;overscroll-behavior:contain;max-height:none}
.cx-dialogue {display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.6fr);min-width:0}
.cx-guide {background:#e3eadd;padding:24px;display:flex;flex-direction:column;align-items:stretch}
.cx-portrait {position:relative;height:240px;overflow:hidden;border-radius:12px;background:#eaf1e6}
.cx-portrait>svg {position:absolute;width:70%;height:90%;bottom:0;left:15%}
.cx-portrait>svg[hidden] {display:none}
#cx-person-scene {position:absolute;inset:0}
#cx-person-scene canvas {display:block;width:100%;height:100%}
.cx-eyebrow {font-size:10px;font-weight:700;letter-spacing:.14em;color:#52695a}
.cx-guide-identity {padding-top:20px}
.cx-guide-identity h3 {font-size:28px;line-height:1.15;color:#233f32;margin:8px 0}
.cx-guide-identity p {font-size:14px;color:#3c5849;line-height:1.6;margin:8px 0}
.cx-guide-identity small,.cx-voice small {font-size:11px;color:#5a7061;line-height:1.5;display:block}
.cx-voice {padding-top:20px;margin-top:auto}
.cx-voice .cx-button {flex:none;white-space:nowrap}
.cx-voice small {margin-top:8px}
.cx-conversation-side {padding:28px 32px;min-width:0;display:flex;flex-direction:column}
.cx-conversation-top {display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;letter-spacing:.07em;color:#627465}
#modal.cx-modal .cx-speech {font-size:22px;line-height:1.55;color:#213c30;margin:24px 0 28px;white-space:pre-line;overflow-wrap:anywhere}
.cx-speech:focus {outline:none}
.cx-reply {position:relative;background:#fff;border:1px solid #d8e3d3;border-radius:4px 18px 18px 18px;padding:19px 22px;margin:22px 0}
.cx-speaker {display:flex;align-items:center;gap:8px;font-size:12px;font-weight:650;color:#50705b}
.cx-speaker::before {content:'';width:7px;height:7px;border-radius:50%;background:#639775;flex:none}
#modal.cx-modal .cx-reply .cx-speech {font-size:20px;line-height:1.6;margin:12px 0 0}
#modal.cx-modal .cx-prompt {font-size:12px;font-weight:700;color:#596e5e;margin:0 0 10px}
.cx-choices {display:grid;gap:8px}
.cx-button {font:inherit;font-size:14px;line-height:1.45;padding:11px 15px;min-height:44px;min-width:44px;border:1px solid #c6d4c5;border-radius:7px;background:transparent;color:#244235;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;overflow-wrap:anywhere;white-space:normal}
.cx-button:hover {background:#e7eddf;border-color:#7f9c84}
.cx-button.primary {background:#254c3d;border-color:#254c3d;color:#f3f8ed}
.cx-button.primary:hover {background:#35634e}
.cx-button:disabled {opacity:.6;cursor:default}
.cx-button:focus-visible,.cx-guide-card:focus-visible {outline:3px solid #507b58;outline-offset:3px}
.cx-choices .cx-button {text-align:left;justify-content:space-between;background:#fff}
.cx-choices .cx-button::after {content:'↗';color:#6c886d;flex:none}
.cx-choices .cx-button:hover {background:#e8f1df;transform:translateX(2px)}
.cx-text {border-color:transparent;text-decoration:underline;text-underline-offset:4px;font-size:12px}
.cx-next-action {margin-top:20px}
.cx-conversation-side footer {display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid #d5dfd0;margin-top:28px;padding-top:18px}
.cx-directory {padding:28px;min-width:0}
.cx-directory header {max-width:620px}
.cx-directory h3 {font-size:32px;line-height:1.2;color:#254335;margin:10px 0}
#modal.cx-modal .cx-directory p {color:#576e5e;font-size:14px;line-height:1.65}
.cx-directory nav {display:flex;flex-wrap:wrap;gap:8px;margin-top:22px;border-bottom:1px solid #d5dfd0;padding-bottom:14px}
.cx-directory nav .active {background:#254c3d;color:#f6faef}
.cx-progress {font-size:12px!important}
.cx-guide-list {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cx-guide-card {display:flex;gap:16px;align-items:center;text-align:left;border:1px solid #d6dfd0;background:#fff;border-radius:10px;padding:14px;min-width:0;cursor:pointer;color:#254335}
.cx-guide-card:hover {background:#eaf0e2;border-color:#8dab8d}
.cx-avatar {width:68px;height:80px;flex:none;border-radius:8px;background:#e4eadc;overflow:hidden}
.cx-avatar svg {width:100%;height:100%}
.cx-guide-card strong {font-size:16px;display:block;line-height:1.4}
.cx-guide-card small {display:block;color:#63755f;font-size:12px;line-height:1.5;margin:4px 0}
.cx-guide-card em {display:block;color:#32604a;font-size:12px;font-style:normal;margin-top:6px}
.cx-search {display:grid;gap:7px;font-size:13px;font-weight:600;color:#254335;margin-top:20px}
.cx-search input {font:inherit;min-height:46px;border:1px solid #aabfa9;border-radius:7px;padding:10px 13px;color:#254335;background:#fff;width:100%}
.cx-object-list {display:grid;gap:0}
.cx-object-list article {display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid #d6dfd0}
.cx-object-list article[hidden] {display:none}
.cx-object-list h4 {font-size:16px;line-height:1.4;margin:3px 0;color:#254335}
.cx-object-list small {font-size:11px;color:#687b65}
.cx-object-list article>div:last-child {display:flex;gap:6px;flex:none}
.cx-model-dimensions,.cx-discovery {margin:16px 0;padding:12px 0;border-top:1px solid #bfd2bc}
.cx-model-dimensions summary,.cx-discovery summary {cursor:pointer;min-height:32px;font-size:13px;line-height:1.6;font-weight:600}
.cx-discovery p {font-size:14px;line-height:1.65}
html:has(#modal[open] .c17-inspection),body:has(#modal[open] .c17-inspection) {overflow:hidden}
#modal[open]:has(.c17-inspection) {display:flex;flex-direction:column;max-height:calc(100dvh - 24px);overflow:hidden}
#modal:has(.c17-inspection)>.modal-head {flex:none}
#modal:has(.c17-inspection)>.modal-body {min-height:0;max-height:none;overflow:auto;overscroll-behavior:contain}
#modal .c17-inspection .c17-part-list {max-height:none;overflow:visible}
#modal .c17-inspection summary {min-height:44px;display:flex;align-items:center;gap:8px}
#modal .c17-inspection summary::before {content:'+';font:18px monospace}
#modal .c17-inspection details[open]>summary::before {content:'−'}
.c18-campus:not(.is-walking) .g-hero-copy h1 {font-size:clamp(32px,3.7vw,58px);line-height:1.06;letter-spacing:-.045em}
.c18-campus:not(.is-walking) .g-hero-copy>p {font-size:15px;line-height:1.6;max-width:310px}
.c18-campus .c18-copy-note {font-size:11px;line-height:1.7;max-width:280px}
.c18-campus .c18-explorer-tools {display:flex;flex-wrap:wrap;gap:6px;max-width:calc(100% - 108px)}
.c18-campus .c18-explorer-tools button {min-height:40px}
body:has(.c18-campus) #c16-fixed .c16-rail,body:has(.c18-campus) #c16-fixed .c16-dock-center,body:has(.c18-campus) #c16-fixed .c16-dock-left {display:none}
@media(max-width:767px){
 #modal.cx-modal[open] {width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}
 #modal.cx-modal>.modal-head {padding:10px 14px}
 .cx-dialogue {grid-template-columns:minmax(0,1fr)}
 .cx-guide {display:grid;grid-template-columns:92px minmax(0,1fr);gap:14px;padding:18px}
 .cx-portrait {height:118px}
 .cx-guide-identity {padding:0;align-self:center}
 .cx-guide-identity h3 {font-size:23px}
 .cx-guide-identity p {margin:5px 0;font-size:12px}
 .cx-guide-identity .cx-eyebrow {font-size:9px}
 .cx-voice {padding:0;grid-column:1/-1;display:flex;align-items:center;gap:12px}
 .cx-voice small {margin:0;max-width:240px}
 .cx-conversation-side {padding:18px}
 #modal.cx-modal .cx-speech {font-size:18px;line-height:1.55;margin:18px 0}
 .cx-reply {padding:15px 16px;margin:16px 0}
 #modal.cx-modal .cx-reply .cx-speech {font-size:17px;line-height:1.6}
 .cx-directory {padding:20px 16px}
 .cx-directory h3 {font-size:26px}
 .cx-guide-list {grid-template-columns:minmax(0,1fr)}
 .cx-object-list article {display:block}
 .cx-object-list article>div:last-child {margin-top:10px}
 .c18-campus .c18-explorer-tools {max-width:calc(100% - 28px)}
 .c18-campus .c18-explorer-tools button {font-size:11px;padding:8px 9px}
}
@media(prefers-reduced-motion:reduce){.cx-choices .cx-button:hover {transform:none}}
.metal-range {display:block;min-width:0;margin-top:8px}
.metal-range input[type=range] {display:block;width:100%;height:28px;min-height:28px;padding:0;border:0;background:transparent;accent-color:var(--u-mint,#93ebba);cursor:ew-resize;touch-action:pan-y}
.metal-range-limits {display:flex;justify-content:space-between;font-size:10px;color:var(--u-muted,#9eb3b1);font-variant-numeric:tabular-nums}
.metal-dimensions {border-top:1px solid var(--u-border,#334a50);padding:15px 18px 10px;min-width:0}
.metal-dimensions[hidden] {display:none}
.metal-dimensions header {display:flex;flex-wrap:wrap;gap:5px 18px;align-items:baseline}
.metal-dimensions header strong {font-size:13px}
.metal-dimensions header span,.metal-dimension-status {font-size:11px;color:var(--u-muted,#9eb3b1);line-height:1.5}
.metal-dimension-svg {display:block;width:100%;max-width:550px;max-height:250px;margin:auto;overflow:visible}
.metal-dimension-volume {fill:rgba(127,166,139,.07);stroke:var(--u-border,#334a50);stroke-width:1.5;stroke-linejoin:round}
.metal-dimension-line {stroke:var(--u-mint,#93ebba);stroke-width:1.5;stroke-dasharray:4 4}
.metal-dimension-handle {cursor:grab;touch-action:none;outline:none}
.metal-dimension-handle:active {cursor:grabbing}
.metal-dimension-handle circle:not(.metal-dimension-hit) {fill:var(--u-mint,#93ebba);stroke:#14271d;stroke-width:2}
.metal-dimension-handle path {stroke:#14271d;stroke-width:1.5;pointer-events:none}
.metal-dimension-hit {fill:transparent;stroke:transparent;stroke-width:2}
.metal-dimension-handle:focus-visible .metal-dimension-hit {stroke:var(--u-mint,#93ebba);fill:rgba(199,231,160,.1)}
.metal-dimension-handle[aria-disabled=true] {cursor:default;opacity:.5}
.metal-dimension-label {font-size:10px;fill:var(--u-muted,#9eb3b1)}
.metal-dimension-value {font-size:12px;font-weight:600;fill:var(--u-ink,#eaf3ef)}
.metal-dimension-label,.metal-dimension-value {pointer-events:none}
.metal-calculator-layout {display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,1fr);gap:24px;align-items:start}
.metal-calculation-preview {position:sticky;top:12px;min-width:0}
.metal-calculation-preview svg {display:block;width:100%;max-height:240px;fill:var(--u-ink,#eaf3ef);font-size:13px}
.metal-calculation-preview dl {margin:0}
.metal-calculation-preview dl>div {display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--u-border,#334a50);font-size:13px}
.metal-calculation-preview dd {margin:0;font-weight:600;white-space:nowrap}
.metal-calculation-preview p {font-size:11px;line-height:1.6;color:var(--u-muted,#9eb3b1)}
.u13-field:has(>.metal-range)>input[type=number] {font-variant-numeric:tabular-nums}
.u13 input:focus-visible,.u13 select:focus-visible,.u13 button:focus-visible,.metal-range input:focus-visible {outline:2px solid var(--u-mint,#93ebba);outline-offset:3px}
.u13-scene-info>div {display:flex;gap:4px;flex-wrap:wrap}
@media(max-width:767px) {
 .metal-calculator-layout {grid-template-columns:minmax(0,1fr)}
 .metal-calculation-preview {position:static;grid-row:1}
 .metal-dimensions {padding:12px 8px}
 .metal-dimensions header {padding:0 8px}
 .metal-range input[type=range] {height:44px;min-height:44px}
 .metal-dimension-svg {min-height:190px}
 .u13-scene-info {align-items:flex-start;gap:8px}
 .u13-scene-info>span {min-width:0;flex:1}
 .u13-scene-info button {min-height:44px}
}

.u13-field>label {display:block;font-size:11px;color:#b6c9c2;line-height:1.4;margin-bottom:6px}

/* Keep the model visible while dimension controls stay beside their numeric fields. */
.u13-params .metal-dimensions {padding:0 0 9px;border-top:0;border-bottom:1px solid var(--u-border,#334a50);margin:0 0 10px}
.u13-params .metal-dimensions header {display:block}
.u13-params .metal-dimensions header strong {font-size:11px}
.u13-params .metal-dimensions header span {display:block;font-size:10px}
.u13-params .metal-dimension-svg {height:155px;min-height:0;max-height:155px}
.u13-params .metal-dimension-status {font-size:10px}
@media(min-width:900px){.u13-scene{height:min(360px,45dvh);min-height:260px}.u13-work{min-height:0}}
@media(max-width:767px){.u13-params .metal-dimension-svg{height:170px;max-height:170px}.u13-params .metal-dimensions header{padding:0}}

/* The technology editor uses the same project shell: one selected detail, explicit source facts. */
.u13-manufacturing {min-width:0}
.u13-m-tabs {display:flex;gap:6px;overflow-x:auto;padding:4px 1px 14px;scrollbar-width:thin}
.u13-m-tabs button {flex:none;min-height:44px;white-space:nowrap}
.u13-m-tabs [aria-pressed=true] {border-color:var(--u-mint,#93ebba);color:var(--u-mint,#93ebba);background:rgba(147,235,186,.08)}
.u13-manufacturing fieldset {padding:0;margin:0;border:0;min-width:0}
.u13-manufacturing input,.u13-manufacturing textarea,.u13-manufacturing select {max-width:100%;width:100%;box-sizing:border-box}
.u13-manufacturing textarea {resize:vertical;min-height:68px}
.u13-manufacturing select {text-overflow:ellipsis}
.u13-manufacturing [aria-invalid=true] {border-color:#ffa99a;outline:1px solid #ffa99a}
.u13-m-fields {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px}
.u13-m-fields .u13-field {margin:0;min-width:0}
.u13-m-fields .u13-field>small {font-size:11px;line-height:1.5;color:var(--u-muted,#9eb3b1)}
.u13-m-wide {grid-column:1/-1}
.u13-m-nominal {display:flex;flex-direction:column;gap:8px;border-left:3px solid var(--u-mint,#93ebba);background:rgba(147,235,186,.05);padding:16px;margin:16px 0;overflow-wrap:anywhere}
.u13-m-nominal small {color:var(--u-muted,#9eb3b1)}
.u13-m-master {display:grid;grid-template-columns:minmax(200px,.7fr) minmax(0,2fr);gap:24px;align-items:start}
.u13-m-list {min-width:0;border-right:1px solid var(--u-border,#334a50);padding-right:18px}
.u13-m-list .u13-card-head {gap:10px;flex-wrap:wrap}
.u13-m-list ol {list-style:none;padding:0;margin:12px 0 0;max-height:460px;overflow:auto}
.u13-m-list li {padding:0;margin:0}
.u13-m-list li button {display:flex;gap:10px;align-items:center;text-align:left;width:100%;min-height:48px;padding:11px 8px;background:transparent;border:1px solid transparent;color:inherit;cursor:pointer}
.u13-m-list li button[aria-pressed=true] {background:rgba(147,235,186,.06);border-color:var(--u-mint,#93ebba);border-radius:7px}
.u13-m-list li span {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.u13-m-list li small {color:var(--u-muted,#9eb3b1)}
.u13-m-detail {min-width:0}
.u13-m-detail .u13-card-head {gap:10px;flex-wrap:wrap}
.u13-m-detail .u13-card-head h3 {margin:0}
.u13-m-detail .u13-card-head .u13-btn {min-height:44px;min-width:44px}
.u13-m-footer {display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,auto);gap:24px;align-items:start;padding:18px 20px;border:1px solid var(--u-border,#334a50);border-radius:12px;background:var(--u-card,#13282b)}
.u13-m-summary p {margin:6px 0;font-size:13px}
.u13-m-summary span {font-size:11px;color:var(--u-muted,#9eb3b1);line-height:1.6}
#u13-mfg-status {font-size:12px;margin:0 0 10px;overflow-wrap:anywhere}
#u13-mfg-status.warn {color:#ffa99a}
.u13-m-readiness li {margin:8px 0;overflow-wrap:anywhere}
.u13-manufacturing .u13-soft-note {margin-bottom:16px;line-height:1.6}
.u13-next[hidden] {display:none}
@media(max-width:767px){
 .u13-m-fields,.u13-m-master,.u13-m-footer {grid-template-columns:minmax(0,1fr)}
 .u13-m-list {border-right:0;border-bottom:1px solid var(--u-border,#334a50);padding:0 0 14px}
 .u13-m-list ol {max-height:200px}
 .u13-m-footer {padding:16px;gap:16px}
 .u13-manufacturing .u13-step-title {gap:12px;flex-wrap:wrap}
 .u13-manufacturing .u13-card {padding:16px}
 .u13-manufacturing .u13-actions {flex-wrap:wrap}
}
.modal-body .v7-doc {color:#243a30;background:#fff}
.modal-body .v7-doc p,.modal-body .v7-doc td {color:#243a30}
.modal-body .v7-doc th {color:#365947;background:#ecf3ee}
.modal-body .v7-doc .v7-watermark,.modal-body .v7-doc footer,.modal-body .v7-doc figcaption {color:#547266}

/* Authoring dialogs have one scroll owner; closing restores the document naturally. */
html:has(#modal[open] #u13-calc-form),body:has(#modal[open] #u13-calc-form),
html:has(#modal[open] .u13-picker),body:has(#modal[open] .u13-picker) {overflow:hidden;overscroll-behavior:none}
#modal[open]:has(#u13-calc-form),#modal[open]:has(.u13-picker) {display:flex;flex-direction:column;max-height:calc(100dvh - 32px);overflow:hidden}
#modal:has(#u13-calc-form)>.modal-head,#modal:has(.u13-picker)>.modal-head {flex:none}
#modal:has(#u13-calc-form)>.modal-body,#modal:has(.u13-picker)>.modal-body {flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable}
#u13-calc-form {min-width:0;margin:0}
#u13-calc-fields {min-width:0}
#u13-calc-form .u13-field[hidden] {display:none!important}
.metal-calculation-preview {overflow:hidden}
.metal-calculation-preview svg.metal-mass-svg {max-height:none;height:auto;overflow:visible;font-size:14px}
.metal-mass-section {fill:#719b89;stroke:#b5d5c6;stroke-width:1}
.metal-mass-section .metal-mass-hole {fill:#101f24;stroke:#b5d5c6}
.metal-mass-svg .metal-dimension-handle {touch-action:none}
.metal-dimension-values {display:grid;gap:5px;margin:4px 0 8px}
.metal-dimension-values>div {display:grid;grid-template-columns:23px minmax(0,1fr) auto;align-items:center;gap:7px;min-height:32px;font-size:13px;line-height:1.4}
.metal-dimension-values b {display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--u-mint,#93ebba);border-radius:50%;color:var(--u-mint,#93ebba)}
.metal-dimension-values span {color:#bed1ca;overflow-wrap:anywhere}
.metal-dimension-values strong {font-variant-numeric:tabular-nums;font-size:14px;color:#eaf3ef}
.metal-handle-number {fill:#14271d;font-size:13px;font-weight:700;pointer-events:none}
.u13-params .metal-dimension-svg {height:216px;min-height:216px;max-height:216px;max-width:none;overflow:hidden}
.u13-params .metal-dimensions header strong {font-size:14px}
.u13-params .metal-dimensions header span,.u13-params .metal-dimension-status {font-size:12px;line-height:1.5}
.u13-field>label,.u13-field>span,.u13-params .u13-field>span {font-size:13px;line-height:1.5}
.u13-params input[aria-invalid=true],.u13-params select[aria-invalid=true] {border-color:#ffa99a;outline:1px solid #ffa99a}
.u13-field-error {display:block;color:#ffb8aa;font-size:12px;line-height:1.5;margin-top:5px}
.u13-field-error:empty {display:none}
/* All model parameters remain visible; explanations share ProjectCore's presentation owner. */
.u13-parameter-group {margin:0 0 22px;min-width:0}
.u13-parameter-group>header {margin:0 0 12px;padding:0;border:0}
.u13-params .u13-parameter-group>header h3 {margin:0 0 5px;font-size:15px;line-height:1.4;color:var(--u-text,#e5efeb)}
.u13-params .u13-parameter-group>header p,.u13-more-params>header p {margin:0;color:var(--u-muted,#9eb3b1);font-size:12px;line-height:1.55}
.u13-params .u13-param-grid {gap:17px 14px}
.u13-params .u13-field {min-width:0;margin:0}
.u13-params .u13-field-help {display:block;margin-top:7px;color:#b2c8c1;font-size:12px;line-height:1.55;overflow-wrap:break-word}
.u13-params .u13-field-unavailable {display:block;margin-top:7px;color:#efd0a3;font-size:11px;line-height:1.4}
.u13-params [data-field-applicable="false"] select {cursor:not-allowed;opacity:.65}
.u13-params>header .u13-field {margin:14px 0 18px}
.u13-more-params {padding-top:18px;border-top:1px solid var(--u-border,#334a50)}
.u13-more-params>header {margin:0 0 19px}
.u13-params .u13-more-params>header h2 {font-size:17px;line-height:1.4;margin:0 0 6px}
.u13-more-params .u13-parameter-group+.u13-parameter-group {padding-top:19px;border-top:1px solid var(--u-border,#334a50)}
.u13-params .u13-check {display:flex;align-items:flex-start;gap:9px;margin:0;min-height:32px;color:var(--u-text,#e5efeb);font-size:13px;line-height:1.5}
.u13-params .u13-check input {flex:none;margin-top:2px;width:20px;height:20px;accent-color:var(--u-mint,#9fe8c4)}
.u13-select-value {display:flex;align-items:center;gap:9px;min-width:0}
.u13-select-value select {flex:1;min-width:0}
.u13-params .u13-selected-option {display:block;min-width:0;margin-top:6px;padding:7px 9px;border-left:2px solid var(--u-mint,#93ebba);background:#10272c;white-space:normal;overflow:visible;overflow-wrap:anywhere;text-overflow:clip;line-height:1.5}
.u13-selected-option>span {display:block;color:var(--u-muted,#9eb3b1);font-size:10px}
.u13-selected-option>strong {display:block;color:#e1efe8;font-size:12px;font-weight:600;white-space:normal;overflow-wrap:anywhere}
.u13-color-swatch {flex:none;width:25px;height:25px;border-radius:7px;border:1px solid #aac1b8;box-shadow:inset 0 0 0 2px #10232855}
.u13-section-preview {display:grid;grid-template-columns:100px minmax(0,1fr);gap:12px;align-items:center;margin:0 0 15px;padding:10px;border:1px solid var(--u-border,#334a50);border-radius:10px;background:#10272c}
.u13-section-preview svg {display:block;width:100%;height:auto;overflow:visible}
.u13-section-preview path {fill:#b5d4c6;stroke:#e7f3ed;stroke-width:.7;vector-effect:non-scaling-stroke}
.u13-section-preview text {fill:#d4e5dd;font:14px system-ui,sans-serif}
.u13-section-preview figcaption {min-width:0;line-height:1.5}
.u13-section-preview strong {display:block;font-size:12px;font-weight:600;color:#e1efe8}
.u13-section-preview figcaption span {display:block;font-size:11px;color:#b2c8c1;margin-top:4px}
@media(min-width:1051px){.u13-params .u13-param-grid {grid-template-columns:minmax(0,1fr)}}
.u13-items .u13-item small {white-space:normal;font-size:12px;line-height:1.5}
.u13-picker-description,.u13-picker-action {display:block;margin:10px 12px 0;font-size:12px;line-height:1.5}
.u13-picker-description {color:#b4cbc0}
.u13-picker-action {color:#adf0c7;font-weight:600}
.u13-picker-grid strong {font-size:14px}
.u13-picker-grid>button:focus-visible {outline:2px solid var(--u-mint,#93ebba);outline-offset:2px}
.u13-picker .u13-filter-tabs {flex-wrap:wrap}
@media(max-width:767px){
 #modal[open]:has(#u13-calc-form),#modal[open]:has(.u13-picker) {max-height:calc(100dvh - 16px);max-width:calc(100vw - 16px)}
 .metal-calculator-layout {gap:12px}
 .metal-calculation-preview {grid-row:auto;position:static}
 #u13-calc-fields .u13-field {margin:12px 0}
 .u13-params .u13-param-grid {grid-template-columns:minmax(0,1fr)}
 .u13-params .metal-dimensions {padding-bottom:12px}
 .u13-picker-grid strong {font-size:13px}
 .u13-picker-description,.u13-picker-action {margin-left:10px;margin-right:10px}
}

/* Walking controls share the viewport space measured by CampusUI. */
.c16-hero.c18-campus.is-walking {height:calc(100dvh - var(--c16-header-height,80px) - 20px)!important;min-height:0!important}
.c16-hero.c18-campus.is-walking #hero-scene {top:0!important;height:100%!important;min-height:0;max-height:100%}
.c16-hero.is-walking .c16-walkbar {top:max(14px,env(safe-area-inset-top));display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.c16-hero.is-walking .c17-walk-tools {display:flex;flex-wrap:wrap;gap:6px}
#c16-walk-state {font-size:12px;line-height:1.4;color:#b8d2c4}
@media(max-width:600px){
 .c16-hero.is-walking .c16-walkbar {left:10px;right:10px;gap:6px}
 .c16-hero.is-walking .c16-walk-help {display:block;max-width:calc(100% - 28px);font-size:11px;line-height:1.4;white-space:normal}
 .c16-hero.is-walking .c17-walk-tools button {min-height:40px;padding:7px 9px;font-size:12px}
 .c16-hero.is-walking #c16-location {min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .c16-hero.is-walking #c16-walk-state {flex-basis:100%}
}

/* The request form uses one tab draft and the canonical intake contract. */
html:has(#modal[open] .fv-brief-form),body:has(#modal[open] .fv-brief-form){overflow:hidden;overscroll-behavior:none}
dialog.wide:has(.fv-brief-form){width:min(920px,calc(100vw - 24px));max-height:94dvh}
#modal[open]:has(.fv-brief-form){display:flex;flex-direction:column;overflow:hidden}
#modal:has(.fv-brief-form)>.modal-head{flex:none}
#modal:has(.fv-brief-form)>.modal-body{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable}
.fv-brief-form{color:var(--u-ink,#eaf3ef);min-width:0}
.fv-brief-form .fv-brief-intro{margin-bottom:16px;padding-bottom:16px}
.fv-brief-context{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:14px;background:var(--u-bg,#101b20);border:1px solid var(--u-border,#334a50);border-radius:8px;margin-bottom:12px}
.fv-brief-context>div{min-width:0}.fv-brief-context strong{overflow-wrap:anywhere}.fv-brief-context p{margin:6px 0 0}
.fv-brief-form .fv-draft-state,.fv-brief-form .fv-field-hint,.fv-brief-form .fv-upload-state{display:block;font-size:12px;color:var(--u-muted,#9eb3b1);line-height:1.5;overflow-wrap:anywhere}
.fv-brief-section{min-inline-size:0;margin:20px 0;padding:18px;border:1px solid var(--u-border,#334a50);border-radius:8px}
.fv-brief-section legend{padding:0 8px;font-size:15px;font-weight:600;color:var(--u-ink,#eaf3ef)}
.fv-brief-form .field input,.fv-brief-form .field select,.fv-brief-form .field textarea{font-size:16px;min-height:46px;line-height:1.5}
.fv-brief-form .field label{font-size:13px;margin-bottom:7px}.fv-brief-form .fv-field-hint{margin-top:6px}
.fv-brief-form .fv-field-error,.fv-brief-form .form-error{display:block;color:var(--metal-error,#ffc7b6);font-size:13px;line-height:1.5;margin-top:6px;overflow-wrap:anywhere}
.fv-brief-form .fv-field-error:empty,.fv-brief-form .form-error:empty{display:none}
.fv-brief-form [aria-invalid=true]{border-color:var(--metal-error,#ffc7b6);outline:1px solid var(--metal-error,#ffc7b6)}
.fv-brief-form .fv-file.is-error{border-color:var(--metal-error,#ffc7b6)}.fv-brief-form .fv-file.is-error small{color:var(--metal-error,#ffc7b6)}
.fv-brief-form .fv-drop:focus-visible{outline:3px solid var(--u-mint,#93ebba);outline-offset:3px}.fv-brief-form .fv-drop[aria-disabled=true]{opacity:.65;cursor:default}
.fv-brief-form .fv-brief-bottom{position:sticky;bottom:-24px;background:var(--u-panel,#17272c);padding:16px 0;margin-top:20px;z-index:2}
.fv-brief-form .check{font-size:13px}.fv-brief-form .check input{width:20px;height:20px}
.fv-brief-form .fv-brief-bottom>span{font-size:12px}.fv-brief-form .fv-brief-bottom .btn{min-height:48px}
@media(max-width:640px){.fv-brief-context{flex-direction:column}.fv-brief-section{padding:12px;margin:18px 0}.fv-brief-form .grid2{grid-template-columns:1fr}.fv-brief-form .fv-file{gap:8px}.fv-brief-form .fv-file>span{grid-template-columns:18px minmax(0,1fr)}.fv-brief-form .fv-brief-bottom{bottom:-22px}.fv-brief-form .fv-brief-bottom>span{font-size:11px}}
/* Welding extends the existing METAL control and color system. */
/* Reuse the existing light v7 drafting colors; global tokens belong to the dark shell. */
.v7-weld-layout{align-items:start;--u-ink:#243f33;--u-muted:#678171;--u-mint:var(--lime);--u-error:#a63d2d;color:var(--u-ink)}
.v7-weld-workspace{min-width:0}
.v7-weld-group{border:0;padding:0;margin:0 0 24px;min-width:0}
.v7-weld-group legend{font-weight:700;color:var(--u-ink);margin-bottom:12px}
.v7-weld-field{min-width:0;display:grid;gap:8px}
.v7-weld-field>label{font-size:14px;color:var(--u-ink);line-height:1.4}
.v7-weld-field>input{min-width:0;width:100%;font-size:16px;min-height:44px;background:white;color:var(--u-ink)}
.v7-page .v7-weld-layout .v7-weld-field>input[type=number]{background:white;color:var(--u-ink);border-color:#c6d9cc}
.v7-weld-field [data-unset=true]{opacity:.5}
.v7-weld-field .v7-error:empty{display:none}
.v7-weld-field input[aria-invalid=true]{border-color:var(--u-error,#ffbca9)}
.metal-weld-svg{display:block;width:100%;height:auto;touch-action:none;overflow:hidden}
.metal-weld-svg text{fill:var(--u-ink);font-size:12px}
.metal-weld-base{fill:var(--u-muted);opacity:.55}
.metal-weld-section{fill:var(--u-mint);stroke:var(--u-ink);stroke-width:1.5}
.metal-weld-section.is-unset{fill:none;stroke-dasharray:5 4}
.metal-weld-leaders{fill:none;stroke:var(--u-muted);stroke-width:1}
.metal-weld-svg .metal-dimension-handle{cursor:ew-resize}
.metal-weld-svg [data-weld-dimension=z2]{cursor:ns-resize}
.metal-weld-svg .metal-dimension-handle[aria-disabled=true]{opacity:.45;cursor:not-allowed}
@media(max-width:767px){.v7-weld-layout{grid-template-columns:minmax(0,1fr)}.v7-weld-group .v7-fields{grid-template-columns:minmax(0,1fr)}}


/* Project workspace: bounded panes and responsive model. */
.u13-workspace-actions {display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.u13[data-step="0"] .u13-step-title {margin:16px 0 12px;gap:12px}
.u13[data-step="0"] .u13-step-title h2 {font-size:18px;margin:0 0 4px}
.u13[data-step="0"] .u13-step-title p {margin:0;font-size:12px;line-height:1.5}
.u13 .u13-viewport-tools {flex:none;gap:8px;flex-wrap:wrap}
.u13 .u13-viewport-tools>div {display:flex;gap:4px}
.u13 .u13-viewport-tools button {min-height:38px;min-width:38px}
.u13 .u13-scene-info {flex:none;gap:8px;padding:9px 12px;min-height:48px}
.u13 .u13-metrics {flex:none;margin-top:0;padding:12px;border-top:1px solid var(--u-border);gap:12px}
.u13 .u13-metrics strong {font-size:13px;line-height:1.4;overflow-wrap:anywhere}
.u13 .u13-metrics small {font-size:11px}
.u13[data-focus="true"] [data-u13="focus"] {color:var(--u-mint);border-color:var(--u-mint)}
@media(min-width:1051px){
 .u13[data-step="0"] {max-width:none;padding:20px 24px 28px}
 .u13[data-step="0"] .u13-top {margin-bottom:12px;padding-bottom:0}
 .u13[data-step="0"] .u13-steps {margin-bottom:14px}
 .u13[data-step="0"] .u13-steps button {padding:12px 16px}
 .u13 .u13-work {grid-template-columns:clamp(196px,15vw,240px) minmax(0,1fr) clamp(280px,22vw,340px);gap:12px;height:clamp(660px,calc(100dvh - 300px),1200px);min-height:0;align-items:stretch}
 .u13 .u13-center {height:100%;min-height:0;min-width:0;overflow:hidden}
 .u13 .u13-scene {height:auto;min-height:180px;flex:1 1 0;overflow:hidden}
 .u13 .u13-items {min-height:0;display:flex;flex-direction:column;overflow:hidden}
 .u13 .u13-items>header,.u13 .u13-item-actions,.u13 .u13-items>.u13-caption {flex:none}
 .u13 .u13-item-list {flex:1;min-height:0;max-height:none;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
 .u13 .u13-items>.u13-caption {font-size:11px;margin:8px 14px 14px;line-height:1.5}
 .u13 .u13-params {height:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-gutter:stable;padding:16px}
 .u13 .u13-params .u13-parameter-group .u13-param-grid {max-height:none;overflow:visible}
 .u13 .u13-params .metal-dimension-svg {height:216px;min-height:216px;max-height:216px}
 .u13 .u13-params .metal-dimensions header span {font-size:11px}
 .u13 .u13-params .metal-dimension-values>div {min-height:24px;font-size:11px;gap:5px}
 .u13 .u13-params .metal-dimension-values strong {font-size:12px}
 .u13 .u13-params .metal-dimension-values b {width:20px;height:20px}
 .u13 .u13-params .metal-dimension-status {font-size:11px;margin:4px 0}
 .u13 .u13-metrics>div {padding:0}
 .u13[data-focus="true"] .u13-work {grid-template-columns:minmax(0,1fr)}
 .u13[data-focus="true"] .u13-items,.u13[data-focus="true"] .u13-params {display:none}
 .u13 .u13-mobile-tabs {display:none}
}
@media(min-width:761px) and (max-width:1050px){
 .u13 {padding:22px}
 .u13 .u13-work {display:block;min-height:0}
 .u13 .u13-mobile-tabs {display:flex;gap:6px;margin:12px 0}
 .u13 .u13-mobile-tabs button {min-height:44px;flex:1}
 .u13 .u13-mobile-tabs [aria-pressed=true] {background:var(--u-mint);color:var(--u-bg);border-color:var(--u-mint)}
 .u13[data-mobile="model"] .u13-items,.u13[data-mobile="model"] .u13-params,
 .u13[data-mobile="items"] .u13-center,.u13[data-mobile="items"] .u13-params,
 .u13[data-mobile="params"] .u13-center,.u13[data-mobile="params"] .u13-items {display:none}
 .u13 .u13-scene {height:clamp(340px,55dvh,650px);min-height:340px}
 .u13 .u13-item-list {max-height:60dvh}
 .u13 .u13-params .u13-parameter-group .u13-param-grid {max-height:none}
}
@media(max-width:1050px){
 .u13 [data-u13="focus"] {display:none}
 .u13 .u13-params .metal-dimension-svg {height:216px;min-height:216px;max-height:216px}
 .u13 .u13-params .u13-parameter-group .u13-param-grid {max-height:none;overflow:visible}
}
@media(max-width:760px){
 .u13[data-step="0"] .u13-project-name>small {display:none}
 .u13[data-step="0"] .u13-top {padding-bottom:10px;gap:8px}
 .u13[data-step="0"] .u13-steps button {padding:8px 5px;min-height:68px}
 .u13[data-step="0"] .u13-step-title {align-items:center;gap:10px}
 .u13[data-step="0"] .u13-step-title h2 {font-size:16px;line-height:1.3;margin:0}
 .u13[data-step="0"] .u13-step-title p {display:none}
 .u13 .u13-workspace-actions {flex:none}
 .u13 .u13-workspace-actions button {white-space:nowrap;font-size:12px;padding:10px;min-height:44px}
 .u13 .u13-mobile-tabs button {min-height:44px}
 .u13 .u13-next {position:static}
 .u13 .u13-viewport-tools button {min-height:44px;min-width:40px}
 .u13 .u13-viewport-tools>div:first-child {flex:1}
 .u13 .u13-scene-info {align-items:flex-start;flex-direction:column}
 .u13 .u13-scene-info>div {align-self:flex-end}
 .u13 .u13-scene {height:clamp(290px,49dvh,460px);min-height:290px}
 .u13 .u13-metrics {grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,.65fr);padding:10px;gap:8px}
 .u13 .u13-metrics strong {font-size:12px}
 .u13 .u13-metrics small {font-size:10px}
}
/* One calculator workspace: task, detail type, inputs and a live result. */
#modal[open]:has(#u13-calc-form){width:min(1280px,calc(100vw - 32px))}
#modal:has(#u13-calc-form)>.modal-head{padding:18px 24px}
#modal:has(#u13-calc-form)>.modal-head h2{font-size:22px}
#modal:has(#u13-calc-form)>.modal-head button{min-width:44px;min-height:44px}
#modal:has(#u13-calc-form)>.modal-body{padding:22px 24px}
#u13-calc-form{--calc-line:var(--u-border,#334a50);--calc-muted:var(--u-muted,#a9beb8);--calc-accent:var(--u-mint,#93ebba);gap:0}
#u13-calc-form [hidden]{display:none!important}
.u13-calc-intro{display:flex;align-items:baseline;gap:24px;margin-bottom:16px}
.u13-calc-intro p{margin:0;font-size:13px;line-height:1.6;color:var(--calc-muted)}
#u13-calc-form .u13-kicker{font-size:10px;letter-spacing:.12em;white-space:nowrap;color:var(--calc-accent)}
.u13-calc-cards{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.u13-calc-card{position:relative;min-width:0;padding:14px 12px;text-align:left;border:1px solid var(--calc-line);background:#13262a;border-radius:12px;color:#e9f2ed;cursor:pointer;display:flex;flex-direction:column;gap:6px}
.u13-calc-card:hover{background:#203a39;border-color:#6b9587}
.u13-calc-card[aria-pressed=true]{background:#29443d;border-color:var(--calc-accent);box-shadow:inset 0 -3px var(--calc-accent)}
.u13-calc-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-right:8px}
.u13-calc-card svg{width:52px;height:38px;color:var(--calc-accent);flex:none}
.u13-calc-card small{font-size:11px;color:#c9dcd2;border-radius:5px;background:#0f2025;padding:3px 5px;white-space:nowrap}
.u13-calc-card strong{font-size:14px;font-weight:650;line-height:1.3}
.u13-calc-card>span:last-of-type{font-size:11px;line-height:1.5;color:#b7ccc2}
.u13-calc-card>b,.u13-calc-shape-cards button>b{display:none;color:var(--calc-accent);font-size:12px}
.u13-calc-card[aria-pressed=true]>b{display:block;position:absolute;right:7px;top:6px}
#u13-calc-context{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid var(--calc-line);padding:22px 0 16px;margin-top:22px}
#u13-calc-context h3{font-size:21px;line-height:1.25;margin:6px 0}
#u13-calc-context p{max-width:760px;margin:0;font-size:13px;line-height:1.6;color:var(--calc-muted)}
.u13-calc-unit{text-align:right;max-width:180px;flex:none;font-size:11px;color:var(--calc-muted)}
.u13-calc-unit strong{display:block;color:var(--calc-accent);font-size:25px;line-height:1.3;margin-top:4px}
.u13-calc-shape-heading{display:flex;gap:16px;align-items:baseline;margin:0 0 10px}
.u13-calc-shape-heading h3{font-size:13px;margin:0}
.u13-calc-shape-heading>span{font-size:11px;color:var(--calc-muted)}
.u13-calc-shape-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:24px}
.u13-calc-shape-cards button{display:flex;align-items:center;gap:12px;min-width:0;min-height:76px;padding:12px 14px;text-align:left;border:1px solid var(--calc-line);border-radius:10px;background:#12262a;color:#dfece6;cursor:pointer}
.u13-calc-shape-cards button[aria-pressed=true]{border-color:var(--calc-accent);background:#213d36}
.u13-calc-shape-cards button[aria-pressed=true]>b{display:block;margin-left:auto}
.u13-calc-shape-cards svg{width:56px;height:42px;flex:none;color:var(--calc-accent)}
.u13-calc-shape-cards button>span{min-width:0;max-width:100%;overflow-wrap:anywhere;hyphens:auto}
.u13-calc-shape-cards strong{display:block;font-size:13px;line-height:1.4}
.u13-calc-shape-cards small{display:block;font-size:11px;line-height:1.5;color:var(--calc-muted);margin-top:3px}
#u13-calc-form button:focus-visible{outline:2px solid var(--calc-accent);outline-offset:3px}
#u13-calc-form .metal-calculator-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}
.u13-calc-parameters>header{margin-bottom:16px}
.u13-calc-parameters h3,.u13-calc-result h3{font-size:16px;margin:0 0 4px;line-height:1.4}
.u13-calc-parameters>header span{font-size:11px;color:var(--calc-muted)}
#u13-calc-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 18px}
#u13-calc-form #u13-calc-fields .u13-field{margin:0;min-width:0}
#u13-calc-fields .u13-field:has(textarea){grid-column:1/-1}
#u13-calc-fields .u13-field>label{margin:0 0 6px;font-size:12px;line-height:1.4}
#u13-calc-fields input[type=number]{height:44px;padding:10px 12px;font-size:15px;font-weight:600;background:#102328}
#u13-calc-fields input[type=checkbox]{width:22px;height:22px;accent-color:var(--calc-accent)}
#u13-calc-fields .metal-range{margin-top:5px}
#u13-calc-fields .metal-range input{min-height:24px;height:24px}
#u13-calc-fields .u13-field>small{display:block;font-size:11px;line-height:1.5;color:var(--calc-muted);margin-top:6px}
#u13-calc-fields textarea{min-height:120px;font-family:inherit;font-size:15px;line-height:1.7}
.u13-calc-result{position:sticky;top:0;min-width:0;padding:20px;border:1px solid var(--calc-line);border-radius:14px;background:#102328}
.u13-calc-result>header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px}
#u13-calc-form .metal-calculation-preview{position:static;overflow:visible}
#u13-calc-form .metal-calculation-preview>svg{max-height:290px;margin:6px 0 12px}
#u13-calc-form .metal-calculation-preview dl{border-top:1px solid var(--calc-line);margin-top:12px}
#u13-calc-form .metal-calculation-preview dl>div{align-items:baseline;padding:11px 0;font-size:13px}
#u13-calc-form .metal-calculation-preview dd{font-size:18px;font-variant-numeric:tabular-nums;color:var(--calc-accent)}
#u13-calc-form .metal-calculation-preview dt{line-height:1.4}
#u13-calc-form .metal-calculation-preview p{font-size:12px;line-height:1.6;margin:10px 0 0}
.u13-calc-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:20px;margin-top:24px;border-top:1px solid var(--calc-line)}
.u13-calc-footer p{font-size:12px;line-height:1.6;max-width:560px;margin:0;color:var(--calc-muted)}
.u13-calc-footer button{flex:none;min-height:46px}
.u13-calc-empty{padding:36px 16px;text-align:center}
.u13-calc-empty>span{font-size:48px;color:#edc688}
.u13-calc-empty>small{display:block;color:var(--calc-muted);margin-top:16px}
.metal-calculation-dimensions{display:flex;flex-wrap:wrap;gap:6px 14px;margin:10px 0;font-size:12px;color:var(--calc-muted)}
.metal-calculation-dimensions strong{font-weight:600;color:#dfece6;margin-left:4px}
.metal-cutting-scroll{max-height:315px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
#u13-calc-form .metal-cutting-bar{display:block;width:100%;height:auto;max-height:none;margin:4px 0;min-height:60px}
.metal-cutting-legend{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:10px;line-height:1.5;color:#b7cbc1;margin:10px 0}
.metal-cutting-detail{font-size:12px;margin:14px 0}
.metal-cutting-detail summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:var(--calc-accent);border-block:1px solid var(--calc-line)}
.metal-cutting-detail summary::before{content:'＋';margin-right:8px}.metal-cutting-detail[open] summary::before{content:'−'}
.metal-cutting-detail ol{padding-left:20px;max-height:270px;overflow:auto;overscroll-behavior:contain}
.metal-cutting-detail li{padding:8px 0;line-height:1.5;overflow-wrap:anywhere}
.metal-cutting-detail li>span,.metal-cutting-detail li>small{display:block;color:var(--calc-muted)}
.metal-coating-svg .metal-dimension-handle{touch-action:none}
@media(max-width:1050px){.u13-calc-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.u13-calc-card{display:grid;grid-template-columns:48px minmax(0,1fr);gap:3px 10px;padding:12px}.u13-calc-card-top{grid-row:1/3;display:block;padding:0}.u13-calc-card-top small{display:none}.u13-calc-card strong{align-self:end}.u13-calc-shape-cards button{gap:8px;padding:10px}.u13-calc-shape-cards svg{width:42px}.u13-calc-result{padding:16px}#u13-calc-form .metal-calculator-layout{gap:20px}}
@media(max-width:767px){
 #modal[open]:has(#u13-calc-form){width:calc(100vw - 16px)}
 #modal:has(#u13-calc-form)>.modal-head{padding:14px 16px}
 #modal:has(#u13-calc-form)>.modal-head h2{font-size:18px}
 #modal:has(#u13-calc-form)>.modal-body{padding:16px}
 .u13-calc-intro{display:block;margin-bottom:12px}.u13-calc-intro p{font-size:12px;margin-top:7px}
 .u13-calc-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.u13-calc-card{grid-template-columns:34px minmax(0,1fr);gap:3px 7px;padding:10px 8px}.u13-calc-card svg{width:34px;height:32px}.u13-calc-card strong{font-size:12px}.u13-calc-card>span:last-of-type{font-size:10px;line-height:1.4}
 #u13-calc-context{margin-top:16px;padding:16px 0;gap:12px}#u13-calc-context h3{font-size:19px}#u13-calc-context p{font-size:12px}.u13-calc-unit{display:none}
 .u13-calc-shape-heading{display:block}.u13-calc-shape-heading>span{display:block;margin-top:4px}
 .u13-calc-shape-cards{gap:6px;margin-bottom:18px}.u13-calc-shape-cards button{flex-direction:column;align-items:flex-start;gap:5px;padding:9px 7px;position:relative}.u13-calc-shape-cards strong{font-size:11px}.u13-calc-shape-cards small{font-size:10px}.u13-calc-shape-cards svg{height:30px;width:40px}.u13-calc-shape-cards button[aria-pressed=true]>b{position:absolute;right:6px;top:5px}
 #u13-calc-form .metal-calculator-layout{grid-template-columns:minmax(0,1fr);gap:20px}.u13-calc-result{position:static;grid-row:1}.u13-calc-result>header{display:block}.u13-calc-result h3{margin-top:5px}
 #u13-calc-fields{gap:16px 12px}#u13-calc-fields .u13-field>label{font-size:12px;min-height:34px}#u13-calc-fields input[type=number]{width:100%;min-width:0}
 .u13-calc-footer{flex-direction:column;align-items:stretch;gap:12px;padding-top:16px;margin-top:20px}.u13-calc-footer button{width:100%}
 #u13-calc-form .metal-calculation-preview dd{font-size:16px}.u13-calc-result{padding:14px}#u13-calc-form .metal-calculation-preview>svg{max-height:250px}
}
/* Uniform geometry previews: dimensions affect shape, never the row's footprint. */
.u13-thumbnail {display:inline-flex;flex:0 0 64px;width:64px;height:52px;align-items:center;justify-content:center;border:1px solid var(--u-line,#345157);border-radius:10px;background:#10262b;overflow:hidden}
.u13-thumbnail svg {display:block;width:100%;height:100%}
.u13-item {align-items:center!important;gap:10px!important}
.u13-item>span:last-child {min-width:0;overflow-wrap:anywhere}
.u13-project-thumbnail {display:block;height:140px;margin:12px 0;border-radius:12px;background:#10262b}
.u13-project-thumbnail svg {width:100%;height:100%}
.u13-bom-product {display:flex;align-items:center;gap:10px;min-width:180px}
.u13-scale-tools {display:flex;flex:none;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 14px;padding:8px 12px;border-bottom:1px solid var(--u-line,#345157);background:#10262b;font-size:12px}
.u13-scale-tools label {display:flex;align-items:center;gap:8px;min-height:40px}
.u13-scale-tools select {min-height:40px;max-width:100%;padding:7px 10px;background:#19343a;color:#dcf0eb;border:1px solid #48646a;border-radius:8px;font:inherit}
.u13-scale-tools input {accent-color:#97e9c3;width:18px;height:18px}
html:has(#modal[open] .u13-assistant-frame),body:has(#modal[open] .u13-assistant-frame) {overflow:hidden}
#modal[open]:has(.u13-assistant-frame) {display:flex;flex-direction:column;width:min(820px,calc(100vw - 24px));height:min(820px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);overflow:hidden}
#modal:has(.u13-assistant-frame)>.modal-head {flex:none;padding:14px 20px}
#modal:has(.u13-assistant-frame)>.modal-body {flex:1;min-height:0;max-height:none;padding:0;overflow:hidden}
.u13-assistant-frame {width:100%;height:100%;border:0;display:block;background:transparent}
.u13-assistant-launcher {position:fixed;right:20px;bottom:90px;z-index:80;background:#163b36!important;color:#b2f1d5!important;box-shadow:0 10px 32px #0005;min-height:48px}
.u13-scale-tools label {white-space:nowrap}
@media(max-width:600px){.u13-scale-tools {padding:6px 10px}.u13-scale-tools label {flex-wrap:wrap}.u13-scale-tools label:last-child {width:100%}.u13-scale-tools select {flex:1;min-width:0}.u13-top-actions {flex-wrap:wrap}}
